All Projects → AstraZeneca → chemicalx

AstraZeneca / chemicalx

Licence: Apache-2.0 License
A PyTorch and TorchDrug based deep learning library for drug pair scoring.

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to chemicalx

Yesterday I Learned
Brainfarts are caused by the rupturing of the cerebral sphincter.
Stars: ✭ 50 (-71.59%)
Mutual labels:  chemistry, biology
py4chemoinformatics
Python for chemoinformatics
Stars: ✭ 78 (-55.68%)
Mutual labels:  chemistry, drug-discovery
MolDQN-pytorch
A PyTorch Implementation of "Optimization of Molecules via Deep Reinforcement Learning".
Stars: ✭ 58 (-67.05%)
Mutual labels:  chemistry, drug-discovery
Deepchem
Democratizing Deep-Learning for Drug Discovery, Quantum Chemistry, Materials Science and Biology
Stars: ✭ 3,324 (+1788.64%)
Mutual labels:  biology, drug-discovery
Deep-Drug-Coder
A tensorflow.keras generative neural network for de novo drug design, first-authored in Nature Machine Intelligence while working at AstraZeneca.
Stars: ✭ 143 (-18.75%)
Mutual labels:  drug-discovery, smiles-strings
Chainer Chemistry
Chainer Chemistry: A Library for Deep Learning in Biology and Chemistry
Stars: ✭ 462 (+162.5%)
Mutual labels:  chemistry, biology
ALIGNet
code to train a neural network to align pairs of shapes without needing ground truth warps for supervision
Stars: ✭ 58 (-67.05%)
Mutual labels:  torch, geometric-deep-learning
Tdc
Therapeutics Data Commons: Machine Learning Datasets and Tasks for Therapeutics
Stars: ✭ 291 (+65.34%)
Mutual labels:  chemistry, biology
pysmiles
A lightweight python-only library for reading and writing SMILES strings
Stars: ✭ 95 (-46.02%)
Mutual labels:  smiles, smiles-strings
GLaDOS
Web Interface for ChEMBL @ EMBL-EBI
Stars: ✭ 28 (-84.09%)
Mutual labels:  chemistry, drug-discovery
chemprop
Fast and scalable uncertainty quantification for neural molecular property prediction, accelerated optimization, and guided virtual screening.
Stars: ✭ 75 (-57.39%)
Mutual labels:  chemistry, drug-discovery
bioicons
A library of free open source icons for science illustrations in biology and chemistry
Stars: ✭ 665 (+277.84%)
Mutual labels:  chemistry, biology
cas
Cellular Automata Simulator
Stars: ✭ 22 (-87.5%)
Mutual labels:  geometry, biology
bioclipse.core
Bioclipse2 Core.
Stars: ✭ 21 (-88.07%)
Mutual labels:  chemistry, biology
GNNs-in-Network-Neuroscience
A review of papers proposing novel GNN methods with application to brain connectivity published in 2017-2020.
Stars: ✭ 92 (-47.73%)
Mutual labels:  geometric-deep-learning, graph-neural-network
ptable trends
Python script to plot periodic trends as a heat map over the periodic table of elements
Stars: ✭ 35 (-80.11%)
Mutual labels:  chemistry
pioreactor
Hardware and software for accessible, extensible, and scalable bioreactors. Built on Raspberry Pi.
Stars: ✭ 28 (-84.09%)
Mutual labels:  biology
TriangleMeshDistance
Header only, single file, simple and efficient C++11 library to compute the signed distance function (SDF) to a triangle mesh
Stars: ✭ 55 (-68.75%)
Mutual labels:  geometry
galileo
Scala Math - Numerical (Matlab-like) and Symbolic (Mathematica-like) tool
Stars: ✭ 62 (-64.77%)
Mutual labels:  geometry
THREEg.js
three.js addon to create special or extended geometries. The addon generates indexed or non indexed BufferGeometries.
Stars: ✭ 33 (-81.25%)
Mutual labels:  geometry


PyPI Version Docs Status Code Coverage Build Status Arxiv

Documentation | External Resources | Datasets | Examples

ChemicalX is a deep learning library for drug-drug interaction, polypharmacy side effect, and synergy prediction. The library consists of data loaders and integrated benchmark datasets. It also includes state-of-the-art deep neural network architectures that solve the drug pair scoring task. Implemented methods cover traditional SMILES string based techniques and neural message passing based models.


Citing

If you find ChemicalX and the new datasets useful in your research, please consider adding the following citation:

@article{chemicalx,
  arxivId = {2202.05240},
  author = {Rozemberczki, Benedek and Hoyt, Charles Tapley and Gogleva, Anna and Grabowski, Piotr and Karis, Klas and Lamov, Andrej and Nikolov, Andriy and Nilsson, Sebastian and Ughetto, Michael and Wang, Yu and Derr, Tyler and Gyori, Benjamin M},
  month = {feb},
  title = {{ChemicalX: A Deep Learning Library for Drug Pair Scoring}},
  url = {http://arxiv.org/abs/2202.05240},
  year = {2022}
}

Drug Pair Scoring Explained

Our framework solves the drug pair scoring task of computational chemistry. In this task a machine learning model has to predict the outcome of administering two drugs together in a biological or chemical context. Deep learning models which solve this task have an architecture with two distinctive parts:

  1. A drug encoder layer which takes a pair of drugs as an input (blue and red drugs below).
  2. A head layer which outputs scores in the administration context - polypharmacy in our explanatory figure.

Getting Started

The API of chemicalx provides a high-level function for training and evaluating models that's heavily influenced by the PyKEEN training and evaluation pipeline:

from chemicalx import pipeline
from chemicalx.models import DeepSynergy
from chemicalx.data import DrugCombDB

model = DeepSynergy(context_channels=112, drug_channels=256)
dataset = DrugCombDB()

results = pipeline(
    dataset=dataset,
    model=model,
    # Data arguments
    batch_size=5120,
    context_features=True,
    drug_features=True,
    drug_molecules=False,
    # Training arguments
    epochs=100,
)

# Outputs information about the AUC-ROC, etc. to the console.
results.summarize()

# Save the model, losses, evaluation, and other metadata.
results.save("~/test_results/")

Case Study Tutorials

We provide in-depth case study like tutorials in the Documentation, each covers an aspect of ChemicalX’s functionality.


Methods Included

In detail, the following drug pair scoring models were implemented.

2018

2019

2020

2021


Head over to our documentation to find out more about installation, creation of datasets and a full list of implemented methods and available datasets. For a quick start, check out the examples in the examples/ directory.

If you notice anything unexpected, please open an issue. If you are missing a specific method, feel free to open a feature request.


Installation

PyTorch 1.10.0

To install for PyTorch 1.10.0, simply run

pip install torch-scatter -f https://pytorch-geometric.com/whl/torch-1.10.0+${CUDA}.html
pip install torchdrug
pip install chemicalx

where ${CUDA} should be replaced by either cpu, cu102, or cu111 depending on your PyTorch installation.

cpu cu102 cu111
Linux
Windows
macOS

Running tests

$ tox -e py

License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].