Create README.md
Browse files
README.md
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
tags:
|
| 3 |
+
- chemistry
|
| 4 |
+
---
|
| 5 |
+
|
| 6 |
+
## Description
|
| 7 |
+
|
| 8 |
+
VSCF MLFF is the code repository for the paper "Интерполяция ППЭ с помощью машинного обучения для ускорения расчётов негармонических частот колебаний молекул".
|
| 9 |
+
|
| 10 |
+
You can find here these files
|
| 11 |
+
|
| 12 |
+
- `compare_models.py` -- script for comparing SchNet and DimeNetPlusPLus models for PES predicting
|
| 13 |
+
- `train.py` -- script for training the model
|
| 14 |
+
- `example_plot.py` -- script, which makes example plots by statistics emitted by `train.py` file with `_metrics.pkl` suffix
|
| 15 |
+
- `example_eval.py` -- script, which evaluates model for the PES of water molecule, using model emittet by `train.py` script, and fills GAMESS-US input template with it.
|
| 16 |
+
- `utils_data.py` and `utils_model.py` -- libraries with functions commonly used by scripts from this repository
|
| 17 |
+
|
| 18 |
+
## Usage
|
| 19 |
+
|
| 20 |
+
### `compare_models.py`
|
| 21 |
+
|
| 22 |
+
#### `python compare_models.py <filename> <model>`
|
| 23 |
+
|
| 24 |
+
- `filename` trajectory file emitted by `xtb` program
|
| 25 |
+
- `model` `SchNet` or `DimeNet`
|
| 26 |
+
|
| 27 |
+
### `train.py`
|
| 28 |
+
|
| 29 |
+
#### `python train.py [--normalize] [--pretrain] [--loss_k <float>] <loss_mode> <checkpoint_prefix> <data_filename>`
|
| 30 |
+
|
| 31 |
+
- `normalize` -- normalize the target (can only be used with loss_mode=mae)
|
| 32 |
+
- `pretrain` -- add pretraining stage in addition to the finetuing stage
|
| 33 |
+
- `loss_k` -- `k` coefficient for adaptive loss (can only be used for adaptive loss)
|
| 34 |
+
- `loss_mode` -- `mae` or `adaptive`
|
| 35 |
+
- `checkpoint_prefix` -- prefix for checkpoint files
|
| 36 |
+
- `data_filename` -- file name of the dataset of molecular VSCF grids
|
| 37 |
+
|
| 38 |
+
### `example_plot.py`
|
| 39 |
+
|
| 40 |
+
#### `python example_plot.py pickle_file`
|
| 41 |
+
|
| 42 |
+
- `pickle_file` -- path to the `*_metrics.pkl` file
|
| 43 |
+
|
| 44 |
+
### `example_dara.py`
|
| 45 |
+
|
| 46 |
+
#### `python example_plot.py [--denormalize] <model_filename> <data_filename>`
|
| 47 |
+
|
| 48 |
+
- `denormalize` -- denormalize the target (use if your model if trained with `--normalize`)
|
| 49 |
+
- `model_filename` -- path to the model checkpoint file
|
| 50 |
+
- `data_filename` -- file name of the dataset of molecular VSCF grids
|