李宏毅机器学习-误差和梯度下降

目录

前言

一、误差

1.偏差

2.方差

3.减少错误

4.模型选择(比较验证)

(1)交叉验证

(2)N折交叉验证

二、梯度下降

1.调整学习率

(1)一般调整学习率

(2)自适应学习率

(3)Adagrad算法

2.随机梯度下降

3.特征缩放

总结



前言

本文内容涉及误差、梯度下降,来源于李宏毅老师深度学习视频。


一、误差

误差反映整个模型的准确度,误差的来源由两部分:偏差(bias)和方差(variance)。可以用下面式子表示:

error = bias + variance

1.偏差

描述的是真实值与预测值期望之间的差距,反映的是模型的精准度,即模型的拟合能力。

李宏毅机器学习-误差和梯度下降_第1张图片

 

李宏毅机器学习-误差和梯度下降_第2张图片

 图片来源:李宏毅深度学习课件

2.方差

随机变量和其数学期望(即均值)之间的偏离程度,描述的是预测值的变化范围,预测值的方差,也就是离期望值的距离。方差越大,数据的分布越分散,方差反映模型的稳定性,即模型的鲁棒性。

李宏毅机器学习-误差和梯度下降_第3张图片

 图片来源:李宏毅深度学习课件

3.减少错误

偏差越小则平均预测值越靠近真实值(图中红色的靶心),方差越小则预测值越集中,也就说明函数越平滑、稳定。

李宏毅机器学习-误差和梯度下降_第4张图片

如果模型越复杂,偏差越低,方差越高,容易造成过拟合;反之,如果模型越简单,偏差越高,方差越低,容易造成欠拟合。在模型的选择过程中,需要平衡偏差和方差,寻找一个临界点。

李宏毅机器学习-误差和梯度下降_第5张图片

对于偏差大,出现欠拟合情况的解决方法:选取更多的特征加入训练、选取更加复杂的模型(可考虑更高次幂)。

对于方差大,出现过拟合情况的解决方法:降低模型的复杂度、扩大训练集的数据量、减少选取特征的数量、添加正则项、采用交叉验证等方式选取模型。

4.模型选择(比较验证)

(1)交叉验证

李宏毅机器学习-误差和梯度下降_第6张图片

交叉验证的步骤:

step1:将训练集再分为两部分,一部分作为训练集,一部分作为验证集。

step2:用训练集训练模型,然后在验证集上进行比较,确定出最好的模型后,用全部的训练集训练选出的最好模型

step3::用public测试集进行测试获得最好模型,用全部的训练集训练该模型,再用public的测试集进行测试。

(2)N折交叉验证

李宏毅机器学习-误差和梯度下降_第7张图片

二、梯度下降

1.调整学习率

(1)一般调整学习率

如下图所见,左边为损失函数曲线,当学习率过小时,就会走得过慢(蓝色箭头);但是当学习率过大时,就会像绿色箭头一样来回震荡,无法找到最低点;当学习率非常大时,如黄色箭头所示损失函数值越来越大;当学习率刚好时,如红色箭头的方向一致,找到最低点。

李宏毅机器学习-误差和梯度下降_第8张图片

(2)自适应学习率

在训练模型时,通常期望刚训练时学习率更大,训练速度快,随着模型训练的次数增加,越来越接近最低点时,就期望学习率小一些,避免来回震荡找不到最低点,因此,通过一些因子来减少学习率。

李宏毅机器学习-误差和梯度下降_第9张图片

 

(3)Adagrad算法

为了解决不同参数学习率不同的问题,Adagrad算法将每个参数的学习速率除以其先前导数的均方根。Adagrad在不做多余运算的情况下考虑了二次微分,但是在多参场景下,步长同时受到一阶导和二阶导的影响,计算复杂。

 

李宏毅机器学习-误差和梯度下降_第10张图片

 

李宏毅机器学习-误差和梯度下降_第11张图片

 

2.随机梯度下降

常规梯度下降走一步要处理到所有二十个例子,而随机梯度下降每处理一个例子就更新,比常规梯度下降速度更快。

李宏毅机器学习-误差和梯度下降_第12张图片

3.特征缩放

在梯度下降的运用中,当选取的不同特征取值在一个相近的范围内,可以提高梯度下降的速度,其实就是归一化的过程。一般有四种特征缩放的方法:min-max标准化、mean归一化、z-score标准化、max标准化。

李宏毅机器学习-误差和梯度下降_第13张图片

李宏毅机器学习-误差和梯度下降_第14张图片

李宏毅机器学习-误差和梯度下降_第15张图片


总结

本小节主要讲解了误差产生的原因,主要是由偏差和方差导致,偏差过大时容易产生欠拟合,方差过大时容易产生过拟合,由此延伸出如何解决过拟合和欠拟合问题。梯度下降中开始涉及到公式的推导,在本文总结中只是放了图片,推导计算过程还需要再自行巩固。

你可能感兴趣的:(机器学习,人工智能)