【Datawhale7月打卡】李宏毅机器学习Task3笔记

举报
小豆子呀 发表于 2021/07/17 00:06:42 2021/07/17
【摘要】 P5:误差从哪里来Error的来源从上节课测试集数据来看,Average和ErrorAverage Error 随着模型复杂增加呈指数上升趋势。更复杂的模型并不能给测试集带来更好的效果,而这些 ErrorError 的主要有两个来源,分别是 biasbias 和 variancevariance 。注:Error = Bias + VarianceError反映的是整个模型的准确度,Bias...

P5:误差从哪里来

Error的来源

从上节课测试集数据来看,Average和Error 随着模型复杂增加呈指数上升趋势。更复杂的模型并不能给测试集带来更好的效果,而这些 Error 的主要有两个来源,分别是 bias  variance 

注:

Error = Bias + Variance

Error反映的是整个模型的准确度,Bias反映的是模型在样本上的输出与真实值之间的误差,即模型本身的精准度,Variance反映的是模型每一次输出结果与模型输出期望之间的误差,即模型的稳定性。

在一个实际系统中,Bias与Variance往往是不能兼得的。如果要降低模型的Bias,就一定程度上会提高模型的Variance,反之亦然。

估测

假设真实的模型为 f^,通过收集 Pokemon精灵 的数据,然后通过 step1~step3 训练得到我们的理想模型f*,f*其实是 f^的一个预估。

这个过程就像打靶, 就是我们的靶心, 就是我们投掷的结果。如上图所示, 与 之间蓝色部分的差距就是偏差和方差导致的。

方差与偏差与欠、过拟合的关系

一般来说,简单的模型会有一个较大的偏差和较小的方差,复杂的模型偏差较小方差较大。这也引申出欠拟合和过拟合的概念。

  • 欠拟合:模型不能适配训练样本,有一个很大的偏差(模型不适配训练样本太简单——偏差大——欠拟合)
  • 过拟合:模型很好适配训练样本,但在测试集上表现很糟,有一个很大的方差(模型过度适配训练样本太复杂——方差大——过拟合。

在一个实际系统中,Bias与Variance往往是不能兼得的。如果要降低模型的Bias,就一定程度上会提高模型的Variance,反之亦然,如下图所示:



分析

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

偏差大-欠拟合

此时应该重新设计模型。因为之前的函数集里面可能根本没有包含。可以:

将更多的函数加进去,比如考虑高度重量,或者HP值等等。 或者考虑更多次幂、更复杂的模型。 如果此时强行再收集更多的data去训练,这是没有什么帮助的,因为设计的函数集本身就不好,再找更多的训练集也不会更好。

方差大-过拟合

简单粗暴的方法:更多的数据

模型选择

在偏差和方差之间就需要一个权衡 想选择的模型,可以平衡偏差和方差产生的错误,使得总错误最小

交叉验证

图中public的测试集是已有的,private是没有的,不知道的。交叉验证 就是将训练集再分为两部分,一部分作为训练集,一部分作为验证集。用训练集训练模型,然后再验证集上比较,确实出最好的模型之后(比如模型3),再用全部的训练集训练模型3,然后再用public的测试集进行测试,此时一般得到的错误都是大一些的。不过此时会比较想再回去调一下参数,调整模型,让在public的测试集上更好,但不太推荐这样。(心里难受啊,大学数模的时候就回去调,来回痛苦折腾)

上述方法可能会担心将训练集拆分的时候分的效果比较差,可以用下面的方法。

N折交叉验证

将训练集分成N份,比如分成3份。

在三份中训练结果Average错误是模型1最好,再用全部训练集训练模型1。

6-梯度下降

什么是梯度下降法?

梯度下降方法基于以下的观察:如果实值函数F({\mathbf  {x}})在点\mathbf {a} 可微且有定义,那么函数F({\mathbf  {x}})\mathbf {a} 点沿着梯度相反的方向-\nabla F({\mathbf  {a}}) 下降最多。

在回归问题的第三步中,需要解决下面的最优化问题:

  •  :lossfunction(损失函数)
  •  :parameters(参数)

然后分别计算初始点处,两个参数对  的偏微分,然后  减掉  乘上偏微分的值,得到一组新的参数。同理反复进行这样的计算。黄色部分为简洁的写法, 即为梯度。

上图举例将梯度下降法的计算过程进行可视化。

Tip1:调整学习速率

Tip2:随机梯度下降法

Tip3:特征缩放

通过以上三个步骤,即可对梯度下降有一个初步认识。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。