|
--- |
|
datasets: polymathic-ai/viscoelastic_instability |
|
tags: |
|
- physics |
|
--- |
|
|
|
# Benchmarking Models on the Well |
|
|
|
[The Well](https://github.com/PolymathicAI/the_well) is a 15TB dataset collection of physics simulations. This model is part of the models that have been benchmarked on the Well. |
|
|
|
|
|
The models have been trained for a fixed time of 12 hours or up to 500 epochs, whichever happens first. The training was performed on a NVIDIA H100 96GB GPU. |
|
In the time dimension, the context length was set to 4. The batch size was set to maximize the memory usage. We experiment with 5 different learning rates for each model on each dataset. |
|
We use the model performing best on the validation set to report test set results. |
|
|
|
The reported results are here to provide a simple baseline. **They should not be considered as state-of-the-art**. We hope that the community will build upon these results to develop better architectures for PDE surrogate modeling. |
|
|
|
# Fourier Neural Operator |
|
|
|
Implementation of the [Fourier Neural Operator](https://arxiv.org/abs/2010.08895) provided by [`neuraloperator v0.3.0`](https://neuraloperator.github.io/dev/index.html). |
|
|
|
## Model Details |
|
|
|
For benchmarking on the Well, we used the following parameters. |
|
|
|
| Parameters | Values | |
|
|-------------|--------| |
|
| Modes | 16 | |
|
| Blocks | 4 | |
|
| Hidden Size | 128 | |
|
|
|
|
|
## Trained Model Versions |
|
|
|
Below is the list of checkpoints available for the training of FNO on different datasets of the Well. |
|
|
|
| Dataset | Best Learning Rate | Epochs | VRMSE | |
|
|----------------------------------------|--------------------|--------|--------| |
|
| [acoustic_scattering_maze](https://huggingface.co/polymathic-ai/FNO-acoustic_scattering_maze) | 1E-3 | 27 | 0.5033 | |
|
| [active_matter](https://huggingface.co/polymathic-ai/FNO-active_matter) | 5E-3 | 239 | 0.3157 | |
|
| [convective_envelope_rsg](https://huggingface.co/polymathic-ai/FNO-convective_envelope_rsg) | 1E-4 | 14 | 0.0224 | |
|
| [gray_scott_reaction_diffusion](https://huggingface.co/polymathic-ai/FNO-gray_scott_reaction_diffusion) | 1E-3 | 46 | 0.2044 | |
|
| [helmholtz_staircase](https://huggingface.co/polymathic-ai/FNO-helmholtz_staircase) | 5E-4 | 132 | 0.00160| |
|
| [MHD_64](https://huggingface.co/polymathic-ai/FNO-MHD_64) | 5E-3 | 170 | 0.3352 | |
|
| [planetswe](https://huggingface.co/polymathic-ai/FNO-planetswe) | 5E-4 | 49 | 0.0855 | |
|
| [post_neutron_star_merger](https://huggingface.co/polymathic-ai/FNO-post_neutron_star_merger) | 5E-4 | 104 | 0.4144 | |
|
| [rayleigh_benard](https://huggingface.co/polymathic-ai/FNO-rayleigh_benard) | 1E-4 | 32 | 0.6049 | |
|
| [rayleigh_taylor_instability](https://huggingface.co/polymathic-ai/FNO-rayleigh_taylor_instability) | 5E-3 | 177 | 0.4013 | |
|
| [shear_flow](https://huggingface.co/polymathic-ai/FNO-shear_flow) | 1E-3 | 24 | 0.4450 | |
|
| [supernova_explosion_64](https://huggingface.co/polymathic-ai/FNO-supernova_explosion_64) | 1E-4 | 40 | 0.3804 | |
|
| [turbulence_gravity_cooling](https://huggingface.co/polymathic-ai/FNO-turbulence_gravity_cooling) | 1E-4 | 13 | 0.2381 | |
|
| [turbulent_radiative_layer_2D](https://huggingface.co/polymathic-ai/FNO-turbulent_radiative_layer_2D) | 5E-3 | 500 | 0.4906 | |
|
| [viscoelastic_instability](https://huggingface.co/polymathic-ai/FNO-viscoelastic_instability) | 5E-3 | 205 | 0.7195 | |
|
|
|
|
|
## Loading the model from Hugging Face |
|
|
|
To load the FNO model trained on the `viscoelastic_instability` of the Well, use the following commands. |
|
|
|
```python |
|
from the_well.benchmark.models import FNO |
|
|
|
model = FNO.from_pretrained("polymathic-ai/FNO-viscoelastic_instability") |
|
``` |