Skip to content

Commit

Permalink
Renaming of modules and some classes:
Browse files Browse the repository at this point in the history
- Renamed module fingerprints to features.
- Renamed DataSet class to Data.
- Renamed calculate_features method to calculate.
  • Loading branch information
muammar committed Nov 10, 2019
1 parent cb52a0b commit ddca2ca
Show file tree
Hide file tree
Showing 34 changed files with 145 additions and 145 deletions.
8 changes: 4 additions & 4 deletions docs/source/data.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Introduction
==============
Data is central in Machine Learning and ML4Chem provides some tools to
prepare your datasets. We support the following:
prepare your Datas. We support the following:

1. `Atomic Simulation Environment (ASE) <https://wiki.fysik.dtu.dk/ase/>`_.

Expand All @@ -21,15 +21,15 @@ right format to inter-operate with any other module of Ml4Chem.

Its usage is very simple::

from ml4chem.data.handler import DataSet
from ml4chem.data.handler import Data
from ase.io import Trajectory

images = Trajectory("images.traj")
data_handler = DataSet(images, purpose="training")
data_handler = Data(images, purpose="training")
traing_set, targets = data_handler.get_data(purpose="training")

In the example above, an ASE trajectory file is loaded into memory and passed
as an argument to instantiate the ``DataSet`` class with
as an argument to instantiate the ``Data`` class with
``purpose="training"``. The ``.get_images()`` class method returns a hashed
dictionary with the molecules in ``images.traj`` and the ``targets`` variable
as a list of energies.
Expand Down
20 changes: 10 additions & 10 deletions docs/source/ml4chem.fingerprints.rst
Original file line number Diff line number Diff line change
@@ -1,37 +1,37 @@
ml4chem.fingerprints package
ml4chem.features package
============================

Submodules
----------

ml4chem.fingerprints.autoencoders module
ml4chem.features.autoencoders module
----------------------------------------

.. automodule:: ml4chem.fingerprints.autoencoders
.. automodule:: ml4chem.features.autoencoders
:members:
:undoc-members:
:show-inheritance:

ml4chem.fingerprints.cartesian module
ml4chem.features.cartesian module
-------------------------------------

.. automodule:: ml4chem.fingerprints.cartesian
.. automodule:: ml4chem.features.cartesian
:members:
:undoc-members:
:show-inheritance:

ml4chem.fingerprints.cutoff module
ml4chem.features.cutoff module
----------------------------------

.. automodule:: ml4chem.fingerprints.cutoff
.. automodule:: ml4chem.features.cutoff
:members:
:undoc-members:
:show-inheritance:

ml4chem.fingerprints.gaussian module
ml4chem.features.gaussian module
------------------------------------

.. automodule:: ml4chem.fingerprints.gaussian
.. automodule:: ml4chem.features.gaussian
:members:
:undoc-members:
:show-inheritance:
Expand All @@ -40,7 +40,7 @@ ml4chem.fingerprints.gaussian module
Module contents
---------------

.. automodule:: ml4chem.fingerprints
.. automodule:: ml4chem.features
:members:
:undoc-members:
:show-inheritance:
2 changes: 1 addition & 1 deletion docs/source/ml4chem.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Subpackages

ml4chem.backends
ml4chem.data
ml4chem.fingerprints
ml4chem.features
ml4chem.models
ml4chem.optim

Expand Down
4 changes: 2 additions & 2 deletions docs/source/models.rst
Original file line number Diff line number Diff line change
Expand Up @@ -115,12 +115,12 @@ predicting energy and atomic forces.

::

from ml4chem.fingerprints.gaussian import Gaussian
from ml4chem.features.gaussian import Gaussian

features = Gaussian(cutoff=6.5, normalized=True, save_preprocessor="features.scaler")

In the code snippet above we are building Gaussian type features using the
:class:`ml4chem.fingerprints.gaussian.Gaussian` class. We use a ``cutoff``
:class:`ml4chem.features.gaussian.Gaussian` class. We use a ``cutoff``
radius of :math:`6.5` angstrom, we normalized by the squared cutoff raidous,
and the preprocessing is saved to the file ``features.scaler`` (by default
the preprocessing used is ``MinMaxScaler`` in a range :math:`(-1, 1)` as
Expand Down
16 changes: 8 additions & 8 deletions examples/autoencoder/cu_inference.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
sys.path.append("../../")
from ase.io import Trajectory
from dask.distributed import Client, LocalCluster
from ml4chem.data.handler import DataSet
from ml4chem.fingerprints import LatentFeatures
from ml4chem.data.handler import Data
from ml4chem.features import LatentFeatures
from ml4chem.data.serialization import load
from ml4chem.utils import logger
import numpy as np
Expand All @@ -27,12 +27,12 @@ def autoencode():
# Arguments for fingerprinting the images
normalized = True

data_handler = DataSet(images, purpose=purpose)
data_handler = Data(images, purpose=purpose)
images, energies = data_handler.get_data(purpose=purpose)

preprocessor = ("MinMaxScaler", {"feature_range": (-1, 1)})

fingerprints = (
features = (
"Gaussian",
{
"cutoff": 6.5,
Expand All @@ -43,19 +43,19 @@ def autoencode():
)
encoder = {"model": "ml4chem.ml4c", "params": "ml4chem.params"}

fingerprints = LatentFeatures(
features=fingerprints,
features = LatentFeatures(
features=features,
encoder=encoder,
preprocessor=None,
save_preprocessor="latent_space_min_max.scaler",
)

fingerprints = fingerprints.calculate_features(
features = features.calculate(
images, purpose=purpose, data=data_handler, svm=True
)

latent_svm = []
for e in list(fingerprints.values()):
for e in list(features.values()):
for symbol, features in e:
latent_svm.append(features)

Expand Down
2 changes: 1 addition & 1 deletion examples/autoencoder/cu_training.log
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ Adding atomic feature calculations to computational graph...
Adding Dask array construction to computational graph...
Calling feature scaler...
Fingerprinting finished in 0 hours 0 minutes 13.72 seconds.
Fingerprints saved to fingerprints.db.
features saved to features.db.
Model Training
==============
Model name: AutoEncoder.
Expand Down
10 changes: 5 additions & 5 deletions examples/autoencoder/cu_training.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
from ase.io import Trajectory
from dask.distributed import Client, LocalCluster
from ml4chem import Potentials
from ml4chem.data.handler import DataSet
from ml4chem.fingerprints import Gaussian
from ml4chem.data.handler import Data
from ml4chem.features import Gaussian
from ml4chem.models.autoencoders import AutoEncoder, train
from ml4chem.data.serialization import dump
from ml4chem.utils import logger
Expand All @@ -22,17 +22,17 @@ def autoencode():
"""
Data Structure Preparation
"""
data_handler = DataSet(images, purpose=purpose)
data_handler = Data(images, purpose=purpose)
training_set, energy_targets = data_handler.get_data(purpose=purpose)

"""
Let's create the targets of the model
"""
fingerprints = Gaussian(
features = Gaussian(
cutoff=6.5, normalized=normalized, save_preprocessor="cu_training.scaler"
)

targets = fingerprints.calculate_features(
targets = features.calculate(
training_set, data=data_handler, purpose=purpose, svm=False
)
output_dimension = len(list(targets.values())[0][0][1])
Expand Down
2 changes: 1 addition & 1 deletion examples/gp_potentials/cu_inference.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ def main():
)

# Passage of fingerprint database with reference space
calc.reference_space = "fingerprints.db"
calc.reference_space = "features.db"

for atoms in images:
energy = calc.get_potential_energy(atoms)
Expand Down
4 changes: 2 additions & 2 deletions examples/gp_potentials/cu_training.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

sys.path.append("../../")
from ml4chem import Potentials
from ml4chem.fingerprints import Gaussian
from ml4chem.features import Gaussian
from ml4chem.models.gaussian_process import GaussianProcess
from ml4chem.utils import logger

Expand All @@ -18,7 +18,7 @@ def train():
batch_size = 160

calc = Potentials(
fingerprints=Gaussian(
features=Gaussian(
cutoff=6.5, normalized=normalized, save_preprocessor="cu_training.scaler"
),
# model=GaussianProcess(batch_size=batch_size),
Expand Down
20 changes: 10 additions & 10 deletions examples/krr_potentials/cu_inference.log
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.96 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 2.38 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -92,7 +92,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.06 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.10 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -127,7 +127,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.14 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.77 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -162,7 +162,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.07 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.14 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -197,7 +197,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.09 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.68 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -232,7 +232,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.11 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.32 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -267,7 +267,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.16 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.92 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -302,7 +302,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.11 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 0.92 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -337,7 +337,7 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.09 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.76 seconds.
Computing energy...
Data
Expand Down Expand Up @@ -372,6 +372,6 @@ Symmetry function parameters for Cu atom:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 0.11 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 1.10 seconds.
Computing energy...
2 changes: 1 addition & 1 deletion examples/krr_potentials/cu_inference.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ def main():
)

# Passage of fingerprint database with reference space
calc.reference_space = "fingerprints.db"
calc.reference_space = "features.db"

for atoms in images:
energy = calc.get_potential_energy(atoms)
Expand Down
4 changes: 2 additions & 2 deletions examples/krr_potentials/cu_training.log
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ Options:
Adding atomic feature calculations to scheduler...
... finished in 0 hours 0 minutes 1.87 seconds.

Computing fingerprints...
Computing features...
Fingerprinting finished in 0 hours 0 minutes 12.67 seconds.
Fingerprints saved to fingerprints.db.
features saved to features.db.

Model Training
==============
Expand Down
4 changes: 2 additions & 2 deletions examples/krr_potentials/cu_training.params
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"batch_size": 160,
"kwargs": {}
},
"fingerprints": {
"features": {
"name": "Gaussian",
"cutoff": 6.5,
"normalized": true,
Expand All @@ -23,7 +23,7 @@
null
],
"save_preprocessor": "cu_training.scaler",
"filename": "fingerprints.db",
"filename": "features.db",
"angular_type": "G3",
"weighted": false,
"custom": {
Expand Down
4 changes: 2 additions & 2 deletions examples/krr_potentials/cu_training.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

sys.path.append("../../")
from ml4chem import Potentials
from ml4chem.fingerprints import Gaussian
from ml4chem.features import Gaussian
from ml4chem.models.kernelridge import KernelRidge
from ml4chem.utils import logger

Expand All @@ -18,7 +18,7 @@ def train():
batch_size = 160

calc = Potentials(
fingerprints=Gaussian(
features=Gaussian(
cutoff=6.5, normalized=normalized, save_preprocessor="cu_training.scaler"
),
model=KernelRidge(batch_size=batch_size),
Expand Down

0 comments on commit ddca2ca

Please sign in to comment.