动力系统与深度学习

首先向各位抱歉,常用的图床和WordPress好像对接有问题,相关图片都没有显示。如查看有图版,请移步至个人微信公众号:jacoxu_nlp ,谢谢。

动力系统与深度学习动力系统(Dynamical System):是数学上的一个概念。在动力系统中存在一个固定的规则,描述了几何空间中的一个点随时间演化情况。例如描述钟摆晃动、管道中水的流动,或者湖中每年春季鱼类的数量,凡此等等的数学模型都是动力系统[1]。也可以称之为动态系统(Dynamic System),动态系统的定义就更好理解一些:是指状态随时间而变化的系统。动态系统具有这样的特点:系统的状态变量随时间有明显的变化,是时间的函数;系统状况可以由其状态变量随时间变化的信息(数据)来描述。要特别指出的是,动态系统和系统的运动是两个不同的概念。运动是系统的基本属性,一切系统,包括静态系统,都是在不断地运动之中。唯有系统在运动中状态随时间而发生明显变化的,才是动态系统[2]。那么Dynamical System和Dynamic System是否存在一些区别?Wikepedia中对Dynamic System和Dynamical System的解释是一致的:“In mathematics, a dynamical system is a system in which a function describes the time dependence of a point in a geometrical space. Examples include the mathematical models that describe the swinging of a clock pendulum, the flow of water in a pipe, and the number of fish each springtime in a lake.”[3]。而Quora上有人认为两个概念的差异是微乎其微的,如果非要指明其差异性的话,回答者认为“Dynamic”是满足状态变量随时间变化的系统固有性质,而“Dynamical”更倾向于能够用数学精确描述该变化的特性[4]。

2010年法国尼斯大学Bruno Cessac教授的一篇62页论文“A View of Neural Networks as Dynamical System”[5],描述并分析了Spike神经元的空间结构(如下图所示)以及膜电位动力模型HH,LIF等。(注:Bruno Cessac教授是尼斯大学仿生视觉组的负责人(https://team.inria.fr/biovision/bruno-cessac/),曾主要研究物理、生物、社会以及人工神经网络中大规模动力系统的建模和分析,现在主要关注于视网膜建模)。

图 神经元结构及沿突触的脉冲传播响应

具体来讲,动力系统和深度学习之间存在如何关系,我们围绕如下几个问题展开:

1)是否一切状态随时间演化的模型都是动力系统,比如HMM模型?

根据如上定义,可以很清晰的理解一切状态随时间演化的模型都是动力系统,比如Spike Neural Networks, Recurrent Neural Networks, 以及Hidden Markov Model模型等。在Wikipedia中对HMM的介绍中有提到在HMM模型中,隐变量的状态空间是离散的,而观测变量可以离散也可以连续。当HMM模型泛化为连续状态空间时,隐层变量的马尔可夫过程可以看成是一个线性动力系统[6]。而离散状态空间的HMM仍可以看成是随机动态系统,具体可参见Andrew M. Fraser写的图书《Hidden Markov Models and Dynamical Systems》[7]。

图 《隐马尔可夫模型与动力系统》图书封面

2RNN变量随时间演变,那FNN/CNN等模型是否可视为动力系统?

前馈的DNN和CNN模型由于没有循环结构,因而认为其特征不存在时序信息。那么,能否将其视为动力系统?

是可以的,比如多伦多大学在NIPS2018年的最佳论文“Neural Ordinary Differential Equations”[10]中将特征在网络层的演化看成时间上的演化,并将参数沿梯度的迭代也看作是在时间上的演化,从而将微分方程与深度学习模型建立关联。如此,也可以用将自然语言处理领域的Transformer看作是动力系统。在Lu Yinping博士今年6月份公开在ArXiv的工作中[11],将Transformer看成一个多粒子动力系统:句子中的每个单词对应空间中的每个星体,FFN部分对应物理空间中的星体对流,而注意力部分对应物理空间中的扩展或星体间的相互关系。如下图所示。

图 物理解释的Transformer

3)从动力系统角度分析现有深度学习模型可以带来什么样的好处?

北京大学北京国际数学研究中心的董彬老师曾于2018年分享过一个talk:“Dynamic System View Of Deep Learning”[8]。其中Motivation中讲到当前深度学习算法还存在如下几个问题:

a)Learning from limited or/and weakly labeled data;

b) Learning from data of different types;

c) Theoretical guidance, transparency.

我们是否可以期待大家对深度学习进行严谨的数学分析?或许可以,不过阿兰图灵曾说过:

        “We also wish to allow the possibility than an engineer or team of engineers may construct a machine which works, but whose manner of operation cannot be satisfactorily described by its constructors because they have applied a method which is largely experimental.”

        我们也应当允许这样一种可能,那就是一个工程师或工程师团队可能会建造一台机器,它能够完成任务(通过图灵测试),但其工作的原理却未必能够被其创造者所完全理解,这是因为他们采用了一种试验为主的方法(来建造这台机器)。

然而,我们或许应该首先找到深度学习和数学的框架与关联关系,如下:

缺图。。。

那么,神经网络中的状态空间变化可以看成前向欧拉法,如下:

缺图。。。

基于此,可以提供理论上的收敛性证明[9],并且把网络训练看作优化控制问题进行理解。综上,通过将深度学习看作动力系统最大的好处是可以利用已有的数学成果提供严谨的理论支撑,进行网络结构组织,收敛性证明以及模型参数优化等工作。

[1] 刘永清, 动力系统. 大型动力系统的理论与应用: 分解, 稳定与结构. 卷 1[M]. 华南工学院出版社, 1988.

[2] 萧浩辉. 决策科学辞典: 人民出版社, 1995

[3] https://en.wikipedia.org/wiki/Dynamical_system

[4] https://www.quora.com/What-is-the-difference-between-a-dynamic-system-and-a-dynamical-system

[5] Cessac, B. A View of Neural Networks As Dynamical Systems [J]. International Journal of Bifurcation and Chaos, 2010, 20(06):1585-1629.

[6] https://en.wikipedia.org/wiki/Hidden_Markov_model

[7] Fraser B A M . Hidden Markov Models and Dynamical Systems[M]. Society for Industrial and Applied Mathematics, 2008.

[8] https://web.stanford.edu/~yplu/DynamicOCNN.pdf

[9] Thorpe M , Van Gennip Y . Deep Limits of Residual Neural Networks[J]. 2018.

[10] Chen R T Q, Rubanova Y, Bettencourt J, et al. Neural Ordinary Differential Equations[J]. 2018.

[11] Yiping Lu*, Zhuohan Li*, Di He, Zhiqing Sun, Bin Dong, Tao Qin, Liwei Wang, Tie-yan Liu “Understanding and Improving Transformer From a Multi-Particle Dynamic System Point of View.” Submitted. arXiv preprint:1906.02762

发表评论

电子邮件地址不会被公开。 必填项已用*标注