其他分享
首页 > 其他分享> > 31_Pytorch过拟合&欠拟合

31_Pytorch过拟合&欠拟合

作者:互联网

1.26.Pytorch过拟合&欠拟合
1.26.1.理想化情况
1.26.1.1.场景一:线性模型—房价预测
1.26.1.2.场景二:非线性模型—GPA
1.26.2.真实情况
1.26.3.模型学习能力
1.26.4.欠拟合与过拟合

1.26.Pytorch过拟合&欠拟合

以下参考:https://blog.csdn.net/weixin_43886278/article/details/104316321

1.26.1.理想化情况

1.26.1.1.场景一:线性模型—房价预测

在这里插入图片描述

横坐标是房屋面积,纵坐标是房屋价格。可以看出这两者呈现线性关系。

1.26.1.2.场景二:非线性模型—GPA

在这里插入图片描述
老师给学生打分时,往往大部分学生一般的成绩,成绩差或成绩好的则占少数。因此总体上趋近于高斯模型,呈现非线性关系。

1.26.2.真实情况

在这里插入图片描述
从以上两个例子中,我们都已经提前知道了问题中的具体模型,不知道的只有模型的参数,如期望,方差。然而在现实生活中,大部分要解决的问题是不知道具体模型的。如手写数字识别,我们既不知道它的模型,也不知道里面需要包含什么参数。那么如何解决这个问题呢?
在这里插入图片描述
另外我们还要考虑另一个因素的影响:噪声。并不是所有的数据集都是严格按照模型的。如房价关系的线性模型,房价与面积在呈线性关系的同时往往有些许误差。我们可以认为误差服从高斯分布,因此为了尽量减少误差的影响,我们需要大量的数据集来训练模型。同时,如果数据集太少,可能被误认为不满足线性关系,而采用其他关系进行预测。

1.26.3.模型学习能力

在这里插入图片描述
我们对利用数据训练模型时,往往会选择不同的模型,可能一次方,二次方。。。到n次方,不同类型,不同次方的模型,次方越高,模型波动越大越复杂。
那么如何衡量不同模型的学习能力?
在这里插入图片描述
可以看出,只有一个参数的常数函数,学习能力最差,输出的是固定值,随着次方增加,参数越来越多,学习能力越来越强。
在这里插入图片描述
最近的深度学习网络层次越来越深,参数也越来越大,也从侧面反映出模型的model capacity越来越强。

1.26.4.欠拟合与过拟合

接下来我们观察两种情况:
情况一:欠拟合
在这里插入图片描述
我们用的模型复杂度小于真实数据模型的复杂度,就好像利用线性模型去预测非线性模型的GPA函数。这种情况会造成模型的表达能力不够,无法表达真实数据模型,这种情况叫做欠拟合。
在这里插入图片描述
再举一个WGAN的例子,早期的WGAN对模型加了许多约束,导致生成的数据表达能力不够强,上面三幅图无法像下面三幅图一样表达许多精美的图片。
那么欠拟合如何体现出来,我们如何发现模型出现欠拟合?
在这里插入图片描述

训练集准确度低
测试集准确度低

情景二:过拟合
在这里插入图片描述
我们训练出的模型为了拟合所有数据变得过分复杂,为了降低loss,模型趋近于每一个点,训练模型复杂度大于真实数据集复杂度,这样会导致在训练集上的效果非常好,但是在测试集上的效果不好,这种情况叫做过拟合。

那么过拟合如何体现出来,我们如何发现模型出现过拟合?
在这里插入图片描述
在这里插入图片描述
上面的图分别表示:欠拟合,适配良好,过拟合

标签:训练,模型,复杂度,1.26,Pytorch,拟合,我们,31
来源: https://blog.csdn.net/toto1297488504/article/details/113797377