mathLab/PINA

Physics-Informed Neural networks for Advanced modeling

What it solves

PINA 簡化了科學機器學習 (SciML) 解決方案的開發。它提供了一個統一的框架,用於建立和實驗模型,例如物理資訊神經網路 (PINNs)、神經算符 (Neural Operators) 以及其他數據驅動的建模方法,而無需從頭開始編寫複雜的手動實現。

How it works

該函式庫使用基於 PyTorch、PyTorch Lightning 和 PyTorch Geometric 的模組化四步流水線:

  1. Problem and Data: 使用者定義數學問題、約束條件和定義域(例如:笛卡兒定義域)或匯入現有數據。
  2. Model Design: 使用者從 Model API 或建立自定義的 PyTorch 模組(包括對 Kolmogorov–Arnold Networks 的支持)。
  3. Solver Selection: 選擇一個求解器來決定訓練策略(例如:物理資訊求解器或監督式求解器)。
  4. Training: 使用 Trainer API,透過 PyTorch Lightning 提供可擴展的多設備性能進行模型優化。

Who it’s for

從事科學計算、物理學和數學研究的學者與工程師,需要將物理定律(如 PDEs/ODEs)整合到神經網路訓練中。

Highlights

  • Modular Architecture: 使用 mixin 架構來解耦預處理、前向傳播和後處理。
  • AI-Assisted Development: 包含專用的 AI agent 技能,透過自然對話引導使用者進行問題設定、模型選擇和訓練。
  • Broad Support: 處理時變問題、圖結構數據和解析導數。
  • Flexible Solvers: 提供各種求解器,包括用於序列預測的自回歸求解器和多模型求解器支持。"},