DSMPNN-DarcyFlow

2 downloads 0 likes on ModelScope updated

Model card

DSMPNN-DarcyFlow

模型介绍

DS-MPNN(Sampling-based Distributed Training with Message Passing Neural Network)复现模型,来自 arXiv:2402.15106。 本模型实现边缘条件图卷积消息传递神经网络(S-MPNN),用于 2-D Darcy flow PDE 代理建模(映射扩散系数场 a → 解场 u)。

模型描述

主要模型文件:

  • model/mpnn.py:S-MPNN 完整模型(Encoder + Edge-conditioned conv Kphi + Decoder)
  • model/kernel.py:边缘条件图卷积 kernel(论文 Eq 1)
  • model/encoder.py / decoder.py:编解码 MLP
  • model/gcn.py:GCN baseline
  • model/ds_mpnn.py:DS-MPNN 分布式封装(领域分解 + overlap 通信)

适用场景

场景 说明
模型训练 使用 Darcy flow 数据训练 MPNN 代理模型
模型推理 加载权重,预测 Darcy flow 解场
模型评估 计算 RMSE/L1 指标对比 S-MPNN 与 GCN

使用说明

OneCode 使用

可接入 OneCode 智能体,通过 skill 完成训练、推理与评估。

手动安装使用

硬件要求

支持 GPU(NVIDIA CUDA)与 DCU(AMD Hygon)环境,也可在 CPU 上运行(速度较慢)。

下载模型包

modelscope download --model OneScience/DSMPNN-DarcyFlow

安装运行环境

conda create -n dsmpnn python=3.10 -y
conda activate dsmpnn
pip install torch torch_geometric numpy scipy pyyaml

训练数据介绍

本模型使用 AirfRANS 数据集(二维翼型不可压缩 RANS 亚音速仿真点云)。

modelscope download --dataset OneScience/airfrans --local_dir ./data

训练

python scripts/train.py --config conf/darcy_tier1.yaml --model smpnn

训练权重

  • weight/smpnn_final.pt:S-MPNN 训练权重(677k 参数)
  • weight/gcn_final.pt:GCN baseline 权重(575k 参数)

推理

python scripts/evaluate.py --config conf/darcy_tier1.yaml --checkpoint weight/smpnn_final.pt

评估和可视化

python scripts/test_smoke.py --config conf/darcy_smoke.yaml
python scripts/evaluate.py --config conf/darcy_tier1.yaml --checkpoint weight/gcn_final.pt

OneScience 官方信息

资源 链接
Gitee https://gitee.com/onescience
GitHub https://github.com/onescience-ai

引用与许可证

本模型复现自:Sampling-based Distributed Training with Message Passing Neural Network, Priyesh Kakka et al., arXiv:2402.15106 (2024)。