1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 改善深层神经网络-超参数调试 正则化以及优化

改善深层神经网络-超参数调试 正则化以及优化

时间:2021-12-13 15:05:39

相关推荐

改善深层神经网络-超参数调试 正则化以及优化

第一周 深度学习的实践层面

第一周深度学习的实践

1.1 训练,验证,测试集

创建新应用的过程中,我们不可能从一开始就准确预测出这些信息和其他超级参数。实际上,应用型机器学习是一个高度迭代的过程。

假设这是训练数据,我用一个长方形表示,我们通常会将这些数据划分成几部分,一部分作为训练集,一部分作为简单交叉验证集,有时也称之为验证集,方便起见,我就叫它验证集(dev set),其实都是同一个概念,最后一部分则作为测试集。接下来,我们开始对训练执行算法,通过验证集或简单交叉验证集选择最好的模型,经过充分验证,我们选定了最终模型,然后就可以在测试集上进行评估了,为了无偏评估算法的运行状况。

数据划分:

(1)传统的划分比例:将所有数据三七分,就是人们常说的 70%验证集,30%测试集,如果没有明确设置验证集,也可以按照 60%训练,20%验证和 20%测试集来划分。

(2)在机器学习中,我们通常将样本分成训练集,验证集和测试集三部分,数据集规模相对较小,适用传统的划分比例,数据集规模较大的,验证集和测试集要小于数据总量的 20%或 10%。后面我会给出如何划分验证集和测试集的具体指导。

(3)要确保验证集和测试集的数据来自同一分布。

(4)在机器学习中,如果只有一个训练集和一个验证集,而没有独立的测试集,遇到这种情况,训练集还被人们称为训练集,而验证集则被称为测试集,不过在实际应用中,人们只是把测试集当成简单交叉验证集使用,并没有完全实现该术语的功能,因为他们把验证集数据过度拟合到了测试集中。

1.2 偏差,方差、

高偏差:欠拟合

假设这就是数据集,如果给这个数据集拟合一条直线,可能得到一个逻辑回归拟合,但它并不能很好地拟合该数据,这是高偏差(high bias)的情况,我们称为“欠拟合(” underfitting)。

高方差:过拟合

相反的如果我们拟合一个非常复杂的分类器,比如深度神经网络或含有隐藏单元的神经网络,可能就非常适用于这个数据集,但是这看起来也不是一种很好的拟合方式分类器方差较高(high variance),数据过度拟合(overfitting)。

适度拟合:在两者之间,可能还有一些像图中这样的,复杂程度适中,数据拟合适度的分类器,这个数据拟合看起来更加合理,我们称之为“适度拟合”(just right)是介于过度拟合和欠拟合中间的一类。

理解偏差和方差的两个关键数据是训练集误差(Train set error)和验证集误差(Dev set error)。

(1)训练集:误差大

验证集:误差小

高偏差,低方差-欠拟合

(2)训练集:误差小

验证集:误差大

低偏差,高方差-过拟合

(3)训练集:误差大

验证集:误差大

高偏差,高方差

这种接近线性的分类器,数据拟合度低。

而采用曲线函数或二次元函数会产生高方差,因为它曲线灵活性太高以致拟合了这两个错误样本和中间这些活跃数据。

1.3 机器学习基础

训练神经网络时用到的方法:

初始模型训练完成后,我首先要知道算法的偏差高不高,如果偏差较高,试着评估训练集或训练数据的性能。如果偏差的确很高,甚至无法拟合训练集,那么你要做的就是选择一个新的网络,比如含有更多隐藏层或者隐藏单元的网络,或者花费更多时间来训练网络,或者尝试更先进的优化算法。

如果方差高(过拟合),最好的解决办法就是采用更多数据,但有时候,我们无法获得更多数据,我们也可以尝试通过正则化来减少过拟合。

1.4 正则化

深度学习可能存在过拟合问题——高方差,有两个解决方法,一个是正则化,另一个是准备更多的数据,这是非常可靠的方法。

原理:

求成本函数

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。