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

简介: 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上,做更大规模的扩展。

论文:神经常微分方程



原文发布时间为:2018-06-21

本文作者:闻菲,肖琴

本文来自云栖社区合作伙伴新智元,了解相关信息可以关注“AI_era”。

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

相关文章
|
Web App开发 测试技术
使用Selenium模拟鼠标滚动操作的技巧
本文介绍了使用Selenium进行Web自动化测试时如何模拟鼠标滚动操作。模拟滚动对于处理动态加载的内容至关重要。通过`ActionChains`类,可以实现向下滑动1000像素的操作。示例代码展示了如何结合滚动来截取长页面的完整图片。总结来说,Selenium的`ActionChains`使得模拟用户行为,如滚动,变得简单,便于执行自动化任务。
|
Java 开发工具 Android开发
【 uniapp 】打包Android的apk(原生APP-云打包),及发布测试
【 uniapp 】打包Android的apk(原生APP-云打包),及发布测试
【 uniapp 】打包Android的apk(原生APP-云打包),及发布测试
|
自然语言处理 JavaScript 前端开发
一文了解HarmonyOS系统架构
HarmonyOS是一款面向 万物互联时代的、全新分布式操作系统。在传统的单设备系统能力基础上,HarmonyOS提出了基于`同一套系统能力`、`适配多种终端形态`的分布式理念。能够支持手机、平板、智能穿戴、智慧屏、车机等多种终端设备,提供全场景(移动办公、运动健康、社交通信、媒体娱乐等)业务能力。
3685 0
一文了解HarmonyOS系统架构
|
安全 Go 数据安全/隐私保护
Flutter开发笔记:Flutter路由技术
Flutter开发笔记:Flutter路由技术
1653 0
|
机器学习/深度学习 存储 人工智能
白话文讲解大模型| Attention is all you need
本文档旨在详细阐述当前主流的大模型技术架构如Transformer架构。我们将从技术概述、架构介绍到具体模型实现等多个角度进行讲解。通过本文档,我们期望为读者提供一个全面的理解,帮助大家掌握大模型的工作原理,增强与客户沟通的技术基础。本文档适合对大模型感兴趣的人员阅读。
2292 121
白话文讲解大模型| Attention is all you need
|
机器学习/深度学习 数据采集 算法
机器学习在生物信息学中的创新应用:解锁生物数据的奥秘
机器学习在生物信息学中的创新应用:解锁生物数据的奥秘
1022 36
|
Java API 开发工具
如何通过淘宝商品详情接口实现商品 SKU、优惠价、价格等参数的实时更新?
要合法获取淘宝商品详情数据,首先需通过淘宝开放平台注册开发者账号并获得App Key与App Secret。接着根据业务需求申请对应的商品详情数据接口权限,并通过官方文档了解接口详情。获取访问令牌后,按照文档构建请求URL并附加必要参数及令牌以调用接口。此外,考虑使用淘宝提供的SDK简化开发流程,如Python SDK等。体验API:b.mrw.so/2Pv6Qu。
|
安全 网络安全 网络虚拟化
详细探讨 Cisco ASA VPN 的故障排除和调试方法
详细探讨 Cisco ASA VPN 的故障排除和调试方法
784 0
详细探讨 Cisco ASA VPN 的故障排除和调试方法
|
缓存 网络协议 网络性能优化
Windows 2012 上网慢如何解决
Windows 2012 上网慢如何解决
342 0
|
网络协议 数据库 网络架构
ENSP中OSPF多区域管理 (原理和配置)
OSPF 多区域的主要作用是缩小链路状态数据库和路由表的规模,减少路由更新的频率,提高网络的可扩展性,实现路由过滤和路由汇总,从而提高网络的性能、稳定性、安全性和可管理性。OSPF 多区域的主要作用如下ABR的摘要 配置命令
1052 0
ENSP中OSPF多区域管理 (原理和配置)

热门文章

最新文章