AI 技术在跨学科交融翻新方面扮演着日益重要的角色,特地是在 Al for Science 畛域,AI 技术的倒退为跨学科、跨畛域的交融翻新带来了微小的机会。AI 已成为一个要害的钻研工具,扭转了基础科学的钻研范式。依靠 AI 技术开发的科学计算工具,如 DeepXDE、SciML 等,正在解决传统科学计算过于简单且难以了解的问题。将来将会有更多功能弱小的科学计算工具呈现,从而推动 AI 技术成为重要的科研辅助工具,在数学、物理、化学、生物、天文等基础科学以及资料、电子、医疗、制药等应用领域施展独特价值[1]。
.png”)
图 1 AI for Science 跨畛域利用
飞桨 PaddlePaddle 目前是国内市场综合份额第一的深度学习平台,且始终在为迷信研究者提供优良的 AI 技术支持。在 AI for Science 方面,飞桨曾经公布了针对流体、构造、电磁等学科的工具组件——赛桨 PaddleScience V1.0 Beta。同时,为了更好地反对 AI for Science 在科研畛域的深刻摸索,飞桨也在同步拓展和反对一系列业内支流科学计算工具。本期咱们将重点介绍飞桨全量反对的深度学习科学计算工具 DeepXDE,从全量算例及模型反对、高性能的训推环境以及典型工程实际等方面进行阐明。
科学计算工具 -DeepXDE
DeepXDE 是一款开源且高度模块化的科学计算工具,以深度学习为外围,提供多种数据、物理机理及数理交融的模型,如 PINN、DeepONet、MFNN 等,同时反对多种类型微分方程,如常微分方程、偏微分方程的定义及求解,可无效解决简单科学计算问题。
基于所提供的深度学习求解模型,DeepXDE 具备以下典型的性能特点:
- 高度模块化:DeepXDE 提供多种反对调用、组合的模块,如计算域、边界条件、微分方程、神经网络、训练及预测等,不便用户组合构建物理零碎;
- 多类微分方程:反对自定义常微分方程、偏微分方程、积分微分方程等来形容具体问题;
- 可扩展性:反对用户联合本身需要增加自定义的数值算法、模型或其余性能;
- 可视化:提供一系列丰盛的可视化工具,能够帮忙用户直观地了解计算结果。
在科学计算畛域,DeepXDE 的弱小性能与高精度求解能力,使其成为国内外出名的科学计算工具之一。截止目前,DeepXDE 的下载量已超过 40 万次,并被寰球 70 多所出名大学、科研机构和企业采纳,比方 MIT、Stanford、美国东南太平洋国家实验室、通用汽车等。在理论利用中,DeepXDE 正在帮忙用户疾速解决简单的科学计算问题,为各畛域科学研究的停顿作出了重要奉献。
.png”)
图 2 DeepXDE 办法与 Backends
飞桨全量反对 DeepXDE
全量反对 DeepXDE 办法与算例
飞桨齐全反对 DeepXDE 工具中提供的 PINN、DeepONet 等办法,并对工具中提供的各类算例进行了全面的精度对齐。采纳 PINN 办法运行的 42 个算例涵盖多种方程和初值 / 边界条件,飞桨撑持状况如下表所示,相比 PyTorch 目前反对的算例(31 个)多了 11 个。
表 1 飞桨反对 DeepXDE 中全副微分方程算例
飞桨科学计算反对能力
在反对科学计算方面,飞桨从神经网络、高阶微分、动转静技术等进行了全面改良,不仅可能全面反对 DeepXDE 提供的算例,也可能反对用户自定义的科学计算问题剖析。
齐备的训练网络
飞桨目前提供可笼罩 PINN 办法以及数据驱动办法的罕用网络,如全连贯网络、多尺度傅里叶特色网络及 DeepONet、DeepONetCartesianProd 等网络。
残缺的微分方程体系
飞桨目前可反对多种类型微分方程的定义,如常微分方程、偏微分方程、积分微分方程、分数阶偏微分方程等。
动态图模式及“一键动转静”计划
飞桨反对用户基于动态图编码,同时反对一键动转静,能够使用户应用简略的转换语句同时享有动态图和动态图劣势。
欠缺的科学计算罕用高阶算子
为了实现科学计算问题中管制方程的高阶表白,飞桨框架欠缺了如下算子及性能:
- 提供局部算子的 三阶计算,如全连贯网络算子(matmul、add),激活函数(tanh, sin, cos 等);
- 提供标量与 tensor 的 加减乘除幂运算;
- 罕用算子如 assign、concat、cumsum、expand_v2、reverse、squeeze、unsqueeze、scale、tile、transpose、sign、sum、mean、flip、cast、slice 等 有限阶计算。
多优化器抉择
飞桨提供如 ADAM、L-BFGS 等优化器,可笼罩宽泛的科学计算利用,且针对 DeepXDE 中提供的科学计算算例,飞桨提供的 L -BFGS 优化器能够达到更高精度的收敛成果。
此外,飞桨对 DeepXDE 局部算例曾经实现了分布式并行,扩大数据集大小后可取得更高的性能晋升。
飞桨性能劣势
基于 DeepXDE 所提供算例的默认配置,在表 2 所示的测试环境中对其中 20 个算例进行了端到端的性能测试,后果如图 3 所示。左图示意飞桨(蓝色)与 PyTorch(橙色)的算例对齐状况,其中横坐标为工具中的不同算例,纵坐标为算例达到收敛指标所需的训练工夫,右图则直观的示意飞桨相比于 PyTorch 在不同算例对齐过程中的减速状况。能够看出,在所测试的 75% 个算例中,飞桨的性能均当先 PyTorch,最高提速达 25%,这阐明飞桨能够作为 DeepXDE 全量算例的 Backend,反对开发者进行科学计算剖析。
表 2 默认测试环境
.png”)
.png”)
图 3 飞桨反对 DeepXDE 全量算例性能评估
飞桨 DeepXDE 开发验证学习文档
针对 DeepXDE 中提供的算例及相干模型,飞桨实现了大量精度对齐、验证工作,积攒并造成了丰盛的开发和验证教训,能够为用户提供利用领导,帮忙用户正确应用 DeepXDE 工具进行新算例的开发和验证。
用户能够拜访 DeepXDE 官网代码仓库体验飞桨对 DeepXDE 中全量算例及模型的反对,在实现 DeepXDE 的装置后,用户仅需设置 DDE_BACKEND 环境变量,即可执行相应的算例代码($ DDE_BACKEND=paddle; python pde.py)。
- DeepXDE 官网代码仓库网址
https://github.com/lululxvi/d…
另外,在飞桨 AI Studio- 人工智能学习与实训社区提供的 NoteBook 环境下,用户仅需定义环境变量 DDE_BACKEND=paddle,即可实现代码块的独立测试、执行。
围绕飞桨 +DeepXDE 算例的开发验证过程,次要蕴含如下算例验证规范、算例验证流程、模型对齐问题排查流程等工作:
算例验证规范
联合科学计算的正问题与逆问题,能够从单框架测试、多框架测试等路径进行网络参数、指标解、Loss 的计算比对,且验证的优先级为:网络参数 > 指标解 >Loss。
算例验证流程
算例验证流程次要分为算例实现和验证两个阶段。下图给出了 PINN 办法的残缺训练过程,其中蓝色局部为每个阶段须要对齐的数据,黄色局部为算例实现的逻辑。对于算例的验证,次要从飞桨框架自测、多框架比照验证进行分阶段实现。
.png”)
图 4 DeepXDE 反对的 PINN 办法原理
模型对齐问题排查流程
围绕算例及模型对齐过程中呈现的问题,咱们也造成了一些可供用户参考的教训,如能够比照其余框架,进行前向和反向的逐渐对齐验证,并逐次打印对齐流程中的两头后果。此外,也须要进行如“随机种子”、“数据类型”、“初始化参数”、“管制正当误差”等设置,从而升高对齐难度。
此局部内容会在下一期的 AI for Science 专题“飞桨 DeepXDE 算例及模型精度对齐学习”中进行具体开展阐明,期待宽广用户浏览、斧正。
案例实际
问题定义
随着通过放大电路线宽进步集成度的“微细化”速度放缓,三维(3D)重叠技术将承当半导体继续进步性能的作用。在芯片国产自主的背景下,3D 重叠技术也成为缓解国外技术制裁的重要形式。热挑战是 3D 重叠技术的次要阻碍之一,简单的架构和高度集成的器件减少了芯片功耗和热密度。基于 AI 的传热模型不仅能够评估 3D 重叠芯片的散热性能,而且为芯片散热结构设计的主动优化提供了宽泛的后劲。本节次要介绍采纳飞桨 +DeepXDE 进行芯片散热剖析的相干案例实际,如图 5 所示。
.png”)
* 图 5 3D 重叠芯片
JL Ayala,A Sridhar, Through silicon via-based grid for thermal control in 3D chips *
针对图 5 -(a)所示的简化 3D 芯片构造,其散热过程可由如下热天然对流管制方程来形容:
- 质量守恒
- 动量守恒
- 能量守恒
式中,𝑢、𝑣、𝑤别离为𝑥、𝑦、𝑧方向的速度重量(m⋅${s}^{-1}$),𝑝为压力(𝑃𝑎),𝑇为温度(℃),𝑡为工夫(s);𝜇为能源粘度(𝑃𝑎⋅𝑠),𝜌为密度(𝑘𝑔⋅${m}^{-3}$),${𝑐}_{p}$ 为比热容(𝐽⋅${𝑘𝑔}^{-1}$⋅${m}^{-3}$),𝜆为导热系数(𝑊⋅${m}^{-1}$⋅${℃}^{-1}$),𝑔为重力加速度(通常取 9.8m⋅${s}^{-1}$),𝛽为热膨胀系数(1⋅${℃}^{-1}$),${T}_{ref}$ 为参考温度(℃);𝑄为体积热源项(𝑊⋅${m}^{-3}$),与芯片的热功耗无关。
针对实际芯片散热问题,通常假设温度为常温、四周空气静止,只有给定特定的边界条件就能够采纳 AI 模型进行求解。其中,速度场通常采纳无滑移边界条件,而温度场的边界条件则可形容如下:
- Dirichlet 条件
- Neumann 条件
- Robin 条件
案例建设及剖析
基于 DeepXDE 的 PINN 办法,构建相应的芯片散热案例,如图 6 所示。其原理简要介绍如下,首先,针对待求解的工夫(t)和理论的空间(x, y, z),采纳适合的采样办法取得模型训练所需的时空离散点,这些点数据将作为 AI 网络模型的输出,并输入相应的流场和温度信息(u, v, w, p, T);而后,计算约束方程所需的流场和温度后果的时空导数,并取得对应于约束方程和初边值条件的 Loss。
图 6 芯片散热剖析原理及次要构建步骤
针对 5 层芯片构造的散热案例,构建相应热天然对流管制方程的无穷纲化模式,以进步模型训练的稳定性和精度。联合给定的计算域,采纳 NVIDIA V100-16G 单卡训练约 4 小时,预测的无穷纲工夫为 1s 时的后果如图 7 所示。3D 整体和 2D 两头截面的温度散布均表明,芯片外部的温度远高于四周空气的温度。这阐明单纯靠空气热天然对流来将存在显著的热限度,从资料和散热构造等方面晋升散热性能十分必要,此局部工作成绩会在之后的专题中向大家出现。
图 7 3D 芯片散热案例预测后果
总结
飞桨 PaddlePaddle 目前曾经全面反对科学计算工具 DeepXDE,对 DeepXDE 中提供的模型、算例等进行了多框架精度对齐以及性能调优。目前飞桨提供了齐备的科学计算算子以及相干的网络模型、优化器、分布式并行等能力,可为宽广用户应用飞桨 +DeepXDE 解决迷信问题提供更多的可能。下一期咱们会对飞桨 +DeepXDE 算例及模型精度对齐的具体实现过程进行教训介绍,敬请期待。
援用
[1] 百度研究院 2023 科技趋势公布:AI 向实而生,智能技术构筑科技改革主线
https://baijiahao.baidu.com/s…[2] DeepXDE 介绍文档
https://deepxde.readthedocs.i…[3] 飞桨动态图转动态图实现流程
https://www.paddlepaddle.org….[4] 飞桨 L -BFGS 优化器定义
https://www.paddlepaddle.org….拓展浏览
[1]【PaddlePaddle Hackathon 第四期】—飞桨科学计算 PaddleScience
https://github.com/PaddlePadd…
[2] 飞桨 AI for Science 流体力学公开课第一期
https://aistudio.baidu.com/ai…
[3] AI+Science 系列(三):赛桨 PaddleScience 底层外围框架技术创新详解
[4] 飞桨科学计算实训示例
https://aistudio.baidu.com/ai…相干地址
[1] 飞桨 AI for Science 共创打算
https://www.paddlepaddle.org….
[2] 飞桨 PPISG-Science 小组 https://www.paddlepaddle.org….