再谈神经网络的惊人表现:两步跳跃

我在2022年2月曾写博客谈论神经网络的惊人表现,七个月过去了,在泛读机器学习概论课程参考书(Tom Mitchell著),阅读更多文献,产生更多思考后,今天我再次探讨神经网络。本文主要探讨训练神经网络解决实际问题需要经历的“两次跳跃”。

按照机器学习讨论的惯例,我们的任务是逼近一个目标函数,这里目标函数由神经网络所定义。训练神经网络解决实际问题,一般经过如下两步:1)构造训练集,通过定义损失函数对网络参数进行优化的方式让网络在训练集上逼近目标函数;2)在测试集或实际问题上,通过网络给出预测,此预测仍然接近目标函数。

仔细考虑第一步,损失函数一般不满足凸性,没有理论性质良好的优化方法(如不能保证不陷入局部最优),因此网络能够在训练集上多好地逼近目标函数是未知的,只能说是尽力而为。

仔细考虑第二步,即使网络在训练集上逼近了目标函数,也不能保证它在未见的实例上逼近目标函数(表现良好)。从已知(训练集)到未知(未见实例),这是一个归纳的过程。人们相信第二步能成功完成,本质上是相信ML理论中的归纳学习假设:“任意假设只要在足够大的训练集中很好地逼近目标函数,它也能在未见实例中很好地逼近目标函数”。

归纳学习假设之所以有可能成立,是因为我们的假设空间是有偏的,有一些先验的假设。例如,决策树学习中,我们倾向于选择短的树;又如,在神经网络学习中,我们相信目标函数能被神经网络所表示(Mitchell认为这意味着决策面有一定的光滑性)。无偏的学习器注定无功,它们无法由已知推及未知。就像我在上一篇文章中所提到的“复制存储机”(Mitchell称之为Rote Learner),或Mitchell举出的假设空间为全空间的Candidate Elimination算法,在面对未知实例时,都不能给出预测。

综上,神经网络从训练到有效应用需要经历“优化”和“泛化”这两步理论性质尚不明晰的跳跃。之所以称之为跳跃,是因为我们不清楚这两步是否会失败,或会以什么程度成功。实践中“优化“这一步跳跃几乎总十分成功(诸多优化器,如Adam,在神经网络训练中优化表现很好),而我们对”泛化“这一步的信任本质上是归纳学习假设。

参考内容:

  1. Machine Learning by Tom Mitchell, Chapter 2, Concept Learning and the General-To-Specific-Ordering

Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *