参数和超参数
算法中的learning rate a(学习率)、iterations(梯度下降法循环的数量)、L(隐藏层数目)、n(隐藏层单元数目)、choice of activation function(激活函数的选择)都需要你来设置,这些数字实际上控制了最后的参数W和b的值,所以它们被称作超参数。
实际上深度学习有很多不同的超参数,之后我们也会介绍一些其他的超参数,如momentum、mini batch size、regularization parameters等等
超参数需要人为设定的,参数是模型训练的,所以超参数的设定对神经网络的训练是很重要的。
训练,验证,测试集(Train / Dev / Test sets)
划分原则
在机器学习发展的小数据量时代,常见做法是将所有数据三七分,就是人们常说的70%验证集,30%测试集,如果没有明确设置验证集,也可以按照60%训练,20%验证和20%测试集来划分。这是前几年机器学习领域普遍认可的最好的实践方法。
如果只有100条,1000条或者1万条数据,那么上述比例划分是非常合理的。
数据集规模较大的,验证集和测试集要小于数据总量的20%或10%。
要确保验证集和测试集的数据来自同一分布。
偏差和方差
(主要看图,一目了然)
假设这就是数据集,如果给这个数据集拟合一条直线,可能得到一个逻辑回归拟合,但它并不能很好地拟合该数据,这是高偏差(high bias)的情况,我们称为“欠拟合”(underfitting)。
相反的如果我们拟合一个非常复杂的分类器,比如深度神经网络或含有隐藏单元的神经网络,可能就非常适用于这个数据集,但是这看起来也不是一种很好的拟合方式分类器方差较高(high varianceÿ