📢 转载信息
原文作者:Towards Data Science
多年来,我们一直被教导,机器学习模型应该具有的参数数量应该小于或等于训练数据的数量。超过这个阈值,模型就会开始“过拟合”,在训练数据上表现出色,但在新数据上表现不佳。
在深度学习出现之前,这一规则是成立的。但是,今天我们看到的深度学习模型通常都有数百亿甚至数万亿的参数,这远远超过了训练数据的数量。然而,这些模型仍然具有出色的泛化能力,并且在测试集上表现得比我们预期的要好得多。
为什么会这样?
参数过多带来的收益
深度学习中的超参数优化已经成为一门艺术。在过去的几年里,我们不断地向模型添加更多的参数(即提高模型的容量),并发现性能会持续提高。这与我们被教导的关于模型的过拟合理论是相矛盾的。
这种性能的持续提高被称为“超参数优化”现象,但实际上它超越了简单的超参数调整。它指向了深度学习模型具有的某种特性,使其能够以我们尚未完全理解的方式进行泛化。
参数过多与泛化
理论上,当模型的参数数量超过训练数据量时,模型就会过拟合。这是因为模型可以“记忆”训练集中的每个数据点,包括噪声,而不是学习潜在的模式。
然而,深度神经网络似乎天生就具有克服这种过拟合的能力。它们似乎可以找到一个“最优解”,既能准确地拟合训练数据,又不会过度依赖噪声。
在深度学习中,我们发现存在一个“双下降”现象:随着模型复杂性(参数量)的增加,测试误差首先下降(欠拟合区域),然后开始上升(过拟合区域),但如果继续增加复杂度,测试误差会再次下降(超参数优化区域)。
表达能力与泛化能力
深度网络之所以能以令人惊讶的方式泛化,部分原因在于它们拥有极高的表达能力。这意味着它们可以表示非常复杂的函数。
然而,表达能力强并不一定意味着模型会过拟合。在实际应用中,优化算法(如随机梯度下降SGD)和正则化技术(如Dropout、权重衰减)在引导模型朝向更具泛化能力的解决方案方面起着至关重要的作用。
这些技术似乎偏好于那些具有更好泛化能力的模型解,即使这些模型具有巨大的容量。
模型是如何“理解”数据的?
对于深度网络来说,数据空间中存在着大量的解决方案。它们似乎更倾向于那些“平坦”的最小值。平坦的最小值通常与更好的泛化能力相关联,因为它们对训练数据中的微小变化不那么敏感。
- 平坦最小值: 损失函数曲面上的区域,其中损失值在参数空间中变化缓慢。这些区域通常意味着更强的泛化能力。
- 尖锐最小值: 损失函数曲面上的区域,其中损失值对参数变化非常敏感。这些通常是过拟合的标志。
即使拥有数十亿个参数,SGD和相关的优化技术似乎总能找到一个相对平坦的最小值。
信息瓶颈理论
信息瓶颈理论提供了一种理解深度学习泛化的另一种视角。该理论认为,一个好的模型在压缩输入信息(保留对预测任务重要的信息)和保持预测准确性之间达到了最佳平衡。
当模型容量非常大时,优化算法似乎会自然地将信息压缩到一个更低维的表示中,从而实现泛化。
结论
深度学习模型之所以性能超出预期,是因为它们在巨大的参数空间中,通过优化算法和正则化机制,倾向于找到更具泛化能力的解,而不是仅仅记忆训练数据。理解这种现象对于构建更高效、更可靠的人工智能系统至关重要。
🚀 想要体验更好更全面的AI调用?
欢迎使用青云聚合API,约为官网价格的十分之一,支持300+全球最新模型,以及全球各种生图生视频模型,无需翻墙高速稳定,文档丰富,小白也可以简单操作。
评论区