欧拉法求解微分方程_神经网络常微分方程 (Neural ODEs) 解析

本文探讨了神经网络常微分方程(Neural ODEs)在处理连续时间序列和动态系统建模中的应用。通过与传统ResNet的对比,展示了Neural ODEs在存储效率、自适应计算和参数效率方面的优势。通过实例,如螺旋形函数、随机矩阵函数等,展示了Neural ODEs如何学习并拟合动态系统的行为。虽然当前仍面临挑战,但Neural ODEs为序列建模和生成模型提供了新的视角。
摘要由CSDN通过智能技术生成
7a72dbdcae241878c9e768b8390b6443.gif

图:可视化的神经网络常微分方程学习动力系统

在本文中,我将尝试简要介绍一下这篇论文的重要性,但我将强调实际应用,以及我们如何应用这种需要在应用程序中应用各种神经网络。

原标题 | Neural ODEs: breakdown of another deep learning breakthrough

作 者 | Alexandr Honchar

翻 译 | had_in(电子科技大学)、HERAT(中山大学)、王鑫雨(山东科技大学)

编 辑 | Pita

大家好!如果你正在读这篇文章,意味着你一直留意着AI前沿技术。今天所要谈及的话题来自于NIPS2018,而且这篇文章还是NIPS2018会议的最佳论文:神经常微分方程(Neural ODEs,论文地址:https://arxiv.org/abs/1806.07366)。在本文中,我将尝试简要介绍一下这篇论文的重要性,但我将强调实际应用,以及我们如何应用这种需要在应用程序中应用各种神经网络,如果可以的话。与往常一样,如果您想直接浏览代码,可以查看此GitHub储存库(https://github.com/Rachnog/Neural-ODE-Experiments),我建议您在Google Colab中启动它。

为什么我们关注常微分方程呢?

首先,让我们快速简要概括一下令人讨厌的常微分方程是什么。常微分方程描述了某些由一个变量决定的过程随时间的变化。这个时间的变化通过下面的微分方程来描述。

f439a4f1c1b43b9ab5fa959f6826766b.png

简单的常微分方程的例子

通常情况下,如果我们知道了某些初始条件(过程开始的地方),并且我们想了解这个过程将如何变化成某些最终状态,我们才能讨论解这个微分方程。求解函数也被叫做积分曲线(因为我们可以通过对这个方程积分得到方程的解x(t)).让我们尝试用SymPy软件包来解一下上面图片上的方程:

from sympy import dsolve, Eq, symbols, Functiont = symbols('t')x = symbols('x', cls=Function)deqn1 = Eq(x(t).diff(t), 1 - x(t))sol1 = dsolve(deqn1, x(t))

这将会得到下面的解:

Eq(x(t), C1*exp(-t) + 1)

其中C1为常数,可以在给定初始条件时进行确定。如果以恰当的形式给出微分方程,我们可以用解析法进行求解,但通常是采用数值方法求解。最古老和最简单的算法之一是欧拉法:其核心思想是用切线逐步逼近求解函数:

6d8cccd4725f34028846bf2dfdb2ddea.png

http://tutorial.math.lamar.edu/Classes/DE/EulersMethod.aspx

请访问上图下方的链接可以获得更详细的解释,在最后,我们得到了一个非常简单的公式,如下

480603722414161dd4d40c9d26cf501d.png

http://tutorial.math.lamar.edu/Classes/DE/EulersMethod.aspx

其在n个时间步长的离散网格上的解是

1065326b5665cb21525fa2eea410f873.png

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值