[关闭]
@Rays 2018-12-14T21:48:19.000000Z 字数 3002 阅读 3945

物理学引导的神经网络(PGNN)

机器学习


摘要: 机器学习算法的学习过程,实际上是在假设空间中搜索解决方案的过程。仅使用数据引导搜索过程中存在一些挑战性问题。一份近期研究提出了利用物理学辅助数据以引导搜索过程,并给出了使用特征工程和向损失函数中添加物理非一致项这两种实现方法。论文通过对湖水温度的建模,验证了建议方法的有效性。

作者: Mehmet Alican Noyan

正文:

当今技术和科学的核心,是基于物理学构建的模型。但近些年来,数据驱动的模型已崭露头角,并在许多任务中给出了优于物理学驱动模型的表现。即便如此,这些模型依然需要数据,模型的推理也很难解释,并且在泛化能力上仍然存在挑战。结合数据和物理学,可以做到相得益彰。

机器学习算法的学习过程,实际上是在假设空间中搜索解决方案的过程。该假设空间是根据我们所选择的算法、体系结构和配置而定义的。即使是对于相当简单的算法,假设空间也可能非常大。数据是我们在该巨大空间中搜索解决方案的唯一指引。那么我们是否可以利用人们对世界的认知(例如,物理学知识等)并辅以数据,用于指导该搜索过程呢?

这一论点是Karpatne等人在他们的论文“物理学引导的神经网络(PGNN)在湖泊温度建模中的应用”(Physics-guided Neural Networks (PGNN): An Application in Lake Temperature Modeling)一文中提出的。在此,我将解释该论点的重要性,并通过解读论文阐述论文研究者的具体做法。

设想你已将你的外星人朋友(即优化算法)派送到超市(即假设空间),去购买你最喜欢的奶酪(即解决方案)。她手头的唯一线索,就是你给她的一张奶酪图片(即数据)。由于我们的外星朋友对超市并不具有任何先验知识,因此她很难找到奶酪。她甚至可能会在到达食品区之前围着化妆品区、清洁用品区打转。


图一 我们的外星朋友最终抵达超市食品区(图片来自Dominic L. Garcia

该比喻类似于梯度下降等机器学习优化算法寻找假设的过程。数据是此过程中的唯一指引。理想情况下,这类方法会很好的工作。但在大多数情况下,数据或者具有噪声,或者数据量不足。在优化算法中集成我们的知识,可在一定程度上解决这些挑战性问题。例如,奶酪需要在食品区域搜索,而不必查看化妆品区域。下面,我们阐述应如何做到这一点。

如何使用物理学指引机器学习算法

现在,我概述一下论文研究者是如何用物理学来引导机器学习模型的。他们提出了两种方法:(1)使用物理学理论计算额外的特征(即特征工程),并与测量数据一并作为模型的输入;(2)在损失函数中添加物理非一致(physical inconsistency)项,对物理非一致预测做出惩罚。


图二 第一种方法:使用基于物理学的模型开展特征工程。


图三 第二种方法:使用数据及物理学驱动的损失函数。

在机器学习中,使用特征工程的第一种方法是广为使用的。但第二种方法更具吸引力。它非常类似于通过添加正则化项以惩罚过度拟合的做法,由此在损失函数中添加了物理非一致项。 因此,优化算法在使用这个新的补偿项时,应该考虑的是如何使物理非一致结果最小化。

Karpatne等研究者在论文中提出,将上述两种方法与神经网络结合,并给出了一种称为“以物理学为引导的神经网络”(PGNN,physics-guided neural network)算法。 PGNN具有两个主要优点:

应用示例:湖水温度建模

论文以湖水温度模拟为例说明了PGNN的有效性。湖水温度控制着生活在湖中生物物种的生长、存活和繁殖。因此,准确地观察和预测湖水温度,对于了解湖泊生物圈中发生的变化是至关重要的。该例的任务是开发一个可以预测特定湖水温度随水深和时间变化的模型。下面,我将阐述论文研究者是如何应用(1)特征工程和(2)改进的损失函数解决这个问题。

(1) 对于使用特征工程方法,论文研究者使用一种称为“GLM”(通用湖泊模型,general lake model)的模型生成新特征,并以这些特性为神经网络的输入。GLM是一种基于物理学的模型,描述了控制湖水温度变化的动态过程,包括由日照、蒸发等引发的加热效应。

(2) 下面介绍论文研究者是如何定义物理非一致项的。众所周知,密度更大的水分布更低。水温与水密度间的关系是已知的。因此,预测需遵循以下事实:观察点越深,预测的密度越高。如果模型预测结果中,更接近湖水表面的观察点,密度值更高,那么这就给出了物理非一致的预测。


图四 物理非一致项的定义

现在将该理念集成到损失函数中。我们需要在ρ(A)>ρ(B)做出惩罚,反之则不做出惩罚。物理非一致越大,那么惩罚也应该越大。这可以轻松实现,我们只需将函数max(ρ(A)-ρ(B),0)的值添加到损失函数中即可。如果ρ(A)>ρ(B),即存在物理非一致,那么max函数将给出一个正值,增大我们试图最小化的损失函数值。反之,max函数将给出零,损失函数值保持不变。

这里,正确使用损失函数时,需要对该函数做两处改进。一项重要的事情是保持对所有点对的平均非一致性,而不是单个数据对。我们可以将所有点对的max函数值相加,再除以点对数。此外,控制物理非一致最小化的相对重要性也是至关重要的。我们可以通过将平均物理非一致与超参数相乘(类似于正则化参数)实现。


图五 损失函数的物理非一致项

实验结果

下面给出四种模型的实验结果。这四种模型分别为:

论文采用如下两种度量结果评估:


图六 米拉湖(Lake Mille Lacs)上的实验结果


图七 门多塔湖(Lake Mendota)上的实验结果

通过对比NN与PHY可得出结论,NN以牺牲物理非一致结果为代价,给出了更准确的预测。通过对比PGNN0和PGNN可看到,消除物理非一致主要得益于改进的损失函数。预测精度的提高主要原因在于特征工程,其中有来自于改进损失函数的一些贡献。

总结一下,初步结果表明,论文新提出的算法PGNN在给出准确且物理一致结果上具有很好的前景。此外,将对世界的认知集成到损失函数中的方法,提供了一种提高机器学习模型泛化性能的很好做法。该理念看似简单,但是有可能从根本上改进我们开展机器学习和科学研究的方式。

扩展阅读

论文“Theory-guided Data Science: A New Paradigm for Scientific Discovery from Data

作者简介

Mehmet Alican Noyan曾是一位纳米技术研究人员,现在是一位机器学习工程师。他在博客中介绍并分享对机器学习的一些直观理解。

查看英文原文: Physics-guided Neural Networks (PGNNs)

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注