8

第三次神经网络高潮(深度学习)的终结者问题是什么?

 3 years ago
source link: https://zhuanlan.zhihu.com/p/81371117
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

第三次神经网络高潮(深度学习)的终结者问题是什么?

文因互联 CEO

终结第一次神经网络高潮(感知器)的是异或(XOR)问题。

终结第二次神经网络高潮(反向传播,BP)的是局部最优和伪吸引子问题。

这些“终结者”都是历史上难以逾越的落地障碍。当时的学者也都提出过数以千计的方法想给这些“终结者”问题打补丁,但是直到有新的架构出现,补丁的效果并不太好。

第二代终结者本身又是为了解决第一代终结者而导致的。异或问题本质上是线性不可分问题。为了解决这个问题,在网络里引入非线性(及将这些非线性函数组合的参数的学习方法),但是这样复杂的高维非线性模型,其稳定梯度下降迭代终点(“吸引子”)往往不一定是希望找到的结果(全局最优解)。

因为这个问题,又引发了泛化能力弱、收敛速度慢问题等其他的附加症。参数空间维数的大幅增加,导致了维度灾祸( the curse of dimensionality),参数组合的数量指数增长,而预测的精度与空间维数的增加成反比,在90年代有限的算力支持下,规模稍大的问题就解决不了了。

总的来说,神经网络的演进一直沿着模块化 + 层次化的方向,不断把多个承担相对简单任务的模块组合起来。BP网络是感知器的层次化,深度学习网络则是多个反向传播网络的层次化——后来也出现了多种非BP网络的深度层次化。当然,层次化并不仅仅是网络的拓扑叠加,更重要的学习算法的升级,例如简单地加深层次会导致BP网络的梯度消失问题。

从其本质上,深度学习网络可以比经典的BP网络处理更复杂的任务,在于它的模块性使得它可以对复杂问题“分而治之”(Divide and Conquer)。无论是多层前馈网络,还是循环神经网络,都体现了这种模块性。因为我们处理的问题(图像、语音、文字)往往都有自然的模块性,学习网络的模块性若匹配了问题本身内在的模块性,就能取得较好的效果。

这可以看成一种连接主义的“动态规划”,把原来全连接网络的训练这种单一决策过程,变成了多阶段决策过程。例如在多层卷积网络对图像的处理中,会出现不同的层次依次“抽取”出了从基础特征到高层次模式的现象;每一层基于上一层的输入,就相当于很多子任务可以被重用了。所以这种方法也被称为表示学习(representation learning)方法。这样的好处是多方面的:既极大提高了学习收敛的速度(解决了维度灾祸),也可避免那些“不合理”的局部最优解(因为它们在模块性匹配的过程中被自然淘汰了)。

终结第三次神经网络高潮(深度学习)的会是什么呢?会不会是解决第二代终结者而导致的新问题呢?当我们加深网络并引入模块性的时候,会带来什么副作用呢?

学习反而变得越来越贵,深度学习在很多场景下反而变成了“暴力美学”,成为拼数据、拼GPU的烧钱游戏。但是大多数的领域落地问题,都不能承担这种成本,尤其是很多组织的问题解决必须从低成本小问题开始。“暴力美学”式的深度学习,就只能停留在“头部问题”(即存在大量数据和大量算力的问题),而无法解决大多数垂直领域问题。

学习的结果越来越难以解释和定向优化,整个系统是个“炼丹”的黑箱。当然这个问题不是深度学习独有的,是整个连接主义方法共同的问题。只是深度学习把这种炼丹推到了一个全新的高度,调参的效果往往不可理喻,没法解释。但是非常多的应用问题,如医疗和自动驾驶,的确是需要可解释性和定向优化的,这就限制了应用的效果。

黑箱问题本身可能还不是致命的,但是它又带来了另一个问题:一些人看起来很清晰的问题,基于海量的训练数据还是学习不好。这类问题通常是一种“递归性生成规则”,最简单的如数字的构成规则,基于这些规则可能生成无穷无尽的序列。基于纯语料对齐训练,就很难得到不出错的中英文数字翻译。类似的递归性序列不仅在语言中大量存在,在表格、篇章等结构中也广泛存在。深度学习到底能不能解决这类语法归纳问题,还是个待研究的问题。

另一个问题,也是近来学术界关注的热点,如何把先验知识或者“知识图谱”(即数据本身的结构性)融合进深度神经网络?各类的向量化方法被提出。但是除了词向量,其他更复杂的知识结构(例如属性和二元关系)在工程上依然鲜有成功。在自然语言处理中,外源知识恐怕是难以避免的,目前的向量化方法,似乎还不足以独立完成这个任务。

深度学习的这些问题(“第三代终结者”问题),也同样是是难以仅仅用拓扑的改良来解决的,例如增加神经网络层数或者再提升数据的量级。它们可能需要我们进一步提出更进步的网络结构,或者融合其他的AI工具,而不仅仅是“打补丁”(和二十多年前一样)。终结者问题是好问题,克服它们就能带来范式的变迁。

revised 2019-09-06


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK