Machine learning prediction of novel anthelmintics

# Machine learning prediction of novel anthelmintics This repository contains scripts that were used to obtain the findings reported in the study "Prediction and prioritisation of novel anthelmintic candidates from public databases by using deep learning and available bioactivity data sets" by Taki et al. Contents: [1. Small-molecule bioactivity data used for training and validation](#1)[2. Feature generation, model architecture and training](#2)[3. Classification model](#3)[4. Prediction of activities](#4)[5. Post-processing: MolPort availability](#5)[6. Clustering of compounds with predicted nematocidal activity](#6) ## 1. Small-molecule bioactivity data used for training and validation<a name="1"></a> The dataset of 15,162 small-molecule compounds used for training and validation has been published as [DOI:10.5281/zenodo.10929251](https://doi.org/10.5281/zenodo.10929251) ## 2. Feature generation, model architecture and training<a name="2"></a> The scripts used are compiled in the folder [01_model_training](/01_model_training) | Script | Description | Input files ||--------------------------------|--------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|| `dl_mlp_class_run_training.py` | Wrapper script to run `dl_mlp_class_v1.4.py` with variable network architectures | CSV-formatted file with compounds in SMILES notation and annotated labels; file with line-separated list of Mordred descriptors || `dl_mlp_class_v1.4.py` | Main script to perform training or prediction (`mode`) of MLPs with specified architecture | CSV-formatted file with compounds in SMILES notation and annotated labels; file with line-separated list of Mordred descriptors || `mordred_descriptors.txt` | Line-separated list of Mordred descriptors | n/a | ## 3. Classification model<a name="3"></a> The best classification model is located in folder [02_model](/02_model). | File | Description ||----------------------------------|-----------------------------------------|| `m1002a_label_dictionary.json` | Classification labels used by the model || `m1002a_model_architecture.json` | MLP archticture || `m1002a_model_weights.h5` | The weights of the trained model | ## 4. Prediction of acitivities<a name="4"></a> Classification of compounds with respect to their activity labels was done using the wrapper script `dl_mlp_class_run_prediction.py` and the main script `dl_mlp_class_v1.4.py` located in the folder `model_training`. A dataset of 14.2 million compounds was downloaded from the ZINC15 database at <https://zinc15.docking.org/> and used as a search library. The downloaded ZINC15 data are not included in this repository. Files in folder [03_activity_prediction](/03_activity_prediction): | File | Description | Input files | Output files ||----------------------------------|--------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------| | `dl_mlp_class_run_prediction.py` | Wrapper script to run `dl_mlp_class_v1.4.py` in `prediction` mode | CSV-formatted file of library compounds with SMILES representation or h5-formatted file of encoded compounds; dictionary, architecture and weights of the model | n/a || `prepare_zinc_v3.py` | Script to encode compounds of the ZINC15 search library | CSV-formatted file of library compounds with SMILES representation | h5-formatted file of encoded compounds || `zinc_15_m1002a_active.csv.gz` | Compounds from the tested ZINC15 search library with predicted label `active` | n/a | n/a || `zinc_15_m1002a_weak.csv.gz` | Compounds from the tested ZINC15 search library with predicted label `weakly active` | n/a | n/a || `zinc_15_m1002a_inactive.csv.gz` | Compounds from the tested ZINC15 search library with predicted label `none` | n/a | n/a | ## 5. Post-processing: MolPort availability<a name="5"></a> The scripts used in this step are located in the folder [04_post_processing](/04_post_processing) and were executed using Jupyter Notebooks. | File | Description ||---------------------|------------------------------------------------------------------------|| `molport_search.py` | Searches <MolPort> for availability of compounds || `patent_scraper.py` | Scrapes the site <https://patents.google.com> for a list of compounds | ## 6. Clustering of compounds with predicted nematocidal activity<a name="6"></a> The scripts used in this step are located in the folder [05_clustering](/05_clustering) and were executed using Jupyter Notebooks. | File | Description ||--------------|-------------------------------------------------------------------------|| `k_means.py` | ??? Uses a pandas dataframe as input? Need to describe how to get this. || ??? | ??? |

Institutions

Publication Details

Journal
Zenodo (CERN European Organization for Nuclear Research)
Published
2024-11-18
DOI
https://doi.org/10.5281/zenodo.14177199
Primary Topic
Computational Drug Discovery Methods
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Machine learning prediction of novel anthelmintics

Zenodo (CERN European Organization for Nuclear Research)
Computational Drug Discovery Methods
article

Machine learning prediction of novel anthelmintics

article en

Abstract

# Machine learning prediction of novel anthelmintics This repository contains scripts that were used to obtain the findings reported in the study "Prediction and prioritisation of novel anthelmintic candidates from public databases by using deep learning and available bioactivity data sets" by Taki et al. Contents: [1. Small-molecule bioactivity data used for training and validation](#1)[2. Feature generation, model architecture and training](#2)[3. Classification model](#3)[4. Prediction of activities](#4)[5. Post-processing: MolPort availability](#5)[6. Clustering of compounds with predicted nematocidal activity](#6) ## 1. Small-molecule bioactivity data used for training and validation<a name="1"></a> The dataset of 15,162 small-molecule compounds used for training and validation has been published as [DOI:10.5281/zenodo.10929251](https://doi.org/10.5281/zenodo.10929251) ## 2. Feature generation, model architecture and training<a name="2"></a> The scripts used are compiled in the folder [01_model_training](/01_model_training) | Script | Description | Input files ||--------------------------------|--------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------|| `dl_mlp_class_run_training.py` | Wrapper script to run `dl_mlp_class_v1.4.py` with variable network architectures | CSV-formatted file with compounds in SMILES notation and annotated labels; file with line-separated list of Mordred descriptors || `dl_mlp_class_v1.4.py` | Main script to perform training or prediction (`mode`) of MLPs with specified architecture | CSV-formatted file with compounds in SMILES notation and annotated labels; file with line-separated list of Mordred descriptors || `mordred_descriptors.txt` | Line-separated list of Mordred descriptors | n/a | ## 3. Classification model<a name="3"></a> The best classification model is located in folder [02_model](/02_model). | File | Description ||----------------------------------|-----------------------------------------|| `m1002a_label_dictionary.json` | Classification labels used by the model || `m1002a_model_architecture.json` | MLP archticture || `m1002a_model_weights.h5` | The weights of the trained model | ## 4. Prediction of acitivities<a name="4"></a> Classification of compounds with respect to their activity labels was done using the wrapper script `dl_mlp_class_run_prediction.py` and the main script `dl_mlp_class_v1.4.py` located in the folder `model_training`. A dataset of 14.2 million compounds was downloaded from the ZINC15 database at <https://zinc15.docking.org/> and used as a search library. The downloaded ZINC15 data are not included in this repository. Files in folder [03_activity_prediction](/03_activity_prediction): | File | Description | Input files | Output files ||----------------------------------|--------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------| | `dl_mlp_class_run_prediction.py` | Wrapper script to run `dl_mlp_class_v1.4.py` in `prediction` mode | CSV-formatted file of library compounds with SMILES representation or h5-formatted file of encoded compounds; dictionary, architecture and weights of the model | n/a || `prepare_zinc_v3.py` | Script to encode compounds of the ZINC15 search library | CSV-formatted file of library compounds with SMILES representation | h5-formatted file of encoded compounds || `zinc_15_m1002a_active.csv.gz` | Compounds from the tested ZINC15 search library with predicted label `active` | n/a | n/a || `zinc_15_m1002a_weak.csv.gz` | Compounds from the tested ZINC15 search library with predicted label `weakly active` | n/a | n/a || `zinc_15_m1002a_inactive.csv.gz` | Compounds from the tested ZINC15 search library with predicted label `none` | n/a | n/a | ## 5. Post-processing: MolPort availability<a name="5"></a> The scripts used in this step are located in the folder [04_post_processing](/04_post_processing) and were executed using Jupyter Notebooks. | File | Description ||---------------------|------------------------------------------------------------------------|| `molport_search.py` | Searches <MolPort> for availability of compounds || `patent_scraper.py` | Scrapes the site <https://patents.google.com> for a list of compounds | ## 6. Clustering of compounds with predicted nematocidal activity<a name="6"></a> The scripts used in this step are located in the folder [05_clustering](/05_clustering) and were executed using Jupyter Notebooks. | File | Description ||--------------|-------------------------------------------------------------------------|| `k_means.py` | ??? Uses a pandas dataframe as input? Need to describe how to get this. || ??? | ??? |

Zenodo (CERN European Organization for Nuclear Research)
The University of Melbourne (AU), Max Rubner Institut (DE)
Openalex Percentile: Top 53%
Computational Drug Discovery Methods
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.