PINA-org/PINA

Physics-Informed Neural networks for Advanced modeling

解决的问题

PINA 简化了科学机器学习 (SciML) 解决方案的开发。它通过将数据驱动建模与基于物理的约束相结合,提供了一个处理复杂数学问题(如涉及微分方程的问题)的统一框架,减少了编写重复、手工编写的训练循环的需求。

工作原理

该库通过四个步骤的流水线运行:

  1. 问题与数据:用户定义数学问题,识别约束条件或导入数据集。
  2. 模型设计:用户使用 PyTorch 或 PyTorch Geometric 构建模型,或从 PINA 的模型 API 中选择一个。
  3. 求解器选择:选择一个求解器来确定解决问题策略(例如:物理信息驱动或监督学习)。
  4. 训练:使用由 PyTorch Lightning 驱动的 Trainer API 对模型进行优化。

最近的更新引入了求解器的 mixin 架构以及对 Kolmogorov–Arnold Networks (KAN) 的专用支持。

适用对象

专为从事科学计算、物理信息机器学习和数据驱动建模的研究人员和工程师设计,他们希望以模块化和可扩展的方式实现 PINNs 和神经算子。

亮点

  • 统一的 SciML 框架:支持物理信息神经网络 (PINNs)、神经算子和标准监督学习。
  • 模块化架构:使用可组合的抽象和 mixin 架构,允许轻松替换组件。
  • Sovereign AI Agents:包含内置的 AI 代理技能,通过自然对话引导用户完成问题设置、模型选择和训练。
  • 广泛的模型支持:包括对具有向量化样条基的 KANs (Kolmogorov–Arnold Networks) 的原生支持。
  • 可扩展性:通过 PyTorch Lightning 原生支持多设备训练。