--------
Overview
--------
**XenonPy** is a Python library that implements a comprehensive set of machine learning tools
for materials informatics. Its functionalities partially depend on Python (PyTorch) and R (MXNet).
This package is still under development. The current released version provides some limited features:
* Interface to the public materials database
* Library of materials descriptors (compositional/structural descriptors)
* pre-trained model library **XenonPy.MDL** (v0.1.0.beta, 2019/8/9: more than 140,000 models (include private models) in 35 properties of small molecules, polymers, and inorganic compounds) [Currently under major maintenance, expected to be recovered in v0.7]
* Machine learning tools.
* Transfer learning using the pre-trained models in XenonPy.MDL
.. image:: _static/xenonpy.png
--------
Citation
--------
XenonPy is an on-going research project that covers multiple important topics in materials informatics.
We recommend users to cite the papers that are relevant to their specific use of XenonPy.
Please refer to :doc:`features` for details of each feature in XenonPy with its corresponding citation.
User can also check the publication list below to pick the relevant citations.
--------
Features
--------
XenonPy has a rich set of tools for various materials informatics applications.
The descriptor generator class can calculate several types of numeric descriptors from ``compositional``, ``structure``.
By using XenonPy's built-in visualization functions, the relationships between descriptors and target properties can be easily shown in a heatmap.
XenonPy also supports an interface to use the ``rdkit`` descriptors and provides the ``iQSPR`` algorithm for molecular design.
Transfer learning is an important tool for the efficient application of machine learning methods to materials informatics.
To facilitate the widespread use of transfer learning,
we have developed a comprehensive library of pre-trained models, called **XenonPy.MDL**.
This library provides a simple API that allows users to fetch the models via an HTTP request.
For the ease of using the pre-trained models, some useful functions are also provided.
See :doc:`features` for details.
------
Sample
------
Sample codes of different features in XenonPy are available here: https://github.com/yoshida-lab/XenonPy/tree/master/samples
.. _user-doc:
.. toctree::
:maxdepth: 2
:caption: User Documentation
books
copyright
installation
features
tutorial
api
contribution
changes
contact
------------
Publications
------------
.. [1] H. Ikebata, K. Hongo, T. Isomura, R. Maezono, and R. Yoshida, “Bayesian molecular design with a chemical language model,” J Comput Aided Mol Des, vol. 31, no. 4, pp. 379–391, Apr. 2017, doi: 10/ggpx8b.
.. [2] S. Wu et al., “Machine-learning-assisted discovery of polymers with high thermal conductivity using a molecular design algorithm,” npj Computational Materials, vol. 5, no. 1, pp. 66–66, Dec. 2019, doi: 10.1038/s41524-019-0203-2.
.. [3] S. Wu, G. Lambard, C. Liu, H. Yamada, and R. Yoshida, “iQSPR in XenonPy: A Bayesian Molecular Design Algorithm,” Mol. Inform., vol. 39, no. 1–2, p. 1900107, Jan. 2020, doi: 10.1002/minf.201900107.
.. [4] H. Yamada et al., “Predicting Materials Properties with Little Data Using Shotgun Transfer Learning,” ACS Cent. Sci., vol. 5, no. 10, pp. 1717–1730, Oct. 2019, doi: 10.1021/acscentsci.9b00804.
.. [5] S. Ju et al., “Exploring diamondlike lattice thermal conductivity crystals via feature-based transfer learning,” Phys. Rev. Mater., vol. 5, no. 5, p. 053801, May 2021, doi: 10.1103/physrevmaterials.5.053801.
.. [6] C. Liu et al., “Machine Learning to Predict Quasicrystals from Chemical Compositions,” Adv. Mater., vol. 33, no. 36, p. 2102507, Sep. 2021, doi: 10.1002/adma.202102507.
------------
Contributing
------------
XenonPy is an `open source project `_ inspired by `matminer `_.
:raw-html:` `
This project is under continuous development. We would appreciate any feedback from the users.
:raw-html:` `
Code contributions are also very welcomed. See :doc:`contribution` for more details.
.. _pandas: https://pandas.pydata.org
.. _PyTorch: http://pytorch.org/
.. _Xenon: https://en.wikipedia.org/wiki/Xenon
.. |MacOS| image:: https://github.com/yoshida-lab/XenonPy/workflows/MacOS/badge.svg
:alt: MacOS Building Status
:target: https://github.com/yoshida-lab/XenonPy/actions?query=workflow%3AMacOS
.. |Windows| image:: https://github.com/yoshida-lab/XenonPy/workflows/Windows/badge.svg
:alt: Windows Building Status
:target: https://github.com/yoshida-lab/XenonPy/actions?query=workflow%3AWindows
.. |Ubuntu| image:: https://github.com/yoshida-lab/XenonPy/workflows/Ubuntu/badge.svg
:alt: Ubuntu Building Status
:target: https://github.com/yoshida-lab/XenonPy/actions?query=workflow%3AUbuntu
.. |readthedocs| image:: https://readthedocs.org/projects/xenonpy/badge/?version=latest
:alt: Documentation Status
:target: https://xenonpy.readthedocs.io/en/latest/?badge=latest
.. |codecov| image:: https://codecov.io/gh/yoshida-lab/XenonPy/branch/master/graph/badge.svg
:target: https://codecov.io/gh/yoshida-lab/XenonPy
.. |version| image:: https://img.shields.io/github/tag/yoshida-lab/XenonPy.svg?maxAge=360
:alt: Version
:target: https://github.com/yoshida-lab/XenonPy/releases/latest
.. |python| image:: https://img.shields.io/pypi/pyversions/xenonpy.svg
:alt: Python Versions
:target: https://pypi.org/project/xenonpy/
.. |total-dl| image:: https://pepy.tech/badge/xenonpy
:alt: Downloads
:target: https://pepy.tech/badge/xenonpy
.. |per-dl| image:: https://img.shields.io/pypi/dm/xenonpy.svg?label=PiPy%20downloads
:alt: PyPI - Downloads
================================================
FILE: docs/source/installation.rst
================================================
.. role:: raw-html(raw)
:format: html
.. note::
To all those who have purchased the book `Materials Informatics`_ published by `KYORITSU SHUPPAN`_:
The link to the exercises has changed to https://github.com/yoshida-lab/XenonPy/tree/master/mi_book.
Please follow the new link to access all these exercises.
We apologize for the inconvenience.
============
Installation
============
XenonPy can be installed using pip_ in 3.6 and 3.7 on Mac, Linux, and Windows.
Alternatively, we recommend using the `Docker Image`_ if you have no installation preference.
We have no plan to support Python 2.x. One of the main reasons is that the ``pymatgen`` library will not support Python 2 from 2019.
See `this link `_ for details.
.. _install_xenonpy:
-------------------
Using conda and pip
-------------------
pip_ is a package management system for installing and updating Python packages, which comes with any Python distribution.
Conda_ is an open source package management system and environment management system that runs on Windows, macOS, and Linux.
Conda easily creates, saves, loads and switches between environments on your local computer.
XenonPy has 3 peer dependencies, which are PyTorch, pymatgen and rdkit_. Before you install XenonPy, you have to install them.
The easiest way to install all 3 packages is to use Conda_. The following official tutorials will guide you through a successful installation.
PyTorch: https://pytorch.org/get-started/locally/
:raw-html:` `
pymatgen: http://pymatgen.org/index.html#getting-pymatgen
:raw-html:` `
rdkit: https://www.rdkit.org/docs/Install.html
For convenience, several environments preset are available at `conda_env`_.
You can use these files to create a runnable environment on your local machine.
.. code-block:: bash
$ conda create -n python={3.6 or 3.7} # use `conda create` command to create a fresh environment with specific name and python version
$ conda env update -n -f # use `conda env update` command to sync packages with the preset environment
.. note::
For Unix-like (Linux, Mac, FreeBSD, etc.) system, the above command will be enough. For windows, additional tools are needed.
We highly recommend you to install the `Visual C++ Build Tools `_ before creating your environment.
Also, confirm that you have checked the **Windows 10 SDK** (assuming the computer is Windows 10) on when installing the build tools.
The following example shows how to create an environment named ``xenonpy`` in ``python3.7`` and ``cuda10.1`` supports step-by-step.
1. **Chose an environment preset and download it**.
Because we want to have cuda10.1 supports, The **cuda101.yml** preset will surely satisfy this work.
If `curl `_ has been installed, the following command will download the environment file to your local machine.
.. code-block:: bash
$ curl -O https://raw.githubusercontent.com/yoshida-lab/XenonPy/master/conda_env/cuda101.yml
2. **Create the environment and install packages using environment file**.
The following commands will rebuild a python3.7 environment, and install the packages which are listed in **cuda101.yml**.
.. code-block:: bash
$ conda create -n xenonpy python=3.7
$ conda env update -n xenonpy -f cuda101.yml
3. **Enter the environment by name**.
In this example, it's ``xenonpy``.
.. code-block:: bash
$ source activate xenonpy
# or
$ activate xenonpy
# or
$ conda activate xenonpy
.. note::
Which command should be used is based on your system and your conda configuration.
4. **Update XenonPy**
When you reached here, XenonPy has been installed successfully.
If you want to update your old installation of XenonPy, ssing ``pip install -U xenonpy``.
.. code-block:: bash
$ pip install -U xenonpy
------------
Using docker
------------
.. image:: _static/docker.png
**Docker** is a tool designed to easily create, deploy, and run applications across multiple platforms using containers.
Containers allow a developer to pack up an application with all of the parts it needs, such as libraries and other dependencies, into a single package.
We provide the `official docker images`_ via the `Docker hub `_.
Using docker needs you to have a docker installation on your local machine. If you have not installed it yet, follow the `official installation tutorial `_ to install docker CE on your machine.
Once you have done this, the following command will boot up a jupyterlab_ for you with XenonPy inside. See `here `_ to know what other packages are available.
.. code-block:: bash
$ docker run --rm -it -v $HOME/.xenonpy:/home/user/.xenonpy -v :/workspace -p 8888:8888 yoshidalab/xenonpy
If you have a GPU server/PC running Linux and want to bring the GPU acceleration to docker. Just adding ``--runtime=nvidia`` to ``docker run`` command.
.. code-block:: bash
$ docker run --runtime=nvidia --rm -it -v $HOME/.xenonpy:/home/user/.xenonpy -v :/workspace -p 8888:8888 yoshidalab/xenonpy
For more information about **using GPU acceleration in docker**, see `nvidia docker `_.
.. note::
If you get **docker: Error response from daemon: Unknown runtime specified nvidia.** when runing docker with ``--runtime=nvidia``.
Please update your ``nvidia-docker`` to ``nvidia-docker2`` and repleace ``--runtime=nvidia`` with ``--gpus all``.
see `this issue `_ for details.
Permission failed
-----------------
You may have a permission problem when you try to open/save jupyter files. This is because docker is a container system running like a virtual machine.
Files will have different permission when be mounted onto a docker container.
The simplest way to resolve this problem is changing the permission of failed files.
You can open a terminal in jupyter notebook and type:
.. code-block:: bash
$ sudo chmod 666 permission_failed_file
This will change file permission to ``r+w`` for all users.
------------------------------
Installing in development mode
------------------------------
The user who plans to contribute to XenonPy has to extend the python environment to support pytest and other development tools.
The simplest way to extend your environment is using `extra_env.yml`_.
.. code-block:: bash
$ git clone https://github.com/yoshida-lab/XenonPy.git
under the cloned folder, run the following to install XenonPy in development mode:
.. code-block:: bash
$ cd XenonPy
$ conda env update -n -f devtools/extra_env.yml
$ pip install -e .
----------------------
Troubleshooting/issues
----------------------
Contact us at issues_ and Gitter_ when you have trouble.
Please provide detailed information (system specification, Python version, and input/output log, and so on).
-----------------------------------------------------------------------------------------------------------
.. _Materials Informatics: https://www.kyoritsu-pub.co.jp/book/b10013510.html
.. _KYORITSU SHUPPAN: https://www.kyoritsu-pub.co.jp/
.. _Conda: https://conda.io/en/latest/
.. _official docker images: https://cloud.docker.com/u/yoshidalab/repository/docker/yoshidalab/xenonpy
.. _yoshida-lab channel: https://anaconda.org/yoshida
.. _pip: https://pip.pypa.io
.. _docker image: https://docs.docker.com
.. _extra_env.yml: https://github.com/yoshida-lab/XenonPy/blob/master/devtools/extra_env.yml
.. _issues: https://github.com/yoshida-lab/XenonPy/issues
.. _Gitter: https://gitter.im/yoshida-lab/XenonPy
.. _PyTorch: http://pytorch.org/
.. _rdkit: https://www.rdkit.org/
.. _jupyterlab: https://jupyterlab.readthedocs.io/en/stable/
.. _conda_env: https://github.com/yoshida-lab/XenonPy/tree/master/conda_env
================================================
FILE: docs/source/modules.rst
================================================
xenonpy
=======
.. toctree::
:maxdepth: 4
xenonpy
================================================
FILE: docs/source/setup.rst
================================================
setup module
============
.. automodule:: setup
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/tutorial.rst
================================================
========
Tutorial
========
These tutorials will demonstrate the most foundational usages of XenonPy and XenonPy.MDL and
we assume that you can use `Jupyter notebook `_.
.. toctree::
:maxdepth: 1
:glob:
tutorials/*
-----------
Sample data
-----------
Before starting these tutorials, you need to prepare some sample data for the benchmark/test.
We selected 1,000 inorganic compounds randomly from the `Materials Project `_ database for this using.
You can check these **MP ids** at:
https://github.com/yoshida-lab/XenonPy/blob/master/samples/mp_ids.txt.
To build the sample data, you also have to create an API key at the materials project.
Please see `The Materials API `_ and follow the official documents.
You can use the following codes to build your sample data. These data will be saved at ``~/.xenonpy/userdata``.
>>> from xenonpy.datatools import preset
>>> preset.build('mp_samples', api_key='your api key')
If you want to know what exactly the code did, please check:
https://github.com/yoshida-lab/XenonPy/blob/master/samples/sample_data_building.ipynb
================================================
FILE: docs/source/tutorials/1-dataset.rst
================================================
===========
Data access
===========
**Dataset** is an abstraction of the local file system.
Users can add their local paths into this system to easily access the data inside.
The basic concept is to treat a data file as a property of a ``Dataset`` object.
The following docs show how easy it is to interact with the data in this system.
-------
Dataset
-------
Assuming that you have some data files ``data1.csv``, ``data1.pd.xz``, ``data1.pkl.z`` under dir `/set1`
and ``data2.csv``, ``data2.pd.xz``, ``data2.pkl.z`` under dir `/set2`.
The following codes will create a ``Dataset`` object containing all available files under `/set1` and `/set2`.
>>> from xenonpy.datatools import Dataset
>>> dataset = Dataset('/set1', '/set2')
>>> dataset
includes:
"data1": /set1/data1.pd.xz
"data2": /set2/data2.pd.xz
Now, you can retrieve data by their name like this:
>>> dataset.dataframe.data1
What the code did is that, the ``dataset`` loaded a file with name ``data1.pd.xz`` from `/set1` or `/set2`.
In this case, the `/set1/data1.pd.xz` was loaded.
It is important to note that we called a property named ``dataframe`` before we load ``data1`` in order to let ``dataset`` know that it is loading a ``pandas.DataFrame`` object file using the ``pd.read_pickle`` function.
Currently, 4 loaders are available out-of-the-box. The information of built-in loaders is summarised as below.
.. table:: built-in loaders
============== ================== =============================
file extension loader description
-------------- ------------------ -----------------------------
``pd(.*)`` pd.read_pickle pandas.DataFrame object file
``csv`` pd.read_csv csv file
``xlsx|xls`` pd.read_excel excel file
``pkl(.*)`` joblib.load common pickled files
============== ================== =============================
The default loader is ``dataframe``. This means that if you want to load a pandas.DataFrame object, you can omit the ``dataframe``.
The following code exactly does the same work as explained above:
>>> dataset.data1
You can also specify the default loader by setting the ``backend`` parameter:
>>> dataset = Dataset('set1', 'set2', backend='csv')
>>> dataset.data1 # this will load '/set1/data1.csv'
------
preset
------
XenonPy also uses this system to provide some built-in data.
Currently, two sets of element-level property data are available out-of-the-box (``elements`` and ``elements_completed`` (imputed version of ``elements``)).
These data were collected from `mendeleev`_, `pymatgen`_, `CRC Hand Book`_ and `Magpie`_.
To know the details of ``elements_completed``, see :ref:`features:Data access`
.. _CRC Hand Book: http://hbcponline.com/faces/contents/ContentsSearch.xhtml
.. _Magpie: https://bitbucket.org/wolverton/magpie
.. _mendeleev: https://mendeleev.readthedocs.io
.. _pymatgen: http://pymatgen.org/
Use the following codes to load ``elements`` and ``elements_completed``.
>>> from xenonpy.datatools import preset
>>> preset.elements
>>> preset.elements_completed
If you will get a ``file not exist`` error, please run the following code to sync your local dataset.
>>> from xenonpy.datatools import preset
>>> preset.sync('elements')
>>> preset.sync('elements_completed')
These are still some advanced uses of ``Dataset`` and ``preset``. For more details, see :ref:`tutorials/1-dataset:Advance`.
Also see the jupyter files at:
https://github.com/yoshida-lab/XenonPy/tree/master/samples/dataset_and_preset.ipynb
-------
Storage
-------
For implementation details, you can check out our sample codes:
https://github.com/yoshida-lab/XenonPy/tree/master/samples/storage.ipynb
-------
Advance
-------
Coming soon!
================================================
FILE: docs/source/tutorials/2-descriptor.rst
================================================
======================
Descriptor calculation
======================
**XenonPy** comes with a general interface for descriptor calculation.
By using this interface, users can implement their descriptor calculator with only a few lines of codes and run it smoothly.
We also use this system to provide built-in calculators. Currently, 15 featurizers in 4 types are available out-of-the-box.
The following list shows a summary.
.. csv-table:: Summary of built-in featurizers
:header: "Featurizer", "Type", "Description"
"Counting", "Composition", "Encoding number of compounds elements in to vector: :math:`f_{min, i} = min{f_{A,i}, f_{B,i}}`"
"WeightedAverage", "Composition", "Weighted average (abbr: ave): :math:`f_{ave, i} = w_{A}^* f_{A,i} + w_{B}^* f_{B,i}`"
"WeightedVariance", "Composition", "Weighted variance (abbr: var): :math:`f_{var, i} = w_{A}^* (f_{A,i} - f_{ave, i})^2 + w_{B}^* (f_{B,i} - f_{ave, i})^2`"
"WeightedSum", "Composition", "Weighted sum (abbr: sum): :math:`f_{sum, i} = w_{A} f_{A,i} + w_{B} f_{B,i}`"
"GeometricMean", "Composition", "Geometric mean (abbr: gmean): :math:`f_{gmean, i} = \sqrt[w_A + w_B]{f_{A,i}^{w_A} * f_{V,i}^{w_B}}`"
"HarmonicMean", "Composition", "Harmonic mean (abbr: hmean): :math:`f_{hmean, i} = \frac{w_A +w_B}{\frac{1}{f_{A,i}}*w_A + \frac{1}{f_{B,i}}*w_B}`"
"MaxPooling", "Composition", "Max-pooling (abbr: max): :math:`f_{max, i} = max{f_{A,i}, f_{B,i}}`"
"MinPooling", "Composition", "Min-pooling (abbr: min): :math:`f_{min, i} = min{f_{A,i}, f_{B,i}}`"
"RDKitFP", "Fingerprint", "RDKit fingerprint"
"AtomPairFP", "Fingerprint", "Atom Pair fingerprints"
"MACCS", "Fingerprint", "The MACCS keys for a molecule"
"ECFP", "Fingerprint", "Morgan (Circular) fingerprints (ECFP)"
"FCFP", "Fingerprint", "Morgan (Circular) fingerprints + feature-based (FCFP)"
"TopologicalTorsionFP", "Fingerprint", "Topological Torsion fingerprints"
"OrbitalFieldMatrix", "Structure", "Representation based on the valence shell electrons of neighboring atoms"
"RadialDistributionFunction", "Structure", "Radial distribution in crystal"
"FrozenFeaturizer", "NN ", "Neural Network Extracted "
-------------------------
Compositional descriptors
-------------------------
XenonPy can calculate 290 compositional features for a given chemical composition.
This calculation uses the information of the 58 element-level property data recorded in ``elements_completed``.
See :ref:`features:Data access` for details.
>>> from xenonpy.descriptor import Compositions
>>> cal = Compositions()
>>> cal
Compositions:
|- composition:
| |- Counting
| |- WeightedAverage
| |- WeightedSum
| |- WeightedVariance
| |- GeometricMean
| |- HarmonicMean
| |- MaxPooling
| |- MinPooling
The structure information of the calculator ``Cal`` is shown above.
This information tells us ``Cal`` has one featurizer group called **composition** with featurizers
``WeightedAvgFeature``, ``WeightedSumFeature``, ``WeightedVarFeature``, ``MaxFeature`` and ``MinFeature`` in it.
To use this calculator, users have to structure an iterable object that contains the information of compounds' composition, then feed it to the method ``transform`` or ``fit_transform`` in ``cal``.
These methods accept two types of input, the ``pymatgen.Structure`` objects, or dicts which have the structure like `{'H': 2, 'O': 1}`.
Using our sample data, users will obtain a pandas.DataFrame object that contains all the compositional descriptors.
>>> from xenonpy.datatools import preset
>>> samples = preset.mp_samples
>>> comps = samples['composition']
>>> descriptor = cal.transform(comps)
>>> descriptor
ave:atomic_number ... min:Polarizability
0 24.666667 ... 0.802000
1 33.000000 ... 1.100000
2 21.600000 ... 0.802000
... ... ... ...
928 44.500000 ... 5.500000
929 24.250000 ... 25.000000
930 26.750000 ... 4.800000
931 36.000000 ... 6.600000
932 16.500000 ... 0.802000
[933 rows x 290 columns]
where
>>> comps.__class__
pandas.core.series.Series
>>> comps[0].__class__
dict
If the input is a pandas.DataFrame object, the calculator will first try to read the data columns that have the same name as the featurizer groups.
For example, the name of the featurizer group in the example above is **composition**.
Therefore, the whole object entry can be fed into the calculator's methods without explicitly extracting the **composition** column in the ``samples``:
>>> descriptor = cal.transform(samples)
>>> descriptor
ave:atomic_number ... min:Polarizability
0 24.666667 ... 0.802000
1 33.000000 ... 1.100000
2 21.600000 ... 0.802000
... ... ... ...
928 44.500000 ... 5.500000
929 24.250000 ... 25.000000
930 26.750000 ... 4.800000
931 36.000000 ... 6.600000
932 16.500000 ... 0.802000
[933 rows x 290 columns]
This does the same work as the previous one.
----------------------
Structural descriptors
----------------------
Similar to the ``Compositions`` calculator, ``Structures`` accepts ``pymatgen.Structure`` objects as its input, and then return calculated results as a pandas.DataFrame.
>>> from xenonpy.descriptor import Structures
>>> cal = Structures()
>>> cal
Structures:
|- structure:
| |- RadialDistributionFunction
| |- OrbitalFieldMatrix
``Structures`` contains one featurizer group called **structure** with ``RadialDistributionFunction`` and ``OrbitalFieldMatrix`` in it.
``samples`` also has the structure information. We can use these to calculate structural descriptors.
>>> descriptor = cal.transform(samples)
This will take 3 ~ 5 min to run and finally, you will get:
>>> descriptor.head(5)
0.1 0.2 0.30000000000000004 ... f14_f12 f14_f13 f14_f14
mp-1008807 0.0 0.0 0.0 ... 0.0 0.0 0.0000
mp-1009640 0.0 0.0 0.0 ... 0.0 0.0 0.0000
mp-1016825 0.0 0.0 0.0 ... 0.0 0.0 0.0000
mp-1017582 0.0 0.0 0.0 ... 0.0 0.0 0.3851
mp-1021511 0.0 0.0 0.0 ... 0.0 0.0 0.0000
[5 rows x 1224 columns]
-------
Advance
-------
There are more details of the descriptor calculator system that are not yet included in this tutorial.
Before we complete this document, you can check out https://github.com/yoshida-lab/XenonPy/blob/master/samples/custom_descriptor_calculator.ipynb for more information.
================================================
FILE: docs/source/tutorials/3-visualization.rst
================================================
=============
Visualization
=============
Descriptors on a set of given materials could be displayed as a heatmap, which helps you to understand the descriptor-property relationships.
This tutorial will show you how to draw a heatmap.
------------------
Descriptor heatmap
------------------
We will use ``Composition`` and ``density`` as the descriptors and target property, respectively, for a step-by-step demonstration of how to draw a heatmap.
1. calculate descriptors
.. code-block:: python
from xenonpy.datatools import preset
from xenonpy.descriptor import Compositions
samples = preset.mp_samples
cal = Compositions()
descriptor = cal.transform(samples['composition'])
2. sort descriptors by property values
.. code-block:: python
# use formation energy as our target
property_ = 'density'
# --- sort property
prop = samples[property_].dropna()
sorted_prop = prop.sort_values()
# --- sort descriptors
sorted_desc = descriptor.loc[sorted_prop.index]
3. draw the heatmap
.. code-block:: python
# --- import necessary libraries
from xenonpy.visualization import DescriptorHeatmap
heatmap = DescriptorHeatmap(
bc=True, # use box-cox transform
save=dict(fname='heatmap_density', dpi=200, bbox_inches='tight'), # save figure to file
figsize=(70, 10))
heatmap.fit(sorted_desc)
heatmap.draw(sorted_prop)
Here, we explain how to *read* the descriptor heatmap.
.. figure:: ../_static/heatmap_density.png
Heatmap of ~70,000 compounds with 290 compositional descriptors sorted by their property's value.
In the heatmap of the descriptor matrix, the materials are arranged from the top to bottom in the increasing order
of density. Plotting the descriptor-property relationships in this way, we could visually recognize which
descriptors are relevant or irrelevant to the prediction of formation energies. Relevant descriptors, which are linearly
or nonlinearly dependent to formation energies, might exhibit certain patterns from top to bottom in the heatmap. For example,
a monotonic decrease or increase pattern would appear in a linearly dependent descriptor. On the other hand,
irrelevant descriptors might exhibit no specific patterns.
You can test run using this sample code:
https://github.com/yoshida-lab/XenonPy/blob/master/samples/visualization.ipynb
================================================
FILE: docs/source/tutorials/4-random_nn_model_and_training.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "-"
}
},
"source": [
"# Random NN models"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This tutorial shows how to build neural network models.\n",
"We will learn how to calculate compositional descriptors using `xenonpy.descriptor.Compositions` calculator and train our model using `xenonpy.model.training` modules.\n",
"\n",
"In this tutorial, we will use some inorganic sample data from materials project. \n",
"If you don't have it, please see https://github.com/yoshida-lab/XenonPy/blob/master/samples/build_sample_data.ipynb."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### useful functions\n",
"\n",
"Running the following cell will load some commonly used packages, such as `numpy`, `pandas`, and so on. It will also import some in-house functions used in this tutorial. See `samples/tools.ipynb` to check what will be imported."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%run tools.ipynb"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Sequential linear model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We will use `xenonpy.model.SequentialLinear` to build a sequential linear model. The basic layer in `SequentialLinear` model is `xenonpy.model.LinearLayer`"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\u001b[0;31mInit signature:\u001b[0m\n",
"\u001b[0mSequentialLinear\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0min_features\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mint\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mout_features\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mint\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mbias\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mbool\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mh_neurons\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m...\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mint\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m...\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mh_bias\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mbool\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mbool\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m...\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mh_dropouts\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m...\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0.1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mh_normalizers\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNoneType\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNoneType\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m...\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0.1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mh_activation_funcs\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mCallable\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNoneType\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mTuple\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mCallable\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNoneType\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m...\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mReLU\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mDocstring:\u001b[0m \n",
"Sequential model with linear layers and configurable other hype-parameters.\n",
"e.g. ``dropout``, ``hidden layers``\n",
"\u001b[0;31mInit docstring:\u001b[0m\n",
"Parameters\n",
"----------\n",
"in_features\n",
" Size of input.\n",
"out_features\n",
" Size of output.\n",
"bias\n",
" Enable ``bias`` in input layer.\n",
"h_neurons\n",
" Number of neurons in hidden layers.\n",
" Can be a tuple of floats. In that case,\n",
" all these numbers will be used to calculate the neuron numbers.\n",
" e.g. (0.5, 0.4, ...) will be expanded as (in_features * 0.5, in_features * 0.4, ...)\n",
"h_bias\n",
" ``bias`` in hidden layers.\n",
"h_dropouts\n",
" Probabilities of dropout in hidden layers.\n",
"h_normalizers\n",
" Momentum of batched normalizers in hidden layers.\n",
"h_activation_funcs\n",
" Activation functions in hidden layers.\n",
"\u001b[0;31mFile:\u001b[0m ~/projects/XenonPy/xenonpy/model/sequential.py\n",
"\u001b[0;31mType:\u001b[0m type\n",
"\u001b[0;31mSubclasses:\u001b[0m \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from xenonpy.model import SequentialLinear, LinearLayer\n",
"SequentialLinear?"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\u001b[0;31mInit signature:\u001b[0m\n",
"\u001b[0mLinearLayer\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0min_features\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mint\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mout_features\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mint\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mbias\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mbool\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mdropout\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mfloat\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0.0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mactivation_func\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mCallable\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mReLU\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mnormalizer\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mfloat\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNoneType\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m0.1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mDocstring:\u001b[0m \n",
"Base NN layer. This is a wrap around PyTorch.\n",
"See here for details: http://pytorch.org/docs/master/nn.html#\n",
"\u001b[0;31mInit docstring:\u001b[0m\n",
"Parameters\n",
"----------\n",
"in_features:\n",
" Size of each input sample.\n",
"out_features:\n",
" Size of each output sample\n",
"dropout: float\n",
" Probability of an element to be zeroed. Default: 0.5\n",
"activation_func: func\n",
" Activation function.\n",
"normalizer: func\n",
" Normalization layers\n",
"\u001b[0;31mFile:\u001b[0m ~/projects/XenonPy/xenonpy/model/sequential.py\n",
"\u001b[0;31mType:\u001b[0m type\n",
"\u001b[0;31mSubclasses:\u001b[0m \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"LinearLayer?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Following the official suggestion from PyTorch, `SequentialLinear` is a python class that inherit the `torch.nn.Module` class. Users can specify the hyperparameters to get a fully customized model object. For example:"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"SequentialLinear(\n",
" (layer_0): LinearLayer(\n",
" (linear): Linear(in_features=290, out_features=232, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(232, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_1): LinearLayer(\n",
" (linear): Linear(in_features=232, out_features=203, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(203, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_2): LinearLayer(\n",
" (linear): Linear(in_features=203, out_features=174, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(174, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (output): Linear(in_features=174, out_features=1, bias=True)\n",
")"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model = SequentialLinear(290, 1, h_neurons=(0.8, 0.7, 0.6))\n",
"model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### fully randomized model generation\n",
"\n",
"Process of random model generation:\n",
"\n",
"1. using a random parameter generator to generate a set of parameter.\n",
"2. using the generated parameter set to setup a model object.\n",
"3. loop step 1 and 2 as many times as needed.\n",
"\n",
"We provided a general parameter generator `xenonpy.utils.ParameterGenerator` to do all the 3 steps for any callable object."
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\u001b[0;31mInit signature:\u001b[0m\n",
"\u001b[0mParameterGenerator\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mseed\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mint\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mNoneType\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mAny\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mSequence\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mCallable\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mDict\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mDocstring:\u001b[0m Generator for parameter set generating.\n",
"\u001b[0;31mInit docstring:\u001b[0m\n",
"Parameters\n",
"----------\n",
"seed\n",
" Numpy random seed.\n",
"kwargs\n",
" Parameter candidate.\n",
"\u001b[0;31mFile:\u001b[0m ~/projects/XenonPy/xenonpy/utils/parameter_gen.py\n",
"\u001b[0;31mType:\u001b[0m type\n",
"\u001b[0;31mSubclasses:\u001b[0m \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from xenonpy.utils import ParameterGenerator\n",
"ParameterGenerator?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calling an instance of `ParameterGenerator` will return a generator.\n",
"This generator can randomly select parameters from parameter candidates and yield them as a dict. This is what we want in step 1."
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"from math import ceil\n",
"from random import uniform\n",
"\n",
"generator = ParameterGenerator(\n",
" in_features=290,\n",
" out_features=1,\n",
" h_neurons=dict(\n",
" data=[ceil(uniform(0.1, 1.2) * 290) for _ in range(100)], \n",
" repeat=(2, 3)\n",
" )\n",
")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Because `generator` is a generator, `for ... in ...` statement can be applied. \n",
"For example, we can use `for parameters in generator(num_of_models)` to loop all these generated parameter sets."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{'in_features': 290, 'out_features': 1, 'h_neurons': (70, 109)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (135, 45)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (216, 261, 79)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (111, 88, 49)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (216, 79, 47)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (161, 45)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (193, 161, 78)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (90, 36, 234)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (230, 83, 295)}\n",
"{'in_features': 290, 'out_features': 1, 'h_neurons': (171, 247)}\n"
]
}
],
"source": [
"for parameters in generator(num=10):\n",
" print(parameters)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For step 2, we can give a model class to the `factory` parameter as a factory function.\n",
"If `factory` parameter is given, generator will feed generated parameters to the factory function automatically and yield the result as a second return in each loop. For example:"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"parameters: {'in_features': 290, 'out_features': 1, 'h_neurons': (182, 335, 204)}\n",
"SequentialLinear(\n",
" (layer_0): LinearLayer(\n",
" (linear): Linear(in_features=290, out_features=182, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(182, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_1): LinearLayer(\n",
" (linear): Linear(in_features=182, out_features=335, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(335, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_2): LinearLayer(\n",
" (linear): Linear(in_features=335, out_features=204, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(204, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (output): Linear(in_features=204, out_features=1, bias=True)\n",
") \n",
"\n",
"parameters: {'in_features': 290, 'out_features': 1, 'h_neurons': (108, 255)}\n",
"SequentialLinear(\n",
" (layer_0): LinearLayer(\n",
" (linear): Linear(in_features=290, out_features=108, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(108, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_1): LinearLayer(\n",
" (linear): Linear(in_features=108, out_features=255, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(255, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (output): Linear(in_features=255, out_features=1, bias=True)\n",
") \n",
"\n"
]
}
],
"source": [
"for parameters, model in generator(2, factory=SequentialLinear):\n",
" print('parameters: ', parameters)\n",
" print(model, '\\n')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### scheduled random model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We also enable users to generate parameters in a functional way by given a function as candidate parameters. In this case, the function accept an int number as vector length and a vector of generated parameters. For example, generate a `n` length vector with float numbers sorted in ascending."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"generator = ParameterGenerator(\n",
" in_features=290,\n",
" out_features=1,\n",
" h_neurons=dict(\n",
" data=lambda n: sorted(np.random.uniform(0.2, 0.8, size=n), reverse=True), \n",
" repeat=(2, 3)\n",
" )\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"parameters: {'in_features': 290, 'out_features': 1, 'h_neurons': (0.7954011465554711, 0.6993610045591458)}\n",
"SequentialLinear(\n",
" (layer_0): LinearLayer(\n",
" (linear): Linear(in_features=290, out_features=231, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(231, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_1): LinearLayer(\n",
" (linear): Linear(in_features=231, out_features=203, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(203, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (output): Linear(in_features=203, out_features=1, bias=True)\n",
") \n",
"\n",
"parameters: {'in_features': 290, 'out_features': 1, 'h_neurons': (0.798810246990777, 0.38584535382368323, 0.29569841893337045)}\n",
"SequentialLinear(\n",
" (layer_0): LinearLayer(\n",
" (linear): Linear(in_features=290, out_features=232, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(232, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_1): LinearLayer(\n",
" (linear): Linear(in_features=232, out_features=112, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(112, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_2): LinearLayer(\n",
" (linear): Linear(in_features=112, out_features=86, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(86, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (output): Linear(in_features=86, out_features=1, bias=True)\n",
") \n",
"\n"
]
}
],
"source": [
"for parameters, model in generator(2, factory=SequentialLinear):\n",
" print('parameters: ', parameters)\n",
" print(model, '\\n')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Model training\n",
"\n",
"We provide a general and extendable model training system for neural network models.\n",
"By customizing the extensions, users can fully control their model training process, and save the training results following the *XenonPy.MDL* format automatically.\n",
"\n",
"All these modules and extensions are under the `xenonpy.model.training`."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [],
"source": [
"import torch\n",
"import matplotlib.pyplot as plt\n",
"from pymatgen import Structure\n",
"\n",
"from xenonpy.model.training import Trainer, SGD, MSELoss, Adam, ReduceLROnPlateau, ExponentialLR, ClipValue\n",
"\n",
"from xenonpy.datatools import preset, Splitter\n",
"from xenonpy.descriptor import Compositions"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### prepare training/testing data\n",
"\n",
"If you followed the tutorial in https://github.com/yoshida-lab/XenonPy/blob/master/samples/build_sample_data.ipynb,\n",
"the sample data should be save at `~/.xenonpy/userdata` with name `mp_samples.pd.xz`.\n",
"You can use `pd.read_pickle` to load this file but we suggest that you use our `xenonpy.datatools.preset` module.\n",
"\n",
"We chose `volume` as the example to demonstrate how to use our training system. We only use the data which `volume` are smaller than 2,500 to avoid the disparate data.\n",
"we select data in `pandas.DataFrame` and calculate the descriptors using `xenonpy.descriptor.Compositions` calculator.\n",
"It is noticed that the input for a neuron network model in pytorch must has shape (N x M x ...), which mean if the input is a 1-D vector, it should be reshaped to 2-D, e.g. (N) -> (N x 1)."
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
band_gap
\n",
"
composition
\n",
"
density
\n",
"
e_above_hull
\n",
"
efermi
\n",
"
elements
\n",
"
final_energy_per_atom
\n",
"
formation_energy_per_atom
\n",
"
pretty_formula
\n",
"
structure
\n",
"
volume
\n",
"
\n",
" \n",
" \n",
"
\n",
"
mp-1008807
\n",
"
0.0000
\n",
"
{'Rb': 1.0, 'Cu': 1.0, 'O': 1.0}
\n",
"
4.784634
\n",
"
0.996372
\n",
"
1.100617
\n",
"
[Rb, Cu, O]
\n",
"
-3.302762
\n",
"
-0.186408
\n",
"
RbCuO
\n",
"
[[-3.05935361 -3.05935361 -3.05935361] Rb, [0....
\n",
"
57.268924
\n",
"
\n",
"
\n",
"
mp-1009640
\n",
"
0.0000
\n",
"
{'Pr': 1.0, 'N': 1.0}
\n",
"
8.145777
\n",
"
0.759393
\n",
"
5.213442
\n",
"
[Pr, N]
\n",
"
-7.082624
\n",
"
-0.714336
\n",
"
PrN
\n",
"
[[0. 0. 0.] Pr, [1.57925232 1.57925232 1.58276...
\n",
"
31.579717
\n",
"
\n",
"
\n",
"
mp-1016825
\n",
"
0.7745
\n",
"
{'Hf': 1.0, 'Mg': 1.0, 'O': 3.0}
\n",
"
6.165888
\n",
"
0.589550
\n",
"
2.424570
\n",
"
[Hf, Mg, O]
\n",
"
-7.911723
\n",
"
-3.060060
\n",
"
HfMgO3
\n",
"
[[2.03622802 2.03622802 2.03622802] Hf, [0. 0....
\n",
"
67.541269
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" band_gap composition density \\\n",
"mp-1008807 0.0000 {'Rb': 1.0, 'Cu': 1.0, 'O': 1.0} 4.784634 \n",
"mp-1009640 0.0000 {'Pr': 1.0, 'N': 1.0} 8.145777 \n",
"mp-1016825 0.7745 {'Hf': 1.0, 'Mg': 1.0, 'O': 3.0} 6.165888 \n",
"\n",
" e_above_hull efermi elements final_energy_per_atom \\\n",
"mp-1008807 0.996372 1.100617 [Rb, Cu, O] -3.302762 \n",
"mp-1009640 0.759393 5.213442 [Pr, N] -7.082624 \n",
"mp-1016825 0.589550 2.424570 [Hf, Mg, O] -7.911723 \n",
"\n",
" formation_energy_per_atom pretty_formula \\\n",
"mp-1008807 -0.186408 RbCuO \n",
"mp-1009640 -0.714336 PrN \n",
"mp-1016825 -3.060060 HfMgO3 \n",
"\n",
" structure volume \n",
"mp-1008807 [[-3.05935361 -3.05935361 -3.05935361] Rb, [0.... 57.268924 \n",
"mp-1009640 [[0. 0. 0.] Pr, [1.57925232 1.57925232 1.58276... 31.579717 \n",
"mp-1016825 [[2.03622802 2.03622802 2.03622802] Hf, [0. 0.... 67.541269 "
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# if you have not have the samples data\n",
"# preset.build('mp_samples', api_key=)\n",
"\n",
"from xenonpy.datatools import preset\n",
"\n",
"data = preset.mp_samples\n",
"data.head(3)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In case of the system did not automatically download some descriptor data in XenonPy, please run the following code to sync the data."
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"fetching dataset `elements` from https://github.com/yoshida-lab/dataset/releases/download/v0.1.3/elements.pd.xz.\n",
"fetching dataset `elements_completed` from https://github.com/yoshida-lab/dataset/releases/download/v0.1.3/elements_completed.pd.xz.\n"
]
}
],
"source": [
"from xenonpy.datatools import preset\n",
"preset.sync('elements')\n",
"preset.sync('elements_completed')"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"y_pred = trainer.predict(x_in=torch.tensor(x_val.values, dtype=torch.float)).detach().numpy().flatten()\n",
"y_true = y_val.values.flatten()\n",
"\n",
"y_fit_pred = trainer.predict(x_in=torch.tensor(x_train.values, dtype=torch.float)).detach().numpy().flatten()\n",
"y_fit_true = y_train.values.flatten()\n",
"\n",
"draw(y_true, y_pred, y_fit_true, y_fit_pred, prop_name='Volume ($\\AA^3$)')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can see that although `trainer` can keep training info automatically for us, we still need to convert `DataFrame` to `torch.Tensor` and convert dtype from `np.double` to `torch.float` during training, and eventually convert them back during prediction ourselves. Also, overfitting could be observed in the **prediction vs observation** plot. One possible caused is using all training data in each epoch of the training process. We can use a technique called mini-batch to avoid overfitting, but that will require more coding.\n",
"\n",
"To skip these tedious coding steps, we provide an extension system."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First, we use `ArrayDataset` to wrap our data, and use `torch.utils.data.DataLoader` to a build mini-batch loader."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"from xenonpy.model.training.dataset import ArrayDataset\n",
"from torch.utils.data import DataLoader"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [],
"source": [
"train_dataset = DataLoader(ArrayDataset(x_train, y_train), shuffle=True, batch_size=100)\n",
"val_dataset = DataLoader(ArrayDataset(x_val, y_val), batch_size=1000)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Second, we use `TensorConverter` extension to automatically convert data between `numpy` and `torch.Tensor`.\n",
"Additionally, we want to trace some stopping criterion and use early stopping when these criterion stop improving.\n",
"This can be done by using `Validator`.\n",
"\n",
"At last, to save our model for latter use, just add `Persist` to the trainer and saving will be done in slient."
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"from xenonpy.model.training.extension import Validator, TensorConverter, Persist\n",
"from xenonpy.model.training.dataset import ArrayDataset\n",
"from xenonpy.model.utils import regression_metrics"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We use `trainer.extend` method to stack up extensions. Note that extensions will be executed in the order of insertion, so `TensorConverter` should always go first and `Persist` be the last."
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [],
"source": [
"trainer = Trainer(\n",
" optimizer=Adam(lr=0.01),\n",
" loss_func=MSELoss(),\n",
").extend(\n",
" TensorConverter(),\n",
" Validator(metrics_func=regression_metrics, early_stopping=30, trace_order=5, mae=0.0, pearsonr=1.0),\n",
")"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\u001b[0;31mInit signature:\u001b[0m\n",
"\u001b[0mPersist\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mpath\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mpathlib\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mPath\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'.'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mmodel_class\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mCallable\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mmodel_params\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mUnion\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mtuple\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdict\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m<\u001b[0m\u001b[0mbuilt\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;32min\u001b[0m \u001b[0mfunction\u001b[0m \u001b[0many\u001b[0m\u001b[0;34m>\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0mincrement\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0msync_training_step\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mFalse\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mdescribe\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0mAny\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
"\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mDocstring:\u001b[0m Trainer extension for data persistence\n",
"\u001b[0;31mInit docstring:\u001b[0m\n",
"Parameters\n",
"----------\n",
"path\n",
" Path for model saving.\n",
"model_class\n",
" A factory function for model reconstructing.\n",
" In most case this is the model class inherits from :class:`torch.nn.Module`\n",
"model_params\n",
" The parameters for model reconstructing.\n",
" This can be anything but in general this is a dict which can be used as kwargs parameters.\n",
"increment\n",
" If ``True``, dir name of path will be decorated with a auto increment number,\n",
" e.g. use ``model_dir@1`` for ``model_dir``.\n",
"sync_training_step\n",
" If ``True``, will save ``trainer.training_info`` at each iteration.\n",
" Default is ``False``, only save ``trainer.training_info`` at each epoch.\n",
"describe:\n",
" Any other information to describe this model.\n",
" These information will be saved under model dir by name ``describe.pkl.z``.\n",
"\u001b[0;31mFile:\u001b[0m ~/projects/XenonPy/xenonpy/model/training/extension/persist.py\n",
"\u001b[0;31mType:\u001b[0m type\n",
"\u001b[0;31mSubclasses:\u001b[0m \n"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"Persist?"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"`Persist` need a path to save model. For convenience, we prepare the path name by concatenating the number of neurons in a model."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [],
"source": [
"def make_name(model):\n",
" name = []\n",
" for n, m in model.named_children():\n",
" if 'layer_' in n:\n",
" name.append(str(m.linear.in_features))\n",
" else:\n",
" name.append(str(m.in_features))\n",
" name.append(str(m.out_features))\n",
" return '-'.join(name)"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"SequentialLinear(\n",
" (layer_0): LinearLayer(\n",
" (linear): Linear(in_features=290, out_features=232, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(232, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_1): LinearLayer(\n",
" (linear): Linear(in_features=232, out_features=174, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(174, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_2): LinearLayer(\n",
" (linear): Linear(in_features=174, out_features=116, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(116, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (layer_3): LinearLayer(\n",
" (linear): Linear(in_features=116, out_features=58, bias=True)\n",
" (dropout): Dropout(p=0.1)\n",
" (normalizer): BatchNorm1d(58, eps=0.1, momentum=0.1, affine=True, track_running_stats=True)\n",
" (activation): ReLU()\n",
" )\n",
" (output): Linear(in_features=58, out_features=1, bias=True)\n",
")"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
},
{
"name": "stderr",
"output_type": "stream",
"text": []
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"Training: 12%|█▏ | 47/400 [00:15<02:06, 2.78it/s]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Early stopping is applied: no improvement for ['mae', 'pearsonr'] since the last 31 iterations, finish training at iteration 372\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"\n"
]
}
],
"source": [
"model = SequentialLinear(290, 1, h_neurons=(0.8, 0.6, 0.4, 0.2))\n",
"model\n",
"\n",
"model_name = make_name(model)\n",
"persist = Persist(\n",
" f'trained_models/{model_name}', \n",
" # -^- required -^-\n",
"\n",
" # -v- optional -v-\n",
" increment=False, \n",
" sync_training_step=True,\n",
" author='Chang Liu',\n",
" email='liu.chang.1865@gmail.com',\n",
" dataset='materials project',\n",
")\n",
"_ = trainer.extend(persist)\n",
"trainer.reset(to=model)\n",
"\n",
"trainer.fit(training_dataset=train_dataset, validation_dataset=val_dataset, epochs=400)\n",
"persist(splitter=sp, data_indices=prop.index.tolist()) # <-- calling of this method only after the model training"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
""
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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HxCGH7DzzrswYMAAJk58h9tuu5nly5fxwx9eACRnC1522U95663X6datO0OG7EJZWTnvvz+NRx55kBdfHMu99z5Mt27da6/7178+yG233QzADjvsyK677sZ///sxTz31BOPGvcDvfnczgwfvvNHPl23BgvlccME5zJs3l27durP33vtQU1PD5MmTuPnm3/Hii2O58cY/UFnZBYBly5Zx9tnfZ+HCBQwYMJCvfvVrVFWtY/LkifzhD9N4553x3HDDTbXnv/HG63nqqSfo3Lkzu+yyO506dWTGjBk89dQTvPDCWP785/vYYosti/5cG8uAUJGKZ7SHt1O8JEmSJLVM66pjxGKNW4OvrLwUgFhNNGv41bl2WSkdK8q+/MAvceyxxzN48E688cZrdO/eg6uu+hUAn302D0hWFR500KFcffW1lJSUEI/HKS0t5dVXX+GFF8bSv//m3HHH3Wy66fqpwxMnvsOPf3we77wzno8/nsm22w760vt4+eVxnHzySM455zzKy5MRzqOPPsQf//h/PPzw/Zxyymm1+xtr8eJFlJeX8+CDj7H55gMAePrpf3DDDdfy6KMP06dPX+6775HayrcxY0bzq19dxVNP/Z1zzjmP0tJS3n13Cm+99TpbbLEld931QG24VlVVxcUXX8CkSRN4+ul/cOqp3wdg0qQJ3HbbzXTpsgm//vXv2H33PWrv5+9/f5T/+7/fcsUVl/DXv/69TrVlMfzP/1zOvHlz2X//YVxxxTVUVlYCsHTpEi677KdMnTqFG2+8niuvTP7On3zycRYuXMChhx7BlVf+kpKSEgDmz5/P2Wefxuuvv8p7701jp512ZsGC+Tz99D/o3r079933aO3U8VgsxnXXXc2YMc/y6KMP8dOfXlbUZyoGA0JFKh5fnwrGTQglSZIkqcV5+PkZvDDh01ZZ1FFSAgftMZARB+/Q5Nc68cQRtWFRaWkyFK2qqmL//YcxbNhBdcJBgKFD92TbbQfx4Ycz+OyzeQUFhP369efccy+svQ7A8cefyJ133sqqVauYN28uW2651UY/y2mnnVEbDgIcdtiR3HDDtbWfZU6LHT78EK699mq++OKL1HTk3ixevAiArl270blzZe2xHTp04Ec/+hlTp05hp53WVwM+/PD9JBIJRo06v044CPDtb3+XN998nTfeeI3nnvs3Rx+98VOp06ZMmcy0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pk//gN12G0qvXr2YPHki559/Nh999GHtOWbPnsVZZ53Gv//9LyoqKth336+zww47MnXqFH7961/yf/93Q51rrl69igsvPIebb/4dc+bMZqeddmaPPfZi7tw53HTT77j44gupqqpqsmdWcRnlKlLxeDzrewNCSZIkSWppEjXrIFbTqLHxWGnqHPEvObIJlJVTUt5xo08zcOAWDBmyK1OnTuGtt15nv/0OqPP5c889C8ARR3yTmpoabrjhOqqrq7n66ms5+ODDao9bsWIFP/nJ+Uyf/j7PPPMU55130UbfWy5vv/0WRx55NJdccgVlZWXU1NTwox+dy+TJE7nuums47LAjufTSK6moqCAWi/Gzn13E+PFv8s9/PsmPfvQzAB5++AFWrVrFyJE/4Jxzzqs994cfhowadTpPPvl3vve9M+jduzcAN930O6ZOfZevfnUfrrrqf+nRowcAK1eu5IorLmHChPHceeetXHDBj5vkmVVcBoSKVHYeaAGhJEmSJLUsa19/iOr3nm+d/8JWUkLFTgfTad9TNvpURx11NFOnTuG55/5dJyCcO/dT3ntvKv37D2C33YayaNFC9tprb8rKyuqEgwDdunXj0EOPYPr09/nss7kbfU/5dOjQkR/96GeUlZUBUF5ezsEHH8bkyRPp2DH5WUVFBQBlZWUMH34w48e/yezZs2vPsXjxIgD69t2szrm33z7gssuuIh5P0KFDRerYxYwZM5rKyi51wkGArl27csUVV3Piicfy5JOPc/rpZ9GlyyZN9uwqDqcYK1LZXYydYixJkiRJLUv1ey+0znAQIJFI3n8RDB9+CJ06deK1115h9epVtfvHjBkNwBFHHEVJSQl9+27GlVf+kssv/58645cuXcLbb7/Ju+9OBqCqqv5U5WLZdttBVFZW1tnXs2cvADbffABdu3at81nXrt1T97Sudt/QoXsC8Mc//p7rrruGceOeZ8WKFQAcfPBhHHro4XTrlhw3efIEYrEY22+/Q51wMK1Pn75st932rFu3jvfem1akp1RTsoJQkcoOBFvr/+dIkiRJUltVsdNBrbiCsJSKnQ4qyqkqK7twwAHDGDPmWV5+eRxHHPFNIDm9uKSkhMMPP6rO8RMmvM3o0U8zc+ZM5s2bWxsqrm/s0XQ/z27dutXbl75u9+71A7zsZiMAJ544gk8+mcXo0c/U/q+0tJTB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NNHsY24Gw4tTmTV+KLPGt93gRI5fkYjHtasm9e579uq7nZguAkYBD8WTgwDW2sPAFcBB4GpjzKA0zxcRERERERGRLJYTi3LB4jEU5EU5ZVwFJ3divkCRrlAFYdet9Jc/T15hrd1jjHkEWAGcBfykN3dMRERERERERPqHxdOqWTT1pONijjzJPqog7Lr4pAAvpFn/kr88uRf2RURERERERET6KSUHpa8oQdh18R7ab6VZvy1pOxERERERERERkeOGhhh3XbG/TNdK+HDSdt0qJyea6NYj0hsUb9LbFHPSmxRv0tsUc9LbFHPSmxRv0tsUc52nCsKuO+Yvm9vZTnXCIiIiIiIiIiJy3FEFYdftB8qAwjTrC/zlwZ5484aGY9TXpyteFOk+8Tsxu3bt7+M9kWyhmJPepHiT3qaYk96mmJPepHiT3qaYc0pLC8nJiXbquaog7Lr43INVadbH5x7clma9iIiIiIiIiIhIn1GCsOue95cT06yfmLSdiIiIiIiIiIjIcUMJwq77jb88L3mFMaYcWAwcBX7fmzslIiIiIiIiIiLSEUoQdt0vgM3AmcaY6+IPGmMKgDuBIuBOa+2OPto/ERERERERERGRtJQg7CJr7WHgMuAwcLsx5hljzM+ATcAqYD3wyT7cRRERERERERERkbSUIOwG1tpHgVnAWqAGWAHsBb4ELLLW7uu7vRMREREREREREUkv1tc7cKKw1r4InN/X+yEiIiIiIiIiIpIJVRCKiIiIiIiIiIhkMSUIRUREREREREREspgShCIiIiIiIiIiIllMCUIREREREREREZEspgShiIiIiIiIiIhIFlOCUEREREREREREJIspQSgiIiIiIiIiIpLFlCAUERERERERERHJYkoQioiIiIiIiIiIZDElCEVERERERERERLKY19zc3Nf7IJ2zByhrbm6msbGpr/dFskBOThSAhoZjfbwnki0Uc9KbFG/S2xRz0tsUc9KbFG/S2xRzTiwWwfM8gHeA8kyeqwRh/3UQKOzrnRARERERERERkePKIaAokyfEemhHpOftBCqAI8CbfbsrIiIiIiIiIiLSx2qBfFzOKCOqIBQREREREREREclialIiIiIiIiIiIiKSxZQgFBERERERERERyWJKEIqIiIiIiIiIiGQxJQhFRERERERERESymBKEIiIiIiIiIiIiWUwJQhER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\n",
"text/plain": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"y_pred = trainer.predict(x_in=torch.tensor(desc.values, dtype=torch.float)).detach().numpy().flatten()\n",
"y_true = prop.values.flatten()\n",
"\n",
"draw(y_true, y_pred, prop_name='Efermi ($eV$)')"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.4"
},
"pycharm": {
"stem_cell": {
"cell_type": "raw",
"source": [],
"metadata": {
"collapsed": false
}
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
================================================
FILE: docs/source/tutorials/6-transfer_learning.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Transfer Learning\n",
"\n",
"There are various methods for transfer learning such as **fine tuning** and **frozen feature extraction**. In this tutorial, we will demonstrate how to perform a **frozen feature extraction** type of transfer learning in XenonPy.\n",
"\n",
"This tutorial will use **Refractive Index** data, which are collected from [Polymer Genome](https://www.polymergenome.org). We do not provide these data directly in this tutorial. If you want to rerun this notebook locally, you must collect these data yourself."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### frozen feature extraction\n",
"\n",
"A frozen feature extraction type of transfer learning can be split into 2 steps:\n",
"\n",
"1. you need to have pre-trained model(s) as source model(s). This can be done by accessing **XenonPy.MDL**.\n",
"2. you need a feature extractor to generate \"neural descriptors\" from the source model(s).\n",
"Here, we would like to introduce you to our feature extractor, ``xenonpy.descriptor.FrozenFeaturizer``.\n",
"\n",
"The following codes show a case study of transfer learning between **Refractive Index** of inorganic and organic materials. In this example, the source models will be trained on inorganic compounds and the target will be polymers.\n",
"\n",
"Let's do this transfer learning step-by-step."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### useful functions\n",
"\n",
"Running the following cell will load some commonly used packages, such as [NumPy](https://numpy.org/), [pandas](https://pandas.pydata.org/), and so on. It will also import some in-house functions used in this tutorial. See *'tools.ipynb'* file to check what will be imported."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"%run tools.ipynb"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### access pre-trained models with MDL class\n",
"\n",
"We prepared a wide range of APIs to let you query and download our models.\n",
"These APIs can be accessed via any HTTP requests.\n",
"For convenience, we implemented some of the most popular APIs and wrapped them into XenonPy.\n",
"All these functions can be accessed using `xenonpy.mdl.MDL`."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"MDL(api_key='anonymous.user.key', endpoint='http://xenon.ism.ac.jp/api')"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"text/plain": [
"'0.1.1'"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from xenonpy.mdl import MDL\n",
"\n",
"mdl = MDL()\n",
"mdl\n",
"\n",
"mdl.version"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### 1. query **Refractive Index** models "
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"QueryModelDetailsWith(api_key='anonymous.user.key', endpoint='http://xenon.ism.ac.jp/api', variables={'modelset_has': 'Stable', 'property_has': 'refractive'})\n",
"Queryable: \n",
" id\n",
" transferred\n",
" succeed\n",
" isRegression\n",
" deprecated\n",
" modelset\n",
" method\n",
" property\n",
" descriptor\n",
" lang\n",
" accuracy\n",
" precision\n",
" recall\n",
" f1\n",
" sensitivity\n",
" prevalence\n",
" specificity\n",
" ppv\n",
" npv\n",
" meanAbsError\n",
" maxAbsError\n",
" meanSquareError\n",
" rootMeanSquareError\n",
" r2\n",
" pValue\n",
" spearmanCorr\n",
" pearsonCorr"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"query = mdl(modelset_has=\"Stable\", property_has=\"refractive\")\n",
"query"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"draw(y_test.ravel(), y_pred, y_train.ravel(), y_fit_pred, prop_name='refractive index')"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.4"
},
"pycharm": {
"stem_cell": {
"cell_type": "raw",
"source": [],
"metadata": {
"collapsed": false
}
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
================================================
FILE: docs/source/tutorials/7-inverse-design.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# XenonPy-iQSPR tutorial"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This tutorial provides step by step guidance to all the essential components for running iQSPR, an inverse molecular design algorithm based on machine learning. We provide a set of in-house data and pre-trained models for demonstration purpose. We reserve all rights for using these resources outside of this tutorial. We recommend readers to have prior knowledge about python programming, use of numpy and pandas packages, building models with scikit-learn, and understanding on the fundamental functions of XenonPy (refer to the tutorial on the descriptor calculation and model building with XenonPy). For any question, please contact the developer of XenonPy.\n",
"\n",
"Overview - We are interested in finding molecular structures 𝑆 such that their properties 𝑌 have a high probability of falling into a target region 𝑈, i.e., we want to sample from the posterior probability 𝑝(𝑆|𝑌∈𝑈) that is proportional to 𝑝(𝑌∈𝑈|𝑆)𝑝(𝑆) by the Bayes’ theorem. 𝑝(𝑌∈𝑈|𝑆) is the likelihood function that can be derived from any machine learning models predicting 𝑌 for a given 𝑆. 𝑝(𝑆) is the prior that represents all possible candidates of S to be considered. iQSPR is a numerical implementation for this Bayesian formulation based on sequential Monte Carlo sampling, which requires a likelihood model and a prior model, to begin with.\n",
"\n",
"This tutorial will proceed as follow:\n",
"1. initial setup and data preparation\n",
"2. descriptor preparation for forward model (likelihood)\n",
"3. forward model (likelihood) preparation\n",
"4. `NGram` (prior) preparation\n",
"5. a complete iQSPR run"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'0.6.2'"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import xenonpy\n",
"xenonpy.__version__"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Useful functions"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First, we import some basic libraries and functions that are not directly related to the use of iQSPR. You may look into the \"tools.ipynb\" for the content. We also pre-set a numpy random seed for reproducibility. The same seed number is used throughout this tutorial."
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"%run tools.ipynb\n",
"\n",
"np.random.seed(201906)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Data preparation (in-house data)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here is a data set that contains 16674 SMILES randomly selected from pubchem with 2 material properties, the internal energy E (kJ/mol) and the HOMO-LUMO gap (eV). The property values are obtained from single-point calculations in DFT (density functional theory) simulations, with compounds geometry optimized at the B3LYP/6-31G(d) level of theory using GAMESS. This data set is prepared by our previous developers of iQSPR. XenonPy supports pandas dataframe as the main input source. When there are mismatch in the number of data points available in each material property, i.e., there exists missing values, please simply fill in the missing values with NaN, and XenonPy will automatically handle them during model training.\n",
"\n",
"You can download the in-house data at https://github.com/yoshida-lab/XenonPy/releases/download/v0.4.1/iQSPR_sample_data.csv"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Index(['SMILES', 'E', 'HOMO-LUMO gap'], dtype='object')"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"text/html": [
"
\n",
"\n",
"
\n",
" \n",
"
\n",
"
\n",
"
SMILES
\n",
"
E
\n",
"
HOMO-LUMO gap
\n",
"
\n",
" \n",
" \n",
"
\n",
"
1
\n",
"
CC(=O)OC(CC(=O)[O-])C[N+](C)(C)C
\n",
"
177.577
\n",
"
4.352512
\n",
"
\n",
"
\n",
"
2
\n",
"
CC(=O)OC(CC(=O)O)C[N+](C)(C)C
\n",
"
185.735
\n",
"
7.513497
\n",
"
\n",
"
\n",
"
3
\n",
"
C1=CC(C(C(=C1)C(=O)O)O)O
\n",
"
98.605
\n",
"
4.581348
\n",
"
\n",
"
\n",
"
4
\n",
"
CC(CN)O
\n",
"
83.445
\n",
"
8.034841
\n",
"
\n",
"
\n",
"
5
\n",
"
C(C(=O)COP(=O)(O)O)N
\n",
"
90.877
\n",
"
5.741310
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" SMILES E HOMO-LUMO gap\n",
"1 CC(=O)OC(CC(=O)[O-])C[N+](C)(C)C 177.577 4.352512\n",
"2 CC(=O)OC(CC(=O)O)C[N+](C)(C)C 185.735 7.513497\n",
"3 C1=CC(C(C(=C1)C(=O)O)O)O 98.605 4.581348\n",
"4 CC(CN)O 83.445 8.034841\n",
"5 C(C(=O)COP(=O)(O)O)N 90.877 5.741310"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# load in-house data\n",
"data = pd.read_csv(\"./iQSPR_sample_data.csv\", index_col=0)\n",
"\n",
"# take a look at the data\n",
"data.columns\n",
"data.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let us visualize some statistics of the data set. We can see that the mean character length of the SMILES is around 30. This roughly corresponds to around 20 tokens in iQSPR due to the way we combine some characters into a single token to be handled during the molecule modification step. Furthermore, the data shows a clear Pareto front at the high HOMO-LUMO gap region and the lack of molecules for HOMO-LUMO gap below 3. In this tutorial, we will try to populate the region of HOMO-LUMO gap less than 3 and internal energy less than 200."
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# check the SMILES length\n",
"count = [len(x) for x in data['SMILES']]\n",
"_ = plt.hist(count, bins=20) # arguments are passed to np.histogram\n",
"_ = plt.title('Histogram for length of SMILES strings')\n",
"_ = plt.xlabel('SMILES length (counting characters)')\n",
"_ = plt.ylabel('Counts')\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAUoAAAFNCAYAAABmLCa9AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAADVmklEQVR4nOy9ebhsaV3f+3nfNa+a9niGHhkVAwbiPIAIhusQGtDWi3BpDIYoGYyJBhVjLrkImDhcMI/GXHiij0ENdPBhCE6gYJ5IFJEgBBuUoafTZ9h71941rFrjO9w/3tp19j5n77PPOd3ndDe9Ps/TT59dtarWW1WrfvV7f8P3J6y1lpaWlpaWQ5EP9wJaWlpaHum0hrKlpaXlCFpD2dLS0nIEraFsaWlpOYLWULa0tLQcQWsoW1paWo7Af7gX0PLI4H//7//NW9/6Vv79v//3AJw6dYpf/MVf5JOf/CRRFBGGIS9+8Yv5nu/5nsVj/vIv/5Jf+IVfYDQaYa3lxIkT/PiP/zhPfvKTOXXqFM973vP4ki/5ksXx1lpe/vKX893f/d0H3p/nOSdOnOCNb3wjN9988/V78ZfgS7/0S/nTP/1TVlZWrurxv//7v89v/uZv8ra3ve2Sx/3SL/0ST3nKU/i7f/fvXtV5Wq4xtqXlAk6fPm2/8Ru/0f72b//24razZ8/al73sZfZnf/ZnrbXWVlVlv+ZrvsZ+6lOfWhzz7ne/2z772c+2Sil7//3322c84xn7nvfs2bP2q77qq+ynP/3pA+83xtjXve519l/8i39xDV/dlfElX/IldjgcXvXjf+/3fs++7GUvO/K4l73sZfb3fu/3rvo8LdeW1qNsAeAjH/kIP/3TP8373vc+3vKWt/Bt3/ZtfNd3fdfi/uPHj/OmN72Jb/mWb+HlL385cRwznU7J83xxzAte8AK63S5a6wPPcfz4cW699Vbuuecenva0p110f1VVbGxssLa2dtF9s9mM17zmNdx7771IKXnqU5/K6173OgDe+MY38olPfILZbIa1lte//vV85Vd+JT/xEz9BHMf8zd/8DcPhkOc+97ksLS3xoQ99iM3NTV7/+tfz9V//9fzET/wEURTxmc98huFwyDd+4zfyUz/1UwRBsG8N//W//lf+y3/5LxhjWFpa4l//63/NE5/4xIvW+ou/+Iv8t//231haWuLWW29d3H733Xfzute9jtlsxubmJk95ylN485vfzDvf+U4+9alP8bM/+7N4nseTnvSkA4+LouiIT7HlWtHGKFsu4mMf+xhf/dVffdHta2trPPGJT+STn/wkg8GAV7/61bzyla/kW77lW3j1q1/Nb//2b/MN3/ANhGF44PN+/OMf57777uPpT386AGVZ8sIXvpDbbruNb/iGb+A7v/M7ecITnsC//Jf/8qLHfuADH2A2m/Ge97yHd77znQDcf//9fOITn2BjY4N3vOMd/O7v/i7f+Z3fyVvf+tbF4+666y5+/dd/nd/4jd/gV3/1V0nTlLe//e28/OUv33fcJz/5SX71V3+V3/3d3+Xzn/8873jHO/ad/8///M9597vfzW/+5m/y7ne/m1e+8pX803/6Ty9a5x/+4R/y/ve/n3e/+928/e1vJ8uyxX133nknL3rRi7jzzjt5//vfz6lTp/jjP/5j/q//6//iaU97Gj/2Yz/G8573vEOPa3n4aD3KlivGGAPAK17xCr7ne76Hj370o3z0ox/lrW99K29961sXhmzXEAJorVleXubnfu7nOHnyJKdOnSKOY97znvcA8D/+x//g1a9+Nc95znPodDoXnfMrv/IredOb3sQdd9zBN3zDN/B93/d93Hrrrdx6660MBgPe/va3c//99/ORj3xk3+Of85znEAQB6+vrpGnKs571LABuueUWRqPR4rjv/M7vXDzuhS98IX/0R3/Ey172ssX9f/zHf8y9997L937v9y5um0wmjEYjlpaWFrf96Z/+Kc973vPodrsA3H777Yv45Ktf/Wo+/OEP89a3vpV77rmHjY2NfR75Lpd7XMv1ozWULRfxFV/xFfz5n/853/qt3wrAcDhkaWmJ8XjM5z//ef723/7bfOxjH+PjH/84r3zlK3nOc57Dc57zHH7kR36E5z//+Xz4wx/maU972j5DeBTPetazeMUrXsEP//AP8zu/8zsLQ7PLzTffzAc+8AE+8pGP8Gd/9me84hWv4HWvex1SSt7whjfwile8gm/5lm/hCU94Au9973sXj7vQu/X9gy95z/MW/7bWIuX+zZYxhhe+8IW8+tWvXvy9sbHBYDC46LnsHvmEvc/7Iz/yI2it+fZv/3a++Zu/mTNnzuw79kqPa7l+tFvvlov4wR/8Qf7gD/6Ad73rXQC8733v47bbbuMf/+N/zPd+7/dy8uRJ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3Yvjf8M3fMNC7/BDH/qQ+9Iv/VL3h3/4h+7jH/+4e+ELX7jQdXzd617nfvd3f/cYPv0lbiaWGeUSx4Zv/uZvBuC5z30udV2T5/kl/37mzBkeeeQR3vrWty5+VpYlH//4x3nggQc4deoUp0+fXvzbXXfdxXOe8xwAvvzLv5z3ve99APzjf/yP+YM/+AP+/b//95w5c4YLFy5cdq4nct6rnecDH/gA4/GYD37wgwA0TcPa2triGHPZvE996lOAH6cEeMELXsCznvUsAJ7znOdw991384EPfID777+fCxcu8KIXvej6PtAlbhksA+USx4b51ncuW+UOTccaY+h0Ovzar/3a4mc7Ozt0Oh3+7M/+jCzLLnl9kiSLPwshFsf7oR/6IYwxfNu3fRvf+I3fyNbW1mXneiLnvdp5rLW89a1vXQTA6XRKVVWL187Xq5S67PwHlWu++7u/m//+3/879913H3/9r//1W1L2b4lrY9nMWeKGIggCjDE457j//vtJkmQRsLa2tnjFK17Bn//5nz+hY/7+7/8+b3jDG3j5y18OwEc+8hGMMVd9/ZM974te9CLe+973Utc11lr+6T/9p/zUT/3UZa974IEHiKKI3/3d3wW8cvmnPvWpRUB82ctexic+8Qn+1//6X3zXd33XE3qvS9waWGaUS9xQbGxs8LznPY+HHnqI9773vfzbf/tvecc73sHP/dzPobXmH/7Df8jXfu3X8uEPf/i6j/mmN72JN7zhDWRZRrvd5i//5b/MI488ctXXR1H0pM779//+3+dd73oX3/md34kxhuc85zkLU7CDCIKAn/mZn+Htb387P/VTP8V9993H+vr6IlONooiXvexl7OzsLDQTl7i9sFQPWmKJY8C73vUu/vbf/tusr6+ztbXFK1/5Sv73//7fdLtd8jznb/7Nv8mP/diPLWw2lri9sMwol1jiGHD69Gm+7/u+jyAIcM7x4z/+43S7XX7v936PH/7hH+a1r33tMkjexlhmlEssscQSR2DZzFliiSWWOALLQLnEEksscQSWgXKJJZZY4ggsA+USSyyxxBFYBsolllhiiSPw/wNFWhf4IxlK4gAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# check target properties: E & HOMO-LUMO gap\n",
"_ = plt.figure(figsize=(5,5))\n",
"_ = plt.scatter(data['E'],data['HOMO-LUMO gap'],s=15,c='b',alpha = 0.1)\n",
"_ = plt.title('iQSPR sample data')\n",
"_ = plt.xlabel('Internal energy')\n",
"_ = plt.ylabel('HOMO-LUMO gap')\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"A complete iQSPR run may take a very long time. For practical purposes, the full design process can be separately done in multiple steps, and we recommend taking advantage of parallel computing if possible. To save time in this tutorial, we will extract only a subset of the full in-house data set for demonstration. You will see that the subset represents the full data set in our target property space well. Readers can try to repeat this tutorial with the full data set if sufficient computing resource is available."
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" index SMILES E HOMO-LUMO gap\n",
"0 23630 CC(C)CN1CC(C1)C2=CC=CC=C2 193.542 5.914093\n",
"1 19222 C1=CC(=CN=C1)C(=O)OCCO 110.998 5.186226\n",
"2 20189 C1=CC(=CC=C1CC(C(=O)O)N)N(CCCl)CCCl 202.960 5.400097\n",
"3 7775 CCCCCC(=O)OCC(C)C 191.230 7.727368\n",
"4 11881 C1=CC(=C(C=C1O)C(=O)O)C(=O)O 91.482 4.856441\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"np.random.seed(201903) # fix the random seed\n",
"\n",
"# extract a subset from the full data set\n",
"data_ss = data.sample(3000).reset_index()\n",
"print(data_ss.head())\n",
"\n",
"# check target properties: E & HOMO-LUMO gap\n",
"_ = plt.figure(figsize=(5,5))\n",
"_ = plt.scatter(data['E'],data['HOMO-LUMO gap'],s=15,c='b',alpha = 0.1,label=\"full data\")\n",
"_ = plt.scatter(data_ss['E'],data_ss['HOMO-LUMO gap'],s=15,c='r',alpha = 0.1,label=\"subset\")\n",
"_ = plt.legend(loc='upper right')\n",
"_ = plt.title('iQSPR sample data')\n",
"_ = plt.xlabel('Internal energy')\n",
"_ = plt.ylabel('HOMO-LUMO gap')\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Descriptor and forward model preparation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"XenonPy provides out-of-the-box fingerprint calculators. We currently support all fingerprints and descriptors in the RDKit (Mordred will be added soon). In this tutorial, we only use the ECFP + MACCS in RDKit. You may combine as many descriptors as you need. We currently support `input_type` to be 'smiles' or 'mols' (the RDKit internal mol format) and some of the basic options in RDKit fingerprints. The output will be a pandas dataframe that is supported scikit-learn when building forward model with various machine learning methods."
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [],
"source": [
"from xenonpy.descriptor import Fingerprints\n",
"\n",
"RDKit_FPs = Fingerprints(featurizers=['ECFP', 'MACCS'], input_type='smiles')\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To get the calculated fingerprints, simply use the transform function. The column names are pre-defined in XenonPy."
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" maccs:0 maccs:1 maccs:2 maccs:3 maccs:4 maccs:5 maccs:6 maccs:7 \\\n",
"0 0 0 0 0 0 0 0 0 \n",
"1 0 0 0 0 0 0 0 0 \n",
"2 0 0 0 0 0 0 0 0 \n",
"3 0 0 0 0 0 0 0 0 \n",
"4 0 0 0 0 0 0 0 0 \n",
"\n",
" maccs:8 maccs:9 ... ecfp6:2038 ecfp6:2039 ecfp6:2040 ecfp6:2041 \\\n",
"0 1 0 ... 0 0 0 0 \n",
"1 0 0 ... 0 0 0 0 \n",
"2 0 0 ... 0 0 0 0 \n",
"3 0 0 ... 0 0 0 0 \n",
"4 0 0 ... 0 0 0 0 \n",
"\n",
" ecfp6:2042 ecfp6:2043 ecfp6:2044 ecfp6:2045 ecfp6:2046 ecfp6:2047 \n",
"0 0 0 0 0 0 0 \n",
"1 0 0 0 0 0 0 \n",
"2 0 0 0 0 0 0 \n",
"3 0 0 0 0 0 0 \n",
"4 0 0 0 0 0 0 \n",
"\n",
"[5 rows x 2215 columns]\n"
]
}
],
"source": [
"tmp_FPs = RDKit_FPs.transform(data_ss['SMILES'])\n",
"print(tmp_FPs.head())\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"XenonPy also allows users to flexibly organize the desired descriptors. The first step is to import `BaseDescriptor` and all necessary descriptors (fingerprints) supported by XenonPy, which will be used to construct a customized set of descriptors for forward prediction. Then, users can simply pack all descriptors needed in the `BaseDescriptor`. For other descriptors, users can use the `BaseFeaturizer` class to construct for their own needs. If so, we would appreciate very much if you could share the code as a contribution to this project: https://github.com/yoshida-lab/XenonPy/tree/master/xenonpy/contrib. "
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [],
"source": [
"# XenonPy descriptor calculation library\n",
"from xenonpy.descriptor.base import BaseDescriptor\n",
"from xenonpy.descriptor import ECFP, MACCS\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Defining your own `BaseDescriptor` allows you to customize the options for each fingerprint you wanted. You may combine multiple descriptors by adding more \"self.XXX\" in the `BaseDescriptor`. All descriptors with the same name \"XXX\" will be concatenated as one long descriptor. "
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"# prepare descriptor function from XenonPy (possible to combine multiple descriptors)\n",
"class RDKitDesc(BaseDescriptor):\n",
" def __init__(self, n_jobs=-1, on_errors='nan'):\n",
" super().__init__()\n",
" self.n_jobs = n_jobs\n",
"\n",
" self.rdkit_fp = ECFP(n_jobs, on_errors=on_errors, input_type='smiles')\n",
" self.rdkit_fp = MACCS(n_jobs, on_errors=on_errors, input_type='smiles')\n",
"\n",
"ECFP_plus_MACCS = RDKitDesc()\n"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" ecfp6:0 ecfp6:1 ecfp6:2 ecfp6:3 ecfp6:4 ecfp6:5 ecfp6:6 ecfp6:7 \\\n",
"0 0 1 0 0 0 0 0 0 \n",
"1 0 0 0 0 0 0 0 0 \n",
"2 0 1 0 0 0 0 0 0 \n",
"3 0 1 0 0 0 0 0 0 \n",
"4 0 0 0 0 0 0 0 0 \n",
"\n",
" ecfp6:8 ecfp6:9 ... maccs:157 maccs:158 maccs:159 maccs:160 \\\n",
"0 0 0 ... 0 1 0 1 \n",
"1 0 0 ... 1 0 1 0 \n",
"2 0 0 ... 1 1 1 0 \n",
"3 0 0 ... 1 0 1 1 \n",
"4 0 0 ... 1 0 1 0 \n",
"\n",
" maccs:161 maccs:162 maccs:163 maccs:164 maccs:165 maccs:166 \n",
"0 1 1 1 0 1 0 \n",
"1 1 1 1 1 1 0 \n",
"2 1 1 1 1 1 0 \n",
"3 0 0 0 1 0 0 \n",
"4 0 1 1 1 1 0 \n",
"\n",
"[5 rows x 2215 columns]\n"
]
}
],
"source": [
"tmp_FPs = ECFP_plus_MACCS.transform(data_ss['SMILES'])\n",
"print(tmp_FPs.head())\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### train forward models inside XenonPy"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 1-2min to complete!**\n",
"\n",
"The prepared descriptor class will be added to the forward model class used in iQSPR. The forward model calculates the likelihood value for a given molecule. iQSPR provides a Gaussian likelihood template, but users can also write their own BaseLogLikelihood class. To prepare the Gaussian likelihood, iQSPR provides two options:\n",
"1. use the default setting - Bayesian linear model\n",
"2. use your own pre-trained model that output mean and standard deviation.\n",
"\n",
"Here, we start with the first option. Note that there are a few ways to set the target region of the properties."
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 29.6 s, sys: 363 ms, total: 30 s\n",
"Wall time: 30.9 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# Forward model template in XenonPy-iQSPR \n",
"from xenonpy.inverse.iqspr import GaussianLogLikelihood\n",
"\n",
"# write down list of property name(s) for forward models and decide the target region\n",
"# (they will be used as a key in whole iQSPR run)\n",
"prop = ['E','HOMO-LUMO gap']\n",
"target_range = {'E': (0,200), 'HOMO-LUMO gap': (-np.inf, 3)}\n",
"\n",
"# import descriptor class to iQSPR and set the target of region of the properties\n",
"prd_mdls = GaussianLogLikelihood(descriptor=RDKit_FPs, targets = target_range)\n",
"\n",
"# train forward models inside iQSPR\n",
"prd_mdls.fit(data_ss['SMILES'], data_ss[prop])\n",
"\n",
"# target region can also be updated afterward\n",
"prd_mdls.update_targets(reset=True,**target_range)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The variable directly contains models for each property trained this way. Note that the input of these models is the preset descriptor (RDKit_FPs in this case)."
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"BayesianRidge(compute_score=True)"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"prd_mdls['E']\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The variable can be also used for prediction directly from mol/smiles, where the output is a dataframe."
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" E: mean E: std HOMO-LUMO gap: mean HOMO-LUMO gap: std\n",
"0 216.536505 30.798743 6.448873 0.665549\n",
"1 149.048033 30.669020 5.069425 0.662847\n",
"2 196.936252 29.520508 5.396384 0.642558\n",
"3 223.675992 29.193763 7.784497 0.634831\n",
"4 87.747905 30.040543 4.707319 0.648994\n",
"CPU times: user 3.77 s, sys: 137 ms, total: 3.9 s\n",
"Wall time: 4.84 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"pred = prd_mdls.predict(data_ss['SMILES'])\n",
"print(pred.head())\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let us take a look at the distribution of the likelihood values for all the molecules in our data as a validation. Note that directly calling the object is equivalent to calling the `log_likelihood` function. The output will be a pandas dataframe with properties on the columns. To get the final log-likelihood, you can simply sum over the columns. You will see that all molecules have a small likelihood because they are far from our target region. Note that when setting the target region for the likelihood calculation, \"np.inf\" is supported. Also, we use only log-likelihood in iQSPR to avoid numerial issue.\n",
"\n",
"Note that we can also update the target region when calling the `log_likelihood` function, but this will automatically overwrite the existing target region!"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" E HOMO-LUMO gap\n",
"0 -1.218542 -16.024975\n",
"1 -0.049529 -7.015274\n",
"2 -0.613727 -9.251676\n",
"3 -1.566933 -31.356100\n",
"4 -0.001840 -5.458423\n",
"CPU times: user 3.71 s, sys: 120 ms, total: 3.83 s\n",
"Wall time: 4.76 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# calculate log-likelihood for a given target property region\n",
"tmp_ll = prd_mdls(data_ss['SMILES'], **target_range)\n",
"print(tmp_ll.head())\n"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAfYAAAFNCAYAAADy5k0KAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAxbUlEQVR4nO3de1RU9f7/8edwN8FvSUOWefScTC0Ltfz+krzl/QaiaH4xl2lmmrfUTEPBKG+hYaVpauWp7zra8YII5tdLaqmVHkv7HpMu6Nc0JY1QShkUGJj9+4PlECk3ZQbcvB5ruZaz956937xn4DX7s/fsbTEMw0BERERMwaOqCxAREZHKo2AXERExEQW7iIiIiSjYRURETETBLiIiYiIKdhERERNRsIvbHThwgNDQ0HItu2fPHt544w0AmjZtSmZmJrt27WLOnDkADB06lG3btlVo+5W1nopo1aoVaWlp2Gw2Ro4cSU5OzjWX+/zzz+nUqRMDBw4scZnySExMJCIigr59+9KnTx+io6PJyspyzmvatCmLFy8u9hzDMOjSpYvztUlLS6NVq1ZX/f9a23r44YcJDw8v9m/atGnOZd59913Cw8Pp27cvoaGhzJ8/n7y8vKvWdeTIEZ577rkK/azffPMNL730ElCx91Z5zZo1i7feeqvM5UaMGEFmZmalbvvPSnsdrsfu3btZtGhRpa1Pqgevqi5ApCQ2m434+HjWrVtXbHqXLl3o0qXLDa+/stZTEf7+/oSGhrJo0SJefPHFq+b/z//8D48//jhjx4697m188803LF26lA0bNnDrrbdSUFDAK6+8wssvv8zChQsBuOuuu9i0aVOxED148CA5OTnUqlWrwtts3bo1K1asuOa8rVu3snPnTtauXYufnx+5ubk899xzLFmyhOeff77Ysg8++OBVHzjK8n//93+kp6dXuObK9sUXX1R1CRV25MgRLly4UNVlSCVTsEuVioqKwt/fn9TUVH755ReaNm3K/PnzqV27Nh9++CHt2rW7KmgSExPZvn17sSDJz89nypQpeHl5MX/+fC5fvszcuXM5evQodrudkJAQpk2bhpeXV4nr2bVrFytXruTcuXOEhIQwZ84cPDw82LlzJ0uWLMHhcFC7dm2mT59OcHAwdruduLg49u/fj6enJ8HBwUyfPh1/f38OHjzI7NmzsVgsPPjggzgcDud2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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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wsJCffbZZ3rttdckSSEhIYqJidGmTZuUl5enLl26yOFwSJIGDRqkjz76qMIejh8/fs7ttW3bVna7Xe3atTvrug0bNlRaWpq+//57bd26VVu3btWgQYMUHx/vfbGUpOjoaGVkZKhPnz5KT09Xv379lJWVVWFd51LRqYGWLVsqMzNTO3fu1LZt27R582YtXLhQs2bNOue1EqfcfffdkqTrrrtODRo00JEjRyoNEF26dFH9+vW9+z58+LCOHz+ubdu26ciRI5o1a5akXx/jb775Rn369PGuW1BQoN27d+vee++VJHXo0MF72iEsLEzJyclas2aNfvrpJ+3YsUPHjh07Y/++jrvpppsUEBCggQMHqmvXroqIiFCbNm20b9++Cvvr3LmzmjRpIkkaMGCA98hWZGSkHn/8cXXr1k1dunTRQw89JEn64IMP9NVXXyk1NVXSr8994HQcEUCtM3XqVNWpU0evv/66JKmsrEwhISHKyMjw/lm+fLn69+9f4Xbs9l9zss1mkyRZliWPx+OdliSPxyO32+1dfrpzLQsICKi0B4/HU+H2goKCvPX9VnJysvbs2aMbb7xRsbGxmj17tp5//nm9+eab5cbdfffd2rFjh/bv369t27bpzjvvrLSu8+V2uzV58mQdOXJErVu31ogRI/Tqq6/qkUce0VtvvVXp+nXr1vX+bLPZznhMzub0x+XUOqcez2XLlnmfA2+99dY5L7w7fT+ntrdz504NGjRIRUVF6tKli/e0z2/5Ou7qq69WRkaGnn76aQUEBGjcuHFaunTpGX2WlpaWW+/054/H4/HWN378eL3xxhtq3bq10tLSvKHP4/Fo1qxZ3r5XrFihyZMnn/Pxg3kIAqh12rVrp6SkJC1YsEDffvutbrjhBl1xxRXKyMiQJO3fv19RUVEX9O73zjvv1MqVK73njRcvXqzbb79dISEhatu2rffq9cLCQqWnp6tz587q0qWLNm/erAMHDkiSVq1aVel+goODz7m9yhw+fFizZs3SiRMnJP36ovbdd9/plltuKTcuKChIPXv21IQJE9SjR49zBouLYbfbtWfPHs2fP9/7guZ2u/XDDz+cUc+FCggI8AakcwkODla7du284fDo0aMaPHiw3n///XLjrrnmGrVq1cp7OmHnzp369ttvJUnbtm3zhpk//vGPev/991VWVuat4VR/FY073X//+1/df//9at++vZ544gnde++9ysrK0tVXX63S0lJ9//33kuQ9HXTK1q1bvacrli1bpvDwcLndbvXo0UMnTpzQ4MGDlZiYqN27d6ukpERdu3bVP//5T1mWpZKSEj3yyCNasmSJz48daj9ODeCycfz48TM+Qrhs2bKzjm3atKkeffRRxcXFacWKFZo/f76mT5+uV199VW63W2PHjlWHDh0q/VjYbw0YMED79+/XwIED5fF41KRJE6WkpEiSUlJSNHXqVKWlpamkpEROp1MxMTGy2WyKi4vT8OHDddVVV6lNmzY+7etc28vJyalwvcTERL388svq27evgoKC5Ha71alTp7O+C4yOjtaQIUP07LPPVlrPhx9+WO7xDwkJ0aZNmyT9eo3A6tWry41v27atpk6dqlmzZunFF19URESErrzySnk8HvXs2VOPPfaYLw9DpcLDw5WUlFTpuJSUFE2bNk1Op1MlJSWKiopS3759zxg3c+ZMPfPMM1q2bJmuv/56NW3aVNKvp4reffdd7wWV3bt315EjR1RUVKQbb7xRdevW1YABA7Rw4cJzjgsODi5X96ZNmxQVFaV69erpd7/7naZNm6aQkBDFxcXpoYceUv369dW7d+9y9d10001KSEhQfn6+mjZtqqlTp8putyshIUFPPfWU7Ha7bDabZsyYoaCgIE2cOFHTp0+X0+lUaWmpOnfu7D1K0aNHD82cOVOlpaXq16/fxfwacBmzcRtiAADMxakBAAAMRhAAAMBgBAEAAAxGEAAAwGAEAQAADEYQAADAYLX+ewQKCo7J46maT0g2aBCsQ4eKqmRblwt6rv1M61cyr2fT+pXM6/lUv3Xq2HTNNVed17q1Pgh4PFaVBYFT2zMNPdd+pvUrmdezaf1K5vV8of1yagAAAIMRBAAAMBhBAAAAgxEEAAAwGEEAAACDEQQAADAYQQAAAIMRBAAAMBhBAAAAg9X6bxasSiWlZXI4QiocU3zSrcKjJ6qpIgAALg5B4DwEBQbI+WRGhWPWvBStwmqqBwCAi8WpAQAADEYQAADAYAQBAAAMRhAAAMBgBAEAAAxGEAAAwGAEAQAADEYQAADAYAQBAAAM5tdvFpw7d67eeecdSVK3bt00YcIEPfPMM9q+fbuuvPJKSdLjjz+unj17ateuXZo4caKOHTumjh07asqUKbLb7crNzVVcXJwOHTqkG264QSkpKbrqqqv8WTYAAMbw2xGBLVu26KOPPtKqVauUnp6unTt3av369crKytKSJUuUkZGhjIwM9ezZU5IUFxenyZMna926dbIsS8uXL5ckTZkyRUOGDFFmZqZat26t+fPn+6tkAACM47cg4HA4FB8fr6CgIAUGBqpZs2bKzc1Vbm6uEhIS5HQ6NXv2bHk8HuXk5Ki4uFjt2rWTJMXExCgzM1OlpaXatm2bIiIiys0HAABVw2+nBpo3b+79OTs7W++8846WLl2qTz/9VImJiQoJCdGoUaOUmpqq5s2by+FweMc7HA7l5eWpoKBAwcHBstvt5eYDAICq4fe7D3733XcaNWqUJkyYoKZNm2revHneZUOHDlV6erqaNWsmm83mnW9Zlmw2m/fv0/12ujINGgRfXAMXoLJbFV9uals/vjCtZ9P6lczr2bR+JfN6vtB+/RoEtm/frjFjxighIUGRkZHavXu3srOzvYf6LcuS3W5Xw4YN5XK5vOvl5+crNDRU9evXV2FhocrKyhQQECCXy6XQ0NDzquHQoSJ5PFaV9OPrg+xy1Z4bETscIbWqH1+Y1rNp/Urm9Wxav5J5PZ/qt04d23m/AfbbNQL79+/XY489ppSUFEVGRkr69YV/xowZOnLkiEpLS/XWW2+pZ8+eCgsLU926dbV9+3ZJUkZGhsLDwxUYGKiOHTtq7dq1kqT09HSFh4f7q2QAAIzjtyMCixYt0smTJ5WUlOSdd9999+nhhx/W4MGD5Xa71atXL0VFRUmSUlJSNGnSJBUVFalVq1YaNmyYJCkxMVHx8fFasGCBGjVqpJkzZ/qrZAAAjGOzLKtqjptfoqr61IDzyYwKx6x5KbpWHY4y7fCaZF7PpvUrmdezaf1K5vV8SZ4aAAAAlz6CAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAG82sQmDt3riIjIxUZGank5GRJ0pYtW+R0OtWrVy+9/PLL3rG7du1STEyMIiIiNHHiRLndbklSbm6uYmNj1bt3bz3yyCM6duyYP0sGAMAofgsCW7Zs0UcffaRVq1YpPT1dO3fu1Ntvv62EhATNnz9fa9euVVZWljZu3ChJiouL0+TJk7Vu3TpZlqXly5dLkqZMmaIhQ4YoMzNTrVu31vz58/1VMgAAxvFbEHA4HIqPj1dQUJACAwPVrFkzZWdnq0mTJmrcuLHsdrucTqcyMzOVk5Oj4uJitWvXTpIUExOjzMxMlZaWatu2bYqIiCg3HwAAVA2/BYHmzZt7X9izs7P1zjvvyGazyeFweMeEhoYqLy9PBw8eLDff4XAoLy9PBQUFCg4Olt1uLzcfAABUDbu/d/Ddd99p1KhRmjBhggICApSdne1dZlmWbDabPB6PbDbbGfNP/X26305XpkGD4Iuq/0I4HCHVvk9/qm39+MK0nk3rVzKvZ9P6lczr+UL79WsQ2L59u8aMGaOEhARFRkbq008/lcvl8i53uVwKDQ1Vw4YNy83Pz89XaGio6tevr8LCQpWVlSkgIMA7/nwcOlQkj8eqkn58fZBdrsIq2d+lwOEIqVX9+MK0nk3rVzKvZ9P6lczr+VS/derYzvsNsN9ODezfv1+PPfaYUlJSFBkZKUlq27at9uzZo59++kllZWV6++23FR4errCwMNWtW1fbt2+XJGVkZCg8PFyBgYHq2LGj1q5dK0lKT09XeHi4v0oGAMA4fjsisGjRIp08eVJJSUneeffdd5+SkpL0xBNP6OTJk+rWrZt69+4tSUpJSdGkSZNUVFSkVq1aadiwYZKkxMRExcfHa8GCBWrUqJFmzpzpr5IBADCOzbKsqjlufomq6lMDziczKhyz5qXoWnU4yrTDa5J5PZvWr2Rez6b1K5nX8yV5agAAAFz6CAIAABiMIAAAgMEIAgAAGIwgAACAwQgCAAAYjCAAAIDBCAIAABiMIAAAgMEIAgAAGIwgAACAwQgCAAAYjCAAAIDBCAIAABiMIAAAgMEIAgAAGIwgAACAwQgCAAAYjCAAAIDBCAIAABiMIAAAgMEIAgAAGIwgAACAwQgCAAAYjCAAAIDBCAIAABiMIAAAgMEIAgAAGIwgAACAwQgCAAAYjCAAAIDBCAIAABiMIAAAgMEIAgAAGIwgAACAwQgCAAAYjCAAAIDBCAIAABjM5yCwd+9eSdIHH3ygefPmqbCw0G9FAQCA6uFTEJg8ebL+8Y9/6IcfftCkSZO0b98+JSQk+Ls2AADgZz4FgaysLD333HNav369+vXrpxdeeEE5OTmVrldUVKSoqCjt27dPkvTMM8+oV69eio6OVnR0tNavXy9J2rVrl2JiYhQREaGJEyfK7XZLknJzcxUbG6vevXvrkUce0bFjxy60TwAAcBY+BQHLslSnTh1t3rxZnTp1kiQVFxdXuM6OHTs0ePBgZWdne+dlZWVpyZIlysjIUEZGhnr27ClJiouL0+TJk7Vu3TpZlqXly5dLkqZMmaIhQ4YoMzNTrVu31vz58y+kRwAAcA4+BYHrr79eDz30kPbt26c//vGPevLJJ9WiRYsK11m+fLkSExMVGhoqSTpx4oRyc3OVkJAgp9Op2bNny+PxKCcnR8XFxWrXrp0kKSYmRpmZmSotLdW2bdsUERFRbj4AAKg6dl8GvfDCC1q/fr06dOigwMBAdezYUf369atwnenTp5ebzs/PV6dOnZSYmKiQkBCNGjVKqampat68uRwOh3ecw+FQXl6eCgoKFBwcLLvdXm4+AACoOj4Fgeeff14zZszwTg8ePFhjxozR7Nmzfd5R48aNNW/ePO/00KFDlZ6ermbNmslms3nnW5Ylm83m/ft0v532RYMGwee9zsVyOEKqfZ/+VNv68YVpPZvWr2Rez6b1K5nX84X2W2EQSExMVF5enrZv367Dhw9757vdbu/HCX21e/duZWdnew/1W5Ylu92uhg0byuVyecfl5+crNDRU9evXV2FhocrKyhQQECCXy+U9zXA+Dh0qksdjnfd6Z+Prg+xy1Z6PVjocIbWqH1+Y1rNp/Urm9Wxav5J5PZ/qt04d23m/Aa4wCAwYMEDfffeddu/e7X0Bl6SAgADvOX1fWZalGTNmqFOnTqpXr57eeust9evXT2FhYapbt662b9+uDh06KCMjQ+Hh4d5TEGvXrpXT6VR6errCw8PPa58AAKBiFQaBW2+9Vbfeeqs6d+6shg0bXtSOWrZsqYcffliDBw+W2+1Wr169FBUVJUlKSUnRpEmTVFRUpFatWmnYsGGSfj0iER8frwULFqhRo0aaOXPmRdUAAADK8+kagf379ysuLk5HjhyRZf3/w+xr1qypdN0NGzZ4f46NjVVsbOwZY1q2bKnU1NQz5oeFhWnx4sW+lAgAAC6AT0Fg8uTJiomJ0S233HJBF+wBAIBLk09BwG63a8SIEf6uBQAAVDOfvlCoefPm2r17t79rAQAA1cynIwJ79+5V//799Yc//EF169b1zvflGgEAAHDp8ikIjB8/3t91AACAGuBTELjpppv8XQcAAKgBPgWBTp06nfG1vw6HQ5s2bfJrcQAAwL98CgLffPON9+eSkhK9/fbb2rNnj9+KAgAA1cOnTw2cLigoSDExMdq8ebM/6gEAANXIpyMCv/zyi/dny7KUlZWlo0eP+qsmAABQTc77GgFJatCggSZOnOjXwgAAgP+d9zUCAACg9vApCHg8Hi1atEibNm2S2+1Wly5dNHr0aNntPq0OAAAuUT5dLPjSSy/pk08+0fDhwzVixAh9/vnnSk5O9ndtAADAz3x6S//hhx9q5cqVCgwMlCTddddd6tu3rxISEvxaHAAA8C+fjghYluUNAdKvHyE8fRoAAFyefAoCLVu21IwZM/Tzzz9r7969mjFjBl87DABALeBTEEhMTNTRo0d13333aeDAgSooKNCzzz7r79oAAICfVRgESkpK9PTTT+vjjz9WUlKStmzZojZt2iggIEDBwcHVVSMAAPCTCoPA7NmzVVRUpNtuu807b9q0aTp69KjmzJnj9+IAAIB/VRgEPvjgA7300ktq0KCBd951112n5ORkvffee34vDgAA+FeFQSAwMFBXXHHFGfODg4MVFBTkt6IAAED1qDAI1KlTR0VFRWfMLyoqktvt9ltRAACgelQYBKKiojRp0iQdP37cO+/48eOaNGmSevXq5ffiAACAf1UYBIYPH66QkBB16dJFf/nLXzRgwAB16dJFV199tR577LHqqhEAAPhJhV8xXKdOHU2bNk2jR4/Wzp07VadOHbVp00ahoaHVVR8AAPAjn+41EBYWprCwMH/XAgAAqplP3ywIAABqJ4IAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgML8GgaKiIkVFRWnfvn2SpC1btsjpdKpXr156+eWXveN27dqlmJgYRUREaOLEiXK73ZKk3NxcxcbGqnfv3nrkkUd07Ngxf5YLAIBx/BYEduzYocGDBys7O1uSVFxcrISEBM2fP19r165VVlaWNm7cKEmK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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot histogram of log-likelihood values\n",
"tmp = tmp_ll.sum(axis = 1, skipna = True)\n",
"\n",
"_ = plt.figure(figsize=(8,5))\n",
"_ = plt.hist(tmp, bins=50)\n",
"_ = plt.title('ln(likelihood) for SMILES in the data subset')\n",
"_ = plt.xlabel('ln(likelihood)')\n",
"_ = plt.ylabel('Counts')\n",
"_ = plt.show()\n",
"\n",
"# plot histogram of likelihood values\n",
"_ = plt.figure(figsize=(8,5))\n",
"_ = plt.hist(np.exp(tmp), bins=50)\n",
"_ = plt.title('Likelihood for SMILES in the data subset')\n",
"_ = plt.xlabel('Likelihood')\n",
"_ = plt.ylabel('Counts')\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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0oESVS21kf6MjIyMkuLBBx/kb//2b4d1nm677TZuu+027rjjDlavXs2rr77KZz/7WXp6eli5ciV/+Zd/ST6fP+5zZsE7IyMjowTJyiYZGRkZJUgWvDMyMjJKkCx4Z2RkZJQgWfDOyMjIKEFKOnifSOxlutHT08P73vc+du3aBdjY7Lp167j66qu5++67hx93MiI1p4JvfOMbXHfddVx33XV8+ctfBkpvHwD++q//mmuvvZbrrruO73znO0Bp7seXvvQlPv3pTwOluf233HIL1113HTfccAM33HADL7zwQknux5ShJcq+ffv0He94hx44cEB7e3t13bp1unHjxqnerDF5/vnn9X3ve5+uXLlSd+7cqf39/XrVVVfpjh07tFgs6kc/+lH9xS9+oaqq1113nT733HOqqvpHf/RHes8990zhlhu/+c1v9IMf/KAODg5qoVDQW2+9VR988MGS2gdV1SeffFJvvvlmLRaL2t/fr+94xzt0w4YNJbcfjz32mF566aX6h3/4hyX3XVJVDSHoFVdcocVicfhnpbgfU0nJZt4jxV4qKyuHxV6mKz/84Q/5kz/5k+HJqfXr17Nw4ULmz59PHMesW7eOhx56aFSRmumwX42NjXz6058mn8+Ty+VYunQp27ZtK6l9ALjkkkv43//7fxPHMR0dHXjvOXToUEntR1dXF3fffTcf+9jHgNL7LgFs2bIFgI9+9KNcf/31/J//839Kcj+mkpIN3qOJvYxHzGWq+MIXvsDFF188fH+s7T9ZkZrJ5qyzzho+eLZt28ZPf/pTRKSk9mGIXC7H1772Na677jouu+yykvssPve5z3HnnXcOj2aX2vYDHDp0iMsuu4xvfvOb/K//9b/4+7//e/bs2VNy+zGVlGzwPlkxl+nCWNs/3fdr48aNfPSjH+Wuu+5i/vz5JbkPAHfccQePP/44e/fuZdu2bSWzHz/60Y9oaWnhsssuG/5ZKX6XLrjgAr785S9TU1NDfX09H/jAB/ja175WcvsxlZSsMNWJxF6mO0eL0Qxt/8mK1JwKnnnmGe644w4+85nPcN111/HUU0+V3D5s3ryZQqHAOeecQ0VFBVdffTUPPfQQURQNP2Y678c//uM/0t7ePixF2tfXx+7du0tm+4d4+umnKRaLwychVWXu3Lkl932aSko28z6R2Mt057zzzmPr1q1s374d7z3/8A//wJVXXnnSIjWTzd69e/n4xz/OV77yFa677jqg9PYBYNeuXXz2s5+lUChQKBR49NFHufnmm0tmP77zne/wD//wDzzwwAPccccdvPOd7+R//I//UTLbP0R3dzdf/vKXGRwcpKenh/vuu49PfvKTJbcfU0nJZt6zZ8/mzjvv5NZbbx0We1mzZs1Ub9a4KSsr44tf/CKf+MQnGBwc5KqrruI973kPAF/5yleOEKm59dZbp3hr4dvf/jaDg4N88YtfHP7ZzTffXFL7AHDVVVexfv16brzxRqIo4uqrr+a6666jvr6+pPZjJKX2XQJ4xzvewQsvvMCNN95ICIEPf/jDXHDBBSW3H1NJJkyVkZGRUYKUbNkkIyMj40wmC94ZGRkZJUgWvDMyMjJKkCx4Z2RkZJQgWfDOyMjIKEFKtlUw48xgxYoVLF++HOeOzDO++c1vMm/evCnaqoyMqScL3hnTnu9+97vU19dP9WZkZEwrsrJJRkZGRgmSDelkTGtGK5vMmzePb37zm1O4VRkZU09WNsmY9mRlk4yMY8nKJhkZGRklSBa8MzIyMkqQrOadMa0Zq1Xwk5/8JFddddUUbVVGxtSTBe+MjIyMEiQrm2RkZGSUIFnwzsjIyChBsuCdkZGRUYJkwTsjIyOjBMmCd0ZGRkYJkgXvjIyMjBIkC94ZGRkZJUgWvDMyMjJKkP8/2/wrnCUjA7cAAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# check the predicted likelihood\n",
"dot_scale = 0.1\n",
"l_std = np.sqrt(pred['E: std']**2+pred['HOMO-LUMO gap: std']**2)\n",
"\n",
"_ = plt.figure(figsize=(6,5))\n",
"rectangle = plt.Rectangle((0,0),200,3,fc='y',alpha=0.1)\n",
"_ = plt.gca().add_patch(rectangle)\n",
"im = plt.scatter(pred['E: mean'], pred['HOMO-LUMO gap: mean'], s=l_std*dot_scale, c=np.exp(tmp),alpha = 0.2,cmap=plt.get_cmap('cool'))\n",
"_ = plt.title('Pubchem data')\n",
"_ = plt.xlabel('E')\n",
"_ = plt.ylabel('HOMO-LUMO gap')\n",
"_ = plt.colorbar(im)\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 5-10min to complete!**\n",
"\n",
"The second option is to prepare your own forward model. In fact, this may often be the case because you may want to first validate your model before using it. When the training takes a long time, you want to avoid repeating the calculation that is simply wasting computing resources. In this tutorial, we will use gradient boosting. Let us first verify the performance of the model on our data set using a 10-fold cross-validation."
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 2min 36s, sys: 1.42 s, total: 2min 37s\n",
"Wall time: 2min 46s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# forward model library from scikit-learn\n",
"#from sklearn.ensemble import RandomForestRegressor\n",
"#from sklearn.linear_model import ElasticNetCV\n",
"from sklearn.ensemble import GradientBoostingRegressor\n",
"#from sklearn.linear_model import ElasticNet\n",
"# xenonpy library for data splitting (cross-validation)\n",
"from xenonpy.datatools import Splitter\n",
"\n",
"np.random.seed(201906)\n",
"\n",
"# property name will be used as a reference for calling models\n",
"prop = ['E','HOMO-LUMO gap']\n",
"\n",
"# prepare indices for cross-validation data sets\n",
"sp = Splitter(data_ss.shape[0], test_size=0, k_fold=10)\n",
"\n",
"# initialize output variables\n",
"y_trues, y_preds = [[] for i in range(len(prop))], [[] for i in range(len(prop))]\n",
"y_trues_fit, y_preds_fit = [[] for i in range(len(prop))], [[] for i in range(len(prop))]\n",
"mdls = {key: [] for key in prop}\n",
"\n",
"# cross-validation test\n",
"for iTr, iTe in sp.cv():\n",
" x_train = data_ss['SMILES'].iloc[iTr]\n",
" x_test = data_ss['SMILES'].iloc[iTe]\n",
" \n",
" fps_train = RDKit_FPs.transform(x_train)\n",
" fps_test = RDKit_FPs.transform(x_test)\n",
" \n",
" y_train = data_ss[prop].iloc[iTr]\n",
" y_test = data_ss[prop].iloc[iTe]\n",
" for i in range(len(prop)):\n",
" #mdl = RandomForestRegressor(500, n_jobs=-1, max_features='sqrt')\n",
" #mdl = ElasticNetCV(cv=5)\n",
" mdl = GradientBoostingRegressor(loss='ls')\n",
" #mdl = ElasticNet(alpha=0.5)\n",
" \n",
" mdl.fit(fps_train, y_train.iloc[:,i])\n",
" prd_train = mdl.predict(fps_train)\n",
" prd_test = mdl.predict(fps_test)\n",
"\n",
" y_trues[i].append(y_test.iloc[:,i].values)\n",
" y_trues_fit[i].append(y_train.iloc[:,i].values)\n",
" y_preds[i].append(prd_test)\n",
" y_preds_fit[i].append(prd_train)\n",
"\n",
" mdls[prop[i]].append(mdl)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You will see that the performance is not so bad, especially inside the target region that we are aiming at."
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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e9qM/1h5zJghnw5MTk4yNze3+vXc3Bzj4+P3uT4/P7+61H+0uOGGG3j961/P29/+di677DK++93vnjZj37FjB0mScO655xKGIZdccglf+9rXUEqt3nMqjv8rX/kKc3NzXH755TSbTXq9Hvv37z/lx73C9773PdI0XRV/ay3T09OnzfvmWClmno8gF1xwATt37mT37t1orfnSl77Ec57zHKanp/F9nxtuuAGAL37xizznOc951MY5MzPDa17zGq655houu+yy02rsAPv27eOd73wnSZKQJAn/9E//xJVXXnnKj//P//zP+dKXvsQXv/hFXv/61/MTP/ET/Omf/ukpP+4V2u02H/jAB4jjmE6nw+c//3ne+MY3njbjP1aKmecjiO/7XH311bzuda8jjmMuvvhiLr30UgCuueYa3vnOd9LpdDj//PO56qqrHrVx/tmf/RlxHHP11VevXrvyyitPi7EDXHzxxdx000286EUvQinFJZdcwmWXXcbw8PBpMf4jOV3eMwDPfe5zufHGG3nRi16EMYaXv/zlPOlJTzptxn+sFDEcBQUFBcdBsWwvKCgoOA4K8SwoKCg4DgrxLCgoKDgOCvEsKCgoOA4K8SwoKCg4DgrxLDhl2LdvH+eee+6qI8/ll1/OT//0T/OZz3zmYT3uq1/9aj73uc8BcPnll9NqtR7w3na7fY+WmYe6v+DMpejzLDilCIKAL37xi6tfz87O8oIXvIDHPe5xnHPOOQ/78Y987Puj2Wxy8803H/X9BWcuhXgWnNJMTEywYcMGvvWtb/Ge97yHKIqoVCp84hOf4NOf/jSf/OQnMcbQaDR417vexebNm5mdneWtb30rhw4dYs2aNSwsLKw+3rZt2/j2t7/N8PAwH//4x/n85z+P4zhs2LCBq6++mre97W30+30uv/xyPve5z3Heeeet3v+Hf/iHfPnLX0YpxcaNG3nXu97F2NgYP//zP88Tn/hEvv/97zMzM8Mzn/lM3vve9yJlsbB7LFP8dQtOaX7wgx+wZ88e+v0+d911F5/4xCf4xCc+wXe/+12+8IUv8Fd/9Vd84Qtf4Jd+6Zd47WtfC8B73vMeLrjgAr785S/zzne+k507d97ncf/pn/6Jz33uc/zN3/wNX/rSl1i7di1/+Zd/yfvf//7V2e+RZ8o/+9nP8u///u985jOf4e/+7u/YunXrqlkxwJ49e/jEJz7B3/7t3/Jv//ZvfPe73z35L07Bo0ox8yw4pViZ9QForRkaGuJ3f/d3WVhYYNu2bVQqFQD+9V//ld27d3PllVeu/myr1WJ5eZnrr7+et7zlLQBs2LCBpz/96ff5Pd/+9re59NJLqdfrALztbW8DWHX8vzf/9m//xhVXXEGpVALgqquu4mMf+xhJkgD50UQpJZVKhQ0bNtBsNk/Ey1FwClOIZ8Epxb33PFf43Oc+typckFu1XX755bzpTW9a/frQoUPU63WEEBx56thx7vs2V0rdwwKt1Wo9aGHo3hZqxph7xEYEQbD6+b1/f8Fjk2LZXnBa8uxnP5svf/nLHDp0CIBPfvKTvOIVrwDgoosu4m/+5m8AOHDgAN/5znfu8/PPetaz+Id/+Ac6nQ4AH/7wh7nuuutwHAet9X3E76KLLuKzn/0svV4PgE984hM89alPxfO8k/YcC05tiplnwWnJs5/9bF71qlfxyle+EiEElUqFj3zkIwgh+O3f/m3e9ra38VM/9VNMTk7eb5X+4osv5q677uJlL3sZAFu2bOG9730vYRjyhCc8gcsuu4y/+qu/Wr3/JS95CTMzM7z0pS/FGMOGDRu45pprHrHnW3DqUbgqFRQUFBwHxbK9oKCg4DgoxLOgoKDgOCjEs6CgoOA4KMSzoKCg4DgoxLOgoKDgOCjEs6CgoOA4KMSzoKCg4Dj4/wFCYf909go/YgAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAUkAAAFNCAYAAACNG52+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAACQF0lEQVR4nOydd5xdVbm/n7V2O/uUOdMnk04SCB2kqIiIYAFFOihyRVAJiCIiiIAgWC4iiBcEC4KI/uJVBAQVr3ItWFC8Vgw9BELqJJOpp++61u+PMzMkkDIpk8kk+/l8AjNnztn73XvOfM+71tuE1lqTkJCQkLBe5HgbkJCQkLAjk4hkQkJCwkZIRDIhISFhIyQimZCQkLAREpFMSEhI2AiJSCYkJCRshEQkJxArVqxgr7324sQTTxz5d8IJJ3D//fePiz2lUon3v//9W3WMuXPn0t/fv85jDzzwAOeff/7I9/39/Vx99dW87W1v44QTTuCkk07i29/+NnEcA/X7MnfuXN73vve96vhXXHHFq87xwx/+kBNOOIF3vvOdHHfccVx22WV0dXVt0MazzjqLhx9+eNT2P/zww5x11lkj1zJ37lxuvfXWdZ6jteYtb3kL73rXu0Yeq1ar3HDDDRxzzDEcf/zxHH/88dx88814nrdB2xLGnkQkJxipVIqf/vSnI//uvPNObrjhBp577rntbkuhUODJJ58c03MUi0Xe+973MnPmTH75y1/ys5/9jO9973s8+eSTfOpTnxp5nuM4vPTSS6xcuXLksWq1yr/+9a91jnfDDTfwq1/9im9961v84he/4KGHHuLwww/nPe95D6tXrx6Ta5g8eTI/+9nP1nnsH//4xzriF0URH/jAB1BK8ZOf/ISHHnqIe++9l0qlwoc+9CGiKBoT2xI2jTneBiRsHR0dHcyYMYMlS5bwzDPPcP/991Or1chms8yfP5+vf/3r/M///A+GYbDbbrvxmc98hra2Ns466yz23ntv/vnPfzIwMMCJJ57IRRddBMC//vUvbrrpJmq1GlJKLrzwQo466igeeOCBdY4P4HkeJ554Ih/60If4wQ9+wD333ANAV1cX7373u3nkkUf45je/CcDHP/7xzb6+H/7wh+y1116ce+65I4/l83luvPFGjjrqKJ544gmam5sxDIN3vOMdPPTQQ3z4wx8G4Fe/+hVvectb+M53vgPA6tWrueeee/j9739PPp8HQErJSSedxFNPPcW3vvUtrr322i38TWyYPfbYg1WrVvGvf/2Lgw46CIAHH3yQE044gUcffRSoe59KKa688sqR17muy1VXXcVJJ53Er3/9a97xjnesc9ylS5fy6U9/mkKhQFtbG1prTjjhBE455RRuv/12fvvb3+J5HrVajcsvv5y3ve1t3HbbbSxdupTVq1fT09PDnnvuyXXXXTfy+0x4NYknOcF5/PHHWbZsGQcccAAAL7zwAvPnz2f+/Pn8+Mc/5tFHH+X+++/noYceYvfdd+eKK64Yee1LL73ED3/4Qx588EF+8Ytf8Lvf/Y5CocCVV17JjTfeyIMPPsg3vvENPvvZz44sR9c+/vXXXz/i2R577LEsW7aMRYsWAXDfffdx8sknY9s2H//4xzcqkGefffY6WwhrL00ff/xxDj300Fe9xnEcDj744HU8xZNOOomf/vSnI9//5Cc/4eSTTx75fsGCBcyaNWtEINfmDW94A//85z83eb+3lLVtq9Vq/POf/+SII44Y+fnjjz/OIYcc8qrXCSE47LDD1mvbpz71KY477jh+/vOfc/XVV/Pvf/8bgJUrV/LYY48xf/58HnroIT7xiU+sc0///ve/c8stt/DLX/4S0zT5+te/vo2vduci8SQnGMOeG0AcxzQ1NfHlL3+Zzs5OoL5HNuwV/PGPf+SUU04hnU4D8P73v5/bb7+dIAgAeM973oNlWViWxbHHHsuf/vQnpJT09PTw0Y9+dOScQggWLlz4quOvjW3bnH766dx3331cfvnlPPjgg8yfP39U1/S9732P5ubmke8feOAB/vd//3fk+zAM1/u64esYZt9998UwDJ566ilaWlqoVCrsscce6zxnQ8vWIAgQQozK3rVZ32uUUki5rv9x/PHHc+KJJ3LVVVfx61//mqOPPhrDMEZt2yufWygUeOKJJ/j+978PwOzZs3n9618PwJQpU7jxxht56KGHWLp0KQsWLKBSqYy89thjj6W1tRWA0047jS9+8Ytcfvnlm3nluw6JSE4whj23DTEsiFD/Y137j1gptc4fomm+/OvXWiOlJI5jZs+ezX333Tfys+7ubpqbm3nooYfWOf4rOeOMMzjttNN47Wtfy+677860adM2+/peyUEHHcTf/vY3zjnnnHUer1QqPPnkk+uIOcAJJ5zAz372M5qbm0c+TIY58MADWbp0KT09PbS1ta3zs7/+9a+85jWv4cknn+Tqq68eeXxj9xqgqamJwcHBdUS+r6+PxsbGdZ7X1tbG3nvvzR//+Ed+8pOfcMUVVzAwMLDOdX77299+lcAqpfj73//OBRdcsM7xhkVz7dYLw489/fTTfOQjH+Gcc87h8MMP59BDD+Vzn/vcq543fPxXCnrCuiR3ZyfmiCOO4Mc//jHVahWA+fPnc+ihh2LbNgA/+9nPUEpRKBT45S9/ydFHHz0iJH//+98BePbZZznmmGPo7u5+1fFN0ySO45E/1M7OTg488EC++MUv8t73vnebXMOZZ57Jiy++yB133DESzS4UClxxxRUccsgh7L///us8/8QTT+Thhx/mF7/4xTqRY6jv35511llccskl61zPj3/8Y371q18xb9489ttvv3UCY5viTW96E/Pnz0cpNWLbgw8+yJFHHvmq55500kncfffdlEqlV3m4xxxzDK7r8sUvfnEkoON5Hl/4whfIZDK87W1vW+f52WyWgw46iAceeACA5cuX85e//AUhBH//+9/Zd999+cAHPsBrX/tafvvb347cO4Df/va3lEollFLce++9HHXUUZu8zl2ZxJPciTnttNNYtWoVp59+OkopZsyYwU033TTyc8/zOO2006hUKpx55pkcdthhANx6663ceOON+L6P1pobb7yRqVOn8re//W2d47e1tbH//vtz3HHH8d///d80NTVxyimn8IUvfGEdkfjqV78KbFngJpvN8qMf/YivfvWrvPOd78SyLIQQvOtd7+KDH/zgq57f0dHB7NmzyeVyr/LmAC699FLuu+8+LrjgAoIgIAgC9ttvP+655x6mTJmyQTs+9alPrRNUOfPMM7nsssu46qqr+NKXvsS73vWuEQ/txBNPXGcvdJi3vvWtXHvttXziE5941c9M0+Q73/kO3/jGNzjllFNGvPqjjz6a73znO1iW9arX3HDDDVx11VX84Ac/oKOjg6lTp5JKpTjiiCP41a9+xTve8Q6UUhx11FEUCgXK5TIAra2tzJs3j4GBAQ499NCRQFfC+hFJq7Rdk7POOov/+I//4Nhjj91mx1RK8fnPf57Jkydz3nnnbbPjJqyfb37zm7z97W9n9uzZlEolTjjhBO68807mzJmzwdfcdtttDAwMcM0112xHSyc2iSeZsE0ol8scddRRHHTQQetE0BPGjpkzZ/KJT3xixOucN2/eRgUyYctIPMmEhISEjZAEbhISEhI2QiKSCQkJCRshEcmEhISEjZCIZEJCQsJGmHDR7YGBCkrt2LGmlpYsfX3l8TZjkyR2blsSO7ctY2nn008/xTXXXMFJJ53G2Wd/gKamzAafO+FEUim9w4skMCFshMTObU1i57ZlLOz8+9//j4997AImTZrE29527CbPkSy3ExISdhkee+xPXHjh+UyZMpW77ppPe3vHJl+TiGRCQsIuQalU4vLLL2HGjN24887v0dLSOqrXTbjl9ivRWlMuF6jVyigVb/oF24E1a+RIw4NtjZQGrpslm81vUWuvhIRdlVwuxy23fJ05c3Ynn28c9esmvEgODPQghKC5uQPDMHcI4TBNSRRte5HUWhPHEaXSIAMDPTQ3t2/zcyQk7Gz86lcPU61WOOmkUzn44Fc3cN4UE365HQQejY0tmKa1QwjkWCKEwDQtGhtbCIJkOFRCwqb4n/95iCuuuISHHnpwnXZxm8OEF0nQCLETXMZmUL/eiRGdTEgYL37ykx9z9dWf4uCDD+VrX7vjVd3dR8uupS4JCQm7BPfffw+f/exVvP71b+DWW2/HdTfcUX9TJCK5jSmXy1x++aWjfv5zzz3Dl770hTG0KCFh16NQKHDEEUdyyy3fwHXdrTrWhA/c7GiUSkUWLhz9DOw999ybK67Yewwt2nkIwpju/iovLFpJ35IVyMAj15Slcfp0UvkcpmnQlHNobkhhW1u2tEqY2PT19dLS0sqHPnQ+cRxv8RJ7bXZZkQzCmFI1IIgUtinJpe1t8od1yy1fpre3hyuv/CRLl75EPt+I4zhcd92NXH/9F+jpWUNvbw+HHPJarrjiMzz++D/5znfu4Gtfu4MLLzyPvffehwUL/s3g4AAXX3wZhx12+Da42olPEMYs7y6x6IUuqoteQJkWobQpr6kw0P0ErfvOpXNqO70FjyCMmdSSSYRyF+Pb376d733vO3z/+/cyY8bMbSKQsIsut4MwprfgoTQ4loHSjPxxbS0XX3wZra1tXHTRJSxbtpRrrvkCt9zyDR577E/svvsefOtbd3PPPQ/y73//a70eZxhGfOtbd/Oxj13CnXd+c6vt2VkoVQP6yx7hmtXguDgZF8My0IZJZDp4q1YTRArXMfGGPgATdg201nzzm7fxta/dwpve9GamTJm6TY+/S3qSpWqAZUpMo/4ZYRpi5PGW/NbtX6xNU1MznZ2TAXjb247lmWee4t57f8CSJS9RKBSo1aqves3rXlcfxjVr1mxKpeI2s2WiE0SKIFSoag1tufWPdw0ajZKSqFojjDRSCsJIE4xBnmrCjofWmttu+y++8507OfHEU7jmmi9sMw9ymF3Tk4wUhlw3p9KQYpv/YTmOM/L1/fffwze+cSuNjU2cdtp72G233Vjf5Izhca9CiPX+fFfFNiW2JZFpFxHHoAABAoFUCjPtYpkCpepCaZu75Ft7l+Ohh37Cd75zJ6ed9h6uvfY/t7lAwi7qSdqmJFZ6xIMEiJXeJn9YhmGsN2n173//KyeccApvf/uxPPfcMyxa9HwyGH4zyKVtmrMp+tonES56AT+OiIWBiCNMHZLqnIltSmp+REPaIpe2x9vkhO3AO95xHGEYcsopp49ZMckuKZK5tE1voV6xYkhBrDRhpGjNp7b62M3NLUyaNIkvfvFz6zz+7nefyU03Xc/3v383mUyWfffdn1Wrurb5/snOim0ZTOvIYVvTeMGU9C1ZgRl4tLa/HN0GQWs+iW7v7CiluOuub3HaaWfQ1NTEqae+e0zPN+GmJfb1ldfp/7Z69VImTZqx2ccZq+g2jF3t9tps6XWvTVtbjp6e0jayaOxI7Ny2TGQ74zjmc5+7mp/97EGuvPIa3vOeM7f6PFIKWlqyG/z5LulJQt0z2ZZBmoSEhLEliiI+85kr+OUvf84FF3xsmwjkaNhlRTIhIWHiEIYhn/70Zfz61w9z0UWX8MEPnrfdzp2IZEJCwg5PqVTkueee5dJLL+essz6wXc89pqHVcrnMu971LlasWLHO49///vc566yzxvLUCQkJOwG+7xNFEc3NLdx774PbXSBhDEVywYIFvPe972XJkiXrPP7CCy9wxx13jNVpExISdhJqtRoXXXQBn/3sVWitt6qTz9YwZiJ57733cu2119Le/nL37CAIuOaaa7jooovG6rQJCQk7AdVqhbPOOou//e0vHHro68a1ofaY7Uled911r3rsK1/5CqeeeipTp255buArQ/Vr1kjMHbC6YqxtklLS1pbb6uNsi2NsDxI7ty07sp2lUol58z7Mv/71L2677TZOPvnkcbVnuwVu/vznP7Nq1SquvPJK/vrXv27xcV6ZJ6mUGvOcxM2hXC5z/fWf47rrvrxZr/vznx9l+fKlnHHG+0b1fKXUVue6TeR8uR2RxM6tR2vNhz/8QR5//HG+/vWv8/rXv3nMbd1h8iR//vOfs2jRIk488USq1Sq9vb1cfPHF3HLLLdvLhHWIy2WC7m5UrYp009gdHRjZDd+o0bK5/SSHee65Z7b63AkJEx0hBOee+2HOOON9HH/88TuEmG83kbz++utHvv7rX//K1772tXEVyNrixUjHQWay6CCgtngx7qxZWy2Ua/eTfNOb3sx99/0QpTRz5+7JJZdcjmEYXH/951i8+EUATj75dPbb7wB++tMHAJg0qZPjjjthq68xIWEi0d/fz//935955zuP59BDXzfe5qzDjreZtx0IurvrAuk4CCFGvg66u7f62MP9JOfNu4CHHvoJ3/zmd/jud39AU1MzP/zhfJ58cgHFYpG77/4BX/7yV1mw4HF2220WJ554CieeeEoikAm7HD09azj33Pfz+c9fQ0/PmvE251WMuSf5yCOPvOqx173udbzudeP3aaFqVWRmXY9R2DaqUt5m53j88X+wYsVyzj+/ntcVRSF77LEnJ598GsuWLeWSSy7k9a8/nI9+9OPb7JwJCRON7u5uzjvvbNasWcNtt91OW9uON0t+l6y4kW4aHQSItfo96iBAbsM8rDhWHH30W7n44ssAqFarxHFMLpdj/vx7+fvf/8pf/vJnPvjB9zF//r3b7LwJCROFVau6OO+8c+jv7+Mb3/g2r3nNQeNt0nrZJZfbdkcHyvdRvo/WeuRru6Njq4893E/yNa85mD/+8fcMDPSjteYrX7mee+/9AX/60x/4wheu4Q1veCMXX/xJXNdlzZruDfahTEjYWXnssT8xMDDA7bd/Z4cVSNhFPUkjm8WdNase3a6UkW4ad8qUbRLdHu4neeutX+EDH5jHRRd9GK01c+bswfvedw6GYfD73z/CWWe9G9u2OeaYdzJ79hxKpSLXXfdZmpubOe20M7bBVSYk7JgMTzE89dR38+Y3H01LS+t4m7RRdtl+kmNJ0k9y25LYuW0ZTzsXL36RSy65kC984Uvst98BG33u9rJzh8mTTEhI2LV54YXnOe+8DyCEGLc67C1hl9yTTEhI2L4899wznHvu+zEMg7vu+n/MmbP7eJs0anYCkRRoveOUJW4P6tc7fgX/CQmbw5Ili5k37xxcN813vvN9Zs6cNd4mbRYTXiRtO8XgYC9RFO70I1i11kRRyOBgL7a99UPLEhK2B1OmTONd7zqBb3/7/zFt2vTxNmezmfB7kk1NbZTLBfr7u1Fqx0ihkVKi1Nh4t1IauG6WbDY/JsdPSNhWLFjwOFOmTKW1tY3LL796vM3ZYia8SAohyOUayeUax9uUESZKlDMhYaz461//wsc//hHe+MYjuOmmW8fbnK1iwi+3ExISdiwee+xRLrrow0ydOpUrr7xmvM3ZahKRTEhI2Gb88Y+/4+Mf/wgzZ87izjv/3w6fKD4aEpFMSEjYJsRxzNe/fiu77z6XO+64m6ampvE2aZsw4fckExISxh+tNYZh8PWv34HjpMjldtzxEJtL4kkmJCRsFT//+U+54opLiaKI1ta2nUogIRHJhISEreAnP/kxn/nMFQwM9BOG4XibMyYkIpmQkLBF3HvvD/nsZ6/i9a9/A7feejuu6463SWNCIpIJCQmbzY9+9AO++MXPccQRR3LLLd8gldp5K8ASkUxISNhs5s7dk3e960T+679uw1mrw//OSBLdTkhIGDVPPPFv9t//QA488CAOPHDH7Sa+LUk8yYSEhE2iteYb37iV97//DB577NHxNme7kniSCQkJG0Vrza23/hd3330nJ510Kq973RvG26TtSiKSCQkJG0RrzU03fYn//u/vcfrp7+XKKz+DlLvWAjQRyYSEhA3y+OP/5L//+3uceeb7ueyyKxFi12v2nIhkQkLCBjnooEO4++7/5sADD9olBRKSwE1CQsIriOOY//zPa/nHP/4GwGtec/AuK5CQiGRCQsJaRFHEVVddxv33/4gnn1ww3ubsECTL7YSEBADCMODKKz/Jb37zKz7+8U/ygQ+cO94m7RAkIpmQkEAQBHzqUxfz+98/wic/eSXve9/Z423SDkMikgkJCRiGQTqd4corr+E97zlzvM3ZoUhEMiFhF6ZWq1Eul2hra+e6627cpQM0GyIJ3CQk7KJUqxUuvPA8zj//A4RhkAjkBhhTT7JcLnPGGWdw++23M3XqVH70ox8xf/58hBDsu+++fO5zn8O27bE0IWEnJQhjCr0D+KtWY4Qe/YHg3/2avsAgn7U5ZG4Hk1oyBJHCNiW5tI1tGeNt9g5DqVTiwgvP46mnnuC6627EspK/ww0xZp7kggULeO9738uSJUsAeOmll7jrrru45557+NnPfoZSih/84AdjdfqEnZggjOlZ1Uew5CUsoegqa/7072VYq1fSnlLUfMVP/7yYF1cM4lgGSkNvwSMI4/E2fYdgcHCQD3/4gzz99JPccMN/ceyxx423STs0YyaS9957L9deey3t7e0A2LbNtddeSzabRQjBHnvsQVdX11idPmEnplQNkAO9mG4K4aR4buUgKdfFcFOka0VSjkEuZfH4iz0IITANiWVKStVgvE3fIbjmmmt4/vnnuOmmW3nrW48Zb3N2eITWWo/lCY4++mj+3//7f0ydOnXksf7+fk477TSuv/56Xve6143l6RN2QlasKREvfBojm0MIwQ8efobGnI0QgiwRa1qmo1VM76DPxWceAtQbNXhBzNT2nWtI1ZbQ19fHs88+yxvf+MbxNmVCsN2j293d3Zx77rmceuqpWySQfX1llBpTXd9q2tpy9PSUxtuMTTJR7SwXawS+QHoFhO1gWZJC0SdrCyopG9+PKJV9HMegr68CQBQrpICeMYxN7Mj3s6dnDd/97l1cfPGlTJ7cwty5B+ywtg6zve6nlIKWluyGfz7mFqzFiy++yBlnnMHJJ5/MRz/60e156oSdiFzaRjW1EtU8tO+x55RGvFqNuOZRdRvw/JiSF/Ka2W1orYliRRgpculdMzjR3b2aD33oLB544D4WL1483uZMOLabJ1kul/nQhz7ExRdfzEknnbS9TpuwE2JbBm2dLRQsib9qNZOzgjceOL0e3fYk+azkxP1nMaklgx/G2KakNZ/aJaPbXV0rOe+8cxgY6Oeb3/w2c+fuOd4mTTi2m0jef//99Pb2cvfdd3P33XcD9f3Kj3/849vLhISdiLpQtkJnKwCdwD7ja9IOx4oVy5k372zK5TK33343++23/3ibNCEZc5F85JFHADjnnHM455xzxvp0CQkJQ5RKRUzT5I477mavvZKPkC0lKUtMSNjJGBgYoKmpib322ocHH/wFppn8mW8NSVliQsJOxKJFCzn11Hfxwx/OB0gEchuQiGRCwk7Cc889w7x5Z2OaJm94Q5IDua1IRDIhYSfgySefYN68c3DdNHfdNZ8ZM3Ybb5N2GhKRTEiY4AwODvCRj5xLPp/nrrvmM23a9PE2aaci2bBISJjgNDY28elPX8NBBx1CR8ek8TZnpyMRyYQJSVwuU+3qojxQJLZSrCbNE6uqlKvhLtMq7f/+7zG01hx22OG84x3vGm9zdloSkUyYcATd3RT+9U/K1QCRzrC0qHjypX56c21Y2QxlL2Lxqhc4dG4b7U0Zal5INYhozafIuA7NOZvmBndCi+af/vRHLrnkQubO3YvXv/4NScPcMSTZk0yYUMTlMuUF/8aPNCKbo1j2WLFoCVJo2uMKXqjwoxgVx/xzYQ99RY+qH1OuRSztLhNGir6iz6q+6oTtL/n73z/CJz7xUWbNmsNtt92eCOQYk4hkwoQi6O4GpYgdlzDW1GLwlEFO+1gqxJQGQkMYKbwgQiCo+iENaRvLMChWfRzbwA/jCdlf8je/+V8++cmL2GOPPbnjjrtpbGwab5N2ehKRTJhQqFoVmc1iqpggiolijWGbmIGHLyyEAVJowkiRsiRK1b/WQMqWeEGMIQVKaYJIjfflbDZ/+cuf2Wef/bj99u/Q0JAfb3N2CZI9yYQJhXTTmFGMXakgowghNO2uYI0HvWYWoRRRqImVZtqkBoSo9wuMYkXalli2Qaw0Ugpsc+L4CJ7nkUql+PSnryUIfFw3Pd4m7TJMnHdJwi5PEMYMxJKFCxbxryeW8vxTL7Hq+eV4tZBot73ATVOuxQhDcvi+k2jLu4SxIpuyQIMfaRrSDn4Q41jGhOkv+cAD93HaacfT3d2NYRiJQG5nEk8yYUIQhDFdy3tY8+wSXqyZRLFLxhYYUrIsPxPSeQ7oyNKSS9GUc2nM1QWwXIvwgoggVFhmfdbNRIpu/+hHP+D66z/P4YcfQT6fLK/Hg0QkEyYEpWpA0L2aNbWYmulitWeoGRIRhrQYisC1md7RwMFzO8bb1G3G97//PW666Xre/OajufHGW5Lxy+NEstxOmBAEkUJVq1QjgVYaaQiQoKRBSnn4UUylGo63mduMhx76CTfddD1vfevb+fKXE4EcTxJPMmFCYJsSmU6TNquUpSCKNJoYHYTUtElcKVN+oY+/rniBQFpUM02Y2Swp2yCXdmjMOWRS5oSpvDnyyKOYN+8Czj//o0m7s3EmufsJE4Jc2qbUMYmWZV34vStRgwOoKKYsXV50J5NZ1cegZZLKpJjUYOHKAeL2yaSa8gyWA2KlMI00fsHbYefdaK156KGfcMwx76ShIc9HP5qMNtkRSJbbCRMC2zJozjlkDU1zXAalqGkTrRW7VbsQWuFrk3It4qU+j1AYGMUB/FCRcU0KVR8vqAdvdsQkcq01t9xyE9dccyUPPnj/eJuTsBaJSCZMGKqrVtGYNghbO1GTp6Na2vCdNDlVI6c9GKrO07FmdckHv0akNJYpCUJFGNUTyXe0JHKtNV/+8vV873t38e53n8m73/3e8TYpYS2S5XbChCEoV5BKESgDrWIUEGKgETSEFbQWpAgJDItIuZTTrVRLPkEY4/khq3srmKbEsSS7dTYyuTU97qlASimuv/4L3HffD3nf+87m0kuvSGqxdzASkUyYMNjZDOFgHzkLyjUwJVjEeIZDLqpQwSGwLMwopDGsUNCdxH5EoexhWZIgiEEatOQdunrKKK3xQ01nS3rchLK7ezW/+tUv+MAH5nHRRZckArkDkohkwoQhP30Ka3p6aE+XKdY0sadIq4BQC5anJmFJhaNCIsdBNHfQZCgKpsQ0LaQQ2KaBbRqkLAMMQbkW0pCpN7poybvb9VqUUggh6OyczH33/Yy2tvZEIHdQkj3JhAmD25in/eADaZyzG7u1ZpiUt5AtrZgm2LFHGMNgupGW2TOZtcdUZrUYTOnI0pp3SadMUraJNEGhkVoThPG4NLoIw5Arr/wk3/rW1wFob+9IBHIHJhHJhAmF25infe+5zH7t/szecxptRkAqncKwDDKWosUbpDxQYsWqAfoCQbUaUqj4VL2ISi2gUg2p1CLKXoiUYrs3ugjDgCuuuIT//d9fkEptX+81YctIltsJE4q4XKa2eDFhFLF0wfPogQGcik+7EtSkhdYa8VKJgpliYaqF/rSPSjmYpoFlCdK2TWdLGsdMobRGCrHdGl0EQcBll32cP/zhd1x22af5j/94/3Y5b8LWkYhkwg5JuRqwakUPxRUriapVVpdj+swGmoMinWlojiqE1RqlSOKGIaDxhEE+KiOAZekOQmHSUu2lW7XiuQ6WaSKFpFyNmDXZYXJrhqxrbpegjdaaSy/9GI8++geuuuqznH76GWN+zoRtQyKSCTsc5WrACy+sRqxcQl8lpBgIentKNKdKaB3SV1AUDQgNG8sr4kkbk5iUDvClgyRmkt/H8nQnkTBpDor02G2kbJvO1jTNuRQteZdJLVn87TTCQQjBsccex9FHv42TTz5tu5wzYduQiGTCDsfq/ipuuY9+JD4WoQpxMiliockHHtqr4QkT5fnkgwIhEqkVDVEVT9j02w24kUdrMEivlcfQEUEMsVIEkcIPI8q1kFjpMd+PrFTKPPfcsxx88KEcd9wJY3quhLEhEcmEzSYulwm6u+ujFNw0dkcHRja7zY5f8yPc0CdQBiqOiCKNZQoiJYgsB10s4Ja78aoeVuTTFFcxgQCJMCxawgKBsoikiVAxXW4HElBagwDHNonimDBStOZT28zuV1IqlfjoR+exaNHz/M///Ibm5uYxO1fC2JFEtxM2i+HAiY4iZCaLjiJqixcTl8vb7ByuYxJbDraMkYbENAVhpDG1omxl8Zwsolwk4xWw4mjoTRxjEtEYl8hFZewoJBdW6PAHqBoOQoBjCfIZB9OQ5LOpMW10USwW+PCHP8gzzzzNf/7nlxKBnMAkIpmwWQTd3UjHQToOQoiRr4Pu7m12jknNaWrZFtIoHEIsKfArHkbk029mEV6NgVSemnAwhCbCQCEw0SggRuLGHtm4Sp/ZQDr2aclZtDfm2GNqngPmtDKjIzdmAjkwMMC8eefw/PPP8V//dStvecvbx+Q8CduHMRXJcrnMu971LlasWAHAY489xvHHH8/b3/52br755rE8dcIYoWpVxCsawArbRtWq2+wc2bTNnDmTSM+eTUtzjmkNks6OHOWWKVgNOSxT0pC20Qg8aaOEQYSJRgASA42WAiUkvmnjqIA9dmvh9ft0MLMzj2WO7XybBx+8jyVLFvPVr36DN73pqDE7T8L2Ycz2JBcsWMDVV1/NkiVLgPq0t09/+tPMnz+fzs5Ozj//fP7whz9w5JFHjpUJCWOAdNPoIEA4zshjOgiQ23g4VTZts/seU2CPKbS15ejpKQH1WTd/9ldjvvAMiIhImKADDBT1uhmNBCJhEiFJxT6RtNl7eiOObSIFY95P8pxzzuXII49m9uw5Y3aOhO3HqDzJxx9/nLPOOosTTjiB448/fuTfxrj33nu59tpraW9vB+CJJ55gxowZTJs2DdM0Of7443n44Ye3/goStit2RwfK91G+j9Z65Gu7Y/vMlrEtg2n770XcNhkj5aKFJpYGoNGAQFCTDj12E77h4KqA3LRJTOvIM2dKnpb82HT96e5ezbvf/W5WrFiOlDIRyJ2IUXmS11xzDaeccgp77733qGtMr7vuunW+X7NmDW1tbSPft7e3070F+1gtLdsuijqWtLXlxtuEUbHZdrblCFuz1LpWEVcqGPkG3MmdWLmxvd617Wxo3J2GxjQr2xtZ9cc/Y5T6sJXAQKAAoTWu8iiaWQJhkupfxWP/+xd0SysNrU205TM0ZG0yaZvmhhRtTWmcrRDO5cuXM2/e+xkYGECp2oT43U8EG2HHsHNUImmaJh/4wAe26kTDXU+G0VpvUVF/X18ZpfRW2TLWrL083JHZKjubO6EZIsD3AG/srnd9djY2NWC86XC6e8sUnliAVdWgFCYxhlZkwxoDVp6SlWFNRRKt6Ke5b5Devsm8lMkxqSXN7MkN9PVV6O4uMqkls0Ue5vLlyzjvvHMol8vcc889TJkye4f/3e8S78/NQEqxUedrVMvt3XffnYULF26VIZMmTaKnp2fk+56enpGleELC5mJbBi15F9cvI8KgHtHWARLwDAtJTGswSNV00UJQ1RJfGFilQYTQBKFisBLiOiZeGG/RSIfly5fxwQ++j1qtyp13fo8DDzxwm19nwvgzKk9y+fLlnHrqqUyePBlnrQ37hx56aNQnOuCAA3jppZdYunQpU6dO5ec//zmnnnrq5luckEA9gPP8skHWLOtiuteHSQgIpFZkYh+NpqZiptS66bWbqKgMZSdDo6oSa41SMV4QIWU9B3NL2qU1NTWzzz77cuGFFzNnzh7b/iITdghGJZKf+MQntvpEjuPwpS99iY997GP4vs+RRx7Jscceu9XHTdg5Wbuqx5ncSmznRqp6gjBmdV+Fvz3+Im2lAQzq9dcKA4kG6tsxamg7R2pFczBItRixxskQFWrEWpB1bfwhodyc8sSXXlrMpEmTyGaz3HLLN7bthSfscIxKJF/72teyYMECHn30UcIw5PDDD+e1r33tqE7wyCOPjHx92GGH8bOf/WzLLE3YZRhphxaGVPoGKSxZSvdAlWUNM1gt0oShIpe2GViyjHatqQmHjPYwiBBoZL2tLobWSKWIhYERx2SrRZ4129Fr6jmdKVMQxIq9ZzSNOm/ymWee4sMf/hBvetOb+c//vGEsb0PCDsKoPj5/8pOfcNFFF1EoFKhUKlx66aXce++9Y21bwi5K0N1NGIYMLl9FFEYMaIuVPVVY+BSqVKLqB3QvX0ND/2osFaOkJEYiURhD2ZIRgpphI4UiG1cJpUnRzFAzHAwLglBhmpI41FS90XUCeuKJf3PeeR8gk8lwwQUfG8tbkLADMSpP8rvf/S733XffSKBl3rx5fOhDH+Ld7373mBqXsGuialUqfYOYKQdfC3r7y+hUGlkukvWLWIaLs/JphFciRNIS1xBoYiQxYBATChslTQbMPL5hUzUcslGN6ZWVGMomttoQopF8g00QbnrOzeOP/5OPfnQezc0t3Hnn9+jsnLz9bkjCuDIqT1IptU4kuqOjAymTsu+EsUG6aaJSCWmZxLHGCxSmVgRWCqtSJN/1PL6CgpnB0SFKGCgk9f8qfOHgmTYaSMU+ubDCJL+fiulSkw4qUjQUVlHqK1CuhsR644GbMAz5zGeuoK2tnbvu+n4ikLsYo1K6xsZGfvOb34x8/5vf/IZ8Pj9mRiXs2tgdHZiWQVytIqXAlQqigMBJo7waqJgghpagAFJSlRYaQYhJ2chQNLOE0sJUEfmojKEjup1mKmYaIQTKMFGmRao6gFJgCDYauLEsi1tu+QZ33TWfju1UWZSw4zCq5fZnPvMZPvKRj/CFL3wBqL9pvva1r42pYQm7HmtHtNMd7fQvXkY1qlCNYJFnEJUraD/GDSIaghK2jqgKB8uUpOOQsuESSxuTiKpIUbRyRMKgJ9VCxagvpS0TLEOgDZNGI8a2JbZlrjdw8+ijf+Df//7XUIrP7tv7diTsIIxKJHfffXcefvhhlixZQhzHzJo1C9NM+vUmbDuGI9rScZCZLIYwiBqa6C5oapaPcCN6VRozGCCtyiBAIzBRpOOAWAgQ9bJEQ9fbXKSjKr1OE760MHUM0iTrWuRciwYbMk1Z8nmXya2vrrb53e9+y2WXXczuu+/Oueeej7uNG3gkTBw2qnR33nkn8+bN4wtf+MJ6SwivvvrqMTMsYddi7T6VAKVyjULvIPFAhZ5UK4N2A1rYhBrSwSp8kSIbVLBViG9YeIaBE8f4hk3JyFKwsoTCwI5DpldXE0qTAbeZOEpjakFbxqZpxjTaWzM0N6zbnfzXv36YK6/8JHvttQ9f//qdiUDu4mxUJHNDTQuampq2izEJuy6qVkVm6snifqnM4OJlVIKYYjUgwCdfLVJzmygIm1VOC5MrXdSMFJFhYsURKeUTCQCNqQKmV1djqYBVqVZ67SYEkPVL1FRMn2jAmNSJJWxmpa11vMhf/vLnXH315ey33wF87Wt3kN2GYykSJiYbFckzzqiPvWxububMM89c52d33HHH2FmVsMsh3TRxcZC4VGFw8WLsGPyKoobFQDXGKVeY3beCSFoE0sSIIiIpCUmRj8v1pXcUMC3sR1DvVl4VKVqDAiAYtBtY6bRjmJJqtp02J4MAVqwpk3XtEaE0DJNDDnktN9/8NdLpzLjek4Qdg42K5A9/+EM8z+O73/0uvu+PPB6GIffccw/nnXfemBuYsGtgZLNUnnoKmUkTKyCKUGvW0C0n4ahB5paWIrWi22nGEoJ8VCbEIB9VSMUBIYK8riCH+koaaNLaR8eSfFimYqSJhEEq9BFCEMYKBFS8iFI1wK/0M3nyFN7+9mN529uO2aIOVQk7JxsVSdM0ef755/E8j+eff37kccMwuOKKK8bcuIRdh7hcJjVjBnG53gqvtxLTZ+fJehUmVbtRCALDpjUskK+WSIc1LEIUJgEGeXysoRk3AHLoKzf20UISGiamjqlJG9c2sQxJrDSGFNx//w+585s3c+ed3+M1rzkoEciEddioSJ5++umcfvrp/OY3v+Gtb33r9rIpYRdE1aoY+TxmYyNhZFF79gVio0pD0IejIkJh4MYBGVVFaHDwEYBFgMPLCb+S4fYWdaG0CRkUOTxhY+uIQq6V6Q0p0imDONb84Vc/5r+/extvfvNb2Geffcfl2hN2bEaVx3PQQQfx3e9+l0qlUm/ZrxRLly7lK1/5yljbl7CDM5zb6JdKDISS5ZHDGk9iWwb5rE3aMYkVOJYkZRtkXJtMqp6XuHbAZO3ZOUEYozQ0VPowoxKeNDGExo4CIkwyuobBhish1vYDNYJQmhTsLP2pVlpbm3Edg4xr8Zff3scD99zJW956DF+6/iYsyxrLW5UwQRmVSF588cWkUileeOEF3vCGN/DYY49x8MEHj7VtCTs4w7mNsWGyxpesXjVAtVzB6phKcTCgtKiPnAhpbmtiMN2E29hAc6wxDYFf8GhIW5T6Blj94jL6V6wm6O3Ds1zCUolYaXw7R1WlSUUenUEfdhwSYOLGtVGVihlAGZsep4lA2rS3OsyZnqejOcuql57ggXvu5JhjjuO6625I8n4TNsio3hldXV385je/4bOf/SxnnHEGH/vYx/jIRz4y1rYl7OAM5zZWQk25FuALAzuTxujvRtR8KsrAd1xKZY/GcBVR2iSIbLxAkbIli59+keDpJ1nZXaCnHGGFHm3eC4BJTabwTJdImijDZMDMYcYRmdgbamZRF8GNEQIVy6XXbsIVigNcD9eG/We3cOSB7yCfijnmmHdiGGM3OTFh4jOq2u3W1lYAZs6cyfPPP09HRwdRFI2pYQk7PsMzuMNYE0YapUHaFuZAN8q06zXSaDwMpJNC9vehlCYsFel/fAGDv/4ly59fxuq+Gm6lgBn4lLWFVjEGGl9YxBjESGpGitWpVgJpEWFsUiChvuy2dUzJzlLBxMfgtz/5Ln/551MIIXjnO49PBDJhk4zKk2xpaeHb3/42Bx54ILfddhvZbBbP88batoQdnOF9RMsQWKZAClBBiCEEsWFCrJBC4pgGkTAwghrSrxGtWcGaJSuoBYpyqGkN+ikbLpE0yAVFYmEQSJtM7DFoN+Ari4qVYo3TTGNUpDEqjM4+IBX5WCrEExb3//Jenn32z8SZLMcddejY3pyEnYZReZKf//znsW2bQw45hH333Zdbb72VT37yk2NtW8IOzvAM7pRQZF0bR8cElSq1hlbwA9AaQ0JDxsSvesRWCqfYR0ULhFKEsSQV1MjGVVqDARqiMpnYw9ERRhzixj7N/gCt4QD5sMxu1S5WuJMoGxk2tY7RUB8vKwQzyit5esFDPPvsnzns0Ldw+pnnboe7k7CzMCpP8te//jWnnHIKAJdddhmXXXbZmBqVMDEwslncWbMIurtpDwOsKU0sjybRV/BpHFiF25DCSadQQUjOldgzp5Lq7aIsLRzHBN/H0BGRFmSiGqaO65FoI0NTXEJoTa/dRL+VJxtXafDLVAwXJTb92a6ACIuqsPj9M79n+Zrl7L3HGzj8uA8ya3LS5i9h9IxKJP/6179yyy23cPTRR3P66afzmte8ZqztSpggGNksbjaLCzQCuw09HpdnjbQ9k24zdkcHRjZL7cWAcNUgqyMFpqRkpknFAVJoLBVSlS4pHWDGMZ60SCmfhqiM1Ip0VKUpKOBG/ib3JCUQCZMSBn1ehbl7vpnZh5/KPntPo7lhwx3IExJeyahE8uabb6ZQKPDzn/+c6667Ds/zOP300zn77LPH2r6ECcqweL4Su6OD5v5Blns+g6lG8ItoqRkkS2iYGCgCadLiD+AKg5qOKBgZWqJB0mGVnPYJEcRs/M3rKUXBEAg7zVsPPZXlc17Hoft2svvUxjG64oSdlVEnh+Xzed7znvfQ3t7OnXfeyZ133pmIZMI6xOUyhWUr6O7qo8eHgtOAkckAmkiBbRhMbs0yc+Ys7KeXki7UWO3mMVDEUJ9qqBS5qErZdLHimIqRIqUDUrFPSkcoNBYbT/+JlOIbi1+gECtOOPgEFudnc8xBU3nDfpPJjnIqYkLCMKMSyWeeeYYf//jHPPzww+y9996ce+65HH300WNtW8IEIi6XGXh2IcsHQyqRpFyuYvQVWGo0EZoOuUyKzrY0y7tL1PwUzN2PlHqOsKdGrGs4XpVYaSIh6nNqDAdHV5Fo8kGRbFzGHqnNrjexWF+FdaAUN7+4iCcKA5w0cy/+3bw3DVPaefvrZm7P25GwEzEqkfzIRz7Caaedxn333cfkyckQpIRXE3R30++DMk18L8BJp6jGCrcyQNQ8BcuSeEFMU9ahXAsxUika99qTfLAI6dlUtCDQBi3BIIEwCQ0LqRXtXi8NcRkD1mpesX6B9OOYm198nieLBc6YsSe7T9+f/7EbaLeSapqELWdU756DDz6YCy+8cKxtSZjAhP19hGt6kVUPGWlErolBL6Y6UGRF1EDvYBVTCloaU1iGpCmbQgFB2xT6I8Hk3iUYYYgvHQJL0BBVyEQ1GuLKK5pWbJi7lr7EU8UCH5w5m0PaOlkm64vyjpakL2TCljMqkVy0aBFa66SFVMJ6ictlvN5e/GqVPl9QHShgLV2GFZuAha/ylEwHIaDSN0BDWCK0FMJxKdUicn2rqMYBhlZorclqjxCDhrDMsDwOi2TEht+0J02ewkGNTRzY3IEPCF0fKbtbZ27M70HCzsuoRLKtrY3jjjuOAw44gEzm5U/lZMZNAkC1q4uy24hQVXS1glMtUakGSHxKqU7aK710u60oIF/rRVsmgxhY5UF2Ky5nQOYoWjkMHWPpiB6jiQMHFyLQBFgYKAw0JgpJfdntY2ET4kURj/b1cGz7JCanXDpTLh5QMdMUrCy7ORVipTd+AQkJG2FUIvma17wmyY1M2CDlgSJRKgOTJtNaW8SgCUXHpabAT6XJhFVmV5ZiRhHKMCgYDZR9k1bfJ9QCQ0dYOiIT1UhHVdq0IhPV8IRNSocYaARqJFhjADYh1SjihuefZXmtyj65PJPTWcKhuHcoTTzDYXrWpObF43l7EiY4oxLJCy+8EM/zWLp0Kbvvvju+7+O6SUJuQp3YSqHKNZSdwsnnMVMN2AMVlOcx1eujodSHpyUlwwWtmeavoGqkcOP6sjod17B0jKlD8kEJW4cIHSMRmMREKBxeDtZooBKGfOn5Z1nl1fjo7L3oSDfgCQMQxBh40sHWCtwMuUzSJzJhyxlV7faCBQt461vfyvnnn8+aNWt485vfzL/+9a+xti1hguB0TkJGATIKUJaFoyPc2MOolmka6CJdK9DsDzLZX0O7P4DSAlNFxBi4KiCtfKSOaAxLSAGB4VCwc9g6HPIMDdZeMBfCgC8ufIZVXo1L5szltY0NQIylQ2wdoYUmlAZtqkBgpdhrRjLtM2HLGZVI3nDDDXz3u9+lsbGRSZMmceONN3LdddeNtW0JE4R8axPOzFlIyyQQJrbUiMgnW+yhzRugIa6Sjj1avUE6vR5MHWLpiKqRwkRhxz6Ta700hwUc5VMws1TMNDXTIRQmMSZrL5iXVav0hwGX7b4n++cb6y3R0NgoJBGhMPGlRTndyOx0QINMltsJW86oRNLzPObMmTPy/ZFHHkkcJ2+8hDq2ZdA5rZ2OffcidcBBhLP3wRnswwx90GDEMenIJ6UC3Nijs9aLqSOUFJRlCkNpYiEpygxKGDRHRZqDIoEw0bI+fkEhCVU9U3L/fCO37Pca9ml4uVGFoL4MD7BwVEhaBfRn2sg0ZOlbvHx8bkzCTsGoRNI0TQqFwkgK0OLFi7fqpD/96U857rjjOO6447jhhhu26lgJOwa2ZTCpJcO+s9vYb1KKipVBCZNQGNhESGLkUAAmE3lUZYpQWCAF3almSlYWz0xhqhg78nBUQIxBzXBZk2qi36/xqacX8Nf+PgAyrxi3ECHqZxCSWEqyYZViJHEzLsX+4njckoSdhFGJ5AUXXMD73vc+Vq9ezSWXXMJ73/teLrjggi06Ya1W47rrrmP+/Pn89Kc/5R//+AePPfbYFh0rYcdE1aqUM40YOsaNvaHEnfoHrEBgEDOtupqGqIylQspmhprhkIvKaDSWigmEiRKSAStHoTLIdQufoRJFtDnOes85nHCuhaQqUhhCISQQhohUEmRM2HJGFd0+6qijmDVrFn/+859RSvHRj36U2bNnb9EJ4zhGKUWtViOdThNFEc4G3vgJOxZxuUy1q4uBlasprupjcLDA6kLE6tiiHEviqJ7s3ewXcFSAIyyaqAdolJAgwMcmRpNWPqk4oCZscnEZ37Ap2DmcyCcflwkMmwGrAa+4mu8++Udirfn03L2ZmV5/9cxwNbfQCik1g0aGzqxNWK3RvNce2/U+JexcCK31qDJtly9fzrRp0/jd737HM888w/vf/35yuS2rZJg/fz5f/vKXcV2XQw89lNtuuy2p5tnBCUsl+p95jt6BCoMvvERhRTdd/VUGlEXWLzFoZOi2m2gOS/XItZAYOma/wReGknKgZtiE0iIUBjXT5amGOcyqrEDregeg1mCQfFjGVBG+NClGITc+8Rga+OTcfZnlOgheOTK2/n0MhJgUzAyBmWJV80wOfMtr2W3/OUzfrRPHSmbZJGwZoxLJa665BoCzzz6bs88+myOOOIJyucxtt9222Sd87rnnuOKKK7jrrrvI5XJ88pOfZP/99+fcc0fXUr+vr4zawSso2tpy9PSUxtuMTbI5dtZefJFCoUxxZTfeqi6W91UoVwLsWoWykjg6xFYRoTSIhEWMIBYGHbV6g4pYGPjSJpAWUkCflaffbqDD76dgpGkPBslGVdJRjVAYpFSI1pr/Xb2UAxvbmOGaI4nkwyjqIukP7XoqabLCbaNrtwN44zGvZ9bk/Kvme48lO+PvfTzZXnZKKWhpeXXv02FGtdx+6qmnuP/++7njjjs4+eSTufTSS0fGOWwuf/rTnzjssMNoaWkB4JRTTuEHP/jBqEUyYfsRhDF9q3tZ+fxSKk8/zYBOIb0STuRR9CCMIRt5uNrA1HF9cJeZJa2qZFWVGJNAGvjaQmoNQqAFWFFInjJuXMNU9fzImrQRWjNoZ+kr9JBWEbulHU7onMywvyhY98NRUg/Y9Dp5FAarMpPIHHEk896yT9I3MmGbMSqR1FojpeTPf/4zH/7whwG2eFrinnvuyZe//GWq1Squ6/LII4+w3377bdGxEsaOIIxZ+fxSlj/6GCtW9GOWBtBCYqqIqmHhGSmkinGCGumhmmslBC1BRENUqXcYxyYGIsMmEgZWHJAPSkgCOqKXl80Bgh6ziZTyWFYsc/vCfzEpleHyvQ7GJsAiBvTIshpeTvnxsTCVQhAT2zazUwFGUINEJBO2EaMSyenTpzNv3jxWrFjBoYceyqWXXsqee+65RSd84xvfyDPPPMMpp5yCZVnst99+nHfeeVt0rISxo9A7QM/f/sbSlQPIWo3AsMiFVXxpk40qWCokFfkYqj4Z24xjBDGNBCMClqKGAXhxCGhSxOvtA2mjaYsGWVAN+OZzj9Ng2Xxg9wMJTQs7ClHU36jD+5HDy+wYg1BIPNOm22lFGybd3QWaHn+aqa/ZB7cxGfiVsPWMSiSvv/56fv3rX3PIIYeMjJY96aSTtvik5513XiKMOzj+qtWs6SujwgAASymEVjQHg9gqRuoiSkhiIQmEhYEmHfsI1s0r04C7yQGwsKg4wDdeWEiT7XDpHgeQtQyUilFIDAw08ciYWAlD/qUklBZlM0PFdMkJRVlJihEUlq1MRDJhmzAqkUyn0+y777787ne/wzRN3vCGNyQNLnZyjNCjhI0b1JBxXeQsHWOrCIUgNBwiIQmkRT6ooABjKCNybUabs/DwmtW0OC7z9j4MxxT4UmIN1XcrJCYaiUAOiaVG4xkOsWESYJCLqsRmM1JChElQrmzDu5GwKzOqZPIf//jHvP/97+eJJ57gH//4B//xH//B//7v/461bQnjRBDGeKGCWoVGr0A6qpKOa2SiGo4OMIlx4gA3DskHZVzl0aDKW3Su4eSKC3ebw8f3OpigoZ0et5mykQYNAoVCUDGzBNiAQCOIhUnNqO95tvsDdPj9WHFERkaYRNjZpBt5wrZhVJ7kd7/7XR588EHa29sB6Orq4vzzz+eYY44ZU+MStj9BGNO1vIdSX4G0bTBgZmiMyuTDCrGCWEgECkdFCBQmERrWmUEzWv4+0M8vu1fxyTlzSZkmeWHQryVa1ycmuspHIwiFSYSJNBQittBCUrbSVKwM2aBMWnssTXUSa7B7usjkLfLT9xmDu5OwKzIqkbQsa0QgASZPnoxlJT36dkZK1YCgezVxJstgth2RLuJVI6RWuCIgRuCoEC0EQoNCIofkcThgM5ol9v/19/H1xYuYlcmiAA8LoTUNUZlMWMPQiggDg5isrhFG/lDKj8TUMZYKyYRVImkQSouq20BzysBIuWSaGpL9yIRtxkZF8umnnwZg7ty5fP7zn+c973kPhmHwwAMPcNBBB20XAxO2L0GkUNUqyrCpCYtSbgqmHzAoM0zz12DHAbYOCLCwiIgwEWgi9EgEGl4OsKyPP/f18s2XXmCPbI7Ldt8TyzBRxEPNL6qkVQhaYRMBmoi692qhEJjUpE2k6zNwKkaaSjqH1TkZp70JHJMdu9QgYaKxUZH82Mc+BjBSMviHP/wBYGQoWDLjZsckLpcJurtRtSrSTWN3dGBkswRhTKkasKq3wosrCyivSrh6NUbkEUibgtVACYumQj/UKtC9mln+ALmoDKqeeBMP7QmmhlJ9DCJAYLKuF7khgfxLf10g98o1cOmcuaQMA4Ue6hAEjVGZAAshBEoLJBLfsEnHHsGQDPvSomqm0bEklgaFbCsZrwI0kZIq2Y9M2KZsVCQfeeQRuru7+da3vsU///lPhBAcdNBBzJs3j87Ozu1lY8JmEJfL1BYvRjoOMpNFBwG1xYsxps9gIDIplH3+/UIPqlIl07+S/kpEORDY0sOI+6lk24iKNeaufJqmoEgsJFpAJqrVG+rqmAgThUYQkUINfT26ZfbsTJYjWto4Z/pMHKNeLjjcwae+nK5j6xBQCARuXEOiqYg0NjGm1vVkdWlg65gwiMimAgwV0+Ka5KdPGYtbm7CLstHo9qpVq3j3u9+NaZpcfPHFI+3RTj/9dLq6uraLgQmbR9DdXRdIx0EIMfJ1YdlKjKBG14KnSC1/AbHwCbpW9OKv6SXT34UYHEBFMc09K5jR/TxtQT/ZuEouquLEIaEwyakKho6IpUAJgTG0FzmaFImniwWU1rQ7Kc7fbfaIQK7NsCdqE470nwSFMbQYt3V9Ge4oH1uF1IwUg2aWTGUQY2AN7V4vk9py2GbSzCJh27FRT/KWW27hE5/4xDqJ48cccwz77LMPN998M1/+8pfH2r6EzUTVqsjMusX6wrYJulZgV6sMDFRYUVK0VgpMqpXpMRqpGA5GGNPg99Ls9WMrHysOCIWBQJBSARYhEoXGoGymyQbVoWpqvUkP8n9Wd/GDFcs4d8YsjmprX+9zXk5Cf3ls7LCHGWPUB4YR4GETYJCKPRTQlWqjxY6Jm9t4TjXSUokwFy/GnTULI7vhpgUJCaNlo07AM888s97KmlNPPZUnnnhirGxK2Aqkm0YHwTqP6SBAFQr0LFtJbflyZH83wvPxtIGjAhCCWJqYoUcq9utTrmW9a7iBwiJEDImXTUhTUMDFG/L02Gig5KerVvKDFct4XVMzR7S0btx2Xm5aoWBIliUaCUJSJoUSBkoaCA2BMGkKixSsHBgGhmHwbFcJ6TgE3d1bcxsTEkbYqCe5sS5qtp00ENgRsTs6qA2N1xC2jQ4CvP5+yr19LPVMqn5ErlahrdaDFYcoaZCNGikbaZrDIpmoNjLlOhVHDC93h6nPLhyuetnwPqTWmge6VvDAqpUc3tzK+bvNxthEz1BNXSDrHqRBVaSIpSQ2DJSWxFpgiYhIWPRYWfqteqs1WS1TtFOoMKJQ0QjbRlW2LLk9IeGVbNSTNAyD7vV8Ind3dyciuYNiZLO4s2YhTBNVKSNMkyoGA8IlrHpk/fpca1uFCK2wdESbP8Dc0hKyUZlYgKEjDK2RxFhDoZRXpvTotf6tj27f42eruziypY0Pj1IgY0Bh4uHgUc/DFUCAWfcphcYXKXxpUTFdTF3v/GOgqYURQaxxLIkOAqSb3qr7mJAwzEY9yTPOOINPf/rTfPWrXyU7tL/T19fHpz71Kc4888ztYmDC5hM7Lr3Zdl5YvZLuf76IXLKImrbIVnsxtaDF68OOfdI6oKocTCIsQiwlGbAasEQNoeKhkQj1GLMxMiChzvC+4bBIvlICJ6VcPr/Xvkxz08iNCGS93ZlBPREIPGkTSwNP2qSioN6l3Ko3TDO1omSm6bUbyRLgxj79diMShQgj4ihmtzYX5fu4U5IId8K2YaMi+d73vpdly5ZxxBFHMGfOHKIoYsmSJbz//e/n1FNP3V42JmwGQRiz7KXVLF/wLKXnF1EJBYEPxDVaq0WcOKAxLBOj6+NXqddiDzeSsImomikyWmEqhY+BSUjE8FK7zrBgru1Jhlrzw+VL2S2d4YjWNmZsYB4N1AW2vu9o40sbR3lYxENDwAzsuN7lfNDMsCLdSU3aTOlowO1bQasp8dPt9Ig0JWVg1ko04HHAlAxTOhpxZ01PgjYJ24xNliVefvnlnHPOOSxYsACAAw44gI6OjjE3LGHLKPQOUHphEZXVq+kJDbQQZFSZVFBP33HiAEGMS4xCEGGu1dIWDK0JNQzYeTKxh9aalqgA9fDJq/YhI+pvokhrvrf0JX7Xu4Z3Tdp0Dm2MwMMikjaxYWKqeuWOQURaaQatHJEwiaTFgJ0jTmeQbU1kO/KUX1iOn86Ttm0yYUhsusw45FAmz51Gc0saI5lnk7ANGVXtdkdHB29/+9vH2paETbCxSppC7wCDy1ay5sln6S359K4ZZJA0QggaI43UilxQJaurQ/UtINEYxDCUyqNEvblEKg6w4whbR0ilRrzF4a7gwxKkqA9VqGnF/CUv8mhfLyd2TuH0yVM3fh1AjMQApPIJJEgUIRahMNFyqC7ckPjSYs/iS6wJminFJdr3nkHL1Ha6Y4e4VgXHZdahu7PPPtNpbnC32zybhF2HUYlkwvizsUqa/qKP/9KL9JQiqqUqurePacU1tBoOA2YDDWGJSV4fUihCXffYLBgqK1QjKdtSa9JxDQtNiCRCkiIcKkSsM1wRI4GqSBEg+cHiJ/i//l5OnTyVkyZP3WjepKIukAE2NmE9zzJS1MwUpoqIpIES9T3KUBg4cYiQGiuO0FGA7lqBO2UKrz3oIPaa2Tx2NzwhYYhEJCcIw5U0qJhg5UqU74GUlLwQNAwsXoa/chV290qINDVp0hCWaAqKpKMqCkko6pMKpY7RxCOeoBoJyihiTKrSokFVSBEQDdW+WENiajMchQapNS4R7ak0p02Zzjs7pwzVYW+Y4X1MgxhP2ASGjdDgSwsTE0eHDBruUHK5qM/qFkPNNAyDUGnylkkYbW5jtoSELSMRyQmCqlVBSvyuLqRlIV0XFQR4zy8kDnyKq4oExRJOFJGNPLKi3qFbi5c9RqVj0AqTeGR/UQ3JkYHGJCRGDc2tqf/cGsqRHF5y178zqCroD4p0ptKcPHkKISYKNTS0awPXMPT/etNcSdHKMOA00hIWMJQCAWYcko2r9DmNoMEzUsRCYkowXAtj8hRyrg3mqPpFJyRsNYlIjjMb2md8JdJN4y1bipIGXgRREKDDAK8WUurtp1yNSdVK9bZihoUb1TCJCaRFPNQS19XBiFAN/z8eGo0ghjxFiR7KjVTrzLheO5odqJDbX3yeFytlPrvf60kbLhk8QA15p+tPMo+BmkixODuddOxhDI2CiDCwCVBa4EkHS0VIrSkaGWqWC4aJ19zCrJmT6GhNoy2TllySp5uwfUg+jseR4X1GHUX1fcYoorZ4MXH51dUidkcHfqFAqRoSaw1RSLlUJbAsKr4Cr0qg5VBOY72YL5AWUtcjySnqXXWMkX91j85AEa0laXIoOeeV4Y/hZ3hxzFcWLeSJwiCnTZlB1rIJzbr/uHaK0MteY/1fCATYeIZNSgVUjBQCTaOqUk7nKabyRIZFwc6xLDOJFW4Hq9LtKCEpWFmk42JWSuhVy0l5JTJ9Xeu9TwkJ25rEkxxH1u7YAyCG/h90d+O+wps0sln05OmYvT1I36eKgTV5ClFXF1XpgB0RKLB0BSNQxBhYqt5JR6OIgeFe8sPzq+sJ4nqo2qWeMC42sqdYiWNufmEhz5WKnDdzNm9obQPlYamgvpxf67nDx6iXGtbbVtRj6PVmFVpAbDm0O9DcnCNyWljcH+IFim6zERPN0swUcobPJFFlhhNil6uUOyfTPqkdQ2tqSSOLhO1AIpLjyIY69myo7lh3TsNSGpFyUINVZF8vFApoKXBMSdlyKZLCiQIycYggJsJCIBlenA57dmt7inIkwr3xpcXPV3exsFRk3m5zeGNL60hC+Ih91Pc4NQYG0cixYuwhMZbYOsDWIenQp+g2EGWyINKElYjYcig7aRosk1BIHAmhdCjm8pRlkfapk7DTKYrViHx7DuVVKf3rn1jNzRvdqkhI2BoSkRxHhjv2DHuQwEbrjp2GHJExE7VyOaJrCdrNoDunYtWWYfslWsMKA7FNzbApmS5p5ZMJq6TwR46xvr3C4T3ETe29nNg5hT1yzezR0IJPPDQNux6EkboesAmxRxKGBBExkj6rgWxcw1E+bqxoDop0pVqp2VkqsUXWq1GuRPha4qoqNhFdqVZ0Ko1yHDKujRqoYbstAPhBjKpV8df0IOIYOW36SEpU4lkmbGuSPclxxO7oQPk+yvfRWo98bW+goimXtoltF2wHY+burFBp1jz7PHrFUsLeAYRfoyksYumQTOwBGht/q37J5Sji9pdeoBxFWFKyd0MOG29k7xI0kTTxsQmxiITEJCbCIMCkaGRwdT3XsipdymYaBGghcauDpIt9VIs1sl6RWZUVTPO6ibRAakWH14urfbIpi3Q+S+DVxd6xDcK+foQQGNncOs2FkxZpCduaRCTHkfV17NmYJ2RbBq35FH6xxIoBH7FqOXbPSqRXw5cSKw7JhWUawgqZqEo+LA1Nqt4yimHIdQuf4f/6+1harWAA9kjSUDzS7dHUMRYhNgGODomhXjmDiW9YeMLEkzZSCmIkUsW0+b1MqXbjS4tAmDRHRWwdEiLJxB5NYQm0IlMrEgSK7NTJeKUqMgppzjlE5RJojdnyckK5sO16qlRCwjYkWW6PM0Y2+6ogzcawLYPAcsjaVYKelYS+h6k0buxj6XqeojW0zB1uirslDIYBX1z4LD2Bz6Vz5rJPQ31Ea72IcTj3EkxibFVfatdTiCLqEqoomQ5uFOCb9TSkKiaZqApCkgk9fMMmF1Zp0SEAnnCwdESDqlDUWdKRh7IluayNSmXIzJnDDDfAiX3CdBqzIY+x1tZE0iItYSxIRHICUnYb8R5fgLNqGbaK6pFsQhQCh3jI09vyipT+IOCLC5+hPwy4bM5c9l5LIA1e7ZkOfz8cFAqkQ4RJJCwCs97iDCGwYx89lEQuUYTCJB+VENRbpAmtMdGUhEUq9pFoqm4bU9qz7NXq0BIVkUGIdNOk57bX80t9f6S5cFQYRKYzVJ56MgnkJGwzEpHcgQnCmP6ix0DJp7p6NbUn/01lRRe1QokmbwChjSHPMcAa8hqHBWtLl9gAGo0lJZfvvidzcw1Dj228Ezm8PH7BVHG9cYbUFGWGWJpEGORUTFUaBEZ9E6BipGgN+jGVIjRcMqqGFoKqTOEqD990CBqacCKPYOlKVHsj5lDdetDdjd3RQVwuoyrlkWCRtKwR0UwCOQnbgkQkd1CCMGZ1X4ViNUT19VB89I9UenrxgpiOWj+p2MMzbOz45V/i1ggjwEAQkLcsWmyH6/beb6RZ7rBAjvbNUg/cSFJRgNIGK9IdFK0MsyoridFE0qDPytPqFxAqxol8mtBEwqDfzGPrECUk3U3TSLtZ7GI/BYC+Mq19PYgwBClBSrL77gtA7cUX6+Wao8g5TUjYHJLAzQ5KqRrghTGuY+ItWohfriDiCDQ4sY9JRC6uARCPYmLhpljt1bjm2af47+VLAdYRyNGkB62NNVQb7kubWMj6P2myODOFfruZUJikVEAgTSQCz0xRNtL02U1IISibGZ5u2wu7swNhCnq6+gk8n2hVF8WSh7IdEALvpRdHqm5UrYp4xUiRJJCTsC1IPMlxYmM123G5TO3FJaiBIkYui+7vRfo1ajHkogoWCjHUv8cZmkkdo19VSjhaVtZqfPH5Z4i15k2tbev8bEvEV1Pv3KOFAK1pCQZJKb8+N0crbBVQMLOYOqYn1Uy/nceNfUwds8ZsoJbOEmabCCNozlkYZppq92raO5swUw5+EJM26+k/w57i5uacJiSMlnERyUceeYSvfe1r1Go1Dj/8cK6++urxMGPc2FBvSHfWLOJKhfKCx9EVnxibQqlGuWcAs9RPW+jjqBCIR/Yg68vgLfckl9eqfHHhswjg6rl7M3UjorKpipxhexTg6ipxbOIg6wPF4hBf2tTMFKHhgoBYCHxhkY1rRBh4Zoo+t4WM9tFKE0QRlmlAQzvGypewrRYEmtAPUUpgT5ky4imub0pkMusmYVuw3UVy+fLlXHvttdx33320tLRw9tln84c//IEjjzxye5sybmyoZru2ZAlB10qQBnZTI+Xl/axZ8iJycIB2v4RNOBIcGWZrltmhUnx50XMYAj49d28mp9z1Pm80QZu1n8uQjRYRPpJMDK4KKBlZVqY7sHREKC3a/D4iaWJEiobYxzAlXipDNd1IJm2RSTnkXItUYxpr5gxMERPXapiOgzO1EyGNkXs3nHMadHejKmWkm8adMiUJ2iRsNdtdJH/961/zzne+k0mTJgFw880346y1RNoV2FDNdrBsCSiFkc1S6i8Sda+kafULGL6PQL1KILcWS0rOnzmbFtthUiq1YXsZHrdQt2FjYhlhYPByP8r6VEWN0gItBa7yCUU9X1JrSTaqoqREGJLItNlT9fF000ya2nLsMb0JP4yxDMmUffeE3i4wLHJNWYSKX+Upbm7OaULCaBBa6y3PON4Crr32WizLYsWKFaxatYo3v/nNXHzxxYhNzGXemSgufB4dhmilKC5ZRmllF0EtYLBYY1mcZqBYI1NcQ1OlHzP0yaj6XBpJvE0+1RaVS6z0ary5tX2Tz623OZN4wiatvRGhHvYu1xbttdujibW+jzDxhEXNyrAi1U4sJUpIGoIyGAam1AjTJE5laMq7NBywP+b0WQC4KZP25jRZ18b0a1jFfqRfw8hkcCd3YuVy2+COJCRsmO3uScZxzD/+8Q/mz59POp3mggsu4MEHH+SUU04Z1ev7+sootV11fbNpa8vR01Pa4M9jO0flhaeprlxBpa8AhsFgscKaNUWKqkg29nErRSKl63XJQ83MtsWIq2dLRW5a9BxNls0bmlux5aZ9UxOFq/0R0Vt79vYway/H663YxFCMe2h+zlArteEk8lBa1NwsYaaJ5ryDkJLpjQ6TWrK0trtk5rSOHHvkfqZcVGoKinr7Nd8DvA3f5+3Npn7vOwqJnesipaClZcMrkO2eAtTa2sphhx1Gc3MzqVSKt771rTzxxBPb24xxxchmkekMfsXDMCWx5bDGaKDfaSQlFKnIQ0iB1OCoaKQEcGt5qljgy4ueo9m2uWru3qMSyOHek8Ne43BgZm00L09SHO5MDsNLbVGfr204lMwsgbQpG2leyk4jkjZW7NW7+kQRKaFZWYMFy8v8c2E3/cXaJu2rZwK8SOWpJ6m9+GLSiDdhm7PdRfKoo47iT3/6E8VikTiOefTRR9lnn322txnjSlwuU12xnPJgiR5PsKSk6CpF9EcGfdohCmNUHNdn0eh4KyqwX+aJwiA3LXqONsfh6rl702RvevzBugGb+q5ohIUa6hY53AeoPiLWHBHIGAgxqQqHUFoU7Sz9+U5Ku+0NnVNY3b4bUbaBFU3TSZkSO6yScSxWRilMwyA9pZMo0vz7hb6NCuXmdHZPSNhStvty+4ADDuDcc8/lzDPPJAxDDj/8cE499dTtbca4EZfLlBYtouRDVRvUylUspcC30IEijhSRlmRUgBUHI0GQrWV5rcrklMuVe+xFzrI2/QJe3ldUCHzskeYZEQYaSYBBhnBIHOMhURVUSFG2XbS0SBOSsS3ykxppaTbpy0+mFjoEkaYh045jz6BdVxnsHUC4adw5s8BNM5yI9NKqInNnr3/vdHM6uyckbCnjkid52mmncdppp43HqcedoLsbT0viphbU6j5Mf5BICRrjMoaCTFhiwGmgMSoSYwz5Z1tONY5IGybHTZrM29onjWqJvTbDsxLrVTTxUBo7mIT1MbVDz6t7kPXmaQ4BMtB4bhbHsZBummrnDNo625hCRFamkOksDVmH1nw9qr7q2W4MQ8BaeZqOLSmWgw3btpmd3RMStoSkLHE7o2pVQmmh7BRe+xSM9g7QiqxQaNdl0MoNrXEFtg62yov8S38vn3jy3yyrVgBGJZD6Ff+gHjIaDrqooU6SEfbQhEVJgE1ZpgmFjULWx4gJgQxCBpTNYGyily6mZ7CMth3c8gBKKyzj5YwG25SvynDwA0Um/bLX+8r9R41AB+uKaFJlk7CtScoStzPSTWMVyvihps+DUslChQ4yUqT9fjJ+ieagiKE0NtEWn+dPfT3c/tKLzM3maHM2nAMJ66bsrJ3aE490pKyLa4A10mg3wERIF6UlNcPBjT2UFthCEGmBL20kMXZQpdrUjohiKiu6aW7Ok9YhNS0wpEQpTRgpWvL12TXVWoRjS/xAUfEjDpxWH9mwviolVa2gADPfmFTZJIwZiUhuR+JymUqhyIp/PMlzfQGDNUVLuY9sVCId1MhFVUwCxJDPZmxhyOb3vWv49pLF7J1r4JI5c0kZG/dHh+dp19vlvhyQiYbmJ/ZbeTJxtV57LTRVmSIWglQcEBkmWoIRxygpqQoLW0VE0sBSoLQAISGVwiGif6DErKktzJjTRn/Rp1ILcR2TA+a0EUQxL60qUiwHZNIWB05robmhXgW0vv1HM9+ICsORzu5JlU3CWJCI5HYiLpcZeHYhL/R6LIobEf5K5gwsoyht0oFPOvaxCIZkKd7ifZAnCoPcuWQx+zfk+cScuZtcYquR/9c7mSsUMSbm0HTDfrsBS0W4KkCg8bABTToO0LI+BKwmHRwCTBUhDYiFQSwkgWkjBcjIw8w0Mqk1h05JOveYiZF1RwRwbdb3GGx4/1GEAe7s2VtyqxISRkUiktuJoLubnqpiVU8Bf9VKGgurMVRIc+RjqRBHB0jERudej4a9cw28Z8o0ju3oHHUeZD2NR6FHAkWKABPfMMkoD6Whajg48ZCdsaZmOJSsDIaKkVqBFITComy4GCoiH1YoWWnW5KeSdrNMT0vMljbklOlb5OklXX4SxotEJLcTfqnE6sXLST35ODNrVQSaSENLVKrnQ46iLnpj/L53DQflm2iwLE7oHP2e3LBIGtRrrKukCE0LX9hk4hpOXCNGEBgpSlYWU0doBIG0qZhp0lGNQJgM2jm0MGgOi2ig12lkoKkT1TGN9OQmzH3mUJMp5kxp2KLrS7r8JIwXiUiOMXG5TLWri8V/+hupZ57GjkJiYWIQ4wzlQW6tQD7YtYL7u1Zw4qTJvHvq9M167dpBmpKRRmpdr61GYqmoPrNGOFRNh0zkEQtJhEAKTSauUbCzZIhQps0ap5l+3UbG1Ngpi2xbK+Fuu6NcByOTZU5zmmx600ns6yPp8pMwXiQiOUaUqwHLl3bT89RzrO7qpeX5hTQEVUDgC0FK+5hDBX9bmuajtebHXSt4cNVK3tjSyqlTpm3e63m5zjoQNpEwkAKq0sVRIQUrg6t8pNJIpSkbaVzlkVIhnhBUrTxlI0tTrYs4VjSKAhlispaDaJ+O2dZIvrOJudMbt1gc1ybp8pMwHiQiuRW8srt4JZ3n6dUei1cVWLa6SFt5DdKv0tK9mFTkE2JgE5PR3lCQRGCiR9XM9pVorfnRyuU8tLqLI1vbOHfGrJGRC6Pl5aCNgRISSylqpkPZSCN1Cc9KQwAGMb40iYWJo32qZoqy4SLQ+NKkaObIR0VEaGDkGyDjki4PkN93L3bbRgKZkDBeJCK5hbwyb684WOTpv7/AYqOJQWWg0fjFMm5tkHRYRQtJbFgILbFUvZv21vSHrMUx/xjo561tHZw9feZmCeSwB6lHvhf4wkAIQSQM7DgABEIpVrjtZOIaubCGJKQmbPqdRtw4qM/fFpJqJodpZDGaWmhMCRqac+w2u5NUo4WbCGTCBCcRyS1k7by9uFZl1Ysr0D29tOk+grZZBKaJSqVp6nsJYk0MpGOfGFkXF17uqrM5/p/SGg2kTZPP7rUvGcPY7F6cL/d6lFSFgxIGSlhEQlK0srixz0BDB9qw6LMaGKh6pCyPnK7hWmAYFgMij2fYhPl2mr1u3KZGUtOmkcs62KZBqjmflAcm7BQkIrmFDOftxbUq/oqV+F6Ab6UxKgVaS92URTOhnSIbVTDigHRUwyYaqWgZ3ofcXIG8a+lL+CrmI7vNIWtu3q9v7ZZm9Und9WqZopPDikOE1gitKLiNLM9OxcxlcVVA1pWYFSi4bRSkSba4BiJFxcli6xCkgcjmyLn1HErHNpL0nISdhqR2ewsZztuL+vqRtkUqnarPm3ayGOk0uWAQM6hRMNO0RGXUUIq4RG/RJ5PSmjuWvMjve9fQ4aQ2S1yH+0EOB2lKMkss6+niDVGFNn+ATFTDiQNSKqRsuJjE2IN99JkN9E/di2CvAxGZDHEcM5BpodLcRsaRGKYFu+9Na0MKFfgILWhKCZTvY3d0bMGVJiTsWCSe5BYynLcXl0vIXI62jEFRanpSOXS5QnNhDdlikY7aAErXPUej3vphs4m15psvvcBf+vs4bfJUTp48dbNeHw79mk0iYmxCKZGRwkbXG1JojRt7hNKkqlOkiDBSFo35PO0youTaTGrLUGtrpKe/Rqw009oyTJ+cJ+1YFKoBYblMU1CiLaXJZNx1RuQmJExkEpHcQobz9qLBAeJSiUw2x24HtuC9NIC/fBmlSJHSMSnlYxJhb0Wp4beXLOYv/X2cMWU6x3dO3nxbiYf2ISUajdYGNtWhwV6aUBtoITG0xhmq/kn5gygjj+HVyKQspJTsNqWJWVMbSVkWk5pdWvLrLyFMSNiZSERyKzCyWXIHHUzlmaepDBbpXrwaq7uHUAlCaaCUxlbBUEXNlnNkaxsz0xmO6Zi02a+tN8TVI+nqJhGNcRGJxscCIUAIhFb40qwHcZSgpdJPxW/FMx1sS2JbBq35FFpr/EARRFvX5zIhYaKQiOQ2wPMjVqwps6qnhDFQIIg1Gc+nze8d7q642QRK8URhkEOamtkz18CeuS0r5xuOogv00NRuY6RVrpKCWJoYaihnUytCaSAlaNMmUxukOm1vbNPAsepXESuNlALbTLazE3YNknf6VhJ0d9OnbLpTzZSsHGZQJV/rp8NbQz4qY4/Ek0ePH8d8ZdFCbnnxebpqmx6GtT6GZ88Mz53RaEwiIupNdCMMXBWitIFQUb1JBRrfTJGTEWEmj5FvJN3UiEbQmLEII4UfxDiWQS7Jf0zYRUg8yc3glRU2dkcHlYECz3WVWbGih47uRQR+RKwk2TjaopvrxTE3LXqO58olzp85m8nulu/7vbKZrgRSBCM5khEGjg6Got4GBSuHyOepTJ2FGUc0qpA9gm7STTmi0CY0TVoaHJobXGxrW0zeSUjY8UlEcpS8ssImLg7S9fQzrFi2Brp6mVkq0hQMEkgLXzqYQ4OxNidVpxpF3LjoOV6slPnIbnN4Q0vrpl+0HoZF8eWv64vuCI05tDtZz9dUaK3pdRpBSOJ0PTUoa8CkqITdOYOG1kaaXQMjHMCd1pRErBN2ORKRHCVrV9ioWpXa6m7W9Jbw1vSRKfWT8cuYKsKMI1zhY2zBMntBcZDF1Qofm707r21q2WJbQwyqIoWtI4y1hncZxEPzagQChUAidP1nK3OTaTE9GnSAGVSJOyajsznCWONpSc5xkimECbskiUiOkrU7Y4d9/fh+hOrvQRT6ECrG1PVxCxqQOqrPXhnlsbXWCCE4rLmV2Zks7ZuYSbMxYuoDu2xdn4ztCRtDKwLDojEuEyKobwQohBAMWhksCUbapYZNekoHvu3gulliVU9iD2ONyDhJmWHCLkkSuBklwxU2AHFpkKC/H12uN6RNRzUiaRBKE9CYhIxusjUUwpDPPfc0C0slgK0SyGGG51/32Xmk1lhD5ZDBkGzX8ybrncTTsY+JQgsT1dxKmGsEJ4WMQwwJUggsQyRlhgm7LIlIjhK7owPl+yjfJ6p5GFqBaSKHGtQqwaua524qk3AgCPjPhc+wtFYl1FufdzgcnKmXPtZzM0t2hj67AYcITzpDjw7tSEqBaQhqmUaMTBrbMOmXaXRLG0YUIcIQyxCkhErKDBN2WZLl9ihZuzM2GizbIGhuxSiViGt1b9IiHplxONzpZ0P0BT5fXPgsA2HAp3bfk722MA9ybWLqv9B6RLueIK6kQY/ZghYDICQy1KAUUoCwLMJ0Fru1jWlZQXHaDFLpDPnGDKm2BprDIlkZYafS2B1bNpsmIWGik4jkZrB2Z2yvUMBauIL+1b2IVEi+XBlyy+NNJo8PhnUPshhGXLHHXuyRzW2xTcN5kGu3XvOxGLByFO0cDWGZhrjKqlQblhSIlIuJJmtBNpfBPeT1NE6ZhK5UsPfcEz+M6WzJbLE9CQk7G4lIbgF2RweDPf3IplbYM4W/4O+EZQOJQAkDqf2N3ticabF3Ls/Rre3M3krvrJ7jWG+gIQAfSc10MVC4sUfZdGmIqnQZ7ZSERcqvkSakmGpEptvJBCblrn5ymRSZwQLGYB+DywM8aROn0hhelZQKcHK5pGlFwi5JIpKbwdrJ5LVIU63UMKUiMkwiaWKpEKk3PLNmlVcjJQ2abJt5M2dtnS28vAdpAiGSGEmMMTSUVpCNPfqtPGUzgxYGpo5Z6bSSjn2EB+GaIrnCAnRLhvLs3ckPPkdnZyNFbIxyCbXwGZgynaKbJe/5xIsX486alQhlwi5FIpIbYW1R1AiCUokuz2Dh6hI9PUV0qUhVWkyv+igkkTBIDVWwvJIVtSrXP/8snU6Kq+buvdndxNcmRCCHBohFQIQgxMQiRhISKxMtLWLbpMGK6XWaeMmaghP7pEVANQxpDgqYKMraIYzTTH3hBfRu0yiGkmxaovuryHQGUa1iNTTgaZJcyYRdkkQkN8ArK2wqi19k2bIenhyUiPIgrQNryHsFqjKFFvVAiaNjzPXEtJdVK1z//LNIIThnxm5bJZD1ruaaaCgdPMDCJhopLRRopI6xNQQyhWxuI5RZmqslut1WSq5LY7GbbttFWya2adCeSSO8KrXBAlZjE/mMTej5kEqhPQ9TCIJIJbmSCbskiUhugLUrbACKJY8layq0lvsJ/Qg3KBMISTquYaoYW4XYhCPjGYZl8KVKhS89/yyWlFw1dy86U1teiz0cpKlPV9TUcHAYnpujUMJE6gitQQmJZzgU001UIhtl1GgMiqyxHFIqwJMOQtc7pRmGJDRTpCplHNsg1hqRctCeh3BcYq2TXMmEXZZEJF9BEMaUqgE9S7pZWdWUBopEff2Ya1aSKg/g6ABDm2Si6pDXpup5kggUsHZvHK0185cvwTEkV+2xNx2prUsUHw7S1OuxTULDAlVP9dFCoIVEaKM+8tXOUHMacGslbNmAb5o4vkcYQU3YmHGMMkwc2yCtQgzfI61KZAdXE8TNmG4a1d+HbGohChV5G5Qf4U6ZslXXkJAw0RhXkbzhhhsYGBjgS1/60niaMUIQxvQWPKq1gMUDAZXeQfRAL14Q4QQR2cjHViFpVUWiEVqjhSSlaxjraawrhODjs3cnUJq2IY90S1l7/KsnXNakmnGVhwg1UkgiJIbQDFopImmiMShZWXJRzHTVTTEUFLVBRvkMGA20h72YWiBqNcxagVSDS2b3/Qi8KmpgMWraTOQBh2B4VTIqwE7l1psrub7OSElgJ2FnYtxE8i9/+QsPPvggb37zm8fLhFdRqgZYpmRlX4WK20i6uoRiEJAv9yNjn0iapGIfqTVa1tNuAiEwdD03cljIni0V+UPvGs6dMYu8tXV9F1+5fJdoYiEZsLOkqj6GDrF1jGdmqEmLmnQw0RQzDVgocpFPylCIhkZiI8P+osIyuwnkZFpVlabB1ZBOIyZPw21rw7EMIt8jxqBtt2kbbYn2yn1bHQTUkgh4wk7GuIjk4OAgN998Mx/+8Id57rnnxsOE9RJECscyqHoRkZ3CkyayWsQMPEoiRWy55IIyAo1QIIhwtb9Oys9TxQJfeWEhrbZDLY7Jyc2v/Fy7zdnaDLdAC4RBuzeArUM8I0WvmUEIqBgunmHjp7OYHZNp6V+BDgJUpoG4vZNG20X5HvtGHunGDG3pRrzlFbqtHKtrCrmmRD7rYAmIKgVKKwt0NLnk0ja2ZVDsGWD1i0upDZYITAcj8PGFRFo+2ZRFY84ha5qbFQFPPNGEHZ1xEclrrrmGT3ziE6xatWo8Tr9BbFMSK006ZVIoC2p+RJEcJctGoLBVBFJgxPFaddICPdSx8YnCIDe/sJBJKZcr99iLnDXaNhfrUk8Kfzn/UQABKSSKmjBoiCukVcCglcU3bALpYMYBCgGWTaq1A5HJEJUdVMolM3sWOdMhCBXFUkRTYSVxdg6Rk8HX4PavopifRNiYplKLUIGPNC3SSqE09BY87LBG14JnMVIOnuFQKlQQy15ET5mJlalPXIy0InAtmsISowlPJZ5owkRgu4vkfffdR2dnJ4cddhgPPPDAZr++pWXs/ngaGtP0DFTZe/d2CtWVrIwkUmo8bdMUFmn2B6kJB4sQkNSkha1D0trj8cEBvvri80x1Xa7YYy9y5pYJJAyn+QwnjNcTxD3Dqo9YkBIdBYRCoqRRTycSoKSkAY/nZr4WN/aYaSvCTJaanaKoTOwYDNOgOSpBNo/bkKHqx4RNrUSFCk6xj3Jznp6eQUytyM2ZTcYwaGpKM1D0eHHBYkzLxMcgEgq3IUPYkMesDpCb2goKMq6JY2icpjxtbS+XWoalErWuVcSVCkYmgzu5EyuXo9i/CrejEWMkoJUh9jxEUKKhrXOde7L28XZkEju3LTuCndtdJH/xi1/Q09PDiSeeSKFQoFqt8sUvfpFPf/rTo3p9X18ZpfSmn7iFiChGRjEZ20Bn85QjjfR8jEBh6xAlBTUzhRMHuKoesNFAg2myZ7aBi2bvTsbc8tuqYaRdb1WksXVIKOtNM2JpgIDAsAFJJEzQGgyJZ2aITIGfzuORp6GtgbJopMPrQdc8PMNEqIiMV2Ew34lV9IjR1GqaaqqJplo/fV194NhU0y0UijH9L/YQ+iGObdCzso/GtkYqfq0+MTGKkU6ObG8XXrFChEFU00QihpYO3J5667e1vUVh2+ieIn0renBnzcLr6kVmsoha9eXr1xpVKeA3vyySbW05eoaOtyOT2Llt2V52Sik26nxtd5G8++67R75+4IEH+Nvf/jZqgdwe2JZBS96lvSlNdMDuLPvHk/THoDwomhkcFSKEIK09NJJVtTJT3RSzszmu2GPPrUoUh7X3I+uJ4aEwCaWJqRQCTb/ZQEoEOCpE6hiBxo59bBuK7bORQpBKmbQ2uExqSqOqDejeNRihh5nPkWqYQ5Njs7oYEUQKKQWtTVnCxhxeYydBGOHYFq5loLRmsOyTyzg4DRlkHGGaEs/XmELgxQK/fQquNDC8GjKXRU6ZhtPw8qf/K/NNxdD/g+7ukR6dYq3If5KLmbCjkeRJbgDTEMSpNJVcE+2rFpALqtgEBNIGFaIQ/K23i+8sWcT5s/bgjc3N9czsbYbG0ArPcOh3GnEjH6nrldn9Th5bK9y4hqViQsPFa5uGu+dezE5nedP+k1BaUCj7OHYTYu7U+hG1xi+UyPStpL0pTWNrnmcWrsIvV1gsGnEtiSktXMcgjCHlCPwgxrJiOmbPYHDh81iWjaeBKEIFHvHUOZRyWVKOSSptkcql1pmkuHZH92GEbaMqZVIzd6O2ePHIYzoIUL6f5GIm7FCMq0iecsopnHLKKeNpwnoJwhjbNKgNDNJQK+IbDn1OA/mojNRgqYg/9azm+0sXsVcuz2vyzUNVMFtPfbldH/kaSIuKmUZqzYDdQGNcRkpJkG8hAqyoQlla1CbNJDNjJi2dLew1o4mO5ix9hRpSCpTSGEZdvGOlkZksqfxs4p416GqFxgaX1flW7LIiCBVp1yLrWqAUYayxbUlb3sEw0lj77En/kuW4QQWZdUlPnYLZ0IAE8hmb1kaX5obUOmlDG/MW1+7RqSplpJvGnTIlCdok7FAknuR6KFUDGrIO6eogA5aJyKaxBqsMWnka4jKPdS/lR0sXsk9DEx+dsxcpWc9m3NzpiOtDABGSmuGAkJStNIZWxE6Kkt1AKu0w2SuSCmvIhgaa99+PGYcdjNuYX+c4ubRNpRZSrIak7PqeZhDGZF2bfEsOWpvQpkGur0xQ8FB2ldUDHk05G0MKbNPCtkxa86mhaH+AzGRp2XtPGjI2IGjNpzY5Wtbu6Niot7h2j86EhB2RRCTXw3C+pB2FWLaD2dKKVekjjBTd5SL3LlnIfo2tzJuz19Asm3CdsQ1biqaeC+kZKSpmvTluOqphoMkECqO5k9l7T8cMPWLLJeuaiMAjfP457L33WccDsy2DSS0ZbMtjoOSj4VUzsxsa05SLNfJZB9MQZNI2xUqAZUjaGtNMa89iWwalakDWNfFDhW2ZOJYxkju5KRJvMWGik4jkKwjCmMGSz7Ilq+lZ2oUqFKmaKQasZtrDNexjKD4092CmtExDqRoqCoBwJPF707KxYYaPEWISSxOlFVIrtGmQsi0cxyD6/+3de5yVZbnw8d/9nNd5rTkDIyMOKh4Aa2eGUWr1mgpKgbW1vdUyFbPE2rtSfCVKQy1tU6Zuy/xooZmJIAZatqODKenu8IYooCByHOa8Zp2f8/vHgpGBYURFB+T+8uHDPGvd88w1C+biftZ9P9dVrmCm4iiqhgtEo1Hcnh7yf/8bek3NgA3ZOxNl014qjZs7FqlqU4M+3a865s0X5pCzRelgJhuB7cJxfbZ3F+nY1kHn82soCB3HF/hlhzVr/swrvV04qk5L/WgMBTxFwxMCF/V1e9rsC0G1Z7anaZRVg7Jq4STSBOk6gvHvRUTjhNneagMyAV4QEgY+bkc7fqm6QBJ6HuVXXsEvyJJmkrQ/yJnkDoWSw9/WtrNyfQ/2mpVE+rKkvTxRt8jvN67i2c1r8ZvGMO7o91Pj5KrvE4YCLfQx+3c2vnk+VEvmKiYboqMQgBYxaBxRixtLoUWjKMJDFMrVlWVVQ1MEbncPwjDR4gmEEAO22MjZmyS9dTJJUk2Qf13bwT/WdNLT1cOY3naifgU9sHny1VWs2LKWSQ2jOLflSAKngOU5+EIQCTws7Lc8Ha+WP6sW0c2rEZQwJBLY9JLgxZJBzPeIOSX0uEHUiEB3FjUWIxkzcHq7USwTL5eFLaDX1iCsiCyOK0n7iUySwOaOAlu6Cni+T6TQjSBADVyeWL+Sv25dy8lNozlv9FHovosS2Oihh4uO+jqdEXftZDiYEHABUCkLk7Jm0m7VUVZN4n6Zcbl1bAtHUkw24GGiJCMUjhiP6uZR+joJig6KYaHFEwSOS2XzRuwtmzAPH4NR37B/XyRJOkTJJAn05Cr4fogfgihXOwWmwj4qnsOHR4zhnNFHowc2Gj5hKHBR0EMPZYjL7J0Ve9jlT2WXYx/wUCmLCN1WkkCoVBSTgh6n1i3g6waOniSj+tT7WcrWKLLJJia0jkaI6hYff9MGYo19lNauRbEslGiUoFikvHY1kTFvrdGYJElVMkkCmqZgagq26xKqGlnPJ6bHmTLuJBqdLGoY4ip6tdlWUG2WQOhWS6bt5ZzVRKjsqCYusHbc413d5lPtbFgSZvUmHaFgBB55LU4iKOMpKroaUtFjaIkk7ZFaUpZJLjRQFIHj+qiKoFwoYvkeRtMIgnK5Wr0nGkMo8erCTWPj2/aayRJn0qHikE+SjusT8W0iHVtJbW9j+XOL6e3dzL+/72wSBAShIO6VCYWgLHQCRSACBQ8VY4iZZIhCBZ0INioKzo4L7+pmcRVX0SirJnk9zupkK6NLbRAGJO0SOS2KqqrYgUAtFYg7HlpR0O1YLM5V8F2PdCrCKLtIY347xBJUXBVFRKHs4NoOYvtzRFdvobmlnroxr1UU39mewvEC0NTq3UX7sN9xV2+2xJlMrNLB6JDeAuS4Pp1t3cR7thHRfP7w3BI2bV1F66jj0HQLVyiEQqGi6vghmKGHGgRooUeI6J8Z7uyBvVN1ISYkhkOIwEfBFhYBCjYarqLiCh09DOky0hS1KJujTQhFIBRICIeSMEg4RQq+gh1Cd9En2deOUsxT8Xy2tOfZZJt09FVo29yJ67j09hXp3NZNuTeHomlkQ421r3TSuWp1NUHtaE8RhNU9kn4Q0tVXwXHf2Or8rkUrhBD9Hzvt7Xv9nJ2JNfQ8uVVJOqgc0kkyX3JQeruwhcr9S+7j1VdXctyEj3PCESeS12Nsjo5kVepI1iRbq023lOrNhyEhGh4uAp/qixhQ7YH9WuJUcFDx0AgR6KG741JbJRAqtmpQUi1stVoMomLE2JY+jLb4CBRVJab45KMpfM1ADwPUpkbMeISYXSARM4lHdXoDha2Zw1FV8PJ5HC9E0TQU06QYzxCLGISGQVvBw2lv729PoakKQgh0TUHXFPIl5w29bkG5hDAGtqUQhkGwS8mz3b2ZxCpJB4JD+nLb8QKEXebnjz3Myhf+xkdPm0Fd03tQe7ZDCCoBtjBQwpCcniDhFbHCyo5LZo2dd1pDdWbpoqPhY6PjaxoFJULML6OGIUbgUBE6GiFl1SKvR+mO1BJTQ6J69TbCQEQoR022qw2MCAukYiZWIsr2wCKimfhBgJrN4ZsqYRhSKrvkogmiR0xA6+smKJZIeDalTBMoOikhUISg7FUT287bLXelKgL7Dc4k30yJs6GqAUnSgeyQTpIC6M7bfLj1eCKOSkPtEXTkC8TdEjo+tjAQaoheLSmLJ3RCxcEOVQQCLXSBEBsTAeT06h7HrJ4g6tuUVQMzdFACj4pi4AqdkIBAqOQjKSxTQwk8EpYgmYygBh4JJcRuGkWt4RK6HumGFKXuAr19FYTv4VsRQh/8AAxDQddVHFWHptHkyy5B91aiioKlVRNpEIbE9Wpi29meQlNfW27ygxBDe2MXFK9XtGIwsnakdLA6ZJNkXy7P3XfexmmtE4gKhebGsZTyJcZWspRUk6ISIQgFDXY3lm+Tcgo4yo6WDCFY2DsuvEHDI9xRKdzWDMpKBAQk3RIlxcRTDEwcooFPzohRtlJYmRoU16aiRmhOmSQiAjWWpmAlqalJoaoBdYV2amMqUTPJP7JFnEoFN91IoezgOD6ppEnU1HFdn9qkiR+EZI0UVrkTK6ZTLAv0wGNEZsciiWnQ1VcBqjNI1wtwvYC61BvrB/5mila8mcQq7V1b2zY+9alzOOGE93L77T8e8Ny8ed/kiSeWsnTp/5BOpwHwPI8ZM6YwduzR/Oxn9w4YP3ny+zjiiFYUZeBVxk033cqIESP3OaYXXljF/PnfpVwuUVdXz5w5N1BXV7fX8atXv8AVV1zC4sVP9Mf5hz/8jp/97F5c12H06MP4+tfnkEql9zmGt8MhmSR7szm+cMWlrF29kuSnv0hUzWDm+hhR7sUVKmU1SbtVR42TRbighT5l1apeYguICAc/FFR/hQgCAiDulgkRRIRNh1FDXo0S9yqoQYU+I0VEV0jHLRpr0qhRDT2SIJZOIGJxgngK1a0Qz0SIjqxDjcfxCw047e2kyyXeM66JF/oUegsBccUnWRenPh0hZmkoikKh7DIqYhDWRnDyCby+HjLCo/mI11a3VaAuZZEvOdg7thHtS7mzwbzRohWyGtD+ZxgmmzZtZPv2Npqaqu0uyuUyzz//zz3G/vGPyxk79mjWrn2R9evXk0wOvNngttt+1J+o3gzXdZkz52q++c15TJhwAosXL+Tmm6/n1ltvG3R8NpvllltuwnXd/sfWrHmR+fO/y1133cuIESO5++4f8uMf38nXvja8nQsOuSTZ05vliisu5aW1L/DpM/+NusxhOG1t5LQYiuFjB4K0W6DdqsMVOlusBhrcHrJagia7B9vXUbwCQWgQ90s4qomHQAtCrNDD8R1eiTUTKipOGKCKEr1mBj9qYdpZhF3GSh5GTfMIdMvEy+exX1pF+sT3o2Zq99hOszMRxYD9Mefa2Z4CoD4TpdN76/ed7ytZDWj/UlWFj3zk//Dkk09w4YUXA9VkOHnyKfziF/cPGLt48UI+9rHTGTVqFD/96U+58sqv7fPX+epXZ/GJT8xg8uRT9jpm9eoXiEZjTJhwAgBTp07jttu+R19fdo+ZYBAEXH/9HGbO/CL/+Z9X9j/+m988wZQp0/pnr1deeSXr12/Z5zjfLofU6nYu18cXvvB5Xn55NRd9YQ5HH3sSkWIWxdAI1GovGVUElBWThFvECKv/y1WEhaMYbIk00mnV0KfHqagGZS1CWVgEikZRj9Bm1ZDVE2S8PF1GioIWoy3ahGtGsAhwNYMCGqWygxNWV5j9fB41nsTPF+Wqr/SGnXHGFH7zm8f7j594YhlnnTV1wJgNG17hhRee57TTPsaZZ05lyZIl9PVlB4yZNWsmn/3sZ/p/z5791f7nbr31tiETJEBHRzsNDa/dvKDrOul0hs7Ozj3G/uQnd3Hsscdx0kmTBjy+efNGfN/nmmv+g4suOp9vfetbRKODl/l7Jx1SM8n29u10dGznP66+kdZjT2T9y9tIbFpH1IiQdz3KGNSEZbq0KEbg4KNihi7bI7Wk3AKu0MirUXxT0OR0o7s+gQixFYtQCGzVxA+VHSvfEAsq2JpFVjdB8TBCD9XJQ08XTqmJQIOgVEJvbiawK/1xylVfaV+NG3cMiqKwZs1qMpkMpVKRI44YO2DMo48u5OSTJ5NKpUml0jQ3N/PYY4u54ILP9Y95q5fbQRDu0QQvDEMUZeA87Jln/syLL67iv/7r9j3O4XkeTz/9FD/4wZ1kMjXcd99dfPe73+amm773puPaHw6JJFkul4hEohx55NHc/+CvKDqCQtklWVdDsXYkeiFLjR6Q1wW9xEm5BUIh2BppwMakopg4hkbGzZP0iniKyiuRZsaEW6h1+nACyOkxRBDiKwq9ehwBbLPqSLsF4l6JmHAoxDKYlkFSDaFjG2G0BaN5FAQBivVaUVu56iu9ER//+Fk8+eTjpNMZzjjjrAHPlctlfvObx9F1g3PPPXvHYyUeeeSXnH/+BWhvof3xrhobm+jqem3W6HkeuVwf9bsVWlm2bAmdnR1cfPG/9z82a9ZMrr12LnV19bS2HkltbXWxZ/r06VxwwYX7Jb634l2fJDs62pk583Occ850Pve5S6ivSeF3FymWPZJRleLIw6hs8qhgYdo92EKjrCboNRJ4gULPju08eujRaVYvtT2h4SkaJT3Ccbn1RNwyRuDSbaQpaRYVzSLuFnFUg4hfwbAr2EqIJgqomRhGY5pYfRphmujxBJWNGzHq6wjDUK76Sm/Yxz9+Fpdd9lmSyRQ//OFdA5578sknSCZTPPjgIlS1ukBnmiGnnnoqy5f/D6effsZ+ieG4444nl+vj+ef/yfjxE1m6dAnHHTeeRCIxYNy8ebcMOJ48+X39s9hTT/0od9zxfS688HOkUmmefPJJjjnm2P0S31vxrk6S27e3cemln6W7u5MJEyYCu/Z+UVEVAUo9m1wf46VVCCUgjETJa3E0VUdxbBoCh62xesIQUKC5dysVoaICBS3GC8lWDittxwg8Os0MnqJS4+ZpN2twhYoIQ1JegZIexdAVIrEIauNIFMPHz/ZijhhJ8gMfwC8U+ld9jXS6ugr86gZ5j7P0uurrG2hpOZx4PE4yObAXx6OPLuRf//Xf+hMkQDKZ5Nxzz+OXv/x5f5KcNWvmHluAZs68gkmTJu/Two2macyb990dW4AqpFIprrvuWwB0dXXy1a9exa23/oC6uvq9nmPy5A/T2dnBl750GWEYcthhzXz96//3Db8e+5sIwzB8/WEHju7uAkHw+iFv3bqFyy77LH19We64424mTnzPXsc+v76LLX/5K51lEIrAdgNsz6dScTHcCpuToyhVPBSgye4ibiiopkXJ9vB9H71cQLfLlIwYVqVIQYtQ1KKM8HpRw4A6pUTC0rFTDTQmNVLJGLWjR5BKxYm0tg6IZdfiEQP2E75O8Yg3o74+QWdnfr+e8+0g49y/ZJwDKYqgtnbvP1vvyplkpVLh0ksvIp/Pc9dd93L88eMHHee4Phu29fGXF7aTayvj2BV8RUMVCqpvk6z0oXg+NRWPegUsQ8NHkAxsSp6CEgoCz8XxFF6JtWCrJqP9rZSV6l0lqufi6wYVPU7a7iNwbFBNnGwfbn0G46jWPWPacY9zGPi4W7cSVCqgKqAoxI8//m193SRJ2tO7MklalsUVV8xi7NgjGTdu8Pc0HNdnzcYs/29dB77nkzXiWH0FbAFK6NNo9xACvWaCkeVOotiU3QSOrqGEBoriY/k+PYGgK1qHL6qJ0VYMtNDHExquopPQIVQUusw0MV1Hs0v40TjWEa2DzgyDcqm6x3LrVhRDR4lGCFwHe8N6IocfLi+7Jekd9q5KkuvXr6Ojo51Jkz7I1KnThhybLzms39aL7Xh0FxwKQqfbqiPj5Gi0u3GETkmPcLi9nVFKBVc1MFUfO5rErxQJzAwvJUZg2z6e62OI6otZVpI0VbrwBHjRBJbTTYAgm2wgkUkRxFWs1iNJ1WUGjUuJRKls2lhNkDsq7QgESjwhm3tJ0jB41yTJl15ay8yZnyMWi7F48TJ03RhyfLHi0Zmt4Hketu3QVwxANWmL1GMGDj6CeidLzC5RiUbQNZWUk6ctSKFFomTsLGZ0BKamEvNDckUbTRV4wqRDqedwvYzhO7RrdUQ1lZE1JpG4RbS1hSNam/Z6K6DR2EjxxVWoiWR1tdt1CVwXc+TIIUuRSZL09nhXJMnVq1/g8ssvxrIi3HHH3a+bIAslh5c299DWXaBUdujOeQOetxWDersHQtADF6PiYygGoW6QUSpY6RoiKmQbU0BARNfZ1lOk4lTPY5o6saiOrqs0J0xaGpMgqoVuRzcmhrxXWo3Hsca04nZ2EJTLKKaF1dAAioow3xV/XZJ0UDnof+qef/6ffOELl5BIJPjJT37GqFHNQ44vlBzWbMqSLTqohBRKHsFuY3qNJK3FzRi+i60YRHHQfA8HhZhXIaYFlNKNxKMa2VwFW/EZWR/D80IsU2Xye5rp7CoShlCftlAUpb/azr4Uk4gcfnh1g/nuK9xy76QkveMO+iT5618/Tjqd5u67f8qIESMplBy295Qo2x6aqqAIQWdfmWzBRhEhlWwes9CLyOXJFAMcK8b2gsKuc8mKalJULdTQxzciuAiEZiJCH9+usL6o0huJoXdnqa3kEE4FMxYj2TKKplH1pOIWgeMBgiAETfCGqu3IijmSdOA4aPdJep6HpmkEQUBfXx+ZTIZCyWHd1hwRU0UQsrkjz5bOIqmoiR/6VLIFxLZX0SMR+uyQYrGEFXp0xhtoK4AQYLvVVgzHlF5ldMSntjaBpSu43T1odpleLUr2qH/B8Xxqc+24qkFtbQIt9NADj1x6BJ4VwfcCUqpHY1AipfnEM0miI0ceUIlO7pfbv2Sc+9eBsk/yoKwC9Je/PMOnPz2Nbdu2oigKmUx1pXh7T4mIqWIaKmXHx3YDDE0lX7ERikrGzSGsCAVfoGsqmmXhawZpJ08mWe0bU5vSaa6zGHf84bSOb2VUU7paubu2nva6MdjNrXhmhEQ5R9YVBKpGb9GmLefxapdDduMWCrZP25Yu3FdfYev2LHkMerMl8i+/LBtfSdJB5qBLkv/7v88ya9blaJqGtUtRCICy7aHvaEXgeiGuF6Ip4LghoR9i+DaRqIUfgKIpmEa1mrgZONRnIjQ3xDlxXCOnv/9w/uXk44lHTPS6Bkq1o/BTGRw/JEzX4noQlooEqoauq2RzDhFLoxKCcG0sXaPWK1AKNYyYRWeugh61qISKLIEmSQeZg+49yRtumEtr61j++7/vIZ0euNcwYmq4XoBpqOiaQNcEpQoYukCoAkc1MQKfuqQFAgxNIaYEeCRwFZW6tMUJRzYQi+ioqoLWMoaguxPLr5ATCnbDKGzFRBchBWFgEFRvkRSgChC+h2Pq6GGAFdgUQ4MGTaFY8VCFwFZ0uY1Hkg4yB12S/MAHPsCsWV8lPsh7e831cV5tr17OpuMGZdvEdn0SkShB6GNn6kkUOmlIRBG6TtxQSJugN7fgGxY1CRNdq65E9+RtkvUZ8tEYyabRFDsLNPo+PX1lLNOg0NBIptKDETVIJiNoQUBjOkIx00gyauKlM9SLAN00qImqKKZOVIToyQSKIvaIfbgcSLEMRca5f8k49/1rHHQLN5IkSe+kg+49SUmSpHeSTJKSJElDkElSkiRpCDJJSpIkDUEmSUmSpCHIJClJkjQEmSQlSZKGIJOkJEnSEGSSlCRJGoJMkpIkSUOQSfJt8J3vfIdrrrlmuMPYq+XLlzN9+nTOPPNMvv3tbw93OENasmQJU6ZMYcqUKXznO98Z7nAGKBQKTJ06lS1btgDwzDPPcPbZZ3P66aczf/78YY7uNbvH+dBDDzF16lTOPvtsZs+ejeM4wxzha3aPdaf777+fCy64YFhikklyP1uxYgWLFy8e7jD2avPmzcydO5c777yTxx57jBdffJE//vGPwx3WoMrlMvPmzWPBggUsWbKEv/71rzzzzDPDHRYA//znPzn//PN59dVXgWqv92uvvZY777yTxx9/nFWrVh0Qr+vucW7YsIF77rmHX/ziFzz22GMEQcDPf/7z4Q1yh91j3WndunX8+Mc/Hp6gkElyv8pms8yfP5/LL798uEPZq9/+9recddZZNDU1oes68+fPZ+LEicMd1qB83ycIAsrlMp7n4XkepmkOd1gA/PKXv2Tu3Lk0NDQAsHLlSlpaWjjssMPQNI2zzz6bX//618Mc5Z5xGobB3LlzicfjCCE46qij2LZt2zBHWbV7rACO4/CNb3yDWbNmDVtcB12ptAPZN77xDb7yla/Q1tY23KHs1caNG9F1ncsvv5y2tjZOPfVUvvzlLw93WIOKx+NcddVVnHnmmUQiEU488UTe+973DndYAMybN2/AcUdHB/X19f3HDQ0NtB8ABZZ3j3PUqFGM2tFQrqenhwceeICbbrppOELbw+6xAnzve99jxowZNDcP3eDv7SRnkvvJww8/zIgRI5g0adJwhzIk3/dZsWIFN954Iw899BArV648YN8eWLNmDY888gi///3veeqpp1AUhXvuuWe4wxpUEAQI8VpdwjAMBxwfaNrb27nooouYMWMGJ5100nCHM6inn36atrY2ZsyYMaxxyCS5nzz++OM8/fTTTJs2jdtuu43ly5dz4403DndYe6irq2PSpEnU1NRgWRYf+9jHWLly5XCHNag///nPTJo0idraWgzDYPr06Tz33HPDHdagmpqa6Ozs7D/u7OwccNl4IFm/fj3nnXcen/zkJ/niF7843OHs1dKlS3n55ZeZNm0a1113HatWrRqWqx55ub2f3Hvvvf0fL1q0iOeee45rr712GCMa3GmnncbVV19NLpcjFovx1FNP8dGPfnS4wxrUuHHjuOWWWyiVSkQiEZYvX8748eOHO6xBTZw4kQ0bNrBx40aam5tZunTpsM+ABlMoFPj85z/Pl7/8ZT7xiU8MdzhD2vVtgGeffZbbb7+d73//++94HDJJHmImTpzIJZdcwmc+8xlc1+WDH/zgAfnDDDB58mRefPFFpk+fjq7rjB8/nssuu2y4wxqUaZrcfPPNXHnlldi2zSmnnMIZZ5wx3GHtYeHChXR1dXHvvff2/8f+kY98hKuuumqYIztwyfYNkiRJQ5DvSUqSJA1BJklJkqQhyCQpSZI0BJkkJUmShiCTpCRJ0hBkkpTecVu2bOGYY45h2rRp/b/POeccFi5c+JbOO3PmTBYtWgTAtGnTyOVyex2bz+e58MIL+49fb7x06JL7JKVhYVkWS5Ys6T9ub29n6tSpHH/88YwbN+4tn3/Xcw+mr6+P559/fp/HS4cumSSlA0JjYyMtLS08/fTTXH/99ZTLZeLxOAsWLODhhx/mwQcfJAgC0uk0c+bMobW1lfb2dq655ho6OjoYOXIk3d3d/ec7+uijWbFiBTU1NfzoRz9i8eLFaJpGS0sLN998M7Nnz6ZSqTBt2jQWLVrEscce2z/+jjvuYNmyZaiqypgxY5gzZw719fVccMEFnHDCCfz973+nra2NSZMmccMNN6Ao8oLs3Uz+7UoHhH/84x9s2rSJSqXCunXrWLBgAQsWLOC5557j0Ucf5YEHHuDRRx/lkksu4Utf+hIA119/PRMnTmTZsmVcd911bNiwYY/z/u53v2PRokU89NBDLF26lObmZu6//35uuumm/tmsqqr94x955BGeeuopFi5cyK9+9SuOPPLIAQWUN23axIIFC3jsscf405/+dMDeSy7tP3ImKQ2LnbM4qFYmymQy3HLLLXR3d3P00UcTj8cB+MMf/sDGjRs577zz+j83l8uRzWZ55plnuPrqqwFoaWkZtJrNihUrOOOMM0ilUgDMnj0bYI/K1zv96U9/Yvr06USjUQAuvPBC7rrrrv7q3aeddhqKohCPx2lpaaGvr29/vBzSAUwmSWlY7P6e5E6LFi3qT1BQLUE2bdo0vva1r/Ufd3R0kEqlEEKw6121mrbnP2dVVQeULMvlckMu0Oxe8iwIAjzPGxD3Trt/fendSV5uSwe0yZMns2zZMjo6OgB48MEHueiiiwD40Ic+xEMPPQTAtm3bePbZZ/f4/JNPPpnf/va3FAoFAH74wx9y3333oWkavu/vkeQ+9KEP8cgjj1AqlQBYsGABJ554IoZhvG3fo3RgkzNJ6YA2efJkLr30Ui6++GKEEMTjcW6//XaEEMydO5fZs2dz5pln0tTUNOiq+CmnnMK6des4//zzARg7diw33HADkUiECRMmMGXKFB544IH+8eeeey5tbW186lOfIggCWlpauPXWW9+x71c68MgqQJIkSUOQl9uSJElDkElSkiRpCDJJSpIkDUEmSUmSpCHIJClJkjQEmSQlSZKGIJOkJEnSEP4/s+JTjlz0Xz4AAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot results\n",
"for i, x in enumerate(prop):\n",
" y_true = np.concatenate(y_trues[i])\n",
" y_pred = np.concatenate(y_preds[i])\n",
" y_true_fit = np.concatenate(y_trues_fit[i])\n",
" y_pred_fit = np.concatenate(y_preds_fit[i])\n",
" xy_min = min(np.concatenate([y_true,y_true_fit,y_pred,y_pred_fit]))*0.95\n",
" xy_max = max(np.concatenate([y_true,y_true_fit,y_pred,y_pred_fit]))*1.05\n",
" xy_diff = xy_max - xy_min\n",
" \n",
" _ = plt.figure(figsize=(5,5))\n",
" _ = plt.scatter(y_pred_fit, y_true_fit, c='b', alpha=0.1, label='train')\n",
" _ = plt.scatter(y_pred, y_true, c='r', alpha=0.2, label='test')\n",
" _ = plt.text(xy_min+xy_diff*0.7,xy_min+xy_diff*0.05,'MAE: %5.2f' % np.mean(np.abs(y_true - y_pred)),fontsize=12)\n",
" _ = plt.title('Property: ' + x)\n",
" _ = plt.xlim(xy_min,xy_max)\n",
" _ = plt.ylim(xy_min,xy_max)\n",
" _ = plt.legend(loc='upper left')\n",
" _ = plt.xlabel('Prediction')\n",
" _ = plt.ylabel('Observation')\n",
" _ = plt.plot([xy_min,xy_max],[xy_min,xy_max],ls=\"--\",c='k')\n",
" _ = plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here, we define a class that return mean and std based on a list of models.\n",
"Note that the class must have a function called \"predict\" that takes a descriptor input and return first mean, then standard deviation. Here, we add a constant noise variance to the model variable calculated from the bootstrapped models.\n"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [],
"source": [
"class bootstrap_fcn():\n",
" def __init__(self, ms, var):\n",
" self.Ms = ms\n",
" self.Var = var\n",
" def predict(self, x):\n",
" val = np.array([m.predict(x) for m in self.Ms])\n",
" return np.mean(val, axis = 0), np.sqrt(np.var(val, axis = 0) + self.Var)\n",
" \n",
"# include basic measurement noise\n",
"c_var = {'E': 650, 'HOMO-LUMO gap': 0.5}\n",
"\n",
"# generate a dictionary for the final models used to create the likelihood\n",
"custom_mdls = {key: bootstrap_fcn(value, c_var[key]) for key, value in mdls.items()}\n",
" \n",
"# import descriptor calculator and forward model to iQSPR\n",
"prd_mdls = GaussianLogLikelihood(descriptor=RDKit_FPs, targets=target_range, **custom_mdls)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Once again, we can make predictions and calculate the likelihood values for the full data set."
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" E: mean E: std HOMO-LUMO gap: mean HOMO-LUMO gap: std\n",
"0 196.772149 26.245443 5.871948 0.707692\n",
"1 124.620714 25.908334 5.461932 0.708542\n",
"2 198.678938 26.283615 5.275575 0.708301\n",
"3 222.938083 25.850088 7.515128 0.707791\n",
"4 85.459304 25.555155 5.184740 0.708865\n"
]
},
{
"data": {
"image/png": "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Vbbexf7+979r5MiR6tixo5566ik99NBD2rlzp26++WaVlpbqu+++kyTvMM4F27Zt8w4zrFq1StHR0XK73erZs6fOnTunoUOHKiUlRXv27FFJSYm6du2qP//5zzIMQyUlJRo/frxWrlzp87FD/cElfVw3zp49e9lH81atWnXFdVu2bKkJEyYoISFBa9as0dKlSzVnzhy9/PLLcrvdmjRpku69994qP251qUGDBikvL0+DBw+Wx+NRixYtlJ6eLklKT0/XrFmzlJGRoZKSEjkcDjmdTlksFiUkJGjEiBG66aab1L59e5/2VdH2Dh8+XOnjUlJS9OKLL6p///4KCQmR2+1W586dr3hWN2DAAA0bNkzPPfdclfV88skn5Y5/eHi4Nm/eLOnnMfy333673PodOnTQrFmztGDBAv3P//yPYmJidOONN8rj8ahXr1564oknfDkMVYqOjlZqamqV66Wnp2v27NlyOBwqKSlRbGys+vfvf9l68+fP17Rp07Rq1SrdeuutatmypaSfh3jee+897xsbe/TooVOnTqmoqEitW7dWaGioBg0apOXLl1e4XlhYWLm6N2/erNjYWDVs2FC/+MUvNHv2bIWHhyshIUFjxoxRo0aN1KdPn3L13X777UpKStLx48fVsmVLzZo1S1arVUlJSXrmmWdktVplsVg0d+5chYSEaPr06ZozZ44cDodKS0vVpUsX71WHnj17av78+SotLdXAgQOvpQ24Dli4PS4AAPUfl/QBADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATqPefwy8oOCOPp2Y+edi4cZhOnCiqkW3h2tCLwEEvAgN9CBx12YsGDSy65Zabrris3ge+x2PUWOBf2B4CA70IHPQiMNCHwBGIveCSPgAAJkDgAwBgAgQ+AAAmQOADAGACBD4AACZA4AMAYAIEPgAAJkDgAwBgAgQ+AAAmUO+/aa8mlZSWyWYLr3Sd4vNuFZ4+V0sVAQDgGwK/GkKCg+SYklXpOtnzBqiwluoBAMBXXNIHAMAECHwAAEzAr5f0Fy9erHfffVeS1L17d02dOlXTpk1Tbm6ubrzxRknSk08+qV69emn37t2aPn26zpw5o06dOmnmzJmyWq06cuSIEhISdOLECd12221KT0/XTTdd+dZ/AADgyvx2hr9161Z9+umnWr9+vTIzM7Vr1y5t2rRJO3fu1MqVK5WVlaWsrCz16tVLkpSQkKAZM2Zo48aNMgxDq1evliTNnDlTw4YNU05Ojtq1a6elS5f6q2QAAOotvwW+zWZTYmKiQkJCFBwcrFatWunIkSM6cuSIkpKS5HA4tHDhQnk8Hh0+fFjFxcWKjIyUJDmdTuXk5Ki0tFTbt29XTExMufkAAKB6/HZJv02bNt6fDxw4oHfffVevv/66/vGPfyglJUXh4eEaN26c1q5dqzZt2shms3nXt9lsys/PV0FBgcLCwmS1WsvNr47GjcNq5glVQ1Uf3UPN4DgHDnoRGOhD4AjEXvj9Y3n79u3TuHHjNHXqVLVs2VJLlizxLhs+fLgyMzPVqlUrWSwW73zDMGSxWLx/X+zS6aqcOFEkj8e4tifx//naQJeLD+b5m80WznEOEPQiMNCHwFGXvWjQwFLhia5f36Wfm5urkSNHasqUKRo4cKD27NmjjRs3epcbhiGr1aqmTZvK5XJ55x8/flx2u12NGjVSYWGhysrKJEkul0t2u92fJQMAUC/5LfDz8vL0xBNPKD09Xf369ZP0c8DPnTtXp06dUmlpqd566y316tVLERERCg0NVW5uriQpKytL0dHRCg4OVqdOnbRhwwZJUmZmpqKjo/1VMgAA9ZbfLumvWLFC58+fV2pqqnfeI488orFjx2ro0KFyu93q3bu3YmNjJUnp6elKTk5WUVGR2rZtq/j4eElSSkqKEhMTtWzZMjVr1kzz58/3V8kAANRbFsMwamaAO0DV9Bi+L1+tyzia/zFeGTjoRWCgD4HDlGP4AAAgMBD4AACYAIEPAIAJEPgAAJgAgQ8AgAkQ+AAAmACBDwCACRD4AACYAIEPAIAJEPgAAJgAgQ8AgAkQ+AAAmACBDwCACRD4AACYAIEPAIAJEPgAAJgAgQ8AgAkQ+AAAmACBDwCACRD4AACYAIEPAIAJEPgAAJgAgQ8AgAkQ+AAAmACBDwCACRD4AACYAIEPAIAJEPgAAJgAgQ8AgAkQ+AAAmACBDwCACRD4AACYAIEPAIAJEPgAAJgAgQ8AgAkQ+AAAmACBDwCACRD4AACYAIEPAIAJEPgAAJgAgQ8AgAn4NfAXL16sfv36qV+/fkpLS5Mkbd26VQ6HQ71799aLL77oXXf37t1yOp2KiYnR9OnT5Xa7JUlHjhxRXFyc+vTpo/Hjx+vMmTP+LBkAgHrJb4G/detWffrpp1q/fr0yMzO1a9cuvfPOO0pKStLSpUu1YcMG7dy5Ux9//LEkKSEhQTNmzNDGjRtlGIZWr14tSZo5c6aGDRumnJwctWvXTkuXLvVXyQAA1Ft+C3ybzabExESFhIQoODhYrVq10oEDB9SiRQs1b95cVqtVDodDOTk5Onz4sIqLixUZGSlJcjqdysnJUWlpqbZv366YmJhy8wEAQPVY/bXhNm3aeH8+cOCA3n33Xf3Xf/2XbDabd77dbld+fr6OHTtWbr7NZlN+fr4KCgoUFhYmq9Vabn51NG4cdo3PpPpstvBa36cZcZwDB70IDPQhcARiL/wW+Bfs27dP48aN09SpUxUUFKQDBw54lxmGIYvFIo/HI4vFctn8C39f7NLpqpw4USSPx7im53CBrw10uQprZH+omM0WznEOEPQiMNCHwFGXvWjQwFLhia5f37SXm5urkSNHasqUKRo4cKCaNm0ql8vlXe5yuWS32y+bf/z4cdntdjVq1EiFhYUqKysrtz4AAKgevwV+Xl6ennjiCaWnp6tfv36SpA4dOmj//v364YcfVFZWpnfeeUfR0dGKiIhQaGiocnNzJUlZWVmKjo5WcHCwOnXqpA0bNkiSMjMzFR0d7a+SAQCot/x2SX/FihU6f/68UlNTvfMeeeQRpaam6qmnntL58+fVvXt39enTR5KUnp6u5ORkFRUVqW3btoqPj5ckpaSkKDExUcuWLVOzZs00f/58f5UMAEC9ZTEMo2YGuANUTY/hO6ZkVbpO9rwBjKPVAsYrAwe9CAz0IXCYcgwfAAAEBgIfAAATIPABADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATIPABADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATIPABADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATIPABADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATIPABADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATIPABADABAh8AABMg8AEAMAECHwAAEyDwAQAwAQIfAAATIPABADABAh8AABMg8AEAMAECHwAAE/Br4BcVFSk2NlaHDh2SJE2bNk29e/fWgAEDNGDAAG3atEmStHv3bjmdTsXExGj69Olyu92SpCNHjiguLk59+vTR+PHj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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 7.8 s, sys: 324 ms, total: 8.12 s\n",
"Wall time: 9.92 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"pred = prd_mdls.predict(data_ss['SMILES'])\n",
"print(pred.head())\n",
"\n",
"# calculate log-likelihood for a given target property region\n",
"tmp_ll = prd_mdls.log_likelihood(data_ss['SMILES'])\n",
"tmp = tmp_ll.sum(axis = 1, skipna = True)\n",
"\n",
"# plot histogram of likelihood values\n",
"_ = plt.figure(figsize=(8,5))\n",
"_ = plt.hist(np.exp(tmp), bins=50)\n",
"_ = plt.title('Likelihood for SMILES in the data subset')\n",
"_ = plt.xlabel('Likelihood')\n",
"_ = plt.ylabel('Counts')\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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mgKwfft2rr76al7/+tfze7/3e4yMjBz0tfKgnpOTkwNHTM446YP1f/7P/+H222/nm9/8Js8888xe23zoQx/iT//0T/nhD3+IqvKtb30LgE984hNcddVV3HXXXZx++ul88YtfPOjrTdv0i3OH984d7vbTlZlyHDBzjiU/junFnsfxUh1TjRc0Hsb22evu2LGDEMJev2toaKChoWHq9p4+WMCUD9YHPvABALZt28b4+DhnnXUWAFdccQVf+MIXePvb3859993HzTffPHX/u971Lj70oQ8dcN+mbVBvbq49rO1nSqvwTDkOmDnHkh/H9OJIHMcVtYfvuTQ+Ps7ll1/OwMDAXvd/4AMf4IMf/ODU7YP5YD33921tbXR2dtLX10ddXR1Jkux1/8GYtkE9JycnZzpTLpe59dZbn3f/nqt0OLgP1v5+vy+/rEPxz8qDek5OTs4L4Llplv0xZ84c7r///qnbz/XBeq5P1q5du2hvb6elpYWhoSFCCHjvD9k/Ky+U5uTk5BxBDuaDNW/ePEqlEg888AAAd9xxBxdccAGFQoFzzjmH73//+wDcfvvth+SfJao6UywPcnJycqYld955J1/+8penfLCuvfZarr32Wq677jpWrVrF2rVr+ehHP8rw8DArV67k05/+NMVikW3btnHDDTfQ09NDR0cHf/3Xf01jY+MBXysP6jk5OTkziDz9kpOTkzODyIN6Tk5OzgwiD+o5OTk5M4g8qOfk5OTMII7roH4wk5zpyPDwMJdeeilbt24FrIX4sssu46KLLuLGG2+c2m5/Bj/Thb/927/lkksu4ZJLLuGzn/0scHwey9/8zd/wxje+kUsuuYSvfe1rwPF5HJP85V/+JTfccANw/B7Hu9/9bi655BIuv/xyLr/8ch5++OHj9liOCXqcsnPnTn31q1+tfX19OjIyopdddpmuW7fuWO/WAXnooYf00ksv1ZUrV+qWLVt0bGxML7zwQt28ebNWKhX97d/+bf2P//gPVVW95JJL9MEHH1RV1T/6oz/SW2655Rju+d78/Oc/13e84x06MTGh5XJZr7nmGr3zzjuPu2P5xS9+oVdeeaVWKhUdGxvTV7/61frkk08ed8cxyd13362rV6/WP/zDPzxuP1sxRn3lK1+plUpl6r7j9ViOFcftSn1Pk5yampopk5zpzLe+9S0+9rGPTXWFPfLIIyxatIgFCxaQJAmXXXYZd9111z4NfqbTsbW1tXHDDTdQLBYpFAosXbqUjRs3HnfHcu655/K///f/JkkSenp6CCEwODh43B0HQH9/PzfeeCPvfe97geP3s7V+/XoAfvu3f5s3velNfOMb3zhuj+VYcdwG9X2Z5ByK2c2x5FOf+hTnnHPO1O39HcP+DH6mC8uXL5/6Im3cuJEf/OAHiMhxeSyFQoEvfOELXHLJJZx33nnH7d/kT//0T7n++uun2taP1+MYHBzkvPPO4+abb+Z//a//xT//8z+zffv24/JYjhXHbVA/mEnO8cD+juF4ObZ169bx27/923z4wx9mwYIFx+2xXHfdddxzzz3s2LGDjRs3HnfH8e1vf5uOjg7OO++8qfuO18/W2WefzWc/+1nq6+tpaWnhbW97G1/4wheOy2M5Vhy3hl4HM8k5Hniukc/kMezP4Gc68cADD3DdddfxkY98hEsuuYRf/vKXx92xPPvss5TLZU499VSqq6u56KKLuOuuu/DeT21zPBzH97//fbq7u6dsYEdHR9m2bdtxdxwA999/P5VKZeoEparMmzfvuPtsHUuO25X6wUxyjgfOPPNMNmzYwKZNmwgh8L3vfY8LLrhgvwY/04UdO3bw/ve/n8997nNccsklwPF5LFu3buWjH/0o5XKZcrnMT3/6U6688srj7ji+9rWv8b3vfY877riD6667jte85jV89atfPe6OA2BoaIjPfvazTExMMDw8zG233cbv//7vH5fHcqw4blfqs2fP5vrrr+eaa66ZMsk544wzjvVuHRalUonPfOYzfPCDH2RiYoILL7yQ17/+9QB87nOf28vg55prrjnGe7ubv//7v2diYoLPfOYzU/ddeeWVx92xXHjhhTzyyCO8+c1vxnvPRRddxCWXXEJLS8txdRz74nj9bL361a/m4Ycf5s1vfjMxRq666irOPvvs4/JYjhW5oVdOTk7ODOK4Tb/k5OTk5DyfPKjn5OTkzCDyoJ6Tk5Mzg8iDek5OTs4MIg/qOTk5OTOI41bSmHNisGLFCk4++WSc23v9cfPNNzN//vxjtFc5OdOXPKjnTHu+/vWv09LScqx3IyfnuCBPv+Tk5OTMIPLmo5xpzb7SL/Pnz+fmm28+hnuVkzN9ydMvOdOePP2Sk3Po5OmXnJycnBlEHtRzcnJyZhB5Tj1nWrM/SePv//7vc+GFFx6jvcrJmb7kQT0nJydnBpGnX3JycnJmEHlQz8nJyZlB5EE9JycnZwaRB/WcnJycGUQe1HNycnJmEHlQz8nJyZlB5EE9JycnZwaRB/WcnJycGcT/DzlJk6vFIh0lAAAAAElFTkSuQmCC\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# check the predicted likelihood\n",
"dot_scale = 0.5\n",
"l_std = np.sqrt(pred['E: std']**2+pred['HOMO-LUMO gap: std']**2)\n",
"\n",
"_ = plt.figure(figsize=(6,5))\n",
"rectangle = plt.Rectangle((0,0),200,3,fc='y',alpha=0.1)\n",
"_ = plt.gca().add_patch(rectangle)\n",
"im = plt.scatter(pred['E: mean'], pred['HOMO-LUMO gap: mean'], s=l_std*dot_scale, c=np.exp(tmp),alpha = 0.2,cmap=plt.get_cmap('cool'))\n",
"_ = plt.title('Pubchem data')\n",
"_ = plt.xlabel('E')\n",
"_ = plt.ylabel('HOMO-LUMO gap')\n",
"_ = plt.colorbar(im)\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 1-2min to complete!**\n",
"\n",
"Use of multiple likelihood models is also supported. It is unnecessary in this example, but we will demonstrate how to do it by naively creating separate models for the two properties. Note that you can assign different descriptors to different likelihood models.\n",
"\n",
"By creating your own `BaseLogLikelihoodSet` object, you can combine likelihood models as you need. However, make sure you setup the models before hand, including training of the models and setting up the target regions."
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 31.1 s, sys: 342 ms, total: 31.4 s\n",
"Wall time: 33.2 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"from xenonpy.inverse.base import BaseLogLikelihoodSet\n",
"\n",
"prd_mdl1 = GaussianLogLikelihood(descriptor = RDKit_FPs, targets = {'E': (0, 200)})\n",
"prd_mdl2 = GaussianLogLikelihood(descriptor = ECFP_plus_MACCS, targets = {'HOMO-LUMO gap': (-np.inf, 3)})\n",
"\n",
"prd_mdl1.fit(data_ss['SMILES'], data_ss['E'])\n",
"prd_mdl2.fit(data_ss['SMILES'], data_ss['HOMO-LUMO gap'])\n",
"\n",
"class MyLogLikelihood(BaseLogLikelihoodSet):\n",
" def __init__(self):\n",
" super().__init__()\n",
" \n",
" self.loglike = prd_mdl1\n",
" self.loglike = prd_mdl2\n",
" \n",
"like_mdl = MyLogLikelihood()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Calculating likelihood values is the same as before, but `BaseLogLikelihoodSet` does not support direct prediction of the properties unless users define one themselves."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAgIAAAFNCAYAAAByowfoAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAAsLklEQVR4nO3dfVhUdf7/8dfIgGXQbtqQLl/zSjMtzZu0XVPDtFVMGEnUNeVSMyvtzpstjNAkNY2LyNZ7t83aXbVMEUFbwyw3LS1zrSzM7E5KQXFQUlARhjm/P7qcn6TCqAwon+fjurzknPM557zfw+i85pwzc2yWZVkCAABGqlPTBQAAgJpDEAAAwGAEAQAADEYQAADAYAQBAAAMRhAAAMBgBAFcFvbt26f27dufddmsWbOUnp4uSWrRooUOHz7s83a3bt2qqKioi97O+fjqq6/Uo0ePsy5bsGCB7rrrLj3zzDMXvP3S0lIlJyfL6XSqb9++cjqdWrhwoU59Ujg+Pl4tWrTQJ598Um69ffv2qWXLlpo6daokKS0tTaNGjTrj59+Kj4/XnXfeqejo6HJ//v3vf0uSioqKNGnSJG899957r1asWHHWbb355pt65ZVXzqvfFStWaOnSpZKkOXPmeOuvKlFRUdq6dWuFY/bu3asnnniiSvd7NhX9Hi7E3Llz9d5771XZ9nB5std0AcDFGjt27CW1nYuRmpqqlJQUdezY8YK38a9//Uv79u3TqlWrZLfbVVhYqOHDh+uaa67RoEGDJEl/+MMflJGRoU6dOnnXS09PV4MGDS5on/fff79Gjhx51mUvvfSS6tWrp9WrV8tmsykvL0+DBg1So0aN1LVr13JjBw8efN773r59u5o3b35BdVeV3Nxc7dmzp0ZruBBbt27VjTfeWNNloIYRBHDZi4+PV/Pmzcu9ELlcLo0YMUKDBw9WbGysfvjhB02fPl2//PKLysrKNHToUA0YMKDC7cyZM0c7duzQL7/8opEjRyo2NlaSNG/ePP3nP/9RQECAbrjhBj377LNyOBw6cOCAnnvuOeXk5MiyLN1777168MEHJUlvvPGG/vWvfyk4OFg33XTTWfsYN26c8vLyNHHiRI0dO1a33XbbWbe3b98+xcbGqlmzZsrJydHixYsVGhparvfS0lKVlJTIbrcrJCREycnJ8ng83jF9+vRRamqqiouLdcUVV0iS3nnnHd1zzz3lxlUFl8ulBg0aqLS0VEFBQbruuus0Z84c/f73vz9j7Jw5c1RQUKDJkyerR48e6tevnz7++GPt379f0dHRGjduXLnx69ev14YNG7R582ZvHz/++KOGDh0ql8ula6+9VjNnzlRoaKjy8vI0depU7d+/X6WlpYqMjNTo0aPPqOH7779XQkKCTpw4oaZNm+r48ePeZQsXLtT777+v4uJinThxQk8//bR69OihSZMmKS8vTyNHjtSiRYvOOq5nz57l9uN2uzVt2jR99tlnCgwM1P/93//phRdeUEFBgZxOpz7//HNJvx6pOX3a5XJp5MiROnjwoMLCwjRt2jQ5HA69++67WrBggWw2mwICAjRhwgTdfvvtKiws1PTp0/Xtt9+qtLRUd9xxhyZMmKC33npLWVlZSk5OVkBAwBn1wRycGkCtk5eXp/vvv18PP/ywYmNj5Xa7NWbMGD355JNKS0vTkiVL9Nprr+mLL76ocDuNGzdWWlqa5s6dq6SkJJWWlmrlypX68MMPlZqaqjVr1qh58+aKj4+XJD311FP605/+pDVr1ujNN9/U6tWr9Z///Ee7du3S3LlztWTJEq1cuVKBgYFn3d/f/vY3hYaGKiUlRX369Dnn9iTpwIEDevTRR7Vu3bpyIUCSRowYoby8PHXq1ElDhw7Vyy+/rJKSknIBpH79+mrfvr02bNggSfrf//6nZs2a6Xe/+90FPeb//Oc/zzg1sHv3bknS448/rk8++USdOnXSyJEjNW/ePAUHB6tx48aVbvf48eN64403tGzZMr322mvau3dvueU9e/ZUjx49dP/993uD2t69ezVr1ixlZmbq6quv9p6GiIuLU//+/ZWWlqbU1FRt2bJFa9euPWOfTz31lAYOHKg1a9Zo2LBhys3NlSTl5ORoy5YtWrx4sdasWaPx48dr9uzZCggI0PPPP6/rr79eixYtOue43/riiy/06aefavXq1UpLS1Pjxo29j1lF9uzZo8mTJ2vNmjW66aabNH36dElScnKyEhMTlZaWprFjx3pPZ8yYMUOtWrVSWlqa0tPTVVBQoNdff12xsbFq3bq1JkyYQAgwHEcEUOs89NBDatiwoZxOpyQpOztbP//8sxISErxjiouL9fXXX6tZs2bn3M6pawduvvlmlZSUqKioSJs2bVJMTIzq1asnSRo2bJgWLlyowsJCffbZZ3rttdckSSEhIYqJidGmTZuUl5enLl26yOFwSJIGDRqkjz76qMIejh8/fs7ttW3bVna7Xe3atTvrug0bNlRaWpq+//57bd26VVu3btWgQYMUHx/vfbGUpOjoaGVkZKhPnz5KT09Xv379lJWVVWFd51LRqYGWLVsqMzNTO3fu1LZt27R582YtXLhQs2bNOue1EqfcfffdkqTrrrtODRo00JEjRyoNEF26dFH9+vW9+z58+LCOHz+ubdu26ciRI5o1a5akXx/jb775Rn369PGuW1BQoN27d+vee++VJHXo0MF72iEsLEzJyclas2aNfvrpJ+3YsUPHjh07Y/++jrvpppsUEBCggQMHqmvXroqIiFCbNm20b9++Cvvr3LmzmjRpIkkaMGCA98hWZGSkHn/8cXXr1k1dunTRQw89JEn64IMP9NVXXyk1NVXSr8994HQcEUCtM3XqVNWpU0evv/66JKmsrEwhISHKyMjw/lm+fLn69+9f4Xbs9l9zss1mkyRZliWPx+OdliSPxyO32+1dfrpzLQsICKi0B4/HU+H2goKCvPX9VnJysvbs2aMbb7xRsbGxmj17tp5//nm9+eab5cbdfffd2rFjh/bv369t27bpzjvvrLSu8+V2uzV58mQdOXJErVu31ogRI/Tqq6/qkUce0VtvvVXp+nXr1vX+bLPZznhMzub0x+XUOqcez2XLlnmfA2+99dY5L7w7fT+ntrdz504NGjRIRUVF6tKli/e0z2/5Ou7qq69WRkaGnn76aQUEBGjcuHFaunTpGX2WlpaWW+/054/H4/HWN378eL3xxhtq3bq10tLSvKHP4/Fo1qxZ3r5XrFihyZMnn/Pxg3kIAqh12rVrp6SkJC1YsEDffvutbrjhBl1xxRXKyMiQJO3fv19RUVEX9O73zjvv1MqVK73njRcvXqzbb79dISEhatu2rffq9cLCQqWnp6tz587q0qWLNm/erAMHDkiSVq1aVel+goODz7m9yhw+fFizZs3SiRMnJP36ovbdd9/plltuKTcuKChIPXv21IQJE9SjR49zBouLYbfbtWfPHs2fP9/7guZ2u/XDDz+cUc+FCggI8AakcwkODla7du284fDo0aMaPHiw3n///XLjrrnmGrVq1cp7OmHnzp369ttvJUnbtm3zhpk//vGPev/991VWVuat4VR/FY073X//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5oeFhWnx4sW+lAgAAC6AT0Fg8uTJiomJ0S233HJBF+wBAIBLk09BwG63a8SIEf6uBQAAVDOfvlCoefPm2r17t79rAQAA1cynIwJ79+5V//799Yc//EF169b1zvflGgEAAHDp8ikIjB8/3t91AACAGuBTELjpppv8XQcAAKgBPgWBTp06nfG1vw6HQ5s2bfJrcQAAwL98CgLffPON9+eSkhK9/fbb2rNnj9+KAgAA1cOnTw2cLigoSDExMdq8ebM/6gEAANXIpyMCv/zyi/dny7KUlZWlo0eP+qsmAABQTc77GgFJatCggSZOnOjXwgAAgP+d9zUCAACg9vApCHg8Hi1atEibNm2S2+1Wly5dNHr0aNntPq0OAAAuUT5dLPjSSy/pk08+0fDhwzVixAh9/vnnSk5O9ndtAADAz3x6S//hhx9q5cqVCgwMlCTddddd6tu3rxISEvxaHAAA8C+fjghYluUNAdKvHyE8fRoAAFyefAoCLVu21IwZM/Tzzz9r7969mjFjBl87DABALeBTEEhMTNTRo0d13333aeDAgSooKNCzzz7r79oAAICfVRgESkpK9PTTT+vjjz9WUlKStmzZojZt2iggIEDBwcHVVSMAAPCTCoPA7NmzVVRUpNtuu807b9q0aTp69KjmzJnj9+IAAIB/VRgEPvjgA7300ktq0KCBd951112n5ORkvffee34vDgAA+FeFQSAwMFBXXHHFGfODg4MVFBTkt6IAAED1qDAI1KlTR0VFRWfMLyoqktvt9ltRAACgelQYBKKiojRp0iQdP37cO+/48eOaNGmSevXq5ffiAACAf1UYBIYPH66QkBB16dJFf/nLXzRgwAB16dJFV199tR577LHqqhEAAPhJhV8xXKdOHU2bNk2jR4/Wzp07VadOHbVp00ahoaHVVR8AAPAjn+41EBYWprCwMH/XAgAAqplP3ywIAABqJ4IAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgMIIAAAAGIwgAAGAwggAAAAYjCAAAYDCCAAAABiMIAABgML8GgaKiIkVFRWnfvn2SpC1btsjpdKpXr156+eWXveN27dqlmJgYRUREaOLEiXK73ZKk3NxcxcbGqnfv3nrkkUd07Ngxf5YLAIBx/BYEduzYocGDBys7O1uSVFxcrISEBM2fP19r165VVlaWNm7cKEmK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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 6.56 s, sys: 217 ms, total: 6.77 s\n",
"Wall time: 8.53 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# calculate log-likelihood for a given target property region\n",
"tmp_ll = like_mdl(data_ss['SMILES'])\n",
"tmp = tmp_ll.sum(axis = 1, skipna = True)\n",
"\n",
"# plot histogram of likelihood values\n",
"_ = plt.figure(figsize=(8,5))\n",
"_ = plt.hist(np.exp(tmp), bins=50)\n",
"_ = plt.title('Likelihood for SMILES in the data subset')\n",
"_ = plt.xlabel('Likelihood')\n",
"_ = plt.ylabel('Counts')\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### N-gram preparation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 3-5min to complete!**\n",
"\n",
"For prior, which is simply a molecule generator, we currently provide a N-gram model based on the extended SMILES language developed by our previous iQSPR developers. \n",
"\n",
"Note that because the default sample_order in `NGram` is 10, setting train_order=5 (max order to be used in iQSPR) when fitting will cause a warning, and XenonPy will automatically set sample_order=5 (actual order to be used when running the iQSPR).\n",
"\n",
"There is a default lower bound to the train_order and sample_order = 1, representing to use at least one character as a reference for generating the next character. We do not recommend altering this number."
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/opt/miniconda3/envs/MB16_xepy37_v06_test_env/lib/python3.7/site-packages/xenonpy/inverse/iqspr/modifier.py:169: RuntimeWarning: max : 10 is greater than max : 5,max will be reduced to max \n",
" (self.sample_order[1], self._train_order[1]), RuntimeWarning)\n",
"100%|██████████| 3000/3000 [01:22<00:00, 36.26it/s]\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 1min 22s, sys: 1.48 s, total: 1min 23s\n",
"Wall time: 1min 22s\n"
]
},
{
"data": {
"text/plain": [
"NGram(ngram_table=[[[ C ( N & ! O Cl Br F S ... [Si] [Se] \\\n",
"['C'] 4670 2029 490 2371 621 534 38 19 34 57 ... 10 1 \n",
"[')'] 2023 417 716 0 0 1014 252 48 72 80 ... 3 0 \n",
"['N'] 381 261 29 187 318 9 1 0 0 1 ... 1 0 \n",
"[0] 113 8 31 2 552 33 12 4 6 5 ... 0 0 \n",
"['O'] 787 0 11 0 715 7 0 0 0 4 ... 10 0 \n",
"['Cl'] 0 0 0 0 304 0 0 0 0 0 ... 0 0 \n",
"['Br'] 0 0 0 0 73 0 0 1 0 0 ... 0 0 \n",
"['F'] 0 0 0 0 112 0 0 0 0 0 ... 1 0 \n",
"['S'] 84 38 3 0 20 0 0 0 0 7 ... 0 0 \n",
"['B'] 0 4 0 0 0 0 0 0 0 0 ... 0 0 \n",
"['[N+]'] 0 84 0 1 0 0 0 0 0 0 ... 0 0 \n",
"['[O-]'] 0 0 0 0 85 0 0...\n",
"['(', '=O', ')', 'C', '=C'] 1 0 0 0 0 0 0 0 0\n",
"['=O', ')', 'C', '=C', 'C'] 0 0 0 0 0 0 0 0 1\n",
"[1, 'C', '&', '=C', '('] 1 0 0 0 0 0 0 0 0\n",
"['(', 'C', '=C', 'C', '=C'] 0 0 0 0 0 0 0 0 1,\n",
" =C 1 ( C\n",
"['(', 'C', '=C', 'C', '&'] 1 0 0 0\n",
"['C', '=C', 'C', '&', '=C'] 0 2 0 0\n",
"['&', '=C', 1, 'C', '&'] 1 0 0 0\n",
"['=C', 1, 'C', '&', '=C'] 0 0 1 0\n",
"[1, 'C', '&', '=C', '('] 0 0 0 1\n",
"['C', '&', '=C', '(', 'C'] 1 0 0 0\n",
"['&', '=C', '(', 'C', '=C'] 0 1 0 0\n",
"[')', 'C', '=C', 'C', '&'] 1 0 0 0]]],\n",
" sample_order=(1, 5))"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"%%time\n",
"\n",
"# N-gram library in XenonPy-iQSPR\n",
"from xenonpy.inverse.iqspr import NGram\n",
"\n",
"# initialize a new n-gram\n",
"n_gram = NGram()\n",
"\n",
"# train the n-gram with SMILES of available molecules\n",
"n_gram.fit(data_ss['SMILES'],train_order=5)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let us take a look at the molecules generated by our trained N-gram."
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Round 0 ['CC(C)CN1CC(C1)C1=CC=CC=C1', 'C1=CC(=CN=C1)S', 'C1=CC(=CC=C1CC(C(=O)O)N)Cl', 'CCCCCC(=O)OCC1=CC=C(C=C1)O', 'C1=CC(=C(C=C1O)C(=O)O)[N+](=O)[O-]']\n",
"Round 1 ['CC(C)CN1CC(C1)C1=CC=CC=C1', 'C1=CC(=CN=C1)Cl', 'C1=CC(=CC=C1CCCC(=O)O)OC', 'CCCCCC(=O)OCC1=CC=C(C=C1)C(C)N(CCCCC)C=C(C(=C)O)C(=O)N(C)S(=O)(=O)O', 'C1=CC(=C(C=C1O)C(=O)O)CCO']\n",
"Round 2 ['CC(C)CN1CC(C1)C1=CC=CC=C1', 'C1=CC(=CN=C1)C1=CC(=CC(=C1)OC)O', 'C1=CC(=CC=C1CCCC(=O)O)C(=O)C', 'CCCCCC(=O)OCC1=CC=C(C=C1)C(C)N(CCCCC)C=C(C(=C)O)C(=O)N(C)S(=O)C1=CC(=CC=C1NC(=O)C(CCCC1C(C(C1)O)O)N=C(N)N)O', 'C1=CC(=C(C=C1O)C(=O)O)CCN']\n",
"Round 3 ['CC(C)CN1CC(C1)C1=CC=CC=C1', 'C1=CC(=CN=C1)C1=CC(=CC=C1)Cl', 'C1=CC(=CC=C1CCCC(=O)O)Cl', 'CCCCCC(=O)OCC1=CC=C(C=C1)C(C)N(CCCCC)C=C(C(=C)O)C(=O)N(C)S(=O)C1=CC(=CC=C1NC(=O)C(CCCC1C(C(C1)O)O)N)OCC(CO)N', 'C1=CC(=C(C=C1O)O)N']\n",
"Round 4 ['CC(C)CN1CC(C1)C1=CC=CC=C1', 'C1=CC(=CN=C1)C#N', 'C1=CC(=CC=C1CCCCCC(=O)C(C1=CC=CC2=CC=CC=C2CCC2=CC=C(C=C2)Cl)NC(=N1)NCCCOC)C', 'CCCCCC(=O)OCC1=CC=C(C=C1)C(C)N(CCCCC)C=C(C(=C)O)C(=O)N(C)S(=O)C1=CC(=CC=C1NC(=O)C(CCCC1C(C(C1)O)O)N)OCC(=O)C1=CC=C(C=C1)CCO', 'C1=CC(=C(C=C1)C(=N)N=[N+]=[N-])Cl']\n"
]
}
],
"source": [
"np.random.seed(201903) # fix the random seed\n",
"\n",
"# perform pure iQSPR molecule generation starting with 5 initial molecules\n",
"n_loop = 5\n",
"tmp = data_ss['SMILES'][:5]\n",
"for i in range(n_loop):\n",
" tmp = n_gram.proposal(tmp)\n",
" print('Round %i' % i,tmp)\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Our N-gram-based molecular generator runs as follow:\n",
"1. given a tokenized SMILES in the extended SMILES format, randomly delete N tokens from the tail,\n",
"2. generate the next token using the N-gram table until we hit a termination token or a pre-set maximum length,\n",
"3. if generation ended without a termination token, a simple gramma check will be performed trying to fix any invalid parts, and the generated molecule will be abandoned if this step fails. \n",
"\n",
"Because we always start the modification from the tail and SMILES is not a 1-to-1 representation of a molecule, we recommend users to use the re-order function to randomly re-order the extended SMILES, so that you will not keep modifying the same part of the molecule. To do so, you can use the \"set_params\" function or do so when you initialize the N-gram using \"NGram(...)\". In fact, you can adjust other parameters in our N-gram model this way.\n",
"\n",
"Note that we did not re-order the SMILES when training our N-gram model, it is highly possible that a re-ordered SMILES during the generation process will lead to substrings that cannot be found in the pre-trained N-gram table, causing a warning message and the molecule will be kept the same."
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Round 0 ['CC(C)CN1CC(C1)C1(CCN(CC1)C)C1=CNC2=C1C=C(C=C2)Br', 'C1=CC(=CN=C1)C(=O)OCCO', 'C1=CC(=CC=C1CC(C(=O)O)N)N(CCCl)C(=O)CN1CCN(C1)C1=CC(=C(C(=C1)Cl)N=NC1=C(C=CC(=C1Cl)C)OC)N', 'O=C(CCCCC)Cl', 'C1=CC(=C(C=C1O)C(=O)O)O']\n",
"Round 1 ['C1C(C2(c3c[nH]c4ccc(Br)cc34)CCN(C)CC2)CCC2=CC(=O)N2C1', 'C1=CC(=CN=C1)C(=O)OCCO', 'C1=CC(=CC=C1CC(C(=O)O)N)N(CCCl)C(=O)CN1CCN(C1)C1=CC(=C(C(=C1)Cl)N=NC1=C(C=CC(=C1Cl)C)OCC1=CC=CS1)O', 'O=C(C(=O)O)S', 'C1=CC(=C(C=C1O)C(C(=O)O)O)Cl']\n",
"Round 2 ['C1C(C2(c3c[nH]c4ccc(Br)cc34)CCN(C)CC2)CCC2=CC(=O)N2C1', 'C1=CC(=CN=C1)C(=O)OC1=CC(=CC(=C1C)C(=O)O)C(=O)OCCCCCCCBr', 'C1=CC(=CC=C1CC(C(=O)O)N)N(CCCl)C(=O)CN1CCN(C1)C1=CC(=C(C(=C1)Cl)N=NC1=C(C=CC(=C1Cl)C)OCC1=CC=CC=C1)N', 'O=C(CCl)N1CCCCCOCCCCOCCCCOC(C(O1)OCC1=CC=CC=C1)COC(=O)C(=C)C(=O)OCCN(C)CC1=CNC2=CC=CC=C12', 'C1=CC(=C(C=C1O)C(C(=O)O)NC(C)C)C(=O)OC1=CC(=C(C=C1)Cl)O']\n",
"Round 3 ['C1C(C2(c3c[nH]c4ccc(Br)cc34)CCN(C)CC2)CCC2=CC(=O)N2C1', 'C1=CC(=CN=C1)C(=O)OC1=CC(=CC(=C1C)C(=O)O)C(=O)OCCCCF', 'C1=CC(=CC=C1CC(C(=O)O)N)N(CCCl)C(=O)CN1CCN(C1)C1=CC(=C(C(=C1)Cl)N=NC1=C(C=CC(=C1Cl)C)OCCN(CC)C)Cl', 'O=C(CCl)N1CCCCCOCCCCOCCCCOC(C(O1)OCC1=CC=CC=C1)COC(=O)C(=C)C(=O)OCCN(C)CC1=CNC2=C1C(=O)N2', 'C1=CC(=C(C=C1O)C(C(=O)O)NC(C)C)C(=O)OC1=CC(=C(C=C1)Cl)O']\n",
"Round 4 ['C1C(C2(c3c[nH]c4ccc(Br)cc34)CCN(C)CC2)CCC2=CC(=O)N2C1', 'C1=CC(=CN=C1)C(=O)OC1=CC(=CC(=C1C)C(=O)O)C(=O)OCCCC', 'c1(Cl)c(C)ccc(OCCN(C)CC)c1N=Nc1c(Cl)cc(N2CCN(CC(=O)N(CCCl)c3ccc(CC(N)C(=O)O)cc3)C)OC1C(C=C2)CCCCCC', 'O=C(CCl)N1CCCCCOCCCCOCCCCOC(C(O1)OCC1=CC=CC=C1)COC(=O)C(=C)C(=O)OCCN(C)CC1=CNC2=C1C=C(C=C2)COC(=O)C=C(C#N)C', 'C1=CC(=C(C=C1O)C(C(=O)O)NC(C)C)C(=O)OC1=CC(=C(C=C1)Cl)F']\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit ERROR: [10:15:49] Can't kekulize mol. Unkekulized atoms: 18 19 20\n",
"RDKit ERROR: \n"
]
}
],
"source": [
"# change internal parameters of n_gram generator\n",
"_ = n_gram.set_params(del_range=[1,10], max_len=500, reorder_prob=0.5)\n",
"\n",
"np.random.seed(201906) # fix the random seed\n",
"\n",
"# perform pure iQSPR molecule generation starting with 10 PG molecules\n",
"n_loop = 5\n",
"tmp = data_ss['SMILES'][:5]\n",
"for i in range(n_loop):\n",
" tmp = n_gram.proposal(tmp)\n",
" print('Round %i' % i,tmp)\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"To avoid getting stuck at certain molecule structures due to the re-ordering issue, we recommend two solutions: \n",
"\n",
"1. Avoid re-ordering: standardize the SMILES to a single format and avoid re-ordering during generation process. To avoid not modifying only certain part of the molecule, pick a larger maximum number for \"del_range\". This way, you will save time on training the N-gram model, but probably need more iteration steps during the actual iQSPR run for convergence to your target property region. This is recommend only if you are really out of computing power for training a big N-gram table.\n",
"\n",
"2. Data augmentation: expand your training set of SMILES by adding re-ordered SMILES of each originally available SMILES. Be careful of the bias to larger molecules due to more re-order patterns for longer SMILES. This way, you will need longer time to train the N-gram model, but probably converge faster in the actual iQSPR run."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 5-10min to complete!**\n",
"\n",
"You can skip this part and proceed forward"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit WARNING: [10:17:27] WARNING: not removing hydrogen atom without neighbors\n",
"100%|██████████| 3000/3000 [04:09<00:00, 12.02it/s]"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 4min 9s, sys: 2.07 s, total: 4min 11s\n",
"Wall time: 4min 10s\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# Method 1: use canonical SMILES in RDKit with no reordering\n",
"cans = [Chem.MolToSmiles(Chem.MolFromSmiles(smi)) for smi in data_ss['SMILES']]\n",
"n_gram_cans = NGram(reorder_prob=0)\n",
"n_gram_cans.fit(cans)\n",
"\n",
"# save results\n",
"with open('ngram_cans.obj', 'wb') as f:\n",
" pk.dump(n_gram_cans, f)\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next TWO modules may take 5-10hr to complete!**\n",
"\n",
"You can skip the next TWO cells for time-saving and use our pre-trained `NGram` to proceed forward. Downloading is available at:\n",
"* https://github.com/yoshida-lab/XenonPy/releases/download/v0.6.2/ngram_pubchem_ikebata_reO15_O10.xz\n",
"* https://github.com/yoshida-lab/XenonPy/releases/download/v0.6.2/ngram_pubchem_ikebata_reO15_O11to20.xz\n",
"\n",
"Using the merge table function in `NGram`, we can train and store the big `NGram` tables separately, and combine them later, as will be demonstrated below. Note that the most efficient way to manually parallelize the training of `NGram` is NOT to split the order, but to split the training set of SMILES strings, which is not what we are doing here.\n"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit WARNING: [10:21:49] WARNING: not removing hydrogen atom without neighbors\n",
"RDKit ERROR: [10:21:52] Explicit valence for atom # 1 Br, 5, is greater than permitted\n",
"RDKit WARNING: [10:21:52] WARNING: not removing hydrogen atom without neighbors\n",
"RDKit WARNING: [10:21:52] WARNING: not removing hydrogen atom without neighbors\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"FBr(F)(F)(F)F\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit WARNING: [10:21:53] WARNING: not removing hydrogen atom without neighbors\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 24.5 s, sys: 74.4 ms, total: 24.6 s\n",
"Wall time: 24.6 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# N-gram library in XenonPy-iQSPR\n",
"from xenonpy.inverse.iqspr import NGram\n",
"\n",
"np.random.seed(201906) # fix the random seed\n",
"\n",
"# Method 2: expand n-gram training set with randomly reordered SMILES\n",
"# (we show one of the many possible ways of doing it)\n",
"n_reorder = 15 # pick a fixed number of re-ordering\n",
"\n",
"# convert the SMILES to canonical SMILES in RDKit (not necessary in general)\n",
"cans = []\n",
"for smi in data['SMILES']:\n",
" # remove some molecules in the full SMILES list that may lead to error\n",
" try:\n",
" cans.append(Chem.MolToSmiles(Chem.MolFromSmiles(smi)))\n",
" except:\n",
" print(smi)\n",
" pass\n",
"\n",
"mols = [Chem.MolFromSmiles(smi) for smi in cans]\n",
"smi_reorder_all = []\n",
"smi_reorder = []\n",
"for mol in mols:\n",
" idx = list(range(mol.GetNumAtoms()))\n",
" tmp = [Chem.MolToSmiles(mol,rootedAtAtom=x) for x in range(len(idx))]\n",
" smi_reorder_all.append(np.array(list(set(tmp))))\n",
" smi_reorder.append(np.random.choice(smi_reorder_all[-1], n_reorder,\n",
" replace=(len(smi_reorder_all[-1]) < n_reorder)))\n",
"\n",
"n_uni = [len(x) for x in smi_reorder_all]\n",
"_ = plt.hist(n_uni, bins='auto') # arguments are passed to np.histogram\n",
"_ = plt.title(\"Histogram for number of SMILES variants\")\n",
"_ = plt.show()\n"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [],
"source": [
"%%time\n",
"\n",
"# flatten out the list and train the N-gram\n",
"flat_list = [item for sublist in smi_reorder for item in sublist]\n",
"\n",
"# first train up to order 10\n",
"n_gram_reorder1 = NGram(reorder_prob=0.5)\n",
"_ = n_gram_reorder1.fit(flat_list, train_order=10)\n",
"# save results\n",
"_ = joblib.dump(n_gram_reorder1, 'ngram_pubchem_ikebata_reO15_O10.xz')\n",
"# with open('ngram_pubchem_ikebata_reO15_O10.obj', 'wb') as f:\n",
"# pk.dump(n_gram_reorder1, f)\n",
" \n",
"# Then, train up from order 11 to 20\n",
"n_gram_reorder2 = NGram(reorder_prob=0.5, sample_order=(11, 20))\n",
"_ = n_gram_reorder2.fit(flat_list, train_order=(11, 20))\n",
"# save results\n",
"_ = joblib.dump(n_gram_reorder2, 'ngram_pubchem_ikebata_reO15_O11to20.xz')\n",
"# with open('ngram_pubchem_ikebata_reO15_O11to20.obj', 'wb') as f:\n",
"# pk.dump(n_gram_reorder2, f)\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here, we will load the two parts of the pre-trained `NGram` files and combine them for our use in the example. Note that you have the option to overwrite an existing `NGram` while combining or creating a new one. We recommend overwriting the existing one (default setting of merge_table) if the `NGram` table is expected to be very large in order to avoid memory issue."
]
},
{
"cell_type": "code",
"execution_count": 75,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 9.79 s, sys: 1 s, total: 10.8 s\n",
"Wall time: 10.8 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# load a pre-trained n-gram from the pickle file\n",
"n_gram = joblib.load('ngram_pubchem_ikebata_reO15_O10.xz')\n",
"# with open('ngram_pubchem_ikebata_reO15_O10.obj', 'rb') as f:\n",
"# n_gram = pk.load(f)\n",
" \n",
"# load a pre-trained n-gram from the pickle file\n",
"n_gram2 = joblib.load('ngram_pubchem_ikebata_reO15_O11to20.xz')\n",
"# with open('ngram_pubchem_ikebata_reO15_O11to20.obj', 'rb') as f:\n",
"# n_gram2 = pk.load(f)\n",
"\n",
"_ = n_gram.merge_table(n_gram2)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### iQSPR: sequential Monte Carlo"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"After the preparation of forward model (likelihood) and `NGram` model (prior), we are now ready to perform the actual iteration of iQSPR to generate molecules in our target property region."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### run iQSPR"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We need to first set up some initial molecules as a starting point of our iQSPR iteration. Note that the number of molecules in this initial set governs the number of molecules generated in each iteration step. In practice, you may want at least 100 or even 1000 molecules per step depending your computing resources to avoid getting trapped in a local region when searching the whole molecular space defined by your N-gram model."
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['CC(Cc1ccccc1)NCCn1cnc2c1c(=O)n(C)c(=O)n2C' 'CN1CCN(C)C1=O' 'N#CO'\n",
" 'COC1C(O)C(N)C(OC2OC(C(C)N)CCC2N)C(O)C1N(C)C(=O)CN' 'CCCCOP(N)(=O)OCCCC'\n",
" 'NS(=O)(=O)Cl' 'CCSC(=O)N(CC)CC' 'CCCCCC=CCC=CCC=CCCCCC(=O)O'\n",
" 'CCCCCC=CCC=CCC=CC=CC(O)CCCC(=O)O'\n",
" 'CC1NCCc2c(C(=O)N3CCCCC3)[nH]c3cccc1c23' 'ClC1C=CC(Cl)C(Cl)C1Cl'\n",
" 'CC1=CC(=O)CC1' 'CC1C(=O)NC(=O)N(C2CCCCC2)C1=O'\n",
" 'O=[N+]([O-])c1cc2nc(C(F)(F)F)[nH]c2cc1Cl' 'O=C1C=C2NC(C(=O)O)C=C2CC1=O'\n",
" 'CCSC(=O)N(CC)CC' 'CCCCCCCCOc1ccc(C(=O)c2ccccc2O)c(O)c1'\n",
" 'COc1ccc2c(c1)CCC(c1ccccc1)C2(O)c1ccccn1'\n",
" 'CCN(CCOC(=O)C(OC)(c1ccccc1)c1ccccc1)CC(C)C' 'COc1ccccc1NC(=O)CC(C)=O'\n",
" 'CC1CC2C(=CC1=O)CCC1C2CCC2(C)C1CCC2(C)O' 'C1COCCN1' 'NCCNCCO'\n",
" 'CCC(C)Cc1cccc(O)c1C' 'COC(F)(F)CCl']\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
"RDKit WARNING: [23:16:50] WARNING: not removing hydrogen atom without neighbors\n"
]
}
],
"source": [
"# set up initial molecules for iQSPR\n",
"np.random.seed(201906) # fix the random seed\n",
"cans = [Chem.MolToSmiles(Chem.MolFromSmiles(smi)) for i, smi in enumerate(data_ss['SMILES'])\n",
" if (data_ss['HOMO-LUMO gap'].iloc[i] > 4)]\n",
"init_samples = np.random.choice(cans, 25)\n",
"print(init_samples)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For any sequential Monte Carlo algorithm, annealing is usually recommended to avoid getting trapped in a local mode. In iQSPR, we use the beta vector to control our annealing schedule. We recommend starting with a small number close to 0 to minimize the influence from the likelihood at the beginning steps and using some kind of exponential-like schedule to increase the beta value to 1, which represents the state of the original likelihood. The length of the beta vector directly controls the number of iteration in iQSPR. We recommend adding more steps with beta=1 at the end to allow exploration of the posterior distribution (your target property region). In practice, iteration of the order of 100 or 1000 steps is recommended depending your computing resources."
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Number of steps: 50\n",
"[0.01 0.02 0.03 0.04 0.05 0.06\n",
" 0.07 0.08 0.09 0.1 0.11 0.12\n",
" 0.13 0.14 0.15 0.16 0.17 0.18\n",
" 0.19 0.2 0.21 0.23111111 0.25222222 0.27333333\n",
" 0.29444444 0.31555556 0.33666667 0.35777778 0.37888889 0.4\n",
" 0.4 0.46666667 0.53333333 0.6 0.66666667 0.73333333\n",
" 0.8 0.86666667 0.93333333 1. 1. 1.\n",
" 1. 1. 1. 1. 1. 1.\n",
" 1. 1. ]\n"
]
}
],
"source": [
"# set up annealing schedule in iQSPR\n",
"beta = np.hstack([np.linspace(0.01,0.2,20),np.linspace(0.21,0.4,10),np.linspace(0.4,1,10),np.linspace(1,1,10)])\n",
"print('Number of steps: %i' % len(beta))\n",
"print(beta)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 2-3min to complete!**\n",
"\n",
"Putting together the initial molecules, beta vector, forward model (likelihood), N-gram model (prior), you can now use a for-loop over the IQSPR class to get the generated molecules at each iteration step. More information can be extracted from the loop by setting \"yield_lpf\" to True (l: log-likelihood, p: probability of resampling, f: frequency of appearence). Note that the length of generated molecules in each step may not equal to the length of intial molecules because we only track the unique molecules and record their appearance frequency separately.\n",
"\n",
"We will use the previously trained `NGram` here. Please make sure you have loaded the `NGram` models and merged them property in the previous section. We will reset the parameters again to make sure the values are what we expected them to be. \n",
"\n",
"Note that warnings will be thrown out if there are molecules generated from the `NGram` that cannot be converted to RDKit's MOL format. "
]
},
{
"cell_type": "code",
"execution_count": 79,
"metadata": {},
"outputs": [],
"source": [
"%%time\n",
"\n",
"# library for running iQSPR in XenonPy-iQSPR\n",
"from xenonpy.inverse.iqspr import IQSPR\n",
"\n",
"# update NGram parameters for this exampleHOMO-LUMO gap\n",
"n_gram.set_params(del_range=[1,20],max_len=500, reorder_prob=0.5, sample_order=(1,20))\n",
"\n",
"# set up likelihood and n-gram models in iQSPR\n",
"iqspr_reorder = IQSPR(estimator=prd_mdls, modifier=n_gram)\n",
" \n",
"np.random.seed(201906) # fix the random seed\n",
"# main loop of iQSPR\n",
"iqspr_samples1, iqspr_loglike1, iqspr_prob1, iqspr_freq1 = [], [], [], []\n",
"for s, ll, p, freq in iqspr_reorder(init_samples, beta, yield_lpf=True):\n",
" iqspr_samples1.append(s)\n",
" iqspr_loglike1.append(ll)\n",
" iqspr_prob1.append(p)\n",
" iqspr_freq1.append(freq)\n",
"# record all outputs\n",
"iqspr_results_reorder = {\n",
" \"samples\": iqspr_samples1,\n",
" \"loglike\": iqspr_loglike1,\n",
" \"prob\": iqspr_prob1,\n",
" \"freq\": iqspr_freq1,\n",
" \"beta\": beta\n",
"}\n",
"# save results\n",
"with open('iQSPR_results_reorder.obj', 'wb') as f:\n",
" pk.dump(iqspr_results_reorder, f)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### plot results"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let us take a look at the results."
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [],
"source": [
"with open('iQSPR_results_reorder.obj', 'rb') as f:\n",
" iqspr_results_reorder = pk.load(f)\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First, we look at how the likelihood values of the generated molecules converged to a distribution peaked around 1 (hitting the target property region). The gradient correlates well to the annealing schedule."
]
},
{
"cell_type": "code",
"execution_count": 48,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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1GhcdWGVy2W0t7dXj0877bRJbwL/iU98AgsWLMC2bdsQCASqP1+3bh127twJAHjwwQexZs0azl8jIiIigssetlAohGPHjlWDtGeffRbBYNDzH3vllVfw6KOPYunSpXjPe94DoNKz9k//9E+48cYbsWXLFmzYsAGxWAy333675/MTERERNSJXiw6ef/55fOpTn8LAwACWLl2KgwcP4o477sC55547HXV0hXPY6hfn0dQ3tl/9YtvVN7ZfffJ1Dts555yDH/zgB3jhhRdgmibOOussJJNJz3/MT4Wi4biXKOA927OX8n6VJSIiInI1h+2RRx5BPB7HunXrcOGFF8KyLNvVnTPlUF8GeU23/fexbM+9Q3ns7047lvVa3q+yRERERIDLgG3r1q14+umnAQAPP/wwNm3ahPnz5/taMa9ECMgXDdt/PzHbsyg4l/Va3q+yRERERIDLIdFvfetb+MhHPoLTTjsNr7zyCrZt21ZT89cAwIRzBmev2Z7DQRmFoo50voiAJE7ZuZl1moiIiLxyFS0sWbIEd955J66++mrceeedWL16td/18mxBR8xxDttk9qyzIECwKv914uXc3DuPiIiIvHIM2FavXn1SvrVSqYSrrroKiqJAEAQ8//zzvlfQrVBQnnCVqJc968YCqmhzyNWGuV7Ozb3ziIiIyAvHgO2BBx6YrnrUHA5dEhERUa1wjEIOHz6MtWvX4mc/+9m4/97V1eVLpWoBhy6JiIioVjgGbD/5yU+wdu1a/Nu//dsf/JsgCLj44ot9q1gt4NAlERER1QJXOx3UA+50UL+Yrbu+sf3qF9uuvrH96pMvOx1s3rzZ8Zfvvvtuz3+QiIiIiLxxDNje/e53T1c9iIiIiMiGY8D2nve85w9+9v3vfx/vf//7fasQEREREZ3M1dZUJ9qxY4cf9SAiIiIiG54DtgZZo0BERERUNzxng121apUf9ah7eU13nbPNr7JERETUmFwFbMeOHav+/1//9V+jp6cHqqqiubnZt4rVk7ymY393GqIgwLQsLO1qsg2u/CpLREREjctVwPaBD3wA/f39iEQiEEURmUwGkiShubkZ//iP/4hzzjnH73rWtHzRgCgIiIaVCfcd9assERERNS5XAdtb3/pWnHfeebj88ssBAD/96U/xxBNP4Morr8RnP/tZ3HfffX7WseZ52XfUr7JERETUuFwtOnj11VerwRpQyc+2e/dunH766dB13a+61Y2xfUc7W8ITDlv6VZaIiIgal6suG8Mw8Nprr2HZsmUAgNdeew2maaJYLMIwDF8rWC+87DvqV1kiIiJqTK4Cto9//OO46qqrcOqpp8I0TRw6dAi33347vv71r+Nd73qX33UkIiIimtVcBWzr1q3DT3/6Uzz77LOQZRmrV69GU1MTzjjjDESj3jcwJSIiIiL3XAVspmnivvvuw+OPPw7DMHD++edj8+bNDNaIiIiIpoGrRQdf/epX8atf/QpXX301rrnmGrzwwgu47bbbJvUHn3vuObz3ve/FZZddhquvvhrd3d0AgGeeeQbnnXceLrvsMlx22WX427/920mdn4iIiKjRCJaLvaYuvfRS/Md//AcUpTL5vVQq4dJLL8VDDz3k+Q++853vxDe/+U2sWLECP/zhD/Hoo4/irrvuwre//W3ouo7rr7/e+6sAMDSUhWly26x61NYWw8BAZqarQZPE9qtfbLv6xvarT6IooKXF+wilqx42y7KqwRoABAKBk47dKpVKuPHGG7FixQoAwPLly9HT0wMAePnll/HLX/4SmzZtwubNm6s/d6tQ5GpVIiIiakyuArYVK1bgS1/6Eg4fPowjR45g69at1RQfXgQCAVx22WUAKvPivvGNb1RXmcZiMVx11VX48Y9/jHXr1uGmm27ydO5DfRnkNeaEcyuv6RhMF/ieERER1QFXQ6LZbBZf/OIX8fjjj8OyLJx//vm48sorsWbNGtvf2bVrF7Zu3XrSzxYvXozt27ejVCphy5YtSKfTuPvuu8ftrVuzZg1+/vOfIxaLuXohu18fRHtzGO3JsKvys1m2oOPVg6nqHqUrFiYRDTHXGxERUa1yFbCN55xzzsHzzz/v+fdyuRw+8pGPIJFI4Pbbb0cgEIBpmrjnnntw3XXXQZIkAJWA7fHHH0c47C4Ae+KFI5jXGnFMMpvXju/HGZRndTLawXQBvUP56h6lnS1htDaFZqw+nIdR39h+9YttV9/YfvXJ1zls45lknIdPfOITWLBgAbZt24ZAIFCphCji4Ycfxk9/+lMAwM6dO3HWWWe5DtYAYEFHbMJgbX93Gr1DeezvTs/qoUDuUUpERFRfJn2nFgTB8++88sorePTRR7F06VK85z3vAQC0t7fjn/7pn3Drrbfi05/+NO68804kk0nPaUNCQdlxlWi+aEAUhGqvUr5ozNpetrE9StnbSEREVB+mtWvl9NNPx969e8f9t1NPPRU7duzw7W+zV+lk3KOUiIiofjhGLatXrx63J82yLGia5lul/MBeJSIiIqpXjgHbAw88MF31mBbsVSIiIqJ65BiwdXV1TVc9iIiIiMjGpFeJEhEREdH0YMBGREREVOMYsBERERHVOAZsRERERDWOARsRERFRjWuYgK1QNGa6CkRERES+aJiA7VBfZlbvD0pERESNq2ECNhEC8uxlIyIiogbUMAGbCe4PSkRERI2pYSKcBR0xBBVppqtBRERENOUapoctxN41IiIialANE7ARERERNSoGbEREREQ1juOIRA0ur+nIFw2EgzLCqjLT1SEioklgwEbUwPKajv3daYiCANOysLSriUEbEVEd4pAoUQPLFw2IgoBoWIEoMFchEVG9YsBG1MDCQRmmZSGb12FazFVIRFSvePUmamBhVcHSribOYSMiqnMNE7AVigYT5xKNI6wqDNSIiOpcwwyJcvN3IiIialQNE7Bx83ciIiJqVA0TsHHzdyIiImpU0x6wPfvss/izP/szbNq0CZs3b0Y6nQYAjI6O4rrrrsP69evxl3/5lxgYGPB03gUdMc7TISIiooY07QHb3/7t3+K2227Dj3/8YyxduhT/8i//AgDYtm0b1qxZg127duGKK67ALbfcMt1VIyIiIqpJ0x6wPfjgg1i6dCl0XUdfXx/i8TgA4LHHHsOmTZsAABs3bsTjjz8OXXe/iICLDoiIiKhRTfukL0VRsHfvXlxzzTWQZRk333wzAKC/vx9tbW2VSskyotEoUqkUOjo6XJ23KR5CKKKiLRn2re7kn7a22ExXgd4Etl/9YtvVN7bf7OFbwLZr1y5s3br1pJ8tXrwY27dvx/Lly/Hkk09ix44duOmmm7Bjx44/+H3LsiCK7jsA06MFxAIiBsrlN113ml5tbTEMDGRmuho0SWy/+sW2q29sv/okigJaWqKef8+3gG39+vVYv379ST8rFot45JFH8K53vQsAcOmll+LWW28FALS3t2NwcBCdnZ0wDAO5XA6JRML131vQEWPiXCIiImpI0zqHTZZlfO5zn8Pu3bsBVHrhzjnnHADAunXrsHPnTgCVeW5r1qyBorhf9RlykdIjr+kYTBd8mevm57mJiIhodpvWOWySJOFrX/saPvOZ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LV++HHv37gUAjIyMYMuWLThy5AhisRhuv/12zJs3b6aqRkRERFQzZjRgIyIiIqKJNczWVERERESNigEbERERUY1jwEZERERU4xiwEREREdU4BmxERERENY4BGxEREVGNY8BGREREVOMYsBERERHVuLoP2H784x/jkksuwcUXX4zvfve7M10dciGbzWLjxo04evQoAODJJ5/Epk2bcPHFF+NrX/vaDNeOnHzjG9/Ahg0bsGHDBtx2220A2H714h//8R9xySWXYMOGDbj33nsBsO3q0a233ootW7YAYPvVk6uuugobNmzAZZddhssuuwwvvfSS9/az6lhvb6914YUXWsPDw1Yul7M2bdpk7du3b6arRQ5efPFFa+PGjdbKlSutI0eOWIVCwVq3bp11+PBhS9d169prr7Uee+yxma4mjeOJJ56w3v/+91vFYtEqlUrWBz/4QevHP/4x268OPP3009aVV15p6bpuFQoF68ILL7R++9vfsu3qzJNPPmmdd9551ic/+UleO+uIaZrWBRdcYOm6Xv3ZZNqvrnvYnnzySfzxH/8xEokEwuEw3v3ud+Ohhx6a6WqRgx/84Af47Gc/i/b2dgDAb37zGyxYsACnnHIKZFnGpk2b2IY1qq2tDVu2bEEgEICiKFiyZAkOHjzI9qsD5557Lv71X/8VsixjaGgI5XIZo6OjbLs6MjIygq997WvYvHkzAF4768nvfvc7AMC1116LSy+9FN/5zncm1X51HbD19/ejra2tetze3o6+vr4ZrBFN5JZbbsGaNWuqx2zD+nHqqafi7LPPBgAcPHgQu3btgiAIbL86oSgKvv71r2PDhg1Yu3Ytv3t15jOf+QxuuukmxONxALx21pPR0VGsXbsWd955J7Zv344dO3bg2LFjntuvrgM20zQhCEL12LKsk46p9rEN68++fftw7bXX4m/+5m9wyimnsP3qyMc+9jE89dRT6OnpwcGDB9l2deK+++7DnDlzsHbt2urPeO2sH6tXr8Ztt92GWCyGZDKJ9773vfj617/uuf1kvyvqp87OTjz77LPV44GBgepQG9WHzs5ODAwMVI/ZhrXtueeew8c+9jF86lOfwoYNG/DMM8+w/erA66+/jlKphNNOOw2hUAgXX3wxHnroIUiSVC3DtqtdDz74IAYGBnDZZZchnU4jn8+ju7ub7Vcnnn32Wei6Xg24LctCV1eX52tnXfewvfWtb8VTTz2FVCqFQqGAn/3sZ3j7298+09UiD8466ywcOHAAhw4dQrlcxgMPPMA2rFE9PT346Ec/ittvvx0bNmwAwParF0ePHsXf//3fo1QqoVQq4dFHH8WVV17JtqsT9957Lx544AHcf//9+NjHPoZ3vvOd+Od//me2X53IZDK47bbbUCwWkc1m8aMf/Qg333yz5/ar6x62jo4O3HTTTfjgBz8IXdfx3ve+F2eeeeZMV4s8CAaD+PKXv4wbbrgBxWIR69atw5/+6Z/OdLVoHP/yL/+CYrGIL3/5y9WfXXnllWy/OrBu3Tr85je/weWXXw5JknDxxRdjw4YNSCaTbLs6xWtn/bjwwgvx0ksv4fLLL4dpmviLv/gLrF692nP7CZZlWdNUZyIiIiKahLoeEiUiIiKaDRiwEREREdU4BmxERERENY4BGxEREVGNY8BGREREVOMYsBERERHVOAZsRDSrvPjii7jqqquwadMmbNy4ER/60Iewb98+AJXNmVOp1AzXkIjoD9V14lwiIi9KpRKuv/56fPvb38bKlSsBAPfffz8+/OEP49FHH8UTTzwxwzUkIhofAzYimjUKhQIymQzy+Xz1Z5deeimi0Sj+/u//HgBw9dVX41vf+hZEUcTnP/959PT0QNd1bNiwAZs3b8bRo0dx1VVX4W1vexteeuklWJaFz3zmM1izZs1MvSwimgW40wERzSr33nsvtm3bhtbWVpxzzjk477zzsGHDBoRCISxfvhxPPfUUkskkPvjBD+Kv/uqv8M53vhPFYhEf/vCHceWVV+LMM8/En/zJn+D222/Hpk2b8Itf/AJ/93d/h5///OdQFGWmXx4RNSgGbEQ062SzWfz617/Gr3/9azz66KMAgB/+8IdYs2YNnnrqKaiqire85S1YtmxZ9Xfy+TzWr1+P973vffizP/szPPPMM9V/W7duHe68806sWrVq2l8LEc0OHBIlolnjueeewwsvvIAPfehDuPDCC3HhhRfi5ptvxsaNG0+av2aaJizLwo4dOxAKhQAAqVQKwWAQw8PDkCTppPOapvkHPyMimkpcJUpEs0YymcRdd92FZ599tvqzgYEBZLNZLFu2DJIkwTAMRKNRnH322bj33nsBAKOjo/jABz5Q7Y1LpVJ4/PHHAQD/9V//BUVRTuqNIyKaahwSJaJZ5Ve/+hXuuOMO9Pb2IhgMIhaL4aMf/Sje/va34+abb8aePXtwxx13IBwO4wtf+AKOHTuGUqmEjRs34oYbbsDRo0dxySWX4KKLLsK+ffugqio+97nP4bTTTpvpl0ZEDYwBGxGRB0ePHsWmTZvwwgsvzHRViGgW4ZAoERERUY1jDxsRERFRjWMPGxEREVGNY8BGREREVOMYsBERERHVOAZsRERERDWOARsRERFRjfv/W7oTVl1KjNAAAAAASUVORK5CYII=\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAmkAAAE/CAYAAAAdTlSlAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAABfsElEQVR4nO3de3RcV30v8O+Z55mHpBmNRpLjVxQ7ToIfcULAJqGhoRAXxyFpmgu5sHAKxZe0UN+ataA00AJJKY/SupeUZsG9EChNaEIbEswtxiUUyo0NISHEsePEduKnZEmjGWmkeZyZc+ac+8dYY5v4nJkta0vnSN/PWllaE/18tHX2PH7aj99WLMuyQERERESu4pvtBhARERHRqzFJIyIiInIhJmlERERELsQkjYiIiMiFmKQRERERuRCTNCIiIiIXCsx2Ay7E6GgRpskKIl6USsWRzRZmuxk0Bew7b2P/eRf7zj3KFQPHhibggwITFpb2tCEStk+pfD4FyWRM+Od4OkkzTYtJmoex77yLfedt7D/vYt+5Qzjox6KuGEoVA9FwAOGgX0rfSJ3u3LFjBzZu3Igbb7wRDz744Ku+v3//fvz+7/8+3v72t+MDH/gAxsfHZTaHiIiIaFpE1SC6OiKIqkFpP0NakjY0NITt27fjoYcewmOPPYaHH34Yhw8fPifmM5/5DLZu3Yrvfe976Ovrw9e+9jVZzSEiIiLyFGlJ2u7du7F+/XokEglEo1Fs2LABO3fuPCfGNE0Ui0UAQLlchqqqsppDRERENG1Kmo6RfBklTZf2M6StSRseHkY6nW487u7uxt69e8+J+djHPob3ve99+Ou//mtEIhE88sgjQj8jlYpPS1tpdqTTbbPdBJoi9p23sf+8i33nDoWyjmMjJfgUBUVdx+VdbYhHpn/aU1qSZpomFEVpPLYs65zHmqbh4x//OL7xjW9gzZo1eOCBB/Bnf/Zn+OpXv9ryz8hmC1xE6VHpdBsymYnZbgZNAfvO29h/3sW+c4+RfBkT42XEo0EUSjpO9I+iqyNiG+/zKVMaWJI23dnb24tMJtN4nMlk0N3d3Xh88OBBhMNhrFmzBgDwzne+E0899ZSs5hARERFNi2g4ANOyUCjpMC0LUYfyGxdCWpJ27bXXYs+ePcjlciiXy9i1axeuv/76xveXLl2KwcFBvPLKKwCAJ554AqtXr5bVHCIiIqJpEVWDWL6wA72pKJYv7JC2w1PadGdPTw+2bduGzZs3Q9d13H777VizZg22bNmCrVu3YvXq1fjsZz+LP/3TP4VlWUilUvjrv/5rWc0hIiIimjZRNSi1/AYAKJZleXZRF9ekeRfXVngX+87b2H/exb7zLtetSSMiIiKiqWOSRkRERORCTNKIiIiIXIhJGhEREZELMUkjIiIiciEmaUREREQuxCSNiIiIyIWYpBERERG5EJM0IiIiIhdikkZERETkQkzSiIiIiFyISRoRERGRCzFJIyIiInIhJmlERERELhSY7QYQERERuUFJ01GqGIiGA4iqwdluDpM0IiIiopKm43B/Hj5FgWlZWL6wY9YTNU53EhERUUtKmo6RfBklTZ/W2JGxMg6dHMXIWHlaY0XaUaoYqOomaqaJqm6iVDFaur5MHEkjIiKipkRGmkRiR8bKeHLfKfgVBTXLwnWrFqArEbngWNF2wAL6RwqNa1/c2+Z8Q2YAR9KIiIioqVLFgE9REI8G4VMUx5EmkdjRgga/oqCzQ4VfUTBa0KYlVrQdUICFXTEs6oljYVcMUBwvPSM4kkZERERNRcMBmJaFQkmHaVmIhu1TCJHYZFxFzbKQy2uoWRaScXVaYqfS5lDQD5+iwBdUHGOBmdlkoFiWZUm58gzIZgswTc82f15Lp9uQyUzMdjNoCth33sb+8y439J1IYiISOzJWxmhBQzKuOk5fisbKarPoJgOfT0EqFW/a1t/EkTQiIiJqSVQNtjxqJBLblYi0lHCJxopqtc31TQY1BAI+GEZ9k4GM0TQmaURERDQnSSurYQH9I8WzNhm0X/g1z4NJGhEREc1JZ28cKJT06RvxUoCudhWmZcGnKNI2GUhN0nbs2IH7778fhmHgzjvvxLvf/e7G9w4cOICPfexjjce5XA4dHR34/ve/L7NJRERENE+IbBwABNavWcDIuNYYSbtM0vJ4aUna0NAQtm/fjkcffRShUAh33HEH1q1bh+XLlwMArrjiCjz++OMAgHK5jP/23/4bPvWpT8lqDhEREc0zUTWI5Qs7pn8zgAIs7IojGFCgG5a0kTRpddJ2796N9evXI5FIIBqNYsOGDdi5c+d5Y7/yla/gda97Ha655hpZzSEiIqJ5KKoG0dURab6zU6CmWr1chw9+nw+hoK/pCN1USRtJGx4eRjqdbjzu7u7G3r17XxU3MTGBRx55BDt27BD+GVPZzkrukU7PfjVnmhr2nbex/7yLfSdPJK6iqNfXmLW1B7B4YRLxiH1il+pqQ6msIxoJOsZdCGlJmmmaUJQz43+WZZ3zeNL3vvc9vOUtb0EqlRL+GayT5l1uqPdDU8O+8zb2n3ex7+SLBZRGDbZyQUO5yYkGCoByodY0bqp10qRNd/b29iKTyTQeZzIZdHd3vyruRz/6ETZu3CirGURERERNlTQdA9kiKlUTA9li8wPZBQ6QnyppSdq1116LPXv2IJfLoVwuY9euXbj++uvPibEsC/v378dVV10lqxlERERETQmdTXp6k8FgtoTD/XlpiZq0JK2npwfbtm3D5s2bceutt2LTpk1Ys2YNtmzZgueffx5AvexGMBhEOByW1QwiIiKipkTKdQgd3H4BeHYnzQqurfAu9p23sf+8i30nH8/uJCIiInKhVs/uFKm/diGYpBEREREJEjlAfqqkrUkjIiIioqljkkZERETkQkzSiIiIiFyIa9KIiIjIM1rdgTnVeDdhkkZERESeIFr6QjTebTjdSURERJ4gWkR2porOysKRNCIiIvIEkVMBphIvMjU6E9OoTNKIiIjIE0SLyIrEi0yNztQ0KpM0IiIi8gxZRWRLFQNVvYZAwAfDMOuJnV2SJhB7IZikERERzTEiU3EnhiYwNFZETyKGxT1tjrEjY2WMFjQk4yq6EpFpixVpw1MvDOLI4Bj6ehN4/Wt6HWNLmo59R3IwjBoCAT9W9XXa3w8L6B8pwq8oqFkWLu5tt7+wSOwFYJJGREQ0h4hMxZ0YmsAPfnHsdOwI3rZuqW2SNDJWxpP7TjUSk+tWLbBNvkRiRdrw1AuDeOTHhwBFwS9fyACAY6KWHdcwmC0iqgZRymtYkIraJ2kKsLArjmBAgW5YgGJ7WbHYC8DdnURERHOIyI7GobEifIqC7mQEPkXB0FjRNna0oMGvKOjsUOFXFIwWtGmJFWnDweM56DULUTUAvWbh4PGcbWyDcjqHapJIRcMBhII++H0+hII+x00GIrEXgiNpREREc4jIjsaeRAymNYLh0TJMy0JPImYbm4yrqFkWcnkNNctCMq5OS6xIGxak48BLIyiU9DOPHaTaVSzojKJaM9EeCyLVbt8OkU0GohsYpkqxLMuScuUZkM0WYJqebf68lk63IZOZmO1m0BSw77yN/eddIn03V9eklTQd/77nKAayBVyUimPjGy52RamMZnw+BamUc0J5PkzSaFbwg8K72Hfexv7zLvZdnRuSLlFTTdI43UlERESeIasEhxsxSSMiIiISxBMHiIiIiM4istYNEFtzJ7I2ruX6axeASRoRERF5gkj9NUCsBptIrFD9tQvAOmlERETkCSL11wCxGmwisQBarr92IZikERERkSeI1F8DJmuwWS3VYBOJnay/pqp+LOiMOtZfuxCc7iQiIiJP6EpEcN2qBS2vSVvc04bfXrsQ/dkJLEy1Oa4zE4mNqkGs7EtJ3zggdSRtx44d2LhxI2688UY8+OCDr/r+K6+8gve85z14+9vfjj/8wz9EPp+X2RwiIiLyuK5EBJcuSra0aaCk6dD0GtIdMWh6DSVNn5bYmSItSRsaGsL27dvx0EMP4bHHHsPDDz+Mw4cPN75vWRb+6I/+CFu2bMH3vvc9XHHFFfjqV78qqzlEREQ0z4icYyoUe/oQ+8FsCYf789ISOmlJ2u7du7F+/XokEglEo1Fs2LABO3fubHx///79iEajuP766wEAd911F9797nfLag4RERHNM9FwAKWKgYFMoTE1OR2xpYqBqm6iZpqo6qZjQnchpK1JGx4eRjqdbjzu7u7G3r17G4+PHz+Orq4u3H333Thw4AAuueQS/MVf/IWs5hAREdE8pMCCpdS/TlusBfSPFBqlQC7uda6/NlXSkjTTNKEoZ/alWpZ1zmPDMPDUU0/hn//5n7F69Wr8/d//PT73uc/hc5/7XMs/YyrnYJF7pNNyntQkH/vO29h/3sW+EzOcK6G3uwPtsRDGi1VEYirSndELjrX8flyxLI2g3we9ZiKVitvGXghpSVpvby+efvrpxuNMJoPu7u7G43Q6jaVLl2L16tUAgE2bNmHr1q1CP4MHrHsXDwr2Lvadt7H/vIt9J66s6RgdKyKfL8G0LKRiAWRqtWmJ1UoVVBUFpmWhXNRsY4GpH7AubU3atddeiz179iCXy6FcLmPXrl2N9WcAcNVVVyGXy+HFF18EAPz4xz/GypUrZTWHiIiI5pmoGsTyhR3oTUWxfGGHY6kMWbEXQtpIWk9PD7Zt24bNmzdD13XcfvvtWLNmDbZs2YKtW7di9erV+PKXv4xPfOITKJfL6O3txRe+8AVZzSEiIqJ5KKoGW06iZMVOlWJZlmfnCznd6V0ctvcu9p23sf+8i33nXa6b7iQiIiKiqWOSRkRERORCTNKIiIiIXIhJGhEREZELMUkjIiIiciEmaUREREQuJK1OGhEREdFsK2l648D0ZnXNRsbKGC1oSMZVdCUi03bdqWKSRkRERHNSSdNxuD8P3+njm5xOBxgZK+PJfacah6Zft2qBbaImct0LwelOIiIimpNKFQM+RUE8GoRPUVCqGLaxowUNfkVBZ4cKv6JgtKBNy3UvBJM0IiIimpOi4QBMy0KhpMO0LETD9hOIybiKmmUhl9dQsywk4+q0XPdCcLqTiIiIWjIT67Cm0+RB6K20uSsRwXWrFrS0Jk3kuheCSRoRERE1NVPrsKabyEHoXYlI0w0DU7nuVHG6k4iIiJqaqXVYdAaTNCIiImpqptZh0Rm8w0RERNTUTK3Dmm5eW0d3NiZpRERE1JKZWIc1nUqajn1HcjCMGgIBP1b1dXqq/ZzuJCIiojkpO65hMFtEqVLDYLaI7Lh97TM3YpJGREREc5cCKKe/eg2nO4mIiGhOSrWrWNAZRbVmoj0WRKrdvkCtKJ7dSURERDRFUTWIlX2paU+mZqpmHJM0IiKaE7y8i4/kkbHZoVQxUNVNBAMKdMOqP++YpBEREb2aV6vhk0dZQP9IAX5FQc2ycHFvm5QfwySNiIg87+xq+IWSLm1kgwgAoAALu2IIBHwwDFPapgQmaUREkolOw42MlVs65JnOYDV8mknRcAChoB8+RYEvqEh7vvFZTEQkkeg03MhYGU/uO9WYRrlu1QImai3wajV88qaZer5JrZO2Y8cObNy4ETfeeCMefPDBV33/H/7hH3DDDTfglltuwS233HLeGCIiLxM9lHq0oMGvKOjsUOFXFIwWvFV8czZF1SC6OiJM0GhGzMTzTdpI2tDQELZv345HH30UoVAId9xxB9atW4fly5c3Yvbt24e/+7u/w1VXXSWrGUREs0p0Gi4ZV1GzLOTyGmqWhWR8+uo6EZG3SBtJ2717N9avX49EIoFoNIoNGzZg586d58Ts27cPX/nKV3DzzTfjnnvuQaVSkdUcIqJZMTkt0puKtrTjsCsRwXWrFuCypQlOdRLNc9JG0oaHh5FOpxuPu7u7sXfv3sbjYrGIK664Ah/5yEewdOlSfOxjH8M//uM/Ytu2bS3/jFQqPq1tppmVTsvZskzyse/kkn1/2X/exb6bX6QlaaZpQlHO7Em1LOucx7FYDP/7f//vxuP3ve99uPvuu4WStGy2ANO0pqfBNKPS6TZkMhOz3QyaAvadt7H/vIt9J5+sgsg+nzKlgSVp0529vb3IZDKNx5lMBt3d3Y3HAwMD+Nd//dfGY8uyEAhwsykREdFcUNJ0jOTLKGn6bDelJZM7sQezJRzuz7ui3dKStGuvvRZ79uxBLpdDuVzGrl27cP311ze+r6oq/uZv/gYnTpyAZVl48MEH8da3vlVWc4iIiGiGuDHhaUZ0J/ZMkJak9fT0YNu2bdi8eTNuvfVWbNq0CWvWrMGWLVvw/PPPo7OzE/fccw/+6I/+CL/7u78Ly7Lw3ve+V1ZziIiI6DxkjHi5MeFpxo0FkRXLsjy7qItr0ryLayu8i33nbew/75LRd7LOPPXqWapuW5M2+2kiERERzQpZZ57KrMgvK5EC6u12UzLpmKS9+c1vPmdH5m964oknpr1BRERENDNEp/hkJkit8OoI3VQ59saXvvQlAMBDDz2EYDCId77znfD7/Xj00Ueh6+5fBEhERDQXlDQdw7kSypreUlIyMlbGaEFDMq46FkSOqkGoQT/6sxNYmGpzvHZJ0/HTX59ENl9GqiOCN61dZBtf0nT86uAwipqOmBrE1Su6m167leRvKiN/IonlbCehv8kxSVu1ahUA4NChQ/jOd77T+P9//ud/jttvv11uy4iIiKgxepRMGBgdKzYdPRoZK+PJfafgVxTULMvx5IoTQxP4ya/74VMUHDoxjkg4gMU95y+Yu+9IFrv3DSEU8OGlE+NIdUTw+it6zxt7MlPAC0dHEQkFUK4W0J2MYsXipOPv18ro2FRG/lq9thtH6Vra3Tk+Po5cLtd4PDQ0hEKhIK1RREREVDc5etQeC7W0U3K0oMGvKOjsUOFXFIwWNNvYobEifIqC7mQEPkXB0FjR/rrjGhQFiEdDUJT6YzsVvQZFAcIhPxSl/rjZ79fKTlDRY9ZEru3GHaktbRy48847cfPNN+ONb3wjTNPE7t278ZGPfER224iIiOa9ydGj8WK1pdGjZFxFzbKQy2uoWRaScdU2ticRg2mNYHi0DNOy0JOI2cb2LejArw6OoFzREQkF0LegwzZ2QWcMyTYVpmki2aZiQaf9dUVHx0QW94tc29MlOF588UXs2bMHiqLg2muvxYoVK2S3rSmW4PAulgHwLvadt7H/vKmk6YjEVJSL2rSuSQPqU55DY0X0JGK2U52TDh4fbaxfW7Hk/NOXU2mDzLVgbliTJr0ExyuvvIKXXnoJhmEgkUi4IkkjIiKaD6JqEOnOKDI1+2nDs3UlIk0To0mLe9qaJmeTVixJNk3OptIGmaUvhEbeXFaCo6U1aV/72tfwla98BZdffjlWrlyJBx54AP/4j/8ou21ERERE81ZLI2mPPfYYvv3tbyMerw/V3X777XjHO96BP/7jP5baOCIimh1uK0VANB+1PN05maABQFtbGwKB2V9QR0RE08+NpQi8QiS5FVmzRfNTS9OdCxcuxDe/+U3oug5d1/GNb3wDF110key2ERHRLHBjKQIvmExuB7MlHO7POx5YPlnL7KVjY3hy3ymMjJVnsKXkFS0laZ/+9Kfxox/9CGvXrsWVV16JXbt24ZOf/KTsthER0SxwYykCLxBJbkVqmQFnThxwSvzcpqTpGMmXPdVmt2npldfT04NvfetbjQK2Z099EhHR3CLzcOy5TCS5FallJnrigBtwynx6tJSkjYyM4M///M+xZ88e1Go1vO51r8Pf/M3foKenR3b7iIhoFritFIEXiCS3XYkIrlu1oKU1aWefOJDPl6b9vEoZ9cymcsYmvVpL05333nsvrrzySuzevRu7d+/GNddcg0996lOSm0ZEROQtUTWIro5ISwlJVyKCSxclmyZGoicOyFobJ3JdTplPj5aStKNHj+JDH/oQ2tvbkUwmsXXrVhw/flx224iIiOa9qBrERakY1LAfF6Vi03pepcjaOJlnbNL5tZSkGYaBSqXSeFwul6EoirRGERERUV1J0zGQLUKr1DCQLTZdiC9rbdxUzthsdVSRzq+l8ceNGzfiD/7gD3DbbbdBURT827/9GzZs2CC7bURERPOe6Jo0WWvjJkf0JmOZfMnXUpL2wQ9+EL29vfjZz34G0zRx22234fbbb5fdNiIiIk+RcZh3NBzAaKGC/CsZmIaJSy5qb6EdRn3q0mqeTEXVAKCoLa11O3Iqj2rNxNhEBVG1yeYBSQebi56GIeug95k4laPllXy33nor3vKWt8CyLABAPp9HIpGQ0igiIiK3aHlHo6Zj/5EsqjUTIb8PK/tStvElTcee/YMYK1SQiIfxhpW9DrEGjgyMowbAD+CKJUnHdoyMlfHvPz+GkqYjqgaxcf1S2+REpM3ZcQ0vD4wDlgUoCnod1seJlOCQFTt5L57cdwp+RUHNsnDdqgWO90JWO6aqpSTtwQcfxOc//3noen0e3LIsKIqCAwcOTHuDiIiIJomMVpwYmsDQWBE9iRgW97RNy3VFk5hTuRJi4SCyFc0xiXm5fwxPvTAEv09BzbTQnVCxeln6vLFHB/MYGCmgLa5ioqDh6GDecUTopeM5vHgs17j2sova0JVYaNvmY8MTCPn8qJo1xzaPTmg4NjgBNeiHptfwmouTWNx9/vtcqhio6jUEAj4Yhuk4RVuPNREMKNANq2msSGmPszdG5PIaRguafZImcO2ZKjHSUpL29a9/HQ8//DCuuOKKaW8AEZEXyZzq4OHmdSKjFSeGJvCDXxw7HTuCt61bapuoiVxXJPECAFiAdfqrk0y+jHLFQDwaRLliIJO3L32hVetJjj9goFQxoFVNx2tnx8soagZCQT+qeg3ZcftrlysGcvkKIqEAylUDZYcdm4qiIBoJIOzzwRdQnDcQWkD/SLExgnVxr8MUrQX0jxTOirVPsEU3L8jaGDFTJUZaumpHRwcTtPPgGynR/CRzqoOV2s8QGa0YGivCpyjoTkYwPFrG0FjRPkkTHQVpMfFKtavoTcVgGDW0x0JItdsnBOmOCCJqAJYJRNQA0h32I2PdyQi6OlSooSDCgfpj53ZEEIsE4VOAYMCHVLt9fCQcQKpDRdDvQ7QWQMQh2UjEwvArCqqmCb+iIBEL2zdCARZ2xRujY3AqCKEAC7tijVE3p1jR0zBEN0a0eu2ZOpXDMUkbGxsDAKxduxbf+MY3sGnTJgQCZ/5JszVpO3bswP333w/DMHDnnXfi3e9+93njfvKTn+Cee+7Bj3/8Y7HWzyK+kRLNXzKnOlip/QyR0YqeRAymNYLh0TJMy0JPIjYt1xVJvKJqEKv6Olv64F62MIHXX6E11qQtW5iwjV2UjuPqFWkofj+sWg2L0s5HM162pBMvD0w01qRdtqTT8fdb0h1vTOc6/X4RNYDLlyRR0Q2EgwFEVOeRJssyUdDq1202KmVZFoqa3jRWtmxea0yZN9840PrmjKlyvBPr16+HoiiNzQKf+9znGt9rtiZtaGgI27dvx6OPPopQKIQ77rgD69atw/Lly8+JGxkZwec///kL+R1mBd9IieYvmVMdrNR+hshoxeKeNrxt3dKW1qSJjpi0mnhNxrfyWRBVg3jDyt6W23D1im5EYirKRa2l0aON65e2PHq0si/V2u9nARNlHX5FwYShNx1ZtKBAsepfm2k1VubGAZEpc5HrXgjHV/+LL7445Qvv3r0b69evb4y2bdiwATt37sSHPvShc+I+8YlP4EMf+hD+9m//dso/azbwjZRo/pI51SFai2quL7sQOUN0cU9b0w0DU7murHNMRduQ7owiU6u1GN9aWQ0hCtDVoaJmWvD7FMdpycnnZDwZaWkRvkisrI0DIlPmIte9EI699/jjj+OWW27BAw88cN7vv/e977X9t8PDw0inz+xU6e7uxt69e8+J+ad/+ie85jWvwZVXXinS5oZUynnIV7ZUVxtKZR3RSBDxyNx7c5QtnW7tzZTch30nT6GsozhSghpRUTQsLI6rtu8vhbKOYyMl+BQFRV3H5V1tLb0Xsf+8q5W+E3leiMSafj/KL9d3jVZ1C52dcaQ7o+eNjcRVFHULPkVBW3sAixcmba8rK3ayzceGS6gYFtRICMuWdtm2+XLdxAtH85goGwiFArj8km7b+y1y3QvhmKQdO3YMAHDw4EHhC5umec7Oj8myHZMOHjyIXbt24Rvf+AYGBweFrw8A2WwBptlkvFUyBUC5UEPZ4bwzerV0ug2ZzMRsN4OmgH0n10i+jMxIobHgOhZU0GWzqHwkX8bLx3Ko6DrCwaBjLFCforECfihGbdaKeoqO/MkqwSFS4FSErJHNkqa3PN05ki9jYrzcGG060T/q+BxqNTaXLyMRDTaem7lcAT6Hkb1YQGnc43JBc/yc9NVqjb5rFit0XQBrL+lsxPtqNdv3r3jQhxvWXtRoRzzos40VuS4A+HzKlAaWHJO0rVu3AgA++9nPCl+4t7cXTz/9dONxJpNBd3d34/HOnTuRyWTw+7//+9B1HcPDw3jXu96Fhx56SPhnERHNGQLlCHJ5Db98caixPmdROmb/YXx6DU17XMV4QZuVop6i64lkleCQtZ5I1oayyesmEwZGx4pNryurlEQ0HEAo6INPUaAEnWMnzxv1KQoGskXH0wlGxsr41aEM/IqC/kwJkXDA8bnZ6nUb7RaY+hWZMu9KRKRMcZ7NscU333yz4z/esWOH7feuvfZa3HfffcjlcohEIti1axfuvffexve3bt3aSAJPnjyJzZs3M0EjIhIoRzBerqAjFkKiLYyxiQrGyxXb2Mk1NOlkFMViZVaKeoquJ5JVgkPWeiJZG8pknt0pK1bkXsgqOAt4vxKDY5L2F3/xF1O+cE9PD7Zt24bNmzdD13XcfvvtWLNmDbZs2YKtW7di9erVU742EdFcVR+t8MOnKPAFlaZlJ3y+ERRKOnw+xbHsxGRRz8xoadaKeopuuJJVgkOkwKkIWRvKJq87Xqy2fF1ZGyNa3r0qcC9kFZwFvF+JQbEm62s0sXfvXrzwwgu47bbbsH//flx11VWy29aUG9ak0dRwXZN3se/kk7kOi2vS6ubymjS3ELkXMg9Bd8NI2lTXpLWUpD366KP42te+hkqlgocffhibNm3Ctm3b8I53vGNKjZ0uTNK8ix/03sW+8zb2n3ex76bGDWVqppqk+VoJ+ta3voWHH34Y8XgcqVQKjz76KL75zW8K/zAiImpuZKyMQydHMTJmf+Yi0VxS0nSM5Msoafq0xgL1KdqujohnRiDP1tKEuc/nQzx+JgNcsGAB/H6/tEYREc1XM1XJnMgtSpqOfUdyMIwaAgE/VvV1Ou4QbjX27H8jYzpe1pT52VpK0hKJBA4cONCoc/a9730PHR0dUhpERDSfzVQlcyK3yI5rGMwWEVWDKOU1LEhFbRMkkVhAXokYVxwLNenuu+/G//yf/xPHjx/HG9/4RoTDYXz5y1+e9sYQEc13snYeErna5ClTzY/5FIqVVSLGFcdCTVq2bBkef/xxHD16FLVaDX19feecHkBERNOjKxHBdasWSJ9Gme9kTWvJii1pOoZzJZQ1fdp3xc62VLuKBZ1RVGsm2mNBpNrt/zARiQXklYhJxlVoeg0nhyfg8/mk/THVUpL20EMP4V3veheWLVsGADh8+DA+8pGP4Lvf/a6URhERzWczUcl8trgheZA1rSUrVvTEAbeUnWhVVA2ib0FHI2FtVlB3ZV+q5eeQvMK+AfR2RlDUdMTUYP1UAwla2t357W9/G//3//5fAMADDzyAd73rXbjlllukNIiI5gbRHVgyd3e1SlYbRHdryvr9Zttk8jCYLeFwf37Wfr+zp7V8ioJSxbCNPXtay6/Uz4yc6dizTxxo1l7R388NJo96qlRNDGSLTZ8Xors1ReJbjS1VDCTiKi5b0olEXJV2j1tK/b7+9a/jve99L775zW/C5/Ph4YcfRl9fn5QGEZH3yTyjUfb5iLO9wNhroyAi3FL9PRoOoFQxMF6sIBDwT9u0lsh6wqlU2W/1xAFZJx/I4pbnhYiZuseOI2ljY2MYGxtDMBjEF7/4RQwODuKuu+5CMpnE2NiYlAYRkfeJ/iUvEi9rlEBWG0RGTESv7TVuSh4UWLCU+lcnk9NaHfEQejsjjtNak+sJL1uaaJqMi8ROTsMt6o63lLRPxvemop5I8t30vGhVVA3iolQM4ZAPF6Vi0u6x451Yv349FEXB2YcS3HXXXQAARVFw4MABKY0iIm+TeUaj7PMRZSwwFtmt6cUPrFaJrPmRqVQxEAkHkW5xx18irmJRd1tLozwi6wlFYqNqEOnOKDK1Wsvxbk/OJrnleSFicorWpygYyBYRVeW02/HV/+KLL077DySiuU/0TVfW4l5ZbRaJFd2t6dUPLFntlXFtN/xRQOfyUlIJzNwUreOz7fHHH8ctt9yCBx544Lzff+973zvtDSKiuUH0TVckXtYbuqw2iO7W9NIHlsz1hLLW58n8o8ANu1dJvplK3h2veuzYMQDAwYMHX/W9YrHIJI2IaJbNdlIgq1jolOIl3YuSZtTXElrO5SFKmo5fHcygoOmIq0FcvSI9be0VrZMmWoNtthNLN7RBxEyNeDsmaVu3bgUAfPazn33V966++mopDSIiota4YSdoNBxAuaIjX6og5Pc1nTpsNXYyvtXRCjfszu3PFHDgWA5qMIAT+gR6khFcujg5be1ttU7aVGqwzeZzSHYbZBUunokR75bqpJ3P2ZsJiIho5pUqBqp6DYZpoqrXZm0nqAUFilX/Op2xIjvo6vfCRM00UdXNprtzJ4pVjE5omChWp213rqYbUCwF4ZAPiqVA06dnh7BonbSp1GBreSe2hBp+Mnc0i9Tmm0xuXzo2hif3nWq5rqFMU55E5bFQRESzzAL6R4qNEZOLe9un7dKtjj7UP2CBaCQIwzBbmO5sLXayDS3voLOA/pHCWfeizfa6Zc3A/qO5xsjNkp42oOP8sSK7cxd0xpFoH4NZs5BoD2FBZ9w2VqRW22Ts8aFxlE/3iZN6bTcDJ4cm4PMrTWuwjRYqGMhMIBIJ4ZKL7J9DJU3HviM5GEYNgYAfq/o6p2eNoMT1XW48j1MEt6kQEXmVAizsiiMYUKAbVmuHU7dAaPpJJFG0gKOD46iZFvw+pWlSKbQmTQEWdsUQCPhgGKbjvdB0Ax2xEEJBP6p6zXHEqysRQV9vG44Nj6Ovp71p7bMl3W04MjiGJd2Jph/wE6UK8oUKOuJhxzgAODVSxISWR5sawKq+TsfYqBpATA0iN15GZ8y5tltJM3BkYBwlrYqoGsIVS5K29zg7rmEwW0RUDaKU17AgFZ3xjRzC15ZYLmcmOCZpV1111XlHzCzLgqY5F2QkIiK5ouEAQkEffIoCJTh9IxDiyVFriWK5agAKEAkGUDVr9ccOREtlhIJ++BQFvqDiGKsGA8gXq40kVA3ax54YmsDPXxiCT1FwaqSMZJuKxT3nH6U7eHwUTzxzEpZl4ZX+AhLxMFYsOf+atJOZAl46PoaAz4fBXBmLu9uwwmb92v4jWTz14hDCQT8qeg0XdUXxuit6bdvcnyngZKYANRjAyUwB/ZmC7dq4o4N5DOaKiKtBDOaKODqYd04uldNd7JHJNJnlcmaC4yv6+9///ky1g4iIBEmrGSecHLWeKIb8/no7W/g7X1apjIgawMqLO2FaFnyKgojDSNPQWH26tTsZwfBoGUNjRdsk7cipMZSrBpJtYYxOVHDk1JhtkpYvVlEo1w/nLmo68sWqbRsGcwVU9RpikRAmSlUM5gq2scC5a+MqVee1cRZweo2gdfqrvVS7igWdUVRrJtpjQaTap2ekSfbGAZnlcmRzfDUtXLhwptpBRDRnySwvIGOHmazkKNWuojcVg2HU0B4LtfQhL6N2XTQcQNvpRfjNktCeRAymNYLh0TJMy0JPImYb29kehWUBEyUdllV/bCcRC6EtEoQ/4EObEkQiFrKN7e2MIxzwwzBqCAf86HVY6waIrY3r6+3A4Z48qtUaOttV9PXaLM5D/f6u7EtN+3PZi2d3zhSuSSMiksgNJQ6mQkpypAaxqq9z1uthiSSWi3va8LZ1SzE0VkRPImY7igYAK/s6MZIvI5svIdURxUqHtWML03GsXtbVqKm2MG2fSK3sS2Ekr6Gsm4gEfVjZl3L8/boSEfz22kUtTdt1JSJ46zVLZrXshOzCsF6rwXY2xfJwLY1stgDT9Gzz57V0ug2ZzMRsN4OmgH0nZiRfxmC21Bgl6E1F0dUxe9Mp7D+5RAvUisRGYirKRc1ziUYr5BUidscfST6fglTKeQT0fDiSRkQkEc9+nF/ccqSXzGRRyi5MSffN61OpUt8tduzYgfvvvx+GYeDOO+/Eu9/97nO+/x//8R/40pe+BNM0sXr1atxzzz0Ihezn5Ylo7pJVFfzE0ERLU1Wi1z14fBT92QksTLXZLg4H6h8+yXi40YbpPtJn7+EMjg2PY2l3O9YsTzdt8y8PZdARDji2GZB336hO5okDsk5fKGk6njmYQblcRSQSwmun+dir2S7B4UbSWjs0NITt27fj0UcfRSgUwh133IF169Zh+fLlAIBSqYR77rkH3/3ud9HV1YVt27bhu9/9Lt75znfKahIRuZSsY3pODE3gB784dvq6I3jbuqW2CYfIdQ8eH8V3f/YKfIqCp6wMfu+3LrFNekbGyvjVoQz8ioL+TAmRcMAxkRFpx97DGXznJy9DUYCnXsgAgG2iNtnmSDiAcsVwbLOs+0ZnTOXM0/ZYCPl8aVrPPBWJPZkp4MDRHCKhAMpDBfQkI7ZlQ2QliqJm6oxNWaZ8LFQzu3fvxvr165FIJBCNRrFhwwbs3Lmz8f1oNIof//jH6OrqQrlcRjabRXv79FXLJiLvEDkWRuTIm7PLJ/gUBUNjxWm5bn92Aj5FQU9n/br9Wfs1XiLXFY0/NjwORQF6klEoSv1xszb3drU1bbOs+0ZniJY5MS0L48VqS6NBU7l2K7EVvQZFAcIhPxSl/tjOVI69knEsFFBP1Lo6Ip5L0ACJI2nDw8NIp8/8Rdfd3Y29e/eeExMMBvHTn/4UH/3oR9Hd3Y03vvGNQj9jKovwyD3SaecpFHKv6e67SFxFUa/XrGprD2DxwiTikfO/oZp+P44Nl1AxLKiREJYt7UK68/ylDi7XTbxwNI+JsoFQKIDLL+m2bbvIdVcu78GvD+UwVqgiEPBh5fKeabmuaPyaFb149qUsRicqCPh8WLOi17Ydk20eHJlo2mZZ920+KJR1lMo6opGg7XN4UqqrTTh2xVL718aFXrtZ7Eq/HycyZdRME/GYipWX9tj2tchrWiR2vpG2u/P+++9HpVLBn/7pnwIAHnnkEezbtw/33HPPeeP/7u/+Dv39/fjbv/3bln8Gd3d6F3eYeZesvpura9JErysaL7omLV8xuCYNctZAyd5J6Ib3TZG+dsOaNLdw3e7O3t5ePP30043HmUwG3d3djcdjY2PYt29fY/Ts5ptvxrZt22Q1h4hcTlZV8MU9bU2TjKlcd8WSZNNEZ1JUDQCK2vKiZZF2rFmebpqcTVqxJNnyB32qQ0VEDbTUZrdVaW9GVjLl9Z2ErRDpaxm19uYbaWvSrr32WuzZswe5XA7lchm7du3C9ddf3/i+ZVn4yEc+goGBAQDAzp07cfXVV8tqDhHRrJhMCAazJRzuz6Ok6bPdpKa82GYRstZAeX0nIbmPtGdQT08Ptm3bhs2bN0PXddx+++1Ys2YNtmzZgq1bt2L16tW499578YEPfACKomD58uX49Kc/Las5RESzwoujK15sswhZyZTXdxKS+/DEAZoVblhbQVPDvhPjlornk1rpP7e1WQYvroHia8+7XLcmjYiIvDm64sU2i5rra6C8duKACNE2ePleMEkjIpLMiwmBF9tMdTJPHJjtEVbRNnj9XkjbOEBEREQzT1YhWdlFZ1sh2gav3wsmaURERHOIrBMH3LB7VbQNXr8XnO4kIiKaQ0TWFMqKlUW0DV6/F0zSiIimQOYCYzcsziZvk1VI1g1rFUXb4OV7wSSNiKQQTTRkHTcjg+gC4/1HsqjWTIT8PqzsSzVd6LzvSA6GUUMg4Meqvs6m8TLuxWzfY5o57Gv3YpJGRNNOdOfTyFgZT+47Bb+ioGZZuG7VAttEzRU7zASKvWbHNZzKlRALB5GtaOhNxRzbmx3XMJgtIqoGUcprWJCKzvgOM5n32C3lE6jODa8nsseNA0Q07UR3Po0WNPgVBZ0dKvyKgtGCNm3XlkF40bAFWKe/tkQBlNNfnci6F9KuK3jclEj8XD/KShY3vJ7IHkfSiGjaiSYxybiKmmUhl9dQsywk4+q0XVsGkUXDqXYVvakYDKOG9lgIqXb7320yfkFnFNWaifZY0DFe2vFGkq4retyUSPxcP8pKFje8nsgee4OIpp3ozqeuRATXrVrQ0po0N+wwm2xHKz87qgaxqq9TaDfayr6UlB1mJU3HcK6EsqY3ve5FqVijP6ZrmtEt5RPoDLe8nuj8eHYnzQqeQedd7DtvmpwOTCZiGB0rzlrlda5Jmzq+9rxrqmd3ck0aEdE8MDkd2B4LzWrl9agaRFdHRKjMQavxotcmcjuOBxMRzQOT04HjxaqnKq/P9dExIidM0oiI5oHJtUeRmIpUzBuV191UCoRoNjBJIyKaJ6JqEOnOKDK1WkuxMiqvC60xk7Rjk7XByCuYpBER0avIGGkSTY7cUgqEaLYwSSMionNIO8lAMDmSNZXKch3kFXxmEhHROWSNNE0lOZJxiLUXa4O1WuOO5hYmaUREdA7RZKrlYrYuSo5kJH+ynKlxZzStcUdzC5M0IiLJZBZwHRkrt3RSw+R1p/vEAeF1Zi5JjkTvm4yCuq22oVQxUNVrMGomqnqNa+jmESZpREQSTaUif6vxI2NlPLnvFPyKgppl4bpVC2w/7EVGY0qajoFsET5FwUC2iKhqn3B4cRH+VO5bq6cv7D+SRbVmIuT3YWVfalr6DhbQP1LEhFbDeEHDxb3tU/q9yXt44gDRPFfSdIzkyyhpekuxw7lSS7FUJ1qRXyR+tKDBryjo7FDhVxSMFrSm1231xIGqXoNhnhm5sePFRfijBQ21moVQyI9azWp631q9F9lxDSeGJzAyVv+aHbe/rkgboABd7SqS7Sq62lVAaenXpDnA/a8mIpJmKmc0cl2MGJmHiifjKmqWhVxeQ82ykIyrTa/byokDkyM3k6M8TiM3blpn1io1GMBIvozcuAbTsqAGp+delCsGRvIVREIBlKsGyg4JnWgbRsY1VE1gvKDhMh5ZPW9ITdJ27NiB+++/H4Zh4M4778S73/3uc77/ox/9CPfddx8sy8KiRYvw2c9+Fh0dHTKbRERnEZmqOnskJp8veWJayw1EkxiR+K5EBNetWtDSuiaREwegAAu74ggGFOiG1XTkRuY6MxlrvCJqACsv7oRpWfApCiKqw0ehwL2IhAPobA8j6PcjovoRcUiEp9KGVGcM2VyAI2nziLTpzqGhIWzfvh0PPfQQHnvsMTz88MM4fPhw4/uFQgGf+tSn8NWvfhXf+973cNlll+G+++6T1RwiOo+pnNHY0kgMnUPmoeJdiQguXZRsuvhdxGRfF8uzO4U5OXo7mC3hcH/ecZp9co3XS8fG8OS+UxgZK9vGRsMBWLBQquiw0Px5r1V1DOaK0Kq6Y2yqXUWyLYyaWUOyLYxUu/PIZijog8+vIBT0NW1DKOhDwO9rGjtJdBlDq7E0s6Qlabt378b69euRSCQQjUaxYcMG7Ny5s/F9XdfxyU9+Ej09PQCAyy67DKdOnZLVHCI6j8nRld5UtKVdecsXdmBRd5xTnR40mfCcHC40TXgAQIEFS6l/ne52tJw8yFqfpxkYzJWRL1QxmCujpDmszxOMHZ2owqhZGJ2oOsYCgAUFilX/6kT0tSeS3IrE0syTlqQNDw8jnU43Hnd3d2NoaKjxOJlM4q1vfSsAQNM0fPWrX8Vb3vIWWc0hIhsiozZRNYjuzigTNA8S3TgQCQexsCuOSDjYdLNDy20QTAhkrc8bLWhQg34s6m6DGvQ7JnSyYiencC9KxxENB5reY5HXnkhyK7qxhWaWtDFs0zShKGf+OrAs65zHkyYmJvDBD34Ql19+OX7v935P6GekUvELbifNnnS6bbabQFPEvvOeSFxFUa9PV7e1R7B4YRLxyPk/8CdjfYqCtvaAYywADOVKyObLSHVE0NMZtY0bzpWgRjQEAz7oholITEXaIR4AUl1tKJV1RCNBxzak023oTMVbaofp9+PYcAkVw4IaCWHZ0i7bdsiKFb3HZ/+ezYhce6rtoJkhLUnr7e3F008/3XicyWTQ3d19Tszw8DD+8A//EOvXr8fdd98t/DOy2QJMk9tcvCidbkMmMzHbzaApYN95VzoeRCSmolzUUC7U/3OKrY/2BB1jRep9ZcfKOPBKphHbGQ1AqdWatlsBUC7UHNsL1KeG0vEQUKs5Pkd9ANZe0tnYZOBziJcVC7R+jxvxAq89kWuLtoPE+XzKlAaWpCVp1157Le677z7kcjlEIhHs2rUL9957b+P7tVoNd911F972trfhj//4j2U1g4iITouqQaQ7o8i0kBi1umPz7LVgubyG0YJmv4lBARZ2xRAI+GAY5qzuUuxKRFrebCErVuauWLec7EAXRlqS1tPTg23btmHz5s3QdR2333471qxZgy1btmDr1q0YHBzECy+8gFqthh/+8IcAgFWrVuEzn/mMrCYREdE0E63VFgr64VMU+IIKdwi7gOiJGDSzFMuyPDtfyOlO7+KUmXex77xNRv/JOgdTlMxru4GUvsuXMZgtNWol9qai6OqYvnIuVOe66U4iIpof3DDFxxGhqfHisV7zCXuDiIg8z4sHvbuBF4/1mk+YpBERkedxRGjquMnAvfgsJiKagrm+/kkW0fvWanxUDeKiVKyxNo59QnMBkzQiIkFc/zQ1ovdNJL6k6RjIFuFTFAxki4iq05c8MyGXj/f4/KQdC0VENFfJPkpnrh54LXrf3HC8kehRVjzYXBzPD7XHkTQiIkEy1z/N5VE60fsmEi+rT0Q2JIiO/M3Vfp7U6ugYN33YY5JGRCRI5o44L35giawbE7lvIvGy+kQk+RNK6DzYzyJEklBu+rDHO0FENAWydsR57QOrpOnYdyQHw6ghEPBjVV9n02RK5L6JxMvoE6FE0QUjf24hkoSyDIi9ufWsICLyOK99YGXHNQxmi4iqQZTyGhakoq5vs6hWkz/Rkb+5vBtVeGqbZUDOi0kaEbmCyO4uWbFu4bkPLOX0WemzeGC6W7TadzJ3o7qB1/7YcCsmaUQ062QtuJ4Pi7NnW6pdxYLOKKo1E+2xIFLt9ges0xlzfU0a4ME/NlyIJTiIaNbJKrUgu1QG1T+IV/alcNniJFb2pfih3KK5viaNpgefFUQ062QtuOYH4czw4ojJbE+DczqQWsF3rBnihvU2MtfxzPYbHnmbrFIL/CCk83HLNLgXk1uaWUzSZoAb1tvIXMfjljc88jZZpRa8+EEo8kfPyFi5sUOwKxFpGpspVKEYtZZiW73uiaEJDI0V0ZOIYXFP27TFisa32uZSxcBEUYdpmfApvqbrwUTuBdF0YpI2A2QVOHRD7FTiicieyB89I2NlPLnvFPyKgppl4bpVC2yTiMnY9riK8YLWUmwr1z0xNIEf/OLY6faO4G3rltomUyKxovEibS5rBvYfzTbu8ZKeONBx/jaIXJfOxRmWC8eNAzPADettZK7j4bofoukjstlhtKDBryjo7FDhVxSMFrSmselktOXYVq47NFYvI9GdjMCnKBgaK05LrGi8SJs13UBXh4olvW3o6lCh6dNzj+mMkqZj/5EsXjoxiv1HsjyPc4r4aToD3LDeRuY6Hq77IZo+In/0JOMqapaFXF5DzbKQjNuXv5iMzYyWWo5t5bo9iRhMawTDo2WYloWeRGxaYkXjRe+F3+9DtVqD3++btntBZ2THNZzKlRALB5GtaOhNxfjZMAWKZVnWbDdiqrLZAkzTs82f19LpNmQyE7PdDJoC9p18staknRiaQNm0EPEp07p27ODxUfRnJ7Aw1YYVS5LTdl3ReNH1eTJiZfLSa+/E8ASePZipn0Sh6bhqRRqLu5v391zl8ylIpeLC/44jaURzENeCeJvYxogAoKhNlxmUNB2nciVEoiGMlapIddgfRVTSdIwWKlCDQYwWKk1jNb2GdEcMml5DSdMd2764p62l5Gwq8V2JSMtJlKxYqku1q+hNxWAYNbTHQixyPEVM0ojmGK/utmViKU6kryfP2OxRfBjKFh3P2JS50Yjmh6gaxKq+Tr6mLxCTNKI5xosfmm5JLL12JqhwXyu/8dWGmwoGe61P6Awvlr9xGyZpRHOMF3fbuiGx9OKZoCJ9nWpX0dmmQq+Z6GxTHaefomoQF6VijXVYzTYatRoLiCddXusTkm8+JePuf/cmIiFe3G3rhsTSi1N8on0dCvoRiYZQLlUd40qajoFsvfzFQLaIqGp/bdFYoULZHuwTkmu+JeNS66Tt2LEDGzduxI033ogHH3zQNu6jH/0oHn30UZlNIZpXomoQXR0Rz7x5TSYbvamoJ0al3JBUNtrSYl83kphIaNYOsS9VDFR1EzXTRFU3mx54Hw0HUK7o6B8poFzRPdMnJI/I820ukPYsHhoawvbt2/Hoo48iFArhjjvuwLp167B8+fJzYj75yU9iz549WL9+vaymEJEHzPb6lTl/JqgFHB3M49RoCZWKjot77XdMTiZH+VIFIb9v+pIjC+gfKTSq9zu14cw/UaBY9a9ORPtkPk2ZzSXzLRmX9tvt3r0b69evRyKRAABs2LABO3fuxIc+9KFGzI4dO/A7v/M7jRgimh78AJqauXwmaLlqAFAQCQdRqRinH9vTdBPlchVmJOQYJ7QmTQG6OlTUTAt+n9J0A0N91ASIRoIwDLPpFGarfTLfpszmEk/+gXQBpCVpw8PDSKfTjcfd3d3Yu3fvOTHvf//7AQDPPPPMlH7GVArDkXuk0/O3sKFMhbKOYyMl+BQFRV3H5V1tiEem942Mfec9Bd1EMhFBXA1B8QHJZMy2H48O5FGtAR0dMRTKOiy/3za2UNZRHClBjagoGhYWx1Xb55vp96P8cg5+n4KqbqGzM450Z9S2zabfj1+fjq+ZzeMLZR2lso5oJOj4nB/OlZBMGGiPhTBerCISUx2v6yZ87c0v0pI00zShKGf+TLIs65zH04EnDniXlypne81IvoyJ8XJjAfWJ/lF0dUxfIU72nbu0Omrqq9UQ9inQaybCPgW+Ws22H3OjReTHiygU/ajVasiNFhELnn8Js8jzLZcvIxENIhhQoBsWcrkCfLWabZtF4kVGx8qajtGxIvL5EkzLQioWQMahHW7B1553ue7Egd7eXjz99NONx5lMBt3d3bJ+HBGd5tU1G7LqYcma+nVLG0Sm7Vrd3RkJBWBaCoyqAZ/Ph0hoetakRcMBhII++BQFSrD5c1MkXmR353ybMiPvkvbufe211+K+++5DLpdDJBLBrl27cO+998r6cUR0mhc/gGTVw5K19sgNbQDES1REwwEs7mnHiYEx5/VdCnBxb3tjBMtp7ZjMDRdC1xb848RrawppfpJWgqOnpwfbtm3D5s2bceutt2LTpk1Ys2YNtmzZgueff17Wj70gJU3HSL6MkqbPdlOILojXSnDILPkgY7u+G9oATK1syHix2vKIl9/nQyjovLsTEHu+iT43W413QxkXoummWJbl2UVd07kmjbt9ziU6PTMyVm7s7mp2EHFJ0xGJqSgXtdk7TscFU2Ci8W7ZsSljXYzoyNS+IzkYRg2BgB+r+jqnbRSr1edxSdPxzMEMyuUqIpEQXrsi7diGXx0cRlHTEVODuHpFd9P+E3k9yXrtueX5RmdwTZp3uW5NmtewWvUZU/lge3LfqUbto+tWLbD9sJi8djJhYHSsOCvJsBumwETjvfhHhMiHvOg0mAILllL/Ol3XFXseGxjKFVEzLYyXdZS0pEPfGRjMlWGaJiZKBkqa83vLyFgZP/n1yUaZit9eu8jx9dRqtf/J+5HujLa0SJ7TgUSzT+qJA17i1cXWMohOz4wWNPgVBZ0dKvyKgtGC1vTa7bHmVc9lccMUmGi8aKX22Z66L2k69h/J4qUTo9h/JNtSO0Qq50fCQSzsiiMSDjavWt/idUWex6MFDWowgMXdbVCDgRZi/VjU3QY16HeMBYBTuSJGJypQoGB0ooJTuaJt7Hyrvk4038z5TKTVv+ZFDwkWubZorAgZ1xVNWJNxFTXLQi6voWZZSMYdDm4WWBcji6yEXHjhsqRK7W4YdcuOaziVKyEWDiJb0dCbis3a87NVIs/jZFyFphs4MTwBv09pIbaGk8MT8Pl8jrEAEA76oRsm8oVKvVxG0G8bGw0HUKoYGC9WEAj4m96LkqZjOFdCWdOndcpV5H1I5Lqyr03kdnM6SROdThKZNnDDVJWs64pOPXUlIrhu1YKW3hwnrx2JqUjFZmeti6zdjzJ3rkEBFnbFEAj4YBim424710zdW6hPRk7zqldZ/Sf2PA6gpzPWWJMWVR0W4asB9HZGGmvSnGIBoLNNRbJNRVU3EI+G0NnmnNS1OvUrstRgKksYWnkfErmu7GsTecGcnu6UuQPLDbu7pO4aE9yB1ZWI4NJFyZbeFKNqEN2d0Vld7yJr96O0nWvhAEJBPwI+H0JB5xETN0zdp9rV+uhZ2I/eVAypdudEA5j9KVqg9edxqWIgGQ9jxdJOJOPhpq//RFzFZUs6kYirzV+nCnDpog5ceWkaly7qaJqQtzr1K7LUYCpLGFp5HxK5ruxri3DDc5Pmpzk9kjaV7ekypqrcMr1G3iUyHS86dS86nZQpVKEYtaYjpgs6oxgaK6In0Twhn1zDVq2ZCPl9WNmXchyZbjVW9Pdrlez3llDQD5+iwBdUpu3aIksNprKEoZU2iFxX9rVb5YblAzR/zfkSHDLXjc3VNWkzYba3kruh70S4odjr5HRSe1zFeEFznE4SnXo6MTyBZw9lEAsHUazouOrSNBZ3n3/dnUis1EKyHnxvGRkrwwr4mybZk7FuWJMmqxxJq0byZQxmS43lA72p6LQesyZitt83aepYgsOGyDZy0S3nMq8tow1U54b1hGdfv5UPN9HK8jJiJ6eT0skoisUKRgua7Qfh2VNPubzmGDupqluwLL1e4b6ZFte7yVyf57X3lsl1t8lEDKNjzdfddiUiLSc6Iu0Vua7oWmGRa7eKMxY0m+b0mjSi83HDekLgTAI4mC3hcH/ecb2LrOm1qUwnZUZLLe9+PDk0AU03mk491c+GNFGpGABMx7MiRda7RcMBjBYqOHgsh9FCZV5/wLqh/I0oN5QYmdyowpMMaDbM33csmrfcsJ4QED8QWsaaNJHYyd2PrUyX1Xc0xlDQdMRb2NE4eVZkK7tXo2oQq/o6WxuBFCg6O9e5ofyNKLeMYrlhxkKkfArNHe5/lRJNM5ESDrLKPQBiH0Ai0z6isUdO5VGtmRibqDSdToqqgcaxQk7qOxrDWNQdb2maUWSxvIjRglYfPWoLo1CqNp12PTE0cXqzQwyLe+xr0QHeq8nlhvI3omS+/ry0LtUNJ7XQ7GCS5kKz/YbgljbI5Jb1hK1+AMlaZ5Yd13B8uICg3we9ZjoWnZ08MzMSDaFcqjqemSm8o1HkXgisE1SDAYzkNeTGKzAtC2rQvh0nhibwg18cO33dEbxt3VLbRE12TS5Zr7+o2vqxUCJkvl/IeP25aV1qS+09a6o6ny/N62ML5xsmaS7jijcEF7TBTdzwASQ6RVuu6MiXKgj5fY6x5YqBbF5DJBRAuWqg7LDmJzuu4fjQBBLtEYyNl7EgZV9aQ7QMyOS/aWkBfMVAVa81pkadPrAiagArL07BtEz4FB8iDtOuQ2P10cfuZATDo2UMjRVtk7SpbIxolddef15rLyDvjx5ZvDhVTdODPe0ybnhDcEMb3MItH0Ci0z4WFChW/auTSDiAzo4wQj4/IhE/Ig5v/lrFwOiEBig+jE5o0Jw2XGg6Xjk1DsOoYXSi2nQaVYgF9I8Uzzoiq902NBoOoC0WbPSf04dbTyIG0xrB8GgZpmWhJxGzjRU5FgoQnFrz2OvPTe1t+RhAl6xLbZUXp6ppejBJcxlXvCG4oA1u4aYPIJGRJp8CRCPBpiNNqXYVybiK/OkRL6edkmo4ADUUQLVmQA0FoDo8LyZH3YIBH3TDdBx1E6YAC7viCAaUermOJpsMWh3RW9zThretW9rSmjSRY6FEE33R199sL02Q/X7Rcpkagfssc12qrLVusqaq5wMv1ymdv5++LiVzoayX2uAWbkpYW35DsICjgxMwTRM+n89xpKmkGRgeLaFaraGimyhpDkmoBUyUqggFA6jqhmONMq1iIDNaQsDvg1EzHUfdRH+/yT4plo2mh4qLjuilOlRE1EDzxKhiIBLyoy0aa5oIiyb6stbnySJ7cX/La8emcJ9l1KLz0lq3+cBrZ2f/JiZpLuSG7d4y2+CGreQtJwSCa6tEd/zJGCUoVw0AFsLBAPRa7fTj8zuVK6BYMtAeD2K8oONUrmDbbk030NsZRW+6DYOZev0zOxZOT7Uq9a/NytOKvuG1eqh4fURvHEG/H3qt5jiiJ9QGwSlX0URfbNR09kd6Zb1fCJWpkVkuZ5aLTtPUybrPM9V/TNJoRrlhK7noX7utlrMQ3fEnc5QgFPSfPjbJ4UagvvvRUixUqiYsxXn3YzKuwu/3oVKtwe/3Oa7DioQD6O5UEfL5UTVrjmvdRH+/UsVAoWSgrOuIBIOOseWKgcyYhoBfgVGzHDdG1DckmI1pVMd7rABd7ZHGhoTpmnJttEXC2iovElo7JmlaUmga1WNr3eYDWfd5pvqPzwqaUW7YSi772KRWd/yJjhKMFSo4OVJAXA3ikovsR25S7SoWdEZRrZlojwUd15ktTMdxxdLORtHZhWn7s+W6EhFcfWkaZdPC8gVtjr9bql1Fb7JezLZTdV7rNvn7tbojNZfX8NSLQ40PzYXpmO1ZigoAWFZ9VM9qso3CAvpHCmeNjjnUSbOAkfFyI/YyK2EbKnq0kay1VV4k+vuJTEvuP5JFtWYi5PdhZV/K8T2g1d3EIgn5XO87t5B1n2eq/5ik0Yxyw1ZykYRAJPbso5B8/uY7/qLhAE4MjyObLyPVEXFMvEqagVcG6kdHRdUgLl9iXzk/qgbR2xlrLIBv9kHRnYhAzxroTkSaJg+DuSLUSBj5cgWpDucPoVDQj3YFCAT8tjFna3VH6ni5gpgaQEwNoKgZGC/bDxeq4QDSyVhjdMxps0N9Q0KspVMPRGJFR0Flrq3yIhm/X3Zcw6lcCbFwENmK5lgfUGRqWzQhn+t95xay7vNM9N+cT9JkVpUWiRdZqyRS9Xzv4QyODY9jaXc71ixPO8Y+9cIgjgyOoa83gde/ptcx9rGfHcbB4zmsWNKJW39ruWMsAPz7niM4dCKHSxd3YuMb+mzjomoQJ4cnsHvfAJZ0t2HNsi7H6/7suX68PDCKZRcl8VtXLnSMFbkX4yUdY4UKEvGwYxwAHBscx6lsAQtScazsS9nGRdUA8oUq+kfGsbCrHc2OQjo5XMDufYPQqibUUB7LLkpgxZLkeWOPDI7j4PEx6DUTQb8PV1w8bvs8Ghkr4z+f7T+d0I1h4/qltrEnhiaw85fHUTNMPB8YRSQcsH3OZcc1vHh8DP6AHzWj5lz4tmKgUNJR0XWEm0xJTsbrugnTsmDpzqMV7ZEwxgpVZPNl+P1+tEfs+zDVriKm+hqJcLNzPvPFauN50Sx5zxeryBc0dMTVprFDoyUcPFGPdUrGJ+M5DTYDrNN7X5otmBTYTcx1ZjTdPP3qL1cMhIP2f6XL3GkjMlwuslbpxNAEvvv/XoZhWAgEFPzeG5fZfmjuPZzBt584DNMysVsZBgDb5OSpFwbxyI8PAYqCX76QAQDbRO2xnx3GjiePAwBeOlEAAMdE7d/3HMF3/+sITAvYdyQPALaJ2o+ePo7H/usIahbwqxdHEAr68ZZrlpw39mfP9ePbPzqImmnhqdNttkvU9h7O4J9+eABVw0IooGAz7O9Ff6aApw4MolTWEY0EsaQ7jksXnz85eubgMP7f84OAZeHlgQJ6UjH81przt+Gnz57ELw4MwTKBk5kyLkpF8TaHhPXZg0MYzJZhof6+/+zBIdsk7fCJHAZy5XMev+7ynvPGvnQ8h/2vZOsL6y1g2UVt6Eqcv82H+sdwdGAcNdOE3+fDof4x2+fbYLaIZw9lGrGXL0lgcff5Y3N5DU88fRzlqo5IKIhFDlOSAFDWDPz4VycwUdTQFlOxpCcOdNgEK4DfB1R1C6EgHD80s3kNh/rHUTNM5Ao6VvVptq/TbF7D3sNZVHUDoWAAKxYlHGP3H8nCMEwEAsWmsS8dH4VpWhjMlR1jAW9Og812GRBRqXYVvakYDKOG9lioafIeCvrgUxQowVk869cFG65o5vlmuwEX4tCJUZQ03fb7pYqBiVIVuQkNE6UqSk0WDbcaC5wZLte0Gk7lSsiO259lOFrQUKtZCIX8qNUsjBbsYw/1j2I4V4ZWMTCcK+NQ/6ht7IGjIyhqVShQUNSqOHB0xDb24PFcPaEM+lGtmTh4PGcb+/zhDCwAfn/9j8znD2dsYwHgVy8NoXb6r9GaVX9sZ8/z/TBOxxpW/bGdn+8bgKZbMC1A0y38fN+Afez+U8gXDRiGhXzRwM/3n7KNfe7wCI4MTGAkX8GRgQk8d9j+vh0+MQqtYsC0FGgVA4dP2PfH/qNZGDVA8QFGrf7YyZFT46hZgGnV79uRU+O2sf3DBcfHZzsxXMBYqYKipmOsVMEJh9gjA2MYK+oolGsYK+o4MjBmG/visVGMF3RUKjWMF3S8eMz+XjxzcBiZcQ3lqonMuIZnDg7bxgLAL144hRPDBYyXDJwYLuAXL9j334nhCeQmqjAtIDdRxYnhCdvY48PjKJV1BAN+lMo6jg/b3+ND/WPIjpdRM4HseBmH+sccr1upmGiLhVCpmI7XnTzJoCsRgU9RMDRWtI31osk/cAezJRzuzzu+J7tFVA1iVV8nVixJOh5vNhm7fGEHelPR5jXuTq9JC4d8uMhpClXQ5D0+OVzwzD0G6u0eyZc901438vRI2nC+jI542H5nl2Zg/5FcY3RsSXeb7V/nIrENLQ6X188PLCM3rjU9P9CygFLVgFEzUa2ZsByuHQmHYBgmitBRM0xEwiHb2M5EBIZxei2YaaHTYcq1syOCI0NlGLUzj51MjmZav/H4fHw+5ZzYycfn4/fXv1czz318PoqC0/1hAtbpxzZGJ8qNn10zrcbj82mPhqEoPpiWBUXxoT1qP7XWHqk/Dyf7bPKxbZt/44njVE4ievpaPgDmWY/PJxj0IRTwI+hX4FMUBIP2f4tVjRoCChAIAoZef2ynXNHh9wPhUABW1UC5Yv/GO1GswIf6urRKxcBEk22mp0YKsCwgEPSjUq3h1Ih9YqkoCsLByfWBBhSHzg4F6uvWqoYJ3TARCji99ixU9PrvX9FrsBxefO3RECzFQqlswFIstEftX3vtkTDyxSomTo+uOE3PAmfOSDWMGgIBf9MkYrZ5dYpPxnoi0TVpLV/39M5jo2ai2mQ5gFuwDtz0kDqStmPHDmzcuBE33ngjHnzwwVd9/8CBA7jtttuwYcMGfPzjH4dhNC94eTZdd86ONN1AV0d96qSrQ3Ws6yQSC5yu1N6uwqzVkGx33r0WUQPoTUYQCiroTUYczw9MJyJIREMIh/xIRENIOyRTl1/ciaW9bUh3qFja24bLL+60jV19SRdWL0ticTqK1cuSWH2J/Vqw179mATrbQoiGgc62EF7/mgW2sQBw9eU9UINAQAHUYP2xnfWrLkIwAPgVIBioP7Zz5aXdCJ7+/A0q9ce2scu7oYYUWCaghhRcudw+dlF3G3w+nC72Wn9sZ/WyLnR1hBEJ+dDVEcZqhzV0v331EvQkI4ipfvQkI/jtq88/jTvptVcsQMBfvxcBf/2xnTeuWYiOWADhENARC+CNNlOuALC6r6telDUcQKpDxeo++zav6ksjGFJg1YBgSMGqPvu1fGsv7YYa8tf/0Aj5sdahP9Ze2g01HIBl1RfrO8UCwLLFSfj9Sn0q1a9gmc30MwBcujCB7mQUasiP7mQUly5M2Mb2pqLoW9COVIeKvgXt6E1FbWMXd7ehN6kiqgbQm1Rtp3IBYNnCBF57WTcW9cTx2su6scyhDZ0dKl53eQ9WXZLE6y7vQWeH84aS7LiGwWwRpUoNg9mi4yi9G8z1NXQiI4VnJ6w+RWk6I9Oy0zuPjw7k0T9SaL6OzgWk3Yt5RtqraWhoCNu3b8ejjz6KUCiEO+64A+vWrcPy5WfWNn3kIx/BX/3VX2Ht2rW4++678cgjj+Bd73pXyz/jlwcG8doV9h8qybiK//f8AMYKBhLxAK53WHiejKvYs+8UshM6Um1Bx9hJ//HL4xjIlHBROurYjlxeww+fPoZyBYiEgcuXdtquz0m2qVAUBfnxIlIdcSTb7N/QF6Xj8MHCyGgRi7vbsMihfEKqXUUoEIBWLaIrEHVMKvt629G3oB1j4yUk2qPoc9jNBABXLkvj2RczyIyXkG6P4spl9vfiDSsXYN8rWQxmi+hNxfCGlfaJSXcigljUj7JWQ0T1o9shYV3QFUOyTUU2X0ayTcWCLvtzF1dd0oXdzw8imy+jqyOCVQ4Ja2eHiq6EioHMBLoSquMH7IolSay+JImXjmVx2dKk7fqySW+5ZglGJ7TT8SnbtXkAsHxRAqv6Ujg5nMei7g4sX5RwbMfa5anGxg+ndrz2sm7sfXkEJ4fHsai7Ha+9zD6ZWnVJCq+5uBNDoyX0JKNYdYn9JorXv6YXA9lCow3NNqr89tpFODVSbLTjt9cuso1d3NOG9a/paWyCcdpcEwnVE0VDN2AF/YiE7N/yOttUJNsjmChV0RYNodPhtRdVg7hyWVdrpRbCAQSDPhhGfVSzlSRGr5koaTr0yWFkByIbjUbGysgUqlCM2rQdCC9aB050/drB46Poz05gYaqt6WtKxto4VxTUPb2bONUZRzbnd955fJrIZjUZ9y0aDqBUMTBerDQ9GURWG2SbiTZLG0nbvXs31q9fj0QigWg0ig0bNmDnzp2N7/f390PTNKxduxYAcNttt53z/VaEw0E8+KMX4fMp5/3v3356CKFgEN3JCELBIP7tp4dsYx/72WH4AwF0JyPwBwJ47GeHbWN9PgXfOr1IvSsZQdWw8K0fHrCN3fXLo2iLRtCdjKAtGsGuXx61jd1/JItipYaIGkGxUsP+I1nb2Cd+dQLZgoFoNIJswcATvzphG/vcyyM4PjQBEz4cH5rAcy+P2MYWNR3wAe1tEcAHFDXd8V7kJjTA70MqEQP8PuQmNNvYl/vzKFVqSLRFUarU8HJ/3jZ2IFtCJBJCujOCSCSEgWzJNvbXh4dRrQEd8QiqNeDXh4dtY18ZyMNEfQrYBPDKgH0bfn04g6FRDYFAEEOjGn59OGMbu2f/Kbx0Ig/FF8BLJ/LYs/+U430bypVgWgouW5qGadUf2963gTwmyjq6EnFMlHW87NDm518ewYvH87AQwIvH83jeoa9fHshDr1lY1N0BvWY5XveVgTzK1Rp6OuMoV2uO9+3Y4DiGxyrobI9heKyCY4PjjvdCN0ws6m7H619zERZ1t0M3TMf7dmRwAj4lgCODE473LVfQoJsWopEwdNNCrmD/3CxVdKihAHq74lBDAZQq9s/7il5DrlCBAh9yhQoqes3xdytpOgyr/qbu9Lv5fAraoyHEI0EEAj7EI0G0R0OO92L3/kEcGShg9/5Bx3uRL1Tw3CsjeOXkGJ57ZQT5QsWxHa3+J3IvKnoNJ0eKGJuo4uRI0TF28nn0k+cG8PLJCfzkuQHH55HotVv9ry0aQijkh2HU1xW3OfRHPBrCZUuSWNwTx2VLkog7xIq2oT0eRlQNoD0edmzD2X3dnyk27WtZ983v9yEa9iMSCSAa9sPv9814G2T+N5U2T4ViOS28uABf+cpXUCqVsG3bNgDAd77zHezduxf33nsvAODZZ5/FF77wBXz7298GABw7dgz/43/8D/zwhz+U0RwiIiIiT5E2kmaa5jkLei3LOudxs+8TERERzWfSkrTe3l5kMmdKN2QyGXR3d9t+f2Rk5JzvExEREc1n0pK0a6+9Fnv27EEul0O5XMauXbtw/fXXN76/cOFChMNhPPPMMwCAxx9//JzvExEREc1n0takAfUSHF/5yleg6zpuv/12bNmyBVu2bMHWrVuxevVqvPjii/jEJz6BQqGAlStX4rOf/SxCIft6Q0RERETzhdQkjYiIiIimxtPHQhERERHNVUzSiIiIiFyISRoRERGRCzFJIyIiInIhTyZpzQ5uJ/cpFArYtGkTTp48CaB+bNjNN9+MG2+8Edu3b5/l1pGdf/iHf8BNN92Em266CV/4whcAsO+85H/9r/+FjRs34qabbsIDDzwAgP3nRZ///OfxsY99DAD7zyve85734KabbsItt9yCW265Bc8999zU+s7ymMHBQeuGG26wRkdHrWKxaN18883WoUOHZrtZ5ODXv/61tWnTJmvlypXWiRMnrHK5bL3pTW+yjh8/bum6br3vfe+zfvKTn8x2M+k3PPnkk9Y73/lOq1KpWNVq1dq8ebO1Y8cO9p1H/OIXv7DuuOMOS9d1q1wuWzfccIN14MAB9p/H7N6921q3bp31Z3/2Z3zv9AjTNK03vvGNlq7rjf831b7z3Ehas4PbyX0eeeQRfPKTn2ycKLF3714sXboUixcvRiAQwM0338w+dKF0Oo2PfexjCIVCCAaDWLZsGY4ePcq+84jXv/71+Kd/+icEAgFks1nUajWMj4+z/zxkbGwM27dvx1133QWA751e8corrwAA3ve+9+Htb387/vmf/3nKfee5JG14eBjpdLrxuLu7G0NDQ7PYImrmM5/5DK655prGY/ahN1x66aVYu3YtAODo0aP4wQ9+AEVR2HceEgwG8aUvfQk33XQT3vCGN/C15zF/+Zd/iW3btqG9vR0A3zu9Ynx8HG94wxvw5S9/Gd/4xjfwL//yLxgYGJhS33kuSePB7N7HPvSWQ4cO4X3vex8++tGPYvHixew7j9m6dSv27NmDU6dO4ejRo+w/j/jOd76DBQsW4A1veEPj//G90xuuuuoqfOELX0BbWxs6Oztx++2340tf+tKU+i4gs6Ey9Pb24umnn248/s2D28n9ent7kclkGo/Zh+71zDPPYOvWrbj77rtx00034amnnmLfecTLL7+MarWKK664ApFIBDfeeCN27twJv9/fiGH/ude///u/I5PJ4JZbbkE+n0epVEJ/fz/7zwOefvpp6LreSLAty8LChQun9N7puZG0Zge3k/tdeeWVOHLkCI4dO4ZarYbvf//77EMXOnXqFD74wQ/ii1/8Im666SYA7DsvOXnyJD7xiU+gWq2iWq3iiSeewB133MH+84gHHngA3//+9/H4449j69atePOb34z/83/+D/vPAyYmJvCFL3wBlUoFhUIB3/3ud/HhD394Sn3nuZG0np4ebNu2DZs3b24c3L5mzZrZbhYJCIfD+NznPoc/+ZM/QaVSwZve9Cb87u/+7mw3i37D1772NVQqFXzuc59r/L877riDfecRb3rTm7B3717ceuut8Pv9uPHGG3HTTTehs7OT/edRfO/0hhtuuAHPPfccbr31VpimiXe961246qqrptR3PGCdiIiIyIU8N91JRERENB8wSSMiIiJyISZpRERERC7EJI2IiIjIhZikEREREbkQkzQiIiIiF2KSRkRz3q9//Wu85z3vwc0334xNmzbh/e9/Pw4dOgSgfghyLpeb5RYSEb2a54rZEhGJqFar+MAHPoCvf/3rWLlyJQDg8ccfx5YtW/DEE0/gySefnOUWEhGdH5M0IprTyuUyJiYmUCqVGv/v7W9/O+LxOD7xiU8AAO6880589atfhc/nwz333INTp05B13XcdNNNuOuuu3Dy5Em85z3vwW/91m/hueeeg2VZ+Mu//Etcc801s/VrEdE8wBMHiGjOe+CBB/D3f//36OrqwtVXX41169bhpptuQiQSwWWXXYY9e/ags7MTmzdvxh/8wR/gzW9+MyqVCrZs2YI77rgDa9aswe/8zu/gi1/8Im6++Wb89Kc/xcc//nH853/+J4LB4Gz/ekQ0RzFJI6J5oVAo4Je//CV++ctf4oknngAA/Ou//iuuueYa7NmzB6qq4rWvfS1WrFjR+DelUglve9vb8I53vAO33XYbnnrqqcb33vSmN+HLX/4yVq1aNeO/CxHND5zuJKI57ZlnnsGzzz6L97///bjhhhtwww034MMf/jA2bdp0zno00zRhWRb+5V/+BZFIBACQy+UQDocxOjoKv99/znVN03zV/yMimk7c3UlEc1pnZyfuv/9+PP30043/l8lkUCgUsGLFCvj9fhiGgXg8jrVr1+KBBx4AAIyPj+O///f/3hh1y+Vy+K//+i8AwI9//GMEg8FzRt2IiKYbpzuJaM77+c9/jvvuuw+Dg4MIh8Noa2vDBz/4QVx//fX48Ic/jP379+O+++5DNBrFvffei4GBAVSrVWzatAl/8id/gpMnT2Ljxo1461vfikOHDkFVVXz605/GFVdcMdu/GhHNYUzSiIiaOHnyJG6++WY8++yzs90UIppHON1JRERE5EIcSSMiIiJyIY6kEREREbkQkzQiIiIiF2KSRkRERORCTNKIiIiIXIhJGhEREZEL/X8ujPtLc2P50gAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot the likelihood evolution\n",
"\n",
"# set up the min and max boundary for the plots\n",
"tmp_list = [x.sum(axis = 1, skipna = True).values for x in iqspr_results_reorder[\"loglike\"]]\n",
"flat_list = np.asarray([item for sublist in tmp_list for item in sublist])\n",
"y_max, y_min = max(flat_list), min(flat_list)\n",
"\n",
"_ = plt.figure(figsize=(10,5))\n",
"_ = plt.xlim(0,len(iqspr_results_reorder[\"loglike\"]))\n",
"_ = plt.ylim(y_min,y_max)\n",
"_ = plt.xlabel('Step')\n",
"_ = plt.ylabel('Log-likelihood')\n",
"for i, ll in enumerate(tmp_list):\n",
" _ = plt.scatter([i]*len(ll), ll ,s=10, c='b', alpha=0.2)\n",
"_ = plt.show()\n",
"#plt.savefig('iqspr_loglike_reorder.png',dpi = 500)\n",
"#plt.close()\n",
"\n",
"y_max, y_min = np.exp(y_max), np.exp(y_min)\n",
"_ = plt.figure(figsize=(10,5))\n",
"_ = plt.xlim(0,len(iqspr_results_reorder[\"loglike\"]))\n",
"_ = plt.ylim(y_min,y_max)\n",
"_ = plt.xlabel('Step')\n",
"_ = plt.ylabel('Likelihood')\n",
"for i, ll in enumerate(tmp_list):\n",
" _ = plt.scatter([i]*len(ll), np.exp(ll) ,s=10, c='b', alpha=0.2)\n",
"_ = plt.show()\n",
"#plt.savefig('iqspr_like_reorder.png',dpi = 500)\n",
"#plt.close()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 1-2min to complete!**\n",
"\n",
"Next, we plot the evolution of the generated molecules in the target property space. Note that if your forward models are BayesRidge, you need to add return_std=True to the predict function."
]
},
{
"cell_type": "code",
"execution_count": 49,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Range of std. dev.: (25.5192,33.1820)\n",
"CPU times: user 18.7 s, sys: 182 ms, total: 18.8 s\n",
"Wall time: 19.9 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# re-calculate the property values for the proposed molecules\n",
"x_mean, x_std, y_mean, y_std = [], [], [], []\n",
"r_std = []\n",
"FPs_samples = []\n",
"for i, smis in enumerate(iqspr_results_reorder[\"samples\"]):\n",
" tmp_fps = RDKit_FPs.transform(smis)\n",
" FPs_samples.append(tmp_fps)\n",
" \n",
" tmp1, tmp2 = prd_mdls[\"E\"].predict(tmp_fps)\n",
" x_mean.append(tmp1)\n",
" x_std.append(tmp2)\n",
" \n",
" tmp1, tmp2 = prd_mdls[\"HOMO-LUMO gap\"].predict(tmp_fps)\n",
" y_mean.append(tmp1)\n",
" y_std.append(tmp2)\n",
" \n",
" r_std.append([np.sqrt(x_std[-1][i]**2 + y_std[-1][i]**2) for i in range(len(x_std[-1]))])\n",
"\n",
"# flatten the list for max/min calculation\n",
"flat_list = [item for sublist in r_std for item in sublist]\n",
"print('Range of std. dev.: (%.4f,%.4f)' % (min(flat_list),max(flat_list)))\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 1-2min to complete!**"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 19.3 s, sys: 395 ms, total: 19.7 s\n",
"Wall time: 19.7 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"import os\n",
"\n",
"# prepare a folder to save all the figures\n",
"ini_dir = './iQSPR_tutorial_prd/'\n",
"if not os.path.exists(ini_dir):\n",
" os.makedirs(ini_dir)\n",
"\n",
"flat_list = np.asarray([item for sublist in r_std for item in sublist])\n",
"s_max, s_min = max(flat_list), min(flat_list)\n",
"flat_list = np.concatenate((data_ss[\"E\"],\n",
" np.asarray([item for sublist in x_mean for item in sublist])))\n",
"x_max, x_min = max(flat_list), min(flat_list)\n",
"flat_list = np.concatenate((data_ss[\"HOMO-LUMO gap\"],\n",
" np.asarray([item for sublist in y_mean for item in sublist])))\n",
"y_max, y_min = max(flat_list), min(flat_list)\n",
"tmp_beta = iqspr_results_reorder[\"beta\"]\n",
"\n",
"for i in range(len(r_std)):\n",
" dot_size = 45*((np.asarray(r_std[i])-s_min)/(s_max-s_min)) + 5\n",
" \n",
" _ = plt.figure(figsize=(5,5))\n",
" rectangle = plt.Rectangle((0,0),200,3,fc='y',alpha=0.1)\n",
" _ = plt.gca().add_patch(rectangle)\n",
" _ = plt.scatter(data_ss[\"E\"], data_ss[\"HOMO-LUMO gap\"],s=3, c='b', alpha=0.2)\n",
" _ = plt.scatter(x_mean[i], y_mean[i],s=dot_size, c='r', alpha=0.5)\n",
" _ = plt.title('Step: %i (beta = %.3f)' % (i,tmp_beta[i]))\n",
" _ = plt.xlim(x_min,x_max)\n",
" _ = plt.ylim(y_min,y_max)\n",
" _ = plt.xlabel('Internal energy')\n",
" _ = plt.ylabel('HOMO-LUMO gap')\n",
" #plt.show()\n",
" _ = plt.savefig(ini_dir+'Step_%02i.png' % i,dpi = 500)\n",
" _ = plt.close()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 10-15min to complete!**\n",
"\n",
"Finally, let us take a look at the generated molecular structures."
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 4min 16s, sys: 7.13 s, total: 4min 23s\n",
"Wall time: 4min 25s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"import os\n",
"\n",
"# prepare a folder to save all the figures\n",
"ini_dir = './iQSPR_tutorial_smiles/'\n",
"if not os.path.exists(ini_dir):\n",
" os.makedirs(ini_dir)\n",
"\n",
"tmp_list = [x.sum(axis = 1, skipna = True).values for x in iqspr_results_reorder[\"loglike\"]] \n",
"\n",
"n_S = 25\n",
"for i, smis in enumerate(iqspr_results_reorder['samples']):\n",
" tmp_smis = iqspr_results_reorder['samples'][i][\n",
" np.argsort(tmp_list[i])[::-1]]\n",
" fig, ax = plt.subplots(5, 5)\n",
" _ = fig.set_size_inches(20, 20)\n",
" _ = fig.set_tight_layout(True)\n",
" for j in range(n_S):\n",
" xaxis = j // 5\n",
" yaxis = j % 5\n",
" try:\n",
" img = Draw.MolToImage(Chem.MolFromSmiles(tmp_smis[j]))\n",
" _ = ax[xaxis, yaxis].clear()\n",
" _ = ax[xaxis, yaxis].set_frame_on(False)\n",
" _ = ax[xaxis, yaxis].imshow(img)\n",
" except:\n",
" pass\n",
" _ = ax[xaxis, yaxis].set_axis_off()\n",
" _ = fig.savefig(ini_dir+'Step_%02i.png' % i,dpi = 500)\n",
" _ = plt.close()\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can now compare our generated molecules with the 16 existing molecules in our data set that are in the target region. You can see that our generated molecules contain substructures that are similar to a few of the existing molecules."
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {},
"outputs": [],
"source": [
"target_smis = [Chem.MolToSmiles(Chem.MolFromSmiles(smi)) for i, smi in enumerate(data_ss['SMILES'])\n",
" if ((data_ss['HOMO-LUMO gap'].iloc[i] <= 3) and (data_ss['E'].iloc[i] <= 200))]\n"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['O=C1N=c2cc([N+](=O)[O-])c([N+](=O)[O-])cc2=NC1=O', 'O=C1C(O)=C(c2ccccc2)C(=O)C(O)=C1c1ccccc1', 'O=c1ccc2[n+]([O-])c3ccc(O)cc3oc-2c1', 'Nc1ccc2nc3ccccc3nc2c1N', 'Cc1cc(Cl)cc2c1C(=O)C(=C1Sc3cc(Cl)cc(C)c3C1=O)S2', 'Nc1ccc(N)c2c1C(=O)c1c(N)ccc(N)c1C2=O', 'COc1cc(N)c2c(c1N)C(=O)c1ccccc1C2=O', 'Nc1ccc(O)c2c1C(=O)c1ccccc1C2=O', 'CNc1ccc(N(CCO)CCO)cc1[N+](=O)[O-]', 'C1=Cc2c3ccccc3cc3c4c(cc1c23)=CCCC=4', 'O=C(CN1CCOCC1)NN=Cc1ccc([N+](=O)[O-])o1', 'CNc1ccc(O)c2c1C(=O)c1c(O)ccc(NC)c1C2=O', 'O=C1c2c(O)ccc(O)c2C(=O)c2c(O)ccc(O)c21', 'O=C1C=CC(=C2C=CC(=O)C=C2)C=C1', 'c1ccc2c(c1)ccc1c2ccc2ccc3ccccc3c21', 'NC1=NC(=O)C2=C(CNC3C=CC(O)C3O)C=NC2=N1']\n"
]
}
],
"source": [
"print(target_smis)\n"
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 6.38 s, sys: 1.38 s, total: 7.75 s\n",
"Wall time: 7.75 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"import os\n",
"\n",
"# prepare a folder to save all the figures\n",
"ini_dir = './iQSPR_tutorial_target_smiles/'\n",
"if not os.path.exists(ini_dir):\n",
" os.makedirs(ini_dir)\n",
"\n",
"n_S = 25\n",
"\n",
"fig, ax = plt.subplots(5, 5)\n",
"_ = fig.set_size_inches(20, 20)\n",
"_ = fig.set_tight_layout(True)\n",
"for j in range(n_S):\n",
" xaxis = j // 5\n",
" yaxis = j % 5\n",
" try:\n",
" img = Draw.MolToImage(Chem.MolFromSmiles(target_smis[j]))\n",
" _ = ax[xaxis, yaxis].clear()\n",
" _ = ax[xaxis, yaxis].set_frame_on(False)\n",
" _ = ax[xaxis, yaxis].imshow(img)\n",
" except:\n",
" pass\n",
" _ = ax[xaxis, yaxis].set_axis_off()\n",
"_ = fig.savefig(ini_dir+'target_region.png',dpi = 500)\n",
"_ = plt.close()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### run iQSPR with different annealing schedules"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In some cases, you may want to give priority to certain property reaching the target region. This can be done by adjusting the annealing schedule for each property. To do so, you can input a dictionary for beta, instead. Here, we try to reach a low value for internal energy first. Hence, the annealing schedule for HOMO-LUMO gap has a longer flat region."
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" E HOMO-LUMO gap\n",
"0 0.010000 0.005714\n",
"1 0.020000 0.011429\n",
"2 0.030000 0.017143\n",
"3 0.040000 0.022857\n",
"4 0.050000 0.028571\n",
"5 0.060000 0.034286\n",
"6 0.070000 0.040000\n",
"7 0.080000 0.045714\n",
"8 0.090000 0.051429\n",
"9 0.100000 0.057143\n",
"10 0.110000 0.062857\n",
"11 0.120000 0.068571\n",
"12 0.130000 0.074286\n",
"13 0.140000 0.080000\n",
"14 0.150000 0.085714\n",
"15 0.160000 0.091429\n",
"16 0.170000 0.097143\n",
"17 0.180000 0.102857\n",
"18 0.190000 0.108571\n",
"19 0.200000 0.114286\n",
"20 0.210000 0.120000\n",
"21 0.231111 0.125714\n",
"22 0.252222 0.131429\n",
"23 0.273333 0.137143\n",
"24 0.294444 0.142857\n",
"25 0.315556 0.148571\n",
"26 0.336667 0.154286\n",
"27 0.357778 0.160000\n",
"28 0.378889 0.165714\n",
"29 0.400000 0.171429\n",
"30 0.400000 0.177143\n",
"31 0.466667 0.182857\n",
"32 0.533333 0.188571\n",
"33 0.600000 0.194286\n",
"34 0.666667 0.200000\n",
"35 0.733333 0.210000\n",
"36 0.800000 0.257500\n",
"37 0.866667 0.305000\n",
"38 0.933333 0.352500\n",
"39 1.000000 0.400000\n",
"40 1.000000 0.400000\n",
"41 1.000000 0.550000\n",
"42 1.000000 0.700000\n",
"43 1.000000 0.850000\n",
"44 1.000000 1.000000\n",
"45 1.000000 1.000000\n",
"46 1.000000 1.000000\n",
"47 1.000000 1.000000\n",
"48 1.000000 1.000000\n",
"49 1.000000 1.000000\n"
]
}
],
"source": [
"# set up annealing schedule in iQSPR\n",
"beta1 = np.hstack([np.linspace(0.01,0.2,20),np.linspace(0.21,0.4,10),np.linspace(0.4,1,10),np.linspace(1,1,10)])\n",
"beta2 = np.hstack([np.linspace(0.2/35,0.2,35),np.linspace(0.21,0.4,5),np.linspace(0.4,1,5),np.linspace(1,1,5)])\n",
"beta = pd.DataFrame({'E': beta1, 'HOMO-LUMO gap': beta2})\n",
"print(beta)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let us try to re-run the IQSPR to see how the results may differ"
]
},
{
"cell_type": "code",
"execution_count": 80,
"metadata": {},
"outputs": [],
"source": [
"%%time\n",
"\n",
"# library for running iQSPR in XenonPy-iQSPR\n",
"from xenonpy.inverse.iqspr import IQSPR\n",
"\n",
"# update NGram parameters for this exampleHOMO-LUMO gap\n",
"n_gram.set_params(del_range=[1,20],max_len=500, reorder_prob=0.5)\n",
"\n",
"# set up likelihood and n-gram models in iQSPR\n",
"iqspr_reorder = IQSPR(estimator=prd_mdls, modifier=n_gram)\n",
" \n",
"np.random.seed(201909) # fix the random seed\n",
"# main loop of iQSPR\n",
"iqspr_samples1, iqspr_loglike1, iqspr_prob1, iqspr_freq1 = [], [], [], []\n",
"for s, ll, p, freq in iqspr_reorder(init_samples, beta, yield_lpf=True):\n",
" iqspr_samples1.append(s)\n",
" iqspr_loglike1.append(ll)\n",
" iqspr_prob1.append(p)\n",
" iqspr_freq1.append(freq)\n",
"# record all outputs\n",
"iqspr_results_reorder = {\n",
" \"samples\": iqspr_samples1,\n",
" \"loglike\": iqspr_loglike1,\n",
" \"prob\": iqspr_prob1,\n",
" \"freq\": iqspr_freq1,\n",
" \"beta\": beta\n",
"}\n",
"# save results\n",
"with open('iQSPR_results_reorder2.obj', 'wb') as f:\n",
" pk.dump(iqspr_results_reorder, f)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"##### plot results"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let us take a look at the results."
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {},
"outputs": [],
"source": [
"with open('iQSPR_results_reorder2.obj', 'rb') as f:\n",
" iqspr_results_reorder = pk.load(f)\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"First, we look at how the likelihood values of the generated molecules converged to a distribution peaked around 1 (hitting the target property region). The gradient correlates well to the annealing schedule."
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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4x3veAcmJiYAAKVSCe95z3uwfft2/Nmf/Rmy2eyCju9mfmjhcK6GZyaKqOlGR49PRNRpKykpKBF58xWwffGLX8S3v/1tJJNJjIyM4Bvf+AY+//nPL+gf/NCHPoRPfvKT+N73voedO3e2FjbceOON2Lp1K3bv3o23vOUt+NSnPrWg47t58dCCKDRTgBAR9bqoqmB4IMJgjWiF8xWwWZaFkZGR1usTTjhhQZvANxoNXH311Tj++OMBAMcddxwmJycBAHfddRd27twJALjoootw9913wzA61wvGoQUiIiLqV76ilkgkgkOHDrWCtPvvvx/hcDjwPxYKhXDxxRcDAGzbxhe/+MXWpvLT09PIZDLNSsky4vE4ZmdnMTo66uvYQ0Px9mWGE6hpBqIRBfEIn1Z7SSaTWOoq0MvA9utfbLv+xvZbOXwFbH/1V3+FK664AtlsFm9729uwd+9efOELX/D8nd27d+O666474mebNm3CzTffjEajgWuvvRamaeK9733vUX/fcRyIoq8OQABALlfxldZDAKBVLGgV3fexqbsymQSy2fJSV4MWiO3Xv9h2/Y3t159EUfDVyfT7fAVsZ5xxBr797W/joYcegm3bOPXUU5FOpz1/Z/v27di+fftLfl6tVvG+970PqVQKX/rSl6AozZ6ukZERzMzMYGxsDKZpolqtIpVKBX5DRERERMuNry6sO+64A8lkEtu2bcN5550Hx3Fce8ba+dCHPoT169fjxhtvRCgUav1827ZtuPXWWwEAt912G7Zu3doK5vpBTTcwU9S4+pSIiIg6zlfAdt111+HXv/41AOD222/Hzp07sW7dusD/2BNPPIE777wTDz74IC655BJcfPHFePe73w0AuPrqq/Hwww9jx44d+MY3voGPfvSjgY+/VJgyhIiIiLpJcByn7cSvZ599Fu973/twwgkn4IknnsCnPvUpvOpVr1qM+vnmdw5bN8wUNRzO1VrZyMeGohgeiCxJXfpNTTcQianQqjrTFvQpzqPpX2y7/sb2608LncPmq4ftmGOOwU033YTf/OY32LVrV88FawCgLWFeNaYMWZj5nsmD0xX2TBIREXnwjCxOP/30I/KtNRoNXH755VAUBYIg4MEHH+x6Bf3aN1XGmuHYkvTS9OMehb1gPplxMhZCsVjjPolEREQuPAO2H/zgB4tVj5dNhLCkN/x+26OwF8z3TJaqDfZMEhERefC8Q+7fvx9nn302fvKTnxz178fHx7tSqYWwwRt+v5nvmYzEVAzF2DNJRETkxjPC+eEPf4izzz4b//qv//qSvxMEARdccEHXKhbU+tEEwoq01NWggKKqgkw6iqxlLXVViIiIepavVaL9YClXidLL028rnWq64Xu+YpCy3apDt/Vb+9EL2Hb9je3Xn7qy08GVV17p+ctf/vKXA/+DRP1sfmWrKAiwHQebxwdcA6YgZbtVByIiWh48A7Y3vOENi1UPor4wv7J1Puee10KXIGW7VQciIloePAO2Sy655CU/+9a3voW3ve1tXasQUS8LknOvW/n5mPePiGjlCXylv+WWWxiw0YoVJOdet/LzMe8fEdHKEzhgWyZrFIgWLEjOvW7l52PePyKilcXX1lQvdvLJJ3ejHkRERETkwlcP26FDh1r///73vx+Tk5NQVRWDg4NdqxgRERERNfkK2C677DJMT08jFotBFEWUy2VIkoTBwUH8wz/8A84444xu15OIiIhoxfIVsL361a/GWWedhTe96U0AgB//+Mf45S9/iUsvvRQf+9jH8J3vfKebdSQiIiJa0XzNYfvd737XCtaAZn62xx9/HCeeeCIMw+hW3YgWrKYbmClqqOn8fBIRLWcr5XrvK2AzTRN79uxpvd6zZw9s20a9Xodpml2rHNFCzO8EcDhXwzMTxWX/JSYiWqlW0vXe15DoX//1X+Pyyy/HscceC9u2sW/fPtxwww34/Oc/j9e//vXdriNRINwJgIhoZVhJ13tfAdu2bdvw4x//GPfffz9kWcbpp5+OgYEBvOIVr0A8HnwD037RSxtsk3/cCYCIaGVYSdd7X+/Mtm185zvfwd133w3TNPGa17wGV1555bIP1rjBdn/iTgBERCvDSrre+5rD9tnPfha/+tWv8I53vAPvfOc78dBDD2HXrl3drtuSenE3qygIqNU5V6+fRFUFwwORZf3lJSKilXO999XD9vOf/xz/7//9PyhK82Sce+65eOMb34gPf/jDXa3cUlpJ3axERETU23xFIY7jtII1AAiFQke8Xo5WUjcrERER9TZfAdvxxx+PT3/60/jzP/9zCIKAr3/969iyZUu367bkuME2ERER9QJfc9g+9rGPoVQq4dJLL8Vb3/pW5HI5XHbZZd2uGxERERHBZw9bPB7HZz7zmSN+dsYZ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duv3N7Zf/2Lb9Te2X39a6JDokiw66AYGbP2LF53+xvbrX2y7/sb26099k9aDiIiIiIJhwEZERETU4xiwEREREfU4BmxEREREPY4BGxEREVGPY8BGRERE1OMYsBERERH1OAZsRERERD2OARsRERFRj2PARkRERNTjGLARERER9TgGbEREREQ9jgEbERERUY9jwEZERETU4xiwEREREfU4BmxEREREPY4BGxEREVGPY8BGRERE1OMYsBERERH1OAZsRERERD1u2QRsWt1sW6amG5gpaqjpxiLUiIiIiKgz5KWuQKccztcwNhhFJHz0t6TVTRycqUKEgNlyHetHE65lafGJorDUVaCXge3Xv9h2/Y3t138W2maC4zhOh+tCRERERB20bIZEiYiIiJYrBmxEREREPY4BGxEREVGPY8BGRERE1OMYsBERERH1OAZsRERERD2OARsRERFRj2PARkRERNTjGLARERER9bi+D9i+//3v48ILL8QFF1yAf/u3f1vq6pAPlUoFF110EQ4ePAgAuOeee7Bz505ccMEF+NznPrfEtSMvX/ziF7Fjxw7s2LEDu3btAsD26xf/8A//gAsvvBA7duzA1772NQBsu350/fXX49prrwXA9usnl19+OXbs2IGLL74YF198MR555JHg7ef0scOHDzvnnXeek8/nnWq16uzcudN5+umnl7pa5OHhhx92LrroIuekk05yDhw44Gia5mzbts3Zv3+/YxiGc8UVVzh33XXXUleTjuKXv/yl87a3vc2p1+tOo9Fw3v72tzvf//732X594Ne//rVz6aWXOoZhOJqmOeedd57z5JNPsu36zD333OOcddZZzt/8zd/w2tlHbNt2zjnnHMcwjNbPFtJ+fd3Dds899+AP/uAPkEqlEI1G8YY3vAE/+tGPlrpa5OHb3/42Pvaxj2FkZAQA8Oijj2L9+vVYu3YtZFnGzp072YY9KpPJ4Nprr0UoFIKiKDjmmGOwd+9etl8feNWrXoV/+Zd/gSzLyOVysCwLpVKJbddHCoUCPve5z+HKK68EwGtnP3nuuecAAFdccQXe+MY34utf//qC2q+vA7bp6WlkMpnW65GREUxNTS1hjaidT33qU9i6dWvrNduwfxx77LE47bTTAAB79+7F7t27IQgC269PKIqCz3/+89ixYwfOPvtsfvf6zEc/+lFcc801SCaTAHjt7CelUglnn302brrpJtx888245ZZbcOjQocDt19cBm23bEASh9dpxnCNeU+9jG/afp59+GldccQX++3//71i7di3br4984AMfwL333ovJyUns3buXbdcnvvOd72DVqlU4++yzWz/jtbN/nH766di1axcSiQTS6TTe/OY34/Of/3zg9pO7XdFuGhsbw/333996nc1mW0Nt1B/GxsaQzWZbr9mGve2BBx7ABz7wAXz4wx/Gjh07cN9997H9+sCzzz6LRqOBE044AZFIBBdccAF+9KMfQZKkVhm2Xe+67bbbkM1mcfHFF6NYLKJWq2FiYoLt1yfuv/9+GIbRCrgdx8H4+Hjga2df97C9+tWvxr333ovZ2Vlomoaf/OQn+MM//MOlrhYFcOqpp+L555/Hvn37YFkWfvCDH7ANe9Tk5CT+8i//EjfccAN27NgBgO3XLw4ePIi/+7u/Q6PRQKPRwJ133olLL72Ubdcnvva1r+EHP/gBvve97+EDH/gAXve61+Gf/umf2H59olwuY9euXajX66hUKvjud7+LD37wg4Hbr6972EZHR3HNNdfg7W9/OwzDwJvf/GaccsopS10tCiAcDuMzn/kMrrrqKtTrdWzbtg1//Md/vNTVoqP46le/inq9js985jOtn1166aVsvz6wbds2PProo3jTm94ESZJwwQUXYMeOHUin02y7PsVrZ/8477zz8Mgjj+BNb3oTbNvGf/kv/wWnn3564PYTHMdxFqnORERERLQAfT0kSkRERLQSMGAjIiIi6nEM2IiIiIh6HAM2IiIioh7HgI2IiIioxzFgIyIiIupxDNiIaEV5+OGHcfnll2Pnzp246KKL8K53vQtPP/00gObmzLOzs0tcQyKil+rrxLlEREE0Gg28973vxT//8z/jpJNOAgB873vfw7vf/W7ceeed+OUvf7nENSQiOjoGbES0YmiahnK5jFqt1vrZG9/4RsTjcfzd3/0dAOAd73gH/s//+T8QRRGf+MQnMDk5CcMwsGPHDlx55ZU4ePAgLr/8crz2ta/FI488Asdx8NGPfhRbt25dqrdFRCsAdzogohXla1/7Gm688UYMDw/jjDPOwFlnnYUdO3YgEonguOOOw7333ot0Oo23v/3t+Iu/+Au87nWvQ71ex7vf/W5ceumlOOWUU/BHf/RHuOGGG7Bz50787Gc/w9/+7d/ipz/9KRRFWeq3R0TLFAM2IlpxKpUKfvOb3+A3v/kN7rzzTgDAv//7v2Pr1q249957oaoqzjzzTGzZsqX1O7VaDdu3b8db3/pW/Mmf/Anuu+++1t9t27YNN910E04++eRFfy9EtDJwSJSIVowHHngADz30EN71rnfhvPPOw3nnnYcPfvCDuOiii46Yv2bbNhzHwS233IJIJAIAmJ2dRTgcRj6fhyRJRxzXtu2X/IyIqJO4SpSIVox0Oo0vfelLuP/++1s/y2azqFQq2LJlCyRJgmmaiMfjOO200/C1r30NAFAqlXDZZZe1euNmZ2dx9913AwD+8z//E4qiHNEbR0TUaRwSJaIV5Ve/+hW+8IUv4PDhwwiHw0gkEvjLv/xL/OEf/iE++MEP4re//S2+8IUvIBqN4u///u9x6NAhNBoNXHTRRbjqqqtw8OBBXHjhhTj//PPx9NNPQ1VVfPzjH8cJJ5yw1G+NiJYxBmxERAEcPHgQO3fuxEMPPbTUVSGiFYRDokREREQ9jj1sRERERD2OPWxEREREPY4BGxEREVGPY8BGRERE1OMYsBERERH1OAZsRERERD3u/wfBlY7oY1xDewAAAABJRU5ErkJggg==\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot the likelihood evolution\n",
"\n",
"# set up the min and max boundary for the plots\n",
"tmp_list = [x.sum(axis = 1, skipna = True).values for x in iqspr_results_reorder[\"loglike\"]]\n",
"flat_list = np.asarray([item for sublist in tmp_list for item in sublist])\n",
"y_max, y_min = max(flat_list), min(flat_list)\n",
"\n",
"_ = plt.figure(figsize=(10,5))\n",
"_ = plt.xlim(0,len(iqspr_results_reorder[\"loglike\"]))\n",
"_ = plt.ylim(y_min,y_max)\n",
"_ = plt.xlabel('Step')\n",
"_ = plt.ylabel('Log-likelihood')\n",
"for i, ll in enumerate(tmp_list):\n",
" _ = plt.scatter([i]*len(ll), ll ,s=10, c='b', alpha=0.2)\n",
"_ = plt.show()\n",
"#plt.savefig('iqspr_loglike_reorder.png',dpi = 500)\n",
"#plt.close()\n",
"\n",
"y_max, y_min = np.exp(y_max), np.exp(y_min)\n",
"_ = plt.figure(figsize=(10,5))\n",
"_ = plt.xlim(0,len(iqspr_results_reorder[\"loglike\"]))\n",
"_ = plt.ylim(y_min,y_max)\n",
"_ = plt.xlabel('Step')\n",
"_ = plt.ylabel('Likelihood')\n",
"for i, ll in enumerate(tmp_list):\n",
" _ = plt.scatter([i]*len(ll), np.exp(ll) ,s=10, c='b', alpha=0.2)\n",
"_ = plt.show()\n",
"#plt.savefig('iqspr_like_reorder.png',dpi = 500)\n",
"#plt.close()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 1-2min to complete!**\n",
"\n",
"Next, we plot the evolution of the generated molecules in the target property space. Note that if your forward models are BayesRidge, you need to add return_std=True to the predict function."
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Range of std. dev.: (25.5198,33.2724)\n",
"CPU times: user 19.1 s, sys: 190 ms, total: 19.3 s\n",
"Wall time: 20.2 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"# re-calculate the property values for the proposed molecules\n",
"x_mean, x_std, y_mean, y_std = [], [], [], []\n",
"r_std = []\n",
"FPs_samples = []\n",
"for i, smis in enumerate(iqspr_results_reorder[\"samples\"]):\n",
" tmp_fps = RDKit_FPs.transform(smis)\n",
" FPs_samples.append(tmp_fps)\n",
" \n",
" tmp1, tmp2 = prd_mdls[\"E\"].predict(tmp_fps)\n",
" x_mean.append(tmp1)\n",
" x_std.append(tmp2)\n",
" \n",
" tmp1, tmp2 = prd_mdls[\"HOMO-LUMO gap\"].predict(tmp_fps)\n",
" y_mean.append(tmp1)\n",
" y_std.append(tmp2)\n",
" \n",
" r_std.append([np.sqrt(x_std[-1][i]**2 + y_std[-1][i]**2) for i in range(len(x_std[-1]))])\n",
"\n",
"# flatten the list for max/min calculation\n",
"flat_list = [item for sublist in r_std for item in sublist]\n",
"print('Range of std. dev.: (%.4f,%.4f)' % (min(flat_list),max(flat_list)))\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Warning: the next module may take 1-2min to complete!**"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see that the algorithm spent a longer time exploring the lower internal energy region, which ends up not able to find candidates within our target region in this particular test case. In practice, a certain direction may be preferred to guide the search based on prior knowledge."
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"CPU times: user 19.2 s, sys: 398 ms, total: 19.6 s\n",
"Wall time: 19.6 s\n"
]
}
],
"source": [
"%%time\n",
"\n",
"import os\n",
"\n",
"# prepare a folder to save all the figures\n",
"ini_dir = './iQSPR_tutorial_prd2/'\n",
"if not os.path.exists(ini_dir):\n",
" os.makedirs(ini_dir)\n",
"\n",
"flat_list = np.asarray([item for sublist in r_std for item in sublist])\n",
"s_max, s_min = max(flat_list), min(flat_list)\n",
"flat_list = np.concatenate((data_ss[\"E\"],\n",
" np.asarray([item for sublist in x_mean for item in sublist])))\n",
"x_max, x_min = max(flat_list), min(flat_list)\n",
"flat_list = np.concatenate((data_ss[\"HOMO-LUMO gap\"],\n",
" np.asarray([item for sublist in y_mean for item in sublist])))\n",
"y_max, y_min = max(flat_list), min(flat_list)\n",
"tmp_beta = iqspr_results_reorder[\"beta\"]\n",
"\n",
"for i in range(len(r_std)):\n",
" dot_size = 45*((np.asarray(r_std[i])-s_min)/(s_max-s_min)) + 5\n",
" \n",
" _ = plt.figure(figsize=(5,5))\n",
" rectangle = plt.Rectangle((0,0),200,3,fc='y',alpha=0.1)\n",
" _ = plt.gca().add_patch(rectangle)\n",
" _ = plt.scatter(data_ss[\"E\"], data_ss[\"HOMO-LUMO gap\"],s=3, c='b', alpha=0.2)\n",
" _ = plt.scatter(x_mean[i], y_mean[i],s=dot_size, c='r', alpha=0.5)\n",
" _ = plt.title('Step: %i (beta = %.3f, %.3f)' % (i,tmp_beta.iloc[i,0],tmp_beta.iloc[i,1]))\n",
" _ = plt.xlim(x_min,x_max)\n",
" _ = plt.ylim(y_min,y_max)\n",
" _ = plt.xlabel('Internal energy')\n",
" _ = plt.ylabel('HOMO-LUMO gap')\n",
" #plt.show()\n",
" _ = plt.savefig(ini_dir+'Step_%02i.png' % i,dpi = 500)\n",
" _ = plt.close()\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Thank you for using XenonPy-iQSPR. We would appreciate any feedback and code contribution to this open-source project.\n",
"\n",
"The sample code can be downloaded at:\n",
"https://github.com/yoshida-lab/XenonPy/blob/master/samples/iQSPR.ipynb"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "MB16_xepy37_v06_test_env",
"language": "python",
"name": "mb16_xepy37_v06_test_env"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.9"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
================================================
FILE: docs/source/xenonpy.contrib.extend_descriptors.descriptor.rst
================================================
xenonpy.contrib.extend\_descriptors.descriptor package
======================================================
Submodules
----------
xenonpy.contrib.extend\_descriptors.descriptor.frozen\_featurizer\_descriptor module
------------------------------------------------------------------------------------
.. automodule:: xenonpy.contrib.extend_descriptors.descriptor.frozen_featurizer_descriptor
:members:
:undoc-members:
:show-inheritance:
xenonpy.contrib.extend\_descriptors.descriptor.mordred\_descriptor module
-------------------------------------------------------------------------
.. automodule:: xenonpy.contrib.extend_descriptors.descriptor.mordred_descriptor
:members:
:undoc-members:
:show-inheritance:
xenonpy.contrib.extend\_descriptors.descriptor.organic\_comp\_descriptor module
-------------------------------------------------------------------------------
.. automodule:: xenonpy.contrib.extend_descriptors.descriptor.organic_comp_descriptor
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.contrib.extend_descriptors.descriptor
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.contrib.extend_descriptors.rst
================================================
xenonpy.contrib.extend\_descriptors package
===========================================
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.contrib.extend_descriptors.descriptor
Module contents
---------------
.. automodule:: xenonpy.contrib.extend_descriptors
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.contrib.ismd.rst
================================================
xenonpy.contrib.ismd package
============================
Submodules
----------
xenonpy.contrib.ismd.reactant\_pool module
------------------------------------------
.. automodule:: xenonpy.contrib.ismd.reactant_pool
:members:
:undoc-members:
:show-inheritance:
xenonpy.contrib.ismd.reactor module
-----------------------------------
.. automodule:: xenonpy.contrib.ismd.reactor
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.contrib.ismd
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.contrib.rst
================================================
xenonpy.contrib package
=======================
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.contrib.extend_descriptors
xenonpy.contrib.ismd
Module contents
---------------
.. automodule:: xenonpy.contrib
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.datatools.rst
================================================
xenonpy.datatools package
=========================
Submodules
----------
xenonpy.datatools.dataset module
--------------------------------
.. automodule:: xenonpy.datatools.dataset
:members:
:undoc-members:
:show-inheritance:
xenonpy.datatools.preset module
-------------------------------
.. automodule:: xenonpy.datatools.preset
:members:
:undoc-members:
:show-inheritance:
xenonpy.datatools.splitter module
---------------------------------
.. automodule:: xenonpy.datatools.splitter
:members:
:undoc-members:
:show-inheritance:
xenonpy.datatools.transform module
----------------------------------
.. automodule:: xenonpy.datatools.transform
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.datatools
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.descriptor.rst
================================================
xenonpy.descriptor package
==========================
Submodules
----------
xenonpy.descriptor.base module
------------------------------
.. automodule:: xenonpy.descriptor.base
:members:
:undoc-members:
:show-inheritance:
xenonpy.descriptor.cgcnn module
-------------------------------
.. automodule:: xenonpy.descriptor.cgcnn
:members:
:undoc-members:
:show-inheritance:
xenonpy.descriptor.compositions module
--------------------------------------
.. automodule:: xenonpy.descriptor.compositions
:members:
:undoc-members:
:show-inheritance:
xenonpy.descriptor.fingerprint module
-------------------------------------
.. automodule:: xenonpy.descriptor.fingerprint
:members:
:undoc-members:
:show-inheritance:
xenonpy.descriptor.frozen\_featurizer module
--------------------------------------------
.. automodule:: xenonpy.descriptor.frozen_featurizer
:members:
:undoc-members:
:show-inheritance:
xenonpy.descriptor.structure module
-----------------------------------
.. automodule:: xenonpy.descriptor.structure
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.descriptor
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.inverse.iqspr.rst
================================================
xenonpy.inverse.iqspr package
=============================
Submodules
----------
xenonpy.inverse.iqspr.estimator module
--------------------------------------
.. automodule:: xenonpy.inverse.iqspr.estimator
:members:
:undoc-members:
:show-inheritance:
xenonpy.inverse.iqspr.iqspr module
----------------------------------
.. automodule:: xenonpy.inverse.iqspr.iqspr
:members:
:undoc-members:
:show-inheritance:
xenonpy.inverse.iqspr.iqspr4df module
-------------------------------------
.. automodule:: xenonpy.inverse.iqspr.iqspr4df
:members:
:undoc-members:
:show-inheritance:
xenonpy.inverse.iqspr.modifier module
-------------------------------------
.. automodule:: xenonpy.inverse.iqspr.modifier
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.inverse.iqspr
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.inverse.rst
================================================
xenonpy.inverse package
=======================
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.inverse.iqspr
Submodules
----------
xenonpy.inverse.base module
---------------------------
.. automodule:: xenonpy.inverse.base
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.inverse
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.mdl.rst
================================================
xenonpy.mdl package
===================
Submodules
----------
xenonpy.mdl.base module
-----------------------
.. automodule:: xenonpy.mdl.base
:members:
:undoc-members:
:show-inheritance:
xenonpy.mdl.descriptor module
-----------------------------
.. automodule:: xenonpy.mdl.descriptor
:members:
:undoc-members:
:show-inheritance:
xenonpy.mdl.mdl module
----------------------
.. automodule:: xenonpy.mdl.mdl
:members:
:undoc-members:
:show-inheritance:
xenonpy.mdl.method module
-------------------------
.. automodule:: xenonpy.mdl.method
:members:
:undoc-members:
:show-inheritance:
xenonpy.mdl.model module
------------------------
.. automodule:: xenonpy.mdl.model
:members:
:undoc-members:
:show-inheritance:
xenonpy.mdl.modelset module
---------------------------
.. automodule:: xenonpy.mdl.modelset
:members:
:undoc-members:
:show-inheritance:
xenonpy.mdl.property module
---------------------------
.. automodule:: xenonpy.mdl.property
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.mdl
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.model.nn.rst
================================================
xenonpy.model.nn package
========================
Submodules
----------
xenonpy.model.nn.layer module
-----------------------------
.. automodule:: xenonpy.model.nn.layer
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.nn.wrap module
----------------------------
.. automodule:: xenonpy.model.nn.wrap
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.model.nn
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.model.rst
================================================
xenonpy.model package
=====================
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.model.nn
xenonpy.model.training
xenonpy.model.utils
Submodules
----------
xenonpy.model.cgcnn module
--------------------------
.. automodule:: xenonpy.model.cgcnn
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.extern module
---------------------------
.. automodule:: xenonpy.model.extern
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.sequential module
-------------------------------
.. automodule:: xenonpy.model.sequential
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.model
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.model.training.dataset.rst
================================================
xenonpy.model.training.dataset package
======================================
Submodules
----------
xenonpy.model.training.dataset.array module
-------------------------------------------
.. automodule:: xenonpy.model.training.dataset.array
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.dataset.cgcnn module
-------------------------------------------
.. automodule:: xenonpy.model.training.dataset.cgcnn
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.model.training.dataset
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.model.training.extension.rst
================================================
xenonpy.model.training.extension package
========================================
Submodules
----------
xenonpy.model.training.extension.persist module
-----------------------------------------------
.. automodule:: xenonpy.model.training.extension.persist
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.extension.tensor\_convert module
-------------------------------------------------------
.. automodule:: xenonpy.model.training.extension.tensor_convert
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.extension.validator module
-------------------------------------------------
.. automodule:: xenonpy.model.training.extension.validator
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.model.training.extension
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.model.training.rst
================================================
xenonpy.model.training package
==============================
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.model.training.dataset
xenonpy.model.training.extension
Submodules
----------
xenonpy.model.training.base module
----------------------------------
.. automodule:: xenonpy.model.training.base
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.checker module
-------------------------------------
.. automodule:: xenonpy.model.training.checker
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.clip\_grad module
----------------------------------------
.. automodule:: xenonpy.model.training.clip_grad
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.loss module
----------------------------------
.. automodule:: xenonpy.model.training.loss
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.lr\_scheduler module
-------------------------------------------
.. automodule:: xenonpy.model.training.lr_scheduler
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.optimizer module
---------------------------------------
.. automodule:: xenonpy.model.training.optimizer
:members:
:undoc-members:
:show-inheritance:
xenonpy.model.training.trainer module
-------------------------------------
.. automodule:: xenonpy.model.training.trainer
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.model.training
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.model.utils.rst
================================================
xenonpy.model.utils package
===========================
Submodules
----------
xenonpy.model.utils.metrics module
----------------------------------
.. automodule:: xenonpy.model.utils.metrics
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.model.utils
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.rst
================================================
xenonpy package
===============
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.contrib
xenonpy.datatools
xenonpy.descriptor
xenonpy.inverse
xenonpy.mdl
xenonpy.model
xenonpy.utils
xenonpy.visualization
Module contents
---------------
.. automodule:: xenonpy
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.utils.math.rst
================================================
xenonpy.utils.math package
==========================
Submodules
----------
xenonpy.utils.math.product module
---------------------------------
.. automodule:: xenonpy.utils.math.product
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.utils.math
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.utils.rst
================================================
xenonpy.utils package
=====================
Subpackages
-----------
.. toctree::
:maxdepth: 4
xenonpy.utils.math
Submodules
----------
xenonpy.utils.parameter\_gen module
-----------------------------------
.. automodule:: xenonpy.utils.parameter_gen
:members:
:undoc-members:
:show-inheritance:
xenonpy.utils.useful\_cls module
--------------------------------
.. automodule:: xenonpy.utils.useful_cls
:members:
:undoc-members:
:show-inheritance:
xenonpy.utils.useful\_func module
---------------------------------
.. automodule:: xenonpy.utils.useful_func
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.utils
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: docs/source/xenonpy.visualization.rst
================================================
xenonpy.visualization package
=============================
Submodules
----------
xenonpy.visualization.heatmap module
------------------------------------
.. automodule:: xenonpy.visualization.heatmap
:members:
:undoc-members:
:show-inheritance:
Module contents
---------------
.. automodule:: xenonpy.visualization
:members:
:undoc-members:
:show-inheritance:
================================================
FILE: hooks/build
================================================
#!/bin/bash
docker build --build-arg key=$api_key -f $DOCKERFILE_PATH -t $IMAGE_NAME .
================================================
FILE: licences/.gitkeep
================================================
================================================
FILE: mi_book/README.md
================================================
# 演習問題
このリポジトリは,共立出版社が出版する「マテリアルズインフォマティクス」の演習問題1~22をまとめている.
その内,演習16と17は,現在訓練済みモデルのダウンロードサービスのメンテナンスにより実行できない状態になってる.サービス開始後演習16と17を追加する.
## 実行環境
実行環境の構築に関しては,我々は[conda](https://docs.conda.io/en/latest/miniconda.html)の利用をおすすめします.
condaを利用した場合は,[XenonPy installation](https://xenonpy.readthedocs.io/en/latest/installation.html#using-conda-and-pip)を参考してください.
独自で実行環境を構築する場合,以下の条件を満たすこと.
* Python >= 3.7
* Pymatgen >= 2020.10.9
* rdkit == 2020.09
* xenonpy >= 0.6
* Pytorch >= 1.7.0
## 演習用データの獲得
これらの演習を実行する前に,下記のデータセットを用意してください.
* `retrieve_materials_project.ipynb`を実行して,Materials Projectから無機結晶データをダウンロード.
* [In house data](https://github.com/yoshida-lab/XenonPy/releases/download/v0.6.5/data.zip)をダウンロードして,README.mdと同じフォルダに解凍してください.
フォルダのストラクチャーのイメージ:
```
data
|- QC_AC_data.pd.xz
|- mp_ids.txt
|- ...
output
|- <演習中の出力>
|- ...
exercise_2-10.ipynb
exercise...
```
## 目次
### 1.3
* 演習1)[XenonPy installation](https://xenonpy.readthedocs.io/en/latest/installation.html#using-conda-and-pip)を参考にXenonPyをインストールせよ.
### 1.3.1
Notebook: [Exercise 2~10](exercise_2-10.ipynb)
* 演習2)配布したSMILES形式の化学構造をMOLオブジェクトという形式に変換し,化学構造を描画せよ.
* 演習3)例題の化学構造の内,GetSubstructMatchを用いてベンゼン’c1ccccc1’にマッチする原子のインデックスを取得し,RDKitのモジュールを使用して,ベンゼンをカラーハイライトして化学構造を図示せよ.
* 演習4)アスピリンCC(=O)Oc1ccccc1C(=O)OのECFPフィンガープリント(Morganフィンガープリント)を計算せよ.ビット数をB=2048,半径をR=2とする.
* 演習5)演習4の各ビットの部分構造を取り出し,化学構造を描画せよ.
* 演習6)カウント型のECFPフィンガープリントとアトムペアフィンガープリントを計算し,それぞれのベクトルの数値を可視化せよ.
* 演習7)分子動力学シミュレーションのサンプルデータを用いて,モノマー構造のECFPフィンガープリント記述子から熱伝導率を予測するモデルを構築せよ.ここでは,ランダムフォレスト回帰とニューラルネットワークを用いる.また,訓練データの数やフィンガープリントの種類等を変更し,予測精度の変化を調べて解析結果をまとめよ.
* 演習8)ポリエチレンCCC(=O)Oの単量体,二量体,三量体のSMILES文字列を生成し.ECFP記述子を計算せよ(B=2048,R=2).
* 演習9)演習8の各ビットの部分構造を描画し,比較せよ.
* 演習10)サンプルデータの10化合物のRDKitの2次元記述子とmordredの2次元記述子を計算せよ.
### 1.3.2
Notebook: [Exercise 11](exercise_11.ipynb)
* 演習11)XenonPy の 58 種類の元素特徴量を抽出せよ.
Notebook: [Exercise 12](exercise_12.ipynb)
* 演習12)サンプルデータの化学組成の記述子を計算せよ.
### 1.4.1
Notebook: [Exercise 13](exercise_13.ipynb)
* 演習13)分子動力学シミュレーションのサンプルデータにある300種類のポリマーの構造物性相関データを用いて,密度,定圧熱容量,熱伝導率,線膨張係数をの予測モデルを構築せよ.以下の説明やサンプルコードを参考にモデルの作成方法を自ら工夫し,その結果を考察せよ.
### 1.4.2
Notebook: [Exercise 14](exercise_14.ipynb)
* 演習14)以下の説明とサンプルコードを参考にして,Materials Project に収録されているデータを用いて,化学組成や結晶構造から形成エネルギー,バンドギャップ,密度を予測するモデルを構築せよ.
### 1.4.3
Notebook: [Exercise 15](exercise_15.ipynb)
* 演習15)以下の説明とサンプルコードを参考に,任意の化学組成が形成する三つの構造クラス(準結晶・近似結晶・通常の周期結晶)を判別するモデルを構築せよ(3 クラス分類問題).
### 1.5.2
Notebook: [修正中](/)
* 演習16)API を用いて,XenonPy.MDL から組成から形成エネルギーを予測するモデル集合を抽出せよ.
* 演習17)同じく,XenonPy.MDL からポリマーの繰り返し単位の化学構造から誘電率を予測するモデル集合を抽出せよ.
### 1.5.3
Notebook: [Exercise 18](exercise_18.ipynb)
* 演習18)以下の説明やサンプルコードを参考にし,転移学習を適用して無機化合物の格子熱伝導率の予測モデルを構築せよ.
### 1.5.4
Notebook: [Exercise 19](exercise_19.ipynb)
* 演習19)以下の説明とサンプルコードを参考にし,ポリマーと無機化合物の屈折率の間で転移学習を実行せよ.
### 1.6.2
Notebook: [Exercise 20](exercise_20.ipynb)
* 演習20)サンプルコードを実行し,エピガロカテキン(Epigallocatechingallate)に変異・挿入・欠失・伸長の操作を施し,生成される化学構造を可視化せよ.
Notebook: [Exercise 21](exercise_21.ipynb)
* 演習21)サンプルコードを実行し,フラグメントの確率的な組み換えを行い,所望のHOMO(highest occupied molecular orbital),LUMO(lowest unoccupied molecular orbital)を有する分子(有機薄膜太陽電池のドナー分子)を生成せよ.計算のフローについては,Algorithm3を参照せよ.
### 1.7.5
Notebook: [Exercise 22](exercise_22.ipynb)
* 演習22)以下の解説とサンプルコードを参考に,所望の熱伝導率と線膨張係数を持つ高分子のモノマーを設計せよ.物性の目標範囲を変化させて,生成されるモノマーの構造的な違いを考察せよ.
================================================
FILE: mi_book/common_setting.ipynb
================================================
{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"\n",
"import warnings\n",
"warnings.filterwarnings(\"ignore\", message=\"numpy.dtype size changed\")\n",
"warnings.filterwarnings(\"ignore\", message=\"numpy.ufunc size changed\")\n",
"\n",
"# user-friendly print\n",
"from IPython.core.interactiveshell import InteractiveShell\n",
"InteractiveShell.ast_node_interactivity = \"all\""
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"from itertools import product\n",
"\n",
"class ConfusionMatrixDisplay:\n",
" \"\"\"Confusion Matrix visualization.\n",
" It is recommend to use :func:`~sklearn.metrics.plot_confusion_matrix` to\n",
" create a :class:`ConfusionMatrixDisplay`. All parameters are stored as\n",
" attributes.\n",
" Read more in the :ref:`User Guide `.\n",
" Parameters\n",
" ----------\n",
" confusion_matrix : ndarray of shape (n_classes, n_classes)\n",
" Confusion matrix.\n",
" display_labels : ndarray of shape (n_classes,)\n",
" Display labels for plot.\n",
" Attributes\n",
" ----------\n",
" im_ : matplotlib AxesImage\n",
" Image representing the confusion matrix.\n",
" text_ : ndarray of shape (n_classes, n_classes), dtype=matplotlib Text, \\\n",
" or None\n",
" Array of matplotlib axes. `None` if `include_values` is false.\n",
" ax_ : matplotlib Axes\n",
" Axes with confusion matrix.\n",
" figure_ : matplotlib Figure\n",
" Figure containing the confusion matrix.\n",
" \"\"\"\n",
" def __init__(self, confusion_matrix, display_labels):\n",
" self.confusion_matrix = confusion_matrix\n",
" self.display_labels = display_labels\n",
"\n",
" def plot(self, *, include_values=True, cmap='viridis',\n",
" xticks_rotation='horizontal', values_format=None, ax=None, anno_fontsize=14, tick_fontsize=14, label_fontsize=20):\n",
" \"\"\"Plot visualization.\n",
" Parameters\n",
" ----------\n",
" include_values : bool, default=True\n",
" Includes values in confusion matrix.\n",
" cmap : str or matplotlib Colormap, default='viridis'\n",
" Colormap recognized by matplotlib.\n",
" xticks_rotation : {'vertical', 'horizontal'} or float, \\\n",
" default='vertical'\n",
" Rotation of xtick labels.\n",
" values_format : str, default=None\n",
" Format specification for values in confusion matrix. If `None`,\n",
" the format specification is '.2f' for a normalized matrix, and\n",
" 'd' for a unnormalized matrix.\n",
" ax : matplotlib axes, default=None\n",
" Axes object to plot on. If `None`, a new figure and axes is\n",
" created.\n",
" Returns\n",
" -------\n",
" display : :class:`~sklearn.metrics.ConfusionMatrixDisplay`\n",
" \"\"\"\n",
" import matplotlib.pyplot as plt\n",
"\n",
" if ax is None:\n",
" fig, ax = plt.subplots()\n",
" else:\n",
" fig = ax.figure\n",
"\n",
" cm = self.confusion_matrix\n",
" n_classes = cm.shape[0]\n",
" self.im_ = ax.imshow(cm, interpolation='nearest', cmap=cmap)\n",
" self.text_ = None\n",
"\n",
" cmap_min, cmap_max = self.im_.cmap(0), self.im_.cmap(256)\n",
"\n",
" if include_values:\n",
" self.text_ = np.empty_like(cm, dtype=object)\n",
" if values_format is None:\n",
" values_format = '.2g'\n",
"\n",
" # print text with appropriate color depending on background\n",
" thresh = (cm.max() - cm.min()) / 2.\n",
" for i, j in product(range(n_classes), range(n_classes)):\n",
" color = cmap_max if cm[i, j] < thresh else cmap_min\n",
" self.text_[i, j] = ax.text(j, i,\n",
" format(cm[i, j], values_format),\n",
" ha=\"center\", va=\"center\",\n",
" color=color, fontsize=anno_fontsize)\n",
"\n",
" cbar = fig.colorbar(self.im_, ax=ax)\n",
" cbar.ax.tick_params(labelsize=anno_fontsize) \n",
" ax.set(xticks=np.arange(n_classes),\n",
" yticks=np.arange(n_classes),\n",
" xticklabels=self.display_labels,\n",
" yticklabels=self.display_labels,\n",
" ylabel=\"True label\",\n",
" xlabel=\"Predicted label\")\n",
"\n",
" ax.set_ylim((n_classes - 0.5, -0.5))\n",
" plt.setp(ax.get_xticklabels(), rotation=xticks_rotation)\n",
"\n",
" ax.xaxis.label.set_size(label_fontsize)\n",
" ax.yaxis.label.set_size(label_fontsize)\n",
" ax.tick_params(labelsize=tick_fontsize)\n",
" \n",
" self.figure_ = fig\n",
" self.ax_ = ax\n",
" return self\n"
]
},
{
"cell_type": "code",
"execution_count": 196,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"\n",
"import matplotlib.ticker as plticker\n",
"\n",
"from matplotlib import pyplot as plt\n",
"from xenonpy.model.utils import regression_metrics\n",
"\n",
"def cv_plot(pred, true, pred_fit=None, true_fit=None, *, unit='', lim=None, n_ticks=5, title='', ax=None, color_style=True, show_label=True, show_legend=True, **kwargs):\n",
" pred, true = pred.flatten(), true.flatten()\n",
" scores = regression_metrics(true, pred)\n",
"\n",
" if ax is None:\n",
" _, ax = plt.subplots(figsize=(8, 8), dpi=150)\n",
"\n",
" if color_style:\n",
" if pred_fit is not None and true_fit is not None:\n",
" ax.scatter(pred_fit, true_fit, alpha=0.4, s=13, marker='D', label='Train', **kwargs)\n",
" ax.scatter(pred, true, alpha=1, s=35, ec='w', marker='o', label='Test', **kwargs)\n",
" else:\n",
" if pred_fit is not None and true_fit is not None:\n",
" ax.scatter(pred_fit, true_fit, alpha=0.6, s=15, ec='grey', c='none', marker='D', label='Train', **kwargs)\n",
" ax.scatter(pred, true, alpha=1, s=35, ec='w', c='k', marker='o', label='Test', **kwargs)\n",
" \n",
" # adjust lims\n",
" if lim is None:\n",
" temp_data = np.concatenate([pred, true]) if pred_fit is None or true_fit is None else np.concatenate([pred, true, pred_fit, true_fit])\n",
" lim = (temp_data.min(), temp_data.max())\n",
" shift = (lim[1] - lim[0]) * 0.05\n",
" lim = (lim[0] - shift, lim[1] + shift)\n",
" ax.set_xlim(*lim)\n",
" ax.set_ylim(*lim)\n",
"\n",
" # plot diagonal\n",
" ax.plot(lim, lim, ls=\"--\", c=\"0.3\", alpha=0.7, lw=1.5)\n",
" \n",
" # align ticks\n",
" base = round((lim[1] - lim[0]) / n_ticks)\n",
" \n",
" if base > 0:\n",
" loc = plticker.MultipleLocator(base=base) # this locator puts ticks at regular intervals\n",
" ax.xaxis.set_major_locator(loc)\n",
" ax.yaxis.set_major_locator(loc)\n",
" \n",
" if unit != '':\n",
" unit = f' ({unit})'\n",
" if show_label:\n",
" ax.set_xlabel(f'Prediction{unit}', fontsize='x-large')\n",
" ax.set_ylabel(f'Observation{unit}', fontsize='x-large')\n",
" if show_legend:\n",
" legend = ax.legend(markerscale=2.5, fontsize='larger', loc=0)\n",
" for lh in legend.legendHandles:\n",
" lh.set_alpha(1.0)\n",
" ax.grid(color='gray', linestyle='--', linewidth=0.5, alpha=0.5)\n",
" ax.set_title(title, fontsize='xx-large')\n",
" shift = (lim[1] - lim[0]) / 30\n",
" ax.text(lim[1] - shift, lim[0] + shift,\n",
" 'R2: %.3f\\nMAE: %.3f\\nCorrelation: %.3f' % (scores['r2'],scores['mae'],scores['pearsonr']),\n",
" horizontalalignment='right', verticalalignment='bottom', fontsize='x-large',\n",
" bbox=dict(boxstyle='square', facecolor='grey', alpha=0.2, ec='black'),\n",
" )\n",
" ax.tick_params(axis='both', which='major', labelsize='larger')\n",
" return ax"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.8.13"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
================================================
FILE: mi_book/exercise_11.ipynb
================================================
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"