0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

将深度学习和常微分方程结合在一起,提供四大优势

DPVg_AI_era 来源:未知 作者:胡薇 2018-06-26 11:19 次阅读

Hinton创建的向量学院的研究者提出了一类新的神经网络模型,神经常微分方程(Neural ODE),将神经网络与常微分方程结合在一起,用ODE来做预测。不是逐层更新隐藏层,而是用神经网络来指定它们的衍生深度,用ODE求解器自适应地计算输出。

我们知道神经网络是一种大的分层模型,能够从复杂的数据中学习模式。这也是为什么神经网络在处理图像、声音、视频和序列行动时有很多成功的应用。但我们常常忘记一点,那就是神经网络也是一种通用函数逼近器,因此,神经网络可以作为数值分析工具,用来解决更多的“经典”数学问题,比如常微分方程(Ordinary Differential Equation,ODE)。

2015年横空出世的残差网络ResNet,已经成为深度学习业界的一个经典模型,ResNet对每层的输入做一个reference,学习形成残差函数,这种残差函数更容易优化,使网络层数大大加深。不少研究者都将 ResNet 作为近似ODE求解器,展开了对 ResNet的可逆性(reversibility)和近似计算的研究。

在一篇最新的论文里,来自多伦多大学和“深度学习教父”Geoffrey Hinton创建的向量学院的几位研究者,将深度学习与ODE求解器相结合,提出了“神经ODE”(Neural ODE),用更通用的方式展示了这些属性。

他们将神经ODE作为模型组件,为时间序列建模、监督学习和密度估计开发了新的模型。这些新的模型能够根据每个输入来调整其评估策略,并且能显式地控制计算速度和精度之间的权衡。

将深度学习和常微分方程结合在一起,提供四大优势

残差网络、递归神经网络解码器和标准化流(normalizing flows)之类模型,通过将一系列变化组合成一个隐藏状态(hidden state)来构建复杂的变换:

其中。这些迭代更新可以看作是连续变换的欧拉离散化。

当我们向网络中添加更多的层,并采取更少的步骤时会发生什么呢?在极限情况下,我们使用神经网络指定的常微分方程(ODE)来参数化隐藏单元的连续动态:

从输入层开始,我们可以将输出层定义为在某个时间时这个ODE的初始值问题的解。这个值可以通过黑盒微分方程求解器来计算,该求解器在必要的时候评估隐藏单元动态,以确定所需精度的解。图1对比了这两种方法。

图1:左:残差网络定义一个离散的有限变换序列。右:ODE网络定义了一个向量场,它不断地变换状态。圆圈代表评估位置。

使用ODE求解器定义和评估模型有以下几个好处:

内存效率。在论文第2章,我们解释了如何计算任何ODE求解器的所有输入的标量值损失的梯度,而不通过求解器的操作进行反向传播。不存储任何中间量的前向通道允许我们以几乎不变的内存成本来训练模型,这是训练深度模型的一个主要瓶颈。

自适应计算。欧拉方法(Euler’s method)可能是求解ODE最简单的方法。现代的ODE求解器提供了有关近似误差增长的保证,检测误差的大小并实时调整其评估策略,以达到所要求的精度水平。这使得评估模型的成本随着问题复杂度而增加。训练结束后,可以降低实时应用或低功耗应用的精度。

参数效率。当隐藏单元动态(hidden unit dynamics)被参数化为时间的连续函数时,附近“layers”的参数自动连接在一起。在第3节中,我们表明这减少了监督学习任务所需的参数数量。

可扩展的和可逆的normalizing flows。连续变换的一个意想不到的好处是变量公式的变化更容易计算了。在第4节中,我们推导出这个结果,并用它构造了一类新的可逆密度模型,该模型避免了normalizing flows的单个单元瓶颈,并且可以通过最大似然法直接进行训练。

连续时间序列模型。与需要离散观测和发射间隔的递归神经网络不同,连续定义的动态可以自然地并入任意时间到达的数据。在第5节中,我们构建并演示了这样一个模型。

ODE求解器提供了一个通用的反向传播算法

论文作者、多伦多大学助理教授David Duvenaud表示,他们通过ODE求解器,提供了一个通用的backprop,但他们的方法是从可逆性上入手,而不是在ODE求解器的运算里进行反向传播(因为这样做对内存消耗很大)。这个方法已经添加到 autograd。

另一位作者、多伦多大学的博士生Tian Qi Chen也表示,他们这项工作创新的地方就在于提出并且开源了一种新方法,在自动微分的框架下,将ODE和深度学习结合在一起。

此外,这项研究还得到了很多意外的收获。例如,构建了连续标准化流(continuous normalizing flows),可逆性强,可以使用宽度,就像 Real NVP一样,但不需要对数据维度分区或排序。

标准化流与连续标准化流量的比较。标准化流的模型容量由网络的深度(K)决定,而连续标准化流的模型容量可以通过增加宽度(M)来增加,使它们更容易训练。来源:研究论文

还有时间连续RNN(continuous-time RNNs),能够处理不规则的观察时间,同时用状态依赖的泊松过程近似建模。下图展示了普通的RNN和神经ODE对比:

Tian Qi Chen说,他尤其喜欢变量的即时改变,这打开了一种新的方法,用连续标准流进行生成建模。

目前,作者正在讲ODE求解器拓展到GPU上,做更大规模的扩展。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4570

    浏览量

    98707
  • 深度学习
    +关注

    关注

    73

    文章

    5232

    浏览量

    119892

原文标题:Hinton向量学院推出神经ODE:超越ResNet 4大性能优势

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    微分方程经典求解法

    微分方程经典求解法 个线性系统,其激励信号      &
    发表于 09-10 12:23

    Matlab求解微分方程(ODEs/PDEs)

    本帖最后由 A670521546 于 2011-7-8 10:29 编辑 常微分方程(ODEs)的MATLAB数值解法》偏微分方程(PDEs)的MATLAB数值解法》Z变换和差分方程
    发表于 07-08 08:42

    matlab应用之常微分方程

    理解常微分方程单步法与多步法思想,掌握常用算法的设计,掌握用MATLAB实现的数值解法。利用MATLAB中数值解法“”求解,并用图形表示各种方法的精度。利用常微分解法可知方程的解为:for i=2
    发表于 11-03 15:36

    几个单独的程序组合在一起

    怎样把几个个单独的程序组合在一起,我现在在做环境检测仪,我可不可以先把温度,湿度,噪声等程序先单独做,然后把它们组合在一起,可以吗,怎么组合,求大神告知
    发表于 03-23 14:22

    请问ISE和Mircoblaze是如何结合在一起的?

    大家好,有人可以向我解释下ISE和Mircoblaze是如何结合在一起的吗?目前我已经在ISE中用VHDL编写了个程序,我希望在我的设计中添加个mircoblaze。我该怎么做以
    发表于 02-19 10:59

    labview中模糊控制和pid是怎么结合在一起

    labview中模糊控制和pid是怎么结合在一起的?求高手解答,有简单的模糊控制和pid结合在一起的vi文件最好,
    发表于 03-13 08:04

    labview 中如何把模糊控制和pid结合在一起呢?

    labview中模糊控制怎么导入?并且和pid结合在一起呢?有没有相关的VI做参考,求帮助,抱拳
    发表于 03-14 10:57

    USAT和USB BooLoad能结合在一起

    嗨,有没有可能将USAT和USB BooLoad结合在一起,以便它可以从任个电缆获得固件?谢谢
    发表于 04-24 08:39

    如何高图形性能和低功耗更好地结合在一起

    本文介绍了Silicon Motion开发的新架构如何高图形性能、低延迟、高效数据压缩和低功耗更好地结合在一起
    发表于 06-01 06:52

    Teamcenter、TIA Portal和虚拟调试如何才能结合在一起

    PDM是什么?PLM是什么?Teamcenter、TIA Portal和虚拟调试如何才能结合在一起
    发表于 09-29 07:36

    如何DMA和环形的FIFO队列结合在一起来使用呢

    如何DMA和环形的FIFO队列结合在一起来使用呢?有哪些实验步骤呢?
    发表于 12-09 08:05

    常微分方程的MAtLAB解法

    摘要:对一些不能求解解析解的常微分方程和偏微分方程进行精确求解是非常困难的,探讨了用MATLAB方法对此类方程进行求解,结合实例介绍了MATLAB数值计算的方法,先将物体的运
    发表于 01-08 21:24 61次下载

    常微分方程复习,常微分方程pdf

    常微分方程复习,常微分方程pdf:微分方程的一般概念线性常微分方程的性质一阶线性常微分方程二阶线性常系数
    发表于 04-23 22:08 0次下载

    常微分方程_(王高雄,第三版)课后答案

    该文档是课本《常微分方程》(王高雄,第三版)的课后答案,里面详细写出了《常微分方程》(王高雄,第三版)课后习题答案。
    发表于 03-04 15:58 0次下载

    MATLAB数学实验第六章matlab求解常微分方程.pdf

    主要介绍了用matlab方法求解初值问题和边值问题的常微分方程采用四阶龙格库塔法和欧拉法,含matlab代码
    发表于 12-30 11:01 0次下载