快捷搜索:  MTU2MDQyMzExNw`

机器学习已兴?数学模型将死?

对付那些擅擅长用微分方程、概率论办理问题的数学家们来说,素有“黑盒子”之称机械进修每每是要被踢到小看链底真个。

然则,在与各行各业中,绝大年夜多半公司(小到始创公司,大年夜到国际巨鳄)都在寻求运用机械进修的措施。跟着企业赓续地将机械进修融入其文化与组织中,这事也变得越来越普遍。

故意思的是,在本科和硕士教导中,数学专业内部居然也都漫溢起了机械进修的热潮。举例说,牛津大年夜学的“深度进修理论”硕士课程在其设立的第一年就被逾额报名。

更惊人的是,很多半学博士生盘算将机械进修嵌入到它们的钻研课题中,从而形成将“传统”(ODE和PDE)和“今世”(深度进修)相结合和新型混杂模型。

以是,机械进修是否会终极取代数学建模?

假如数学模型在科研领域无法冲破,我们终极是否会应用机械进修的措施来得到建模上的进展呢?

当然不是!我觉得,机械进修和数学模型该当是互补的关系——充分结合二者的气力必然会孕育发生有趣的新模型。

为了阐明我的不雅点,我构想了一个例子,让我们开启一趟科技文明之旅!在这个虚构的文明中,机械进修相称蓬勃,然而这个文明的数学却糟糕得很,尤其是还不会微积分。

一个虚构的文明

假设我们正处于一个微积分后进但深度进修蓬勃的科技文明中。

和大年夜多半文明一样,它们都致力于用炮弹进击自己的对手。两位来自同一阵营的科学家在对他们刚发行的大年夜炮的进击范围进行建模。

科学家可以节制下列身分:

大年夜炮里装载的弹药总量(例如炮弹的发射速率)

大年夜炮的角度

科学家可以丈量下列内容:

弹丸从大年夜炮中射出去的直线距离。

*假设地面完全水平。

从数学的角度上,他们盼望找到一个模型/函数F,这个函数能基于所有速率v和角度θ进行猜测。

s=F(v,θ)

使得这个结果靠近于真实的行进间隔。

因为没有炮弹在空中移动的相关常识贮备,科学家们采纳了数据驱动的要领。

数据采集

科学家们用一天的光阴来以各类火力及角度进行大年夜炮射击。每次他们焚烧发射,他们都邑丈量发射点和炮弹终点间的间隔。然则,他们的丈量结果并不完全正确,每次丈量都邑引入一些偏差。

在那一天的光阴中,他们盘算发射1000次炮弹,孕育发生1000个三元数组(vi,θi,si),此中θi是弧度制的。

这些数据点散播如下图所示:

不用模型的措施

办理问题的最简单措施便是不应用模型,由于数据就能化身为模型!在这种措施中,他们选用那些最靠近于他们想猜测的情景的历史数据,应用这些历史数据算作猜测模型(即KNN模型)。例如:

这种纯数据驱动的要领有着显着的毛病。假如他们得到的数据不能覆盖所有的输入可能性,或者数据过于稀疏,这种要领就会孕育发生问题。在这个例子中,假如要猜测速率大年夜于10的射击间隔,没有模型的话他们就无法进行精准猜测。

基于线性模型的措施

从数据看来,他们期望的函数长短线性的,而且线性模型弗成能将结果猜测得很准确。然则,线性模型并非完全没有代价,在很多利用处景下它是一种根基模型,以是这两位科学家抉择先用个线性模型试试。

线性模型的数学表达如下:

在表达式中,wi∈R是权重,b∈R是偏移项,这些值都邑被确定下来。我们用PyTorch实现线性模型,并应用随机随机梯度下降法(当然还有其他更好更简单的措施)探求模型参数。

正如预期的那样,建模结果异常糟糕。

“黑盒”登场——深度神经收集

科学家们在机械进修钻研和谋略框架设计方面投入了大年夜量资金,是以他们在面对问题时爱好以深度神经收集的要领构想办理规划。说白了便是,他们爱好应用多层感知器系统,它包孕有多个线性层,层与层之间靠非线性激活函数相连。模型可以按如下形式描述:

我们用Adam optimizer对模型进行练习,结果如下:

对付在这方面没有履历的人,在看到神经收集的猜测结果的时刻,基础都邑认为赞叹!至今为止,这也是深度进修传布盛广的主要缘故原由——它不只有用,且效果显明。只是我们并不知道为什么。

用数学说话形貌“准线性措施”

在上述的黑匣子模型中,科学家们有一个能够准确猜测大年夜炮射击间隔的模型,但顾名思义,他们对模型的形式没有直不雅理解。科学家们热衷于在应用机械进修措施的同时规复这种直不雅理解,并从新应用线性模型。

我们高中的时刻都学过三角函数,科学家们觉得这个问题可能会涉及一些三角函数与速率的乘积。于是他们把模型写成非线性基函数的线性组合:

把非线性嵌入到线性模型之后,模型可以像线性模型一样谋略参数。优化后,模型为:

在这种环境下,除了sin(2θ)的参数,优化将其他所有参数归零。

将F与数据进行对照,他们发明模型异常具有猜测性。不仅如斯,模型的公式短小精练!当然,他们能选中三角函数也是异常“幸运”了。

数学措施——无数据模型

很多年后,微积分终于被发清楚明了!于是,两位老科学家开始从新核阅这个问题。

1.假设方程

低速炮弹的物理模型异常简单。炮弹有垂直向下的重力加速率,恒定为-g。因为在x偏向上没有感化在射弹上的力,它始终维持其初始速率。该模型可以写成二阶微分方程组:

初值前提为:

后两个方程式描述了炮弹最初发射时的速率的水温和垂直分量。这些方程描述了系统,但若何办理这些问题呢?

2.数值积分

平日在数学中,写下微分方程是一个简单的部分,大年夜部分光阴都花在试图办理它们上面!

他们写出了该问题的一阶常微分方程(ODE):

初值前提为:

易证这两个方程相同。

积分在数学中无处不在,有多种措施来进行数值积分。最简单和最直不雅的措施是欧拉方程,它从初始点开始,并在该点的梯度偏向上走一小步,即:

应用数值积分,可以准确地猜测炮弹的全部轨迹。

着陆点的位置是x(t*),它们可以从猜测的轨迹中提取。

比拟于机械进修模型,这一数学模型的一个显着上风是,我们可以很随意马虎地办理更繁杂的问题——例如不平坦的地面,或者从塔上发射炮弹(y(0)≠0)

3.直接求解

着末,两位科学家应用了积分来求解,事实证实问题并非如斯艰苦。x和y的方程可以自力争解。经由过程求解每个方程(并利用初始前提)给出。

他们以x和y坐标作为光阴的函数。什么时刻射弹击中了地面呢?当y=0时!即:

求解t*=0(大年夜炮射击之前),并求解t*=2vsinθg(当它击中地面时)。将第二个t*值插入到x的等式中,获得终极的行进间隔,即是:

那么他们的终极猜测模型便是

他们发明这与准线性措施吻合。实际上,准线性措施也给出了他们对引力常数的预计。

神常常微分方程措施-进修动力系统

着末,假设他们不知道物理模型,只有一个常微分方程系统

此中f1和f2是未知的(为简洁起见省略虚拟变量)。

NIPS近来颁发的一篇论文(https://papers.nips.cc/paper/7892-neural-ordinary-differential-equations)提出了一种进修常微分系统的措施。简而言之,它经由过程用神经收集调换f1,f2并数值积分神经收集来得到轨迹来实现这一点。进修可以正常进行,由于数值积分措施具有明确定义的梯度。在他们的例子中,假如科学家可以随光阴跟踪炮弹的位置,即数据(xi,yi,ti),那么他们原则上可以规复物理模型并懂得物体跟着光阴的推移而下降加速。这是一个令人愉快的深度进修新利用,它开启了进修系统行径的可能性,而不是简单地进修它们的输出。

我们学到了什么?

我们生活在一个幸运的年代,可以经由过程数百种不合的要领办理一个简单的问题。此外,在上述“黑盒”措施中,我们也可以将神经收集换成其他模型,并用上其他的优化措施。这凸起了机械进修在数学中的感化——它是我们用以理解天下和做出猜测的许多强大年夜对象之一。

数学家对数学模型是可解释的,是直不雅的,而深度进修模型恰恰相反。在我举的例子中,构建数学模型并用机械进修填补空缺(比如估测引力常数)可以带来更好的准确性和更快的谋略。

假如我们能够尽可能多地融入物理理论,并使用机械进修来填补我们的常识空缺,那么我们就有时机办理更繁杂的问题。平日机械进修用于参数拟合,但在混杂模型中,我们也可以用它来猜测更繁杂系统中的函数组成部分。

我信托,跟着理论和技巧的进步,我们将在未来看到许多混杂模型。是以,数学建模和机械进修建模也该当是“相助关系”,而非“竞争关系”。

您可能还会对下面的文章感兴趣: