Physics-informed参数识别的神经网络

161(30天)
大为梁
大为梁 2022年8月22日
评论道: 2023年4月24日,14日
亲爱的所有,
我试图使用physics-informed神经网络(PINN)任何颂歌或PDE的逆参数识别。
我想知道是否PINN可以提取识别参数(PDE)中的系数。不幸的是,我不知道如何将神经网络的识别参数转换成真正的参数。
提前谢谢。

答案(1)

本
2022年8月24日
嗨,大为,
的PINN 这个例子 是假设PDE已经修正系数。遵循的方法 Raissi et al。 您可以考虑pd参数化的类,例如汉堡的方程可以考虑:
然后方法是简单地减少损失对神经网络可学的参数,和系数
适应你可以扩展的例子 参数 定义深度学习模型 部分:
参数。λ= dlarray(0);
参数。μ= dlarray(-6);
接下来,您将需要修改 modelLoss 函数来代替 f = Ut + U。*用户体验——(0.01. / pi)。* Uxx 用以下:
λ= parameters.lambda;
μ= exp (parameters.mu);
f = Ut +λ。* U。*用户体验-μ。* Uxx;
最后你需要修复的计算 numLayers 模型 功能,如添加 λ μ 参数无效。我只是做了以下:
numLayers =(元素个数(字段名(参数))2)/ 2;
这将使相似的例子 作者的代码 。我没有得到很好的结果当我尝试这个系数进行识别,这可能是由于不同的选项 fmincon 和作者的使用 ScipyOptimizerInterface 。目前我在出来,但希望这将帮助你开始。
4评论
本
2023年4月24日,14日
你好默罕默德,
要使用的例子似乎已被更新 dlnetwork 自从我最后一次回应。
以前 参数 是一个 结构体 重量和偏见 fullyconnect 上的操作 dlarray - s,因为每个 fullyconnect 有一个重量和偏见的数量吗 fullyconnect 操作等于字段的数量 参数 struct除以2。
在更新后的一个例子 dlnetwork 对象是用作 输入 modelLoss 所以没有需要手动计算 numLayers
在这个更新版本可以扩展 modelLoss 采取额外的理由 μ λ- 包括作为参数结构体 =参数结构体(μμ=λ=λ) 或结合 dlnetwork , μ λ 在细胞一个参数或结构,如 参数=结构(μ=μ,净=λ=λ)
希望有所帮助,

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!

翻译的