在我看来,深度学习算法和模型(即多层神经网络)比机器学习算法和模型(如SVM、随机森林、感知器、马尔科夫模型等)对过拟合更敏感。他们能够学习更复杂的模式。至少我是这么看的。尽管如此,我和我的同事对此仍有不同意见,我无法找到任何关于此的信息。我的同事说,深度学习算法很难受到过度拟合的影响。
是否有关于这方面的陈述(或意见)?
在我看来,深度学习算法和模型(即多层神经网络)比机器学习算法和模型(如SVM、随机森林、感知器、马尔科夫模型等)对过拟合更敏感。他们能够学习更复杂的模式。至少我是这么看的。尽管如此,我和我的同事对此仍有不同意见,我无法找到任何关于此的信息。我的同事说,深度学习算法很难受到过度拟合的影响。
是否有关于这方面的陈述(或意见)?
你的推理没有错。深度神经网络 (DNN) 比简单的 ML 算法(不包括 NN)具有更大的容量,甚至可以轻松记住非常复杂的数据集和过拟合。
然而,DNN 之所以如此有效,是因为它们通常应用于更难的任务,因此不太容易过拟合。例如,图像分类器可能会在包含数百万张图像的数据集上进行训练;一项更难过拟合的任务。
如果这是不可能的(例如,具有几千张图像的图像分类任务),则使用迁移学习。您可以从在大型数据集上预训练的模型初始化权重,使用其已经训练好的特征提取层并简单地微调最后一层。
数据增强在这里也有很大帮助,它有效地增加了训练集的大小并阻止 DNN 记忆样本。它非常有效,甚至可以在难以过度拟合的大型数据集中使用。
此外,DNN 采用多种方法来防止它们过度拟合。其中最突出的是dropout,它是一个非常有效的正则化器。批量标准化也被证明是一种有效的正则化器。SGD允许您探索比 GD 更多的参数,这对于防止过度拟合也是有效的。最后,提前停止和参数规范惩罚在 DNN 中并不少见。