从实战三期的实验结果谈过拟合和欠拟合

举报
云峦雾绕 发表于 2019/08/03 22:40:01 2019/08/03
【摘要】 【华为云 ModelArts-Lab AI实战营】第三期:图像分类 (III) 模型参数&网络调优实验做完后,对过拟合和欠拟合以及现有AI框架的参数调整有了一些新的认识,写出来请各位同学指正首先举个栗子,解释过拟合和欠拟合假设我们在二维实数空间有一个点集P(x, y)如下图所示:我们取靠近y轴的14个点作为训练集:注意前14个点中有3个明显的噪点是我故意加入的那么现在我们训练一个模型来拟合训...

【华为云 ModelArts-Lab AI实战营】第三期:图像分类 (III) 模型参数&网络调优

实验做完后,对过拟合和欠拟合以及现有AI框架的参数调整有了一些新的认识,写出来请各位同学指正

首先举个栗子,解释过拟合和欠拟合

假设我们在二维实数空间有一个点集P(x, y)如下图所示:

华为测试2019070520

我们取靠近y轴的14个点作为训练集:

华为测试2019070521

注意前14个点中有3个明显的噪点是我故意加入的

那么现在我们训练一个模型来拟合训练集,在这个例子中就是找到一个函数h(x)可以尽量匹配已有的点集 下面是三种模型的可视化:

华为测试2019070525

黄色线代表的模型甚至没有和训练集拟合好,这属于欠拟合 蓝色的线和训练集拟合不错,而且在测试集上表现也不错,这是个不错的模型 绿色的线和训练集拟合的太好了,把噪点的特点也提取出来了,这属于过拟合

再来看看不错的模型和过拟合的模型在整个点集上的表现:

华为测试2019070523

可以明显看出过拟合的模型一旦超出训练集(前14个点)的范围,预测的结果和期望值(点集P)相差过大,属于不能用的模型

公布一下蓝色的线代表的函数 y = 2.8 + 2.2 * x 绿色的线代表的函数 y = 2.8 + x * 2.3 + (x ** 2) * 1.1 + (x ** 3) * -0.35 + (x ** 4) * 0.0235 + (x ** 5) * -0.000001

根据leewishyuanfang的回帖做个修改:

以上的的例子属于线性回归的例子,多举一个针对分类问题(逻辑回归)的例子

首先,准备一下数据:

华为测试2019070526

有两个点集P1(蓝色)和P2(绿色),现在要想办法学习一个模型判断一个点是否属于蓝色点

将x=5这条直线左边的部分作为训练集

华为测试2019070527

那么,欠拟合的情况是这样的:

华为测试2019070528

橙色圈代表一个训练出的模型,这个模型认为橙色圈内的部分属于蓝色点

而一个不错的模型是这样的:

华为测试2019070528-1

过拟合的逻辑回归模型是这样的:

华为测试2019070528-2

当然,实际情况很少过拟合的这么夸张

在3期实训过程中,可以明显发现过拟合的情况

image

image

image

image

过拟合在实际模型训练中表现为:模型在训练集上的准确率(acc)不断上升的过程中,模型在验证集上的准确率(val_acc)缺下降了

发生的原因可总结为模型训练的过程中,在训练集中提取了并非是共性的特征并分配了过高的权重

但使用随机梯度下降的31epoch过程中,出现的情况和我的设想不同

我设想的acc和val_acc之间的关系应该是下图:

image

随着在训练集中提取的个性越来越多(学习偏见越来越大),acc越来越高,经过一个短线的震荡,val_acc应该出现断崖式的下跌

但实际情况是:

华为测试2019070513

这个算法在acc越来越高的情况下,val_acc也出现了震荡,但震荡保持的轮次很长,甚至直到完成31轮epoch都没有出现断崖式的下跌

我现在的理解是,这个算法在acc提升的过程中,主动调低了导致val_acc明显下降的特征权重。

@leewishyuanfang 对val_acc并没有出现断崖式下跌做出了如下解释,我觉得可以完全解释我的问题:

首先,以你的解释欠拟合和过度拟合的例子来说,在这个例子中,加入的3个噪声的影响是巨大的,从总数来说,三个噪声占到了所有样本的20%以上,而且在分布上太过于集中,所以对于最终学习到的曲线的影响是特别大,导致过度拟合时整个曲线在后期发生了巨大的变化,与期望曲线相距甚远。

而在本次猫狗识别的例子中,训练集中有18750张图片,其中属于明显异常的噪声图片可能并没有达到如此高的比例(这里仅是推断),此外,由于在训练时,每次提取的一个batch样本均是随机提取的,所以也在很大方面上避免了噪声过于集中的问题,所以发生过度拟合时,出现的情况是在验证集上的val_acc出现震荡,但并不会出现断崖式的下跌,毕竟训练集和验证集的差别并不大。


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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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