Modelisation of seismic wave propagation with Physics Informed Neural Networks. This project aims to simplify the usage of this new technology by proposing an intuitive and easy way to train your own PINN.
Yes it is not a dream, you can train your own Neural Network even if you are not an ML scientist !
Not this one :
But this one:
-
models :
-> kernel_upgrade : implementation of NTK method
-> model : neural network model and train step
-
physics :
-> equation : PDE and boundary conditions
-> initial : setting of all training points
-
results
-
utils :
-> plot : plotting functions in 1D, 2D or 3D
-
root :
-> interface : training with Tkinter interface for parameters
-> pinn_code : training with parser and command line for long experiments
-> config : file for config parameters
Simply clone the project :
git clone https://github.com/Rubiksman78/Pole_projet_PINN.git
cd school-idol-training
Install the requirements :
pip install -r requirements.txt
Install FFMPEG from their website
You don't like to use your command line with dozens of arguments, just use the interface we've made for you.
python interface.py
Enter the conditions and the parameters you want for your equation as well as the hyperparameters for your Neural Network. Wait until your PINN is finished training. Admire the result.
Just go to the config.py file and modify the parameters for the training then launch the main file with
python pinn_code.py -epochs=100 ...
Many improvements will be made in the future :
- Improving the architecture of the model used
- Giving more support for 2D and 3D modelisation
- Support for heterogenous domains and waves