【技术实现步骤摘要】
用于训练神经ODE网络的系统和方法
[0001]本专利技术涉及一种用于训练神经常微分方程(ODE)网络的计算机实现方法、以及用于训练神经网络的对应系统。本专利技术进一步涉及一种包括用于执行上述方法的指令的计算机可读介质。
技术介绍
[0002]神经网络的使用已经成为无数应用中的焦点,这些应用的范围从医疗保健和药物研发到机器人、制造和自主车辆。在许多应用中,神经网络被训练成提供诸如预测或判定(decision)之类的输出。例如,神经网络可以被训练为分类器,诸如用于将图像分类成一个或多个类别(自然地,语义分割任务和检测任务可以被认为是这种分类任务的特殊情况)。例如,使用神经网络作为分类器是特别有吸引力的,这是因为有可能通过向神经网络提供训练数据(例如,图像集合以及其对应分类)来训练神经网络。基于训练数据(例如,已知信息),神经网络可以确定并完善权重和其他网络参数,以在给定输入时获得正确分类。这些权重和参数高度依赖于所采用的神经网络架构,并且对神经网络的性能和可靠性具有相当大的影响。
[0003]因此,神经网络架构的选择可 ...
【技术保护点】
【技术特征摘要】
1.一种用于训练神经网络的计算机实现方法(500),所述神经网络包括神经常微分方程ODE块(440),所述方法包括:
‑
访问(510)定义了所述神经网络的模型数据;
‑
访问(510)包括多批训练数据(410)的训练数据集;以及
‑
在所述训练数据集(410)上并且使用第一常微分方程ODE求解器(430)来训练(520)所述神经网络;其中所述方法进一步包括访问第二ODE求解器;其中所述训练包括:初始化第一ODE求解器(430)的准确度参数,并且通过在所述训练的迭代的前向传递期间进行以下步骤从而在所述训练期间调整准确度参数:
‑
通过以下步骤来获得(530)所述神经网络的第一输出(460):
‑
将所述神经ODE块上游的层输出提供(531)给第一ODE求解器(430);
‑
将第一ODE求解器(430)应用(532)到所述神经ODE块(440)以获得第一ODE求解器(430)的输出;以及
‑
将第一ODE求解器(430)的输出馈送(533)到所述神经ODE块下游的层中;
‑
通过以下步骤来获得(540)所述神经网络的第二输出(465):
‑
将所述神经ODE块上游的层输出提供(541)给第二ODE求解器(435);
‑
将第二ODE求解器(435)应用(542)到所述神经ODE块(440)以获得第二ODE求解器(435)的输出;以及
‑
将第二ODE求解器(435)的输出馈送(543)到所述神经ODE块下游的层中;
‑
使用所述神经网络的第一输出(460)来评估(550)性能函数(470)以获得第一性能值,性能函数(470)量化了所述神经网络关于一批训练数据的性能特性;
‑
使用所述神经网络的第二输出(465)来评估(560)性能函数(475)以获得第二性能值;
‑
基于第一性能值与第二性能值之间的差异来调整(590)准确度参数。2.根据权利要求1所述的计算机实现方法(500),包括:
‑
确定(570)第一性能值与第二性能值之间的差异;
‑
将所述差异的量值与阈值进行比较(580);其中对准确度参数的调整(590)包括:基于所述差异的量值与阈值的比较来调整准确度参数。3.根据权利要求2所述的计算机实现方法(500),其中准确度参数是容差,并且其中基于所述差异的量值与阈值的比较来调整准确度参数包括:
‑
如果所述差异的量值大于阈值,则减小第一ODE求解器(430)的容差,并且如果所述差异的量值低于阈值,则增加第一ODE求解器(430)的容差。4.根据权利要求2所述的计算机实现方法(500),其中准确度参数是步长,并且其中基于所述差异的量值与阈值的比较来调整准确度参数包括:
‑
如果所述差异的量值大于阈值,则减小第一ODE求解器(430)的步长,并且如果所述差异的量值低于阈值,则增加第一ODE求解器(430)的步长。5.根据权利要求4所述的计算机实现方法(500),其中第二ODE求解器(435)具有比第一ODE求解器(430)更高的收敛阶。
6.根据任一前述权利要求所述的计算机实现方法(500),其中第二ODE求解器(435)被选择成具有与第一ODE求解器(430)相同或比第一ODE求解器(430)更小的预期离散化误差。7.根据任一前述权利要求所述的计算机实现方法(500),其中所述神经网络是图像分类器,所述图像分类器被...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。