周末随便聊聊PINN 周末闲聊一下。
最近在学习PINN(Physics Informed Neural Network,物理信息神经网络),感觉这玩意儿挺好玩儿的,另外接触新的事物能让人保持年轻。 PINN并不是个新的事物,其核心概念最早可以追溯到1994年M. Dissanayake [1] 的文章,但当时受计算条件限制并没有得到重视。近些年随着AI兴起及深度网络的发展,以及计算性能的极大提升,人们发现30年前的文章用于物理系统的仿真还挺好用。 工程中物理仿真的一大痛点是计算开销大,对于物理现象的仿真计算经常需要花费大量的时间,那如果能够在瞬间得到物理量的时空分布,想想都不要太香。PINN的一大目的就是想要在极短的时间内获取物理量的时空分布。 应用场景大概是这样的:先针对物理问题训练一个PINN模型,之后PINN读入用户输入的物理信息,经过神经网络推理,给出物理量的时空分布。由于神经网络的推理过程是简单的线性代数运算,省去了计算繁重的迭代运算,能够极大地缩短计算时间。 PINN目前还处于发展阶段,用于工业应用还存在不少的困难,主要包括: 模型训练比较难。虽然说PINN结合了物理信息,但实际上训练的时候想要得到一个精度高的符合物理特性的网络模型并不容易,而且训练时间开销非常大。换句话说,你可能花几个月训练一个模型,结果模型输出的结果什么都不是。 模型泛化能力不高。目前很多都是针对特定场景进行训练,得到的模型也是特定大模型,很难将这些特定大模型用于其他的场景中。比如利用圆柱绕流的数据训练的PINN模型,你想用这模型取预测方腔流动,可能就没法用。 模型精度比不上传统的离散方法。传统的离散方法(有限差分、有限体积、有限元等)是从局部往整体逼近,保证每个网格满足控制方程,从而确保整体区域都满足控制方程。而PINN通常是从整体往局部,构建神经网络,将控制方程、边界条件、初始条件等作为损失函数进行优化,最大化降低神经网络与这些量的差异,可以看做是个多目标优化问题,经常很难做到三方面都能满足。 当然常规神经网络应用中的毛病,PINN自然也继承下来了。 个人觉得PINN应该还是有前途的,工业应用中,对仿真速度的需求经常优先于仿真精度。仿真速度快有利于产品设计。另外当前PINN存在的一些问题,也许随着技术的发展和计算资源的提升,也应该会逐渐被解决。毕竟20年前,人们也难以想象人脸识别能做到如今这种又快又准的程度。 个人觉得,虽然现阶段PINN用在工业上还存在不小的困难,但其实可以换个思路,我们为什么非要用PINN替代当前主流的算法呢,它们可以共存的啊,比如可以用PINN作为主流算法的辅助,提供一些初始计算也是不错的。之前还看到一篇文章就是用PINN做流场初始化,然后加速CFD收敛的。发挥想象力,其实可以用的场景还挺多的。
新手随便聊聊,各位道友不要当真。
参考文献 [1] M. Dissanayake and N. Phan-Thien, Neural-network-based approximations for solving partial differential equations, Comm. Numer. Methods Engrg,10 (1994),pp.195-201: 1
(完)
关于PINN,知乎上有一篇总结性文章写得比较全面( https://zhuanlan.zhihu.com/p/468748367) ,有兴趣的道友可以瞅瞅。
博士
|
教师
探讨CFD职场生活,闲谈CFD里外
关注
获赞 2720 粉丝 12665 文章 959 课程 27