deepxde
deepxde copied to clipboard
[PaddlePaddle Hackathon 2] 94. Add Paddle as a new backend of DeepXDE
This ISSUE is a task of PaddlePaddle Hackathon 2. For more information, please see
Task
Description: DeepXDE currently supports TensorFlow 1.x, TensorFlow 2.x, PyTorch, and JAX as backends. In this task, you need to modify DeepXDE to support Paddle as a new backend (the backend name is "paddle"). Specifically, you need to implement the following tasks.
-
Support function approximation
- Goal: Support the following test examples: func.py, dataset.py
- Main DeepXDE modules to be modified: dde.backend, dde.nn, dde.optimizers, dde.model
-
Support solving forward ODEs
- Goal: Support the following test examples: A simple ODE system
- Main DeepXDE modules to be modified: dde.gradients, dde.icbc
-
Support solving inverse ODEs
- Goal: Support the following test examples: Inverse problem for the Lorenz system, Inverse problem for the Lorenz system with exogenous input
- Main DeepXDE modules to be modified: dde.model
-
Update DeepXDE Documentation to add Paddle
Note:
- Please format your code using black.
- Please add sufficient comments for the nontrivial and tricky codes.
Difficulty: Hard
Submission
- Design documentation: Create a PR at PaddlePaddle/community rfcs/DeepXDE folder. In addition to other Hackathon requirements, please discuss:
- how do you plan to compute the Jacobian, such as which Paddle API to use.
- any improvement to Paddle should be done in the future in order to better support DeepXDE.
- Code implementation PR
Q&A
- 如果在开发中对于上述任务有任何问题,欢迎在本 ISSUE 下留言交流。
- 对于开发中的共性问题,在活动过程中,会定期组织答疑,请大家关注官网&QQ群的通知,及时参与。
(此 ISSUE 为 PaddlePaddle Hackathon 第二期活动的任务 ISSUE,更多详见 【PaddlePaddle Hackathon 第二期】任务总览)
【任务内容】
任务说明:DeepXDE目前支持TensorFlow 1.x, TensorFlow 2.x, PyTorch和JAX作为计算的backend。此任务需要增加Paddle作为DeepXDE的backend,以实现以下功能:
- 使用神经网络进行函数逼近,例如需要Paddle支持代码https://github.com/lululxvi/deepxde/blob/master/examples/function/dataset.py
- 支持physics-informed neural network (PINN)。 2.1 使用PINN求解PDE的正问题:https://deepxde.readthedocs.io/en/latest/demos/pinn_forward.html 2.2 使用PINN求解PDE的反问题:https://deepxde.readthedocs.io/en/latest/demos/pinn_inverse.html
- 在DeepXDE的说明文档中加入Paddle相应的内容。
任务难度:困难
【提交内容】
- 设计文档,并提 PR 至 PaddlePaddle/community 的 rfcs/DeepXDE 目录
- 功能实现 PR
【答疑交流】
- 如果在开发中对于上述任务有任何问题,欢迎在本 ISSUE 下留言交流。
- 对于开发中的共性问题,在活动过程中,会定期组织答疑,请大家关注官网&QQ群的通知,及时参与。
Can someone translate this issue into English?
This is a hackathon of PaddlePaddle, a deep learning framework developed by Baidu (a Chinese company). The aim of this hackathon is to allow DeepXDE to support the backend Paddle.