学习打卡系列Day3——李宏毅机器学习(10月)

目录

1. 误差来源 

2. 模型选择

3. 梯度下降 

1. 学习率

2. 随机梯度下降 (Stochastic Gradient Descent)

3. 特征缩放


1. 误差来源 

  • 偏差:高偏差表示模型欠拟合,需要调整模型结果,此时仅增大数据量,并不能提升模型精度
  • 方差:高方差表示模型过拟合,最简单的操作是增大数据量,或者使用正则化操作,缓解过拟合现象

2. 模型选择

错误操作:将数据集简单的分为训练集和测试集两部分,训练集训练模型,测试集测试模型,将在测试集上表现最好的模型用于最终测试集,通常误差会变大。可能原因是如果模型过拟合,在内部测试集上表现非常好,但是真实测试集与内部测试集数据分布稍有不同,使得模型无法较好的分析真实测试集,导致误差偏大。

 正确操作:

  • 交叉验证:按一定比例将数据集分为训练集、验证集和测试集,彼此相互独立,训练不同模型,选择在验证集上表现最佳的模型用于测试内部和外部测试集,通常误差会偏高,但是选择模型的策略相对客观。

 但是,有的人会说验证集的划分存在一定主观性,可能会对模型选择造成偏差。因此,可以采用N折交叉验证,查阅一些相关文献,在医学图像分析领域,使用较多的应该是5折或10折交叉验证。N折交叉验证,将数据集分为N组,依次将其中一组作为验证集,N-1组作为训练集,在验证集上评估模型的优劣,取N次验证集误差值的均值,选择最佳的模型。该方法实现全数据集评估模型的性能,更加客观,值得拥有!

3. 梯度下降 

1. 学习率

实际操作中,为了设置合适的学习率,需要绘制右图曲线:

  • 黄色曲线:学习率太大
  • 蓝色曲线:学习率太小
  • 绿色曲线:学习率较大,使得梯度收敛过快,可能导致模型欠拟合
  • 红色曲线:相对合适的学习率

自适应学习率:

不同的Epoch,具有不同的学习率,一开始采用较大的学习率,随着Epoch增加,减小学习率,使得Loss不断逼近最优值。

  • Adagrad:每个参数的学习率除上之前微分的均方根

2. 随机梯度下降 (Stochastic Gradient Descent)

无需处理全部数据,只需要随机选择其中一个样本,更新权重即可,因此使得模型快速收敛。

3. 特征缩放

类似变量标化,在回归分析中,不同量纲的自变量纳入前需要先进行标准化。

 左图:特征缩放前;右图:特征缩放后(推荐)

为什么要缩放特征?

由图可知,红色箭头是梯度下降的方向,左图梯度下降沿着等高线法线方向进行权重迭代,并非直接朝着最低点走,绕了一些弯路,且不同变量需要不同的学习率;相比之下,右图梯度下降单刀直入,更加高效。

怎么缩放特征?实质是归一化。

学习体会:

梯度下降是深度学习算法最最最基础的部分,虽然也训练过AI模型,但是针对最理论、最基础的梯度下降的理论部分,还是有点摸不透,仍需要继续学习!

猜你喜欢

转载自blog.csdn.net/weixin_41698730/article/details/120792321
今日推荐