李宏毅机器学习学习打卡Task03-误差与梯度下降篇

一、误差

1.误差的来源

Error 的主要有两个来源,分别是 bias 和 variance 。


李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第1张图片
2.误差的判断

如果模型没有很好的训练训练集,就是偏差过大,也就是欠拟合。
如果模型很好的训练训练集,即再训练集上得到很小的错误,但在测试集上得到大的错误,这意味着模型可能是方差比较大,就是过拟合。
对于欠拟合和过拟合,是用不同的方式来处理的。

(1)偏差大-欠拟合:重新设计模型
(2)方差大-过拟合:添加更多的数据或对数据集进行调整

3.模型的选择
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第2张图片

这件事最好不要做:
用训练集训练不同的模型,然后在测试集上比较错误,模型3的错误比较小,就认为模型3好。但实际上这只是你手上的测试集,真正完整的测试集并没有。比如在已有的测试集上错误是0.5,但有条件收集到更多的测试集后通常得到的错误都是大于0.5的。

4.交叉验证
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第3张图片

交叉验证:就是将训练集再分为两部分,一部分作为训练集,一部分作为验证集。用训练集训练模型,然后再验证集上比较,确实出最好的模型之后(比如模型3),再用全部的训练集训练模型3,然后再用public的测试集进行测试,此时一般得到的错误都是大一些的。

5.N-折交叉验证
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第4张图片

防止上述将训练集拆分的效果比较差。

二、梯度下降法

1.调整学习速率
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第5张图片

调整的方法:
(1)自适应学习率
举一个简单的思想:随着次数的增加,通过一些因子来减少学习率。
学习率不能是一个值通用所有特征,不同的参数需要不同的学习率。
(2)Adagrad 算法:
每个参数的学习率都把它除上之前微分的均方根。

2.随机梯度下降法
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第6张图片

随机选取一个例子就更新一步。
常规梯度下降法走一步要处理到所有二十个例子,但随机算法此时已经走了二十步(每处理一个例子就更新)。

3.特征缩放
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第7张图片
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第8张图片

如何做缩放?
Z-score标准化。

李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第9张图片
4.梯度下降的理论基础

主要是泰勒展开。

李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第10张图片
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第11张图片
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第12张图片
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第13张图片

5.梯度下降的限制

容易陷入局部极值。
可能卡在不是极值,但微分值是0的地方。
可能实际中只是当微分值小于某一个数值就停下来了,但这里只是比较平缓,并不是极值点。
李宏毅机器学习学习打卡Task03-误差与梯度下降篇_第14张图片

你可能感兴趣的:(机器学习,学习,深度学习)