开发者学堂课程【机器学习算法 :模型选择】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/535/detail/7174
模型选择
内容介绍
一、误差
二、训练
三、训练误差
四、泛化
五、泛化误差
六、模型容量
七、过拟合
八、模型的选择
一、误差
误差:是模型的预测输出值与真实值之间的差异。(初中时的误差会有一个指代,用一个有刻度的尺子,测量指代的长度,这时会产生误差,误差产生的原因有好多。测量方法的不科学,使用测量工具的不恰当,读数时人为的错误等测量误差;尺子的质量是系统误差。)
误差与错误:两者具有本质区别;误差可以避免。
二、训练
通过已知的样本数据进行学习,从而得到模型的过程。有时候也叫学习。
三、训练误差
模型作用于训练集时的误差。(我们拿到一个训练集之后,通过训练集得到模型,用模型做预测,这时预测值和真实值可能会有一个差异,这个差异就叫做训练误差)
四、泛化
由具体的、个别的扩大为一般的,即从特殊都一般,称为泛化。对机器学习的模型来讲,泛化是指模型作用于不包括在训练集的新样本数据(非训练集)。
狭义相对论,广义相对论,这里的广义和泛化是相对接近的。就是说从特殊到一般这个过程叫做泛化。
五、泛化误差
模型作用于新的样本数据时的误差。
中间这个圈叫做训练集,使用训练集通过训练得到一个模型,模型反过来作用于训练得到预测结果,这个预测结果和真实结果之间差异称为训练误差。
外面大的红圈称为数据全集,模型作用于数据全集的时候叫做泛化。同样模型作用于数据全集的时候,预测结果和真实值之间有一个差异,叫做泛化误差。
经验风险是和训练误差相对应的。泛化实际上就是作用在整个数据集上。
六、模型容量
是指拟合各种模型的能力
七、过拟合
在某个模型训练集上表现很好,但是在新样本上表现差。模型将训练集的特征学习的太好,导致一些非普遍规律被模型接纳和体现,从而在新样本上表现好,但是对于新样本表现差。反之则称为欠拟合,即模型对训练集的一般性质学习较差,模型作用于训练集时表现不好。
例如:在学习中例题做的十分熟练,但是对于新的题目就不会做了。(过拟合)
连例题都不会做,那么新的题就更不会做了。(欠拟合)
欠拟合会增加模型数据量,是模型变得更复杂,相对来说比较容易解决。但是对于过拟合来说是比较费劲的,拿到的用来训练的训练数据是有限的固定的,为了是模型在训练集上表现的比较好,学习到训练集的规律,在没有拿到数据全集的情况下,不知道哪些规律是训练集和整个数据集都有的,也不知道哪些规律是只有训练集有而对整个数据全集没有,很难去判断,当我们训练好这个模型之后,作用到数据全集时才知道哪些因素导致数据不好。
例如:拟合模型表现出来的是这条线,训练集就是这些点。
图二比较好的体现了数据样本和训练集的本身的规律。
图三为过拟合,看上去最右侧的图非常复杂。
八、模型的选择
针对某个具体的任务,通常会有多种模型可供选择,对同一个模型也会有多组参数(不同的参数体现的性能不一样),可以通过分析,评估模型的泛化误差(作用到模型数据全局的误差,对新数据做预测时的误差,误差越小对模型越好),选择泛化误差最小的模型。
横坐标是模型的容量,纵坐标是误差。蓝色的线是训练误差,绿色的线是泛化误差。蓝色的线越来越接近于0,说明训练误差越来越小。绿色的线有个波动先下降再上升。选择模型时选择红线对应的,在这个位置泛化误差是最小的,训练误差也是比较小的。这时我们认为过拟合比较小。红线的两侧写着欠拟合和过拟合区域。刚好红线就是我们要选取的模型。