Skip to content

Commit

Permalink
Merge pull request #313 from amcadmus/devel
Browse files Browse the repository at this point in the history
Implement type embedding
  • Loading branch information
amcadmus committed Dec 22, 2020
2 parents 698cf3a + b1e254b commit 66bdc69
Show file tree
Hide file tree
Showing 29 changed files with 3,609 additions and 38 deletions.
152 changes: 151 additions & 1 deletion doc/train-input-auto.rst
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,156 @@ model:
Set the normalization average to zero. This option should be set when `atom_ener` in the energy fitting is used


.. raw:: html

<a id="model/descriptor[se_a_ebd]"></a>
When *type* is set to ``se_a_ebd``:

.. raw:: html

<a id="model/descriptor[se_a_ebd]/sel"></a>
sel:
| type: ``list``
| argument path: ``model/descriptor[se_a_ebd]/sel``
A list of integers. The length of the list should be the same as the number of atom types in the system. `sel[i]` gives the selected number of type-i neighbors. `sel[i]` is recommended to be larger than the maximally possible number of type-i neighbors in the cut-off radius.

.. raw:: html

<a id="model/descriptor[se_a_ebd]/rcut"></a>
rcut:
| type: ``float``, optional, default: ``6.0``
| argument path: ``model/descriptor[se_a_ebd]/rcut``
The cut-off radius.

.. raw:: html

<a id="model/descriptor[se_a_ebd]/rcut_smth"></a>
rcut_smth:
| type: ``float``, optional, default: ``0.5``
| argument path: ``model/descriptor[se_a_ebd]/rcut_smth``
Where to start smoothing. For example the 1/r term is smoothed from `rcut` to `rcut_smth`

.. raw:: html

<a id="model/descriptor[se_a_ebd]/neuron"></a>
neuron:
| type: ``list``, optional, default: ``[10, 20, 40]``
| argument path: ``model/descriptor[se_a_ebd]/neuron``
Number of neurons in each hidden layers of the embedding net. When two layers are of the same size or one layer is twice as large as the previous layer, a skip connection is built.

.. raw:: html

<a id="model/descriptor[se_a_ebd]/axis_neuron"></a>
axis_neuron:
| type: ``int``, optional, default: ``4``
| argument path: ``model/descriptor[se_a_ebd]/axis_neuron``
Size of the submatrix of G (embedding matrix).

.. raw:: html

<a id="model/descriptor[se_a_ebd]/activation_function"></a>
activation_function:
| type: ``str``, optional, default: ``tanh``
| argument path: ``model/descriptor[se_a_ebd]/activation_function``
The activation function in the embedding net. Supported activation functions are "relu", "relu6", "softplus", "sigmoid", "tanh", "gelu".

.. raw:: html

<a id="model/descriptor[se_a_ebd]/resnet_dt"></a>
resnet_dt:
| type: ``bool``, optional, default: ``False``
| argument path: ``model/descriptor[se_a_ebd]/resnet_dt``
Whether to use a "Timestep" in the skip connection

.. raw:: html

<a id="model/descriptor[se_a_ebd]/type_one_side"></a>
type_one_side:
| type: ``bool``, optional, default: ``False``
| argument path: ``model/descriptor[se_a_ebd]/type_one_side``
Try to build N_types embedding nets. Otherwise, building N_types^2 embedding nets

.. raw:: html

<a id="model/descriptor[se_a_ebd]/precision"></a>
precision:
| type: ``str``, optional, default: ``float64``
| argument path: ``model/descriptor[se_a_ebd]/precision``
The precision of the embedding net parameters, supported options are "float64", "float32", "float16".

.. raw:: html

<a id="model/descriptor[se_a_ebd]/trainable"></a>
trainable:
| type: ``bool``, optional, default: ``True``
| argument path: ``model/descriptor[se_a_ebd]/trainable``
If the parameters in the embedding net is trainable

.. raw:: html

<a id="model/descriptor[se_a_ebd]/seed"></a>
seed:
| type: ``int`` | ``NoneType``, optional
| argument path: ``model/descriptor[se_a_ebd]/seed``
Random seed for parameter initialization

.. raw:: html

<a id="model/descriptor[se_a_ebd]/exclude_types"></a>
exclude_types:
| type: ``list``, optional, default: ``[]``
| argument path: ``model/descriptor[se_a_ebd]/exclude_types``
The Excluded types

.. raw:: html

<a id="model/descriptor[se_a_ebd]/set_davg_zero"></a>
set_davg_zero:
| type: ``bool``, optional, default: ``False``
| argument path: ``model/descriptor[se_a_ebd]/set_davg_zero``
Set the normalization average to zero. This option should be set when `atom_ener` in the energy fitting is used

.. raw:: html

<a id="model/descriptor[se_a_ebd]/type_nchanl"></a>
type_nchanl:
| type: ``int``, optional, default: ``4``
| argument path: ``model/descriptor[se_a_ebd]/type_nchanl``
number of channels for type embedding

.. raw:: html

<a id="model/descriptor[se_a_ebd]/type_nlayer"></a>
type_nlayer:
| type: ``int``, optional, default: ``2``
| argument path: ``model/descriptor[se_a_ebd]/type_nlayer``
number of hidden layers of type embedding net

.. raw:: html

<a id="model/descriptor[se_a_ebd]/numb_aparam"></a>
numb_aparam:
| type: ``int``, optional, default: ``0``
| argument path: ``model/descriptor[se_a_ebd]/numb_aparam``
dimension of atomic parameter. if set to a value > 0, the atomic parameters are embedded.


.. raw:: html

<a id="model/descriptor[se_r]"></a>
Expand Down Expand Up @@ -962,7 +1112,7 @@ training:

<a id="training/numb_test"></a>
numb_test:
| type: ``int``, optional, default: ``1``
| type: ``int`` | ``list`` | ``str``, optional, default: ``1``
| argument path: ``training/numb_test``
Number of frames used for the test during training.
Expand Down

0 comments on commit 66bdc69

Please sign in to comment.