GithubHelp home page GithubHelp logo

unixjunkie / admet_ai Goto Github PK

View Code? Open in Web Editor NEW

This project forked from swansonk14/admet_ai

0.0 0.0 0.0 17.5 MB

Training and prediction scripts for Chemprop models trained on ADMET datasets

License: MIT License

JavaScript 0.75% Python 7.01% CSS 8.38% HTML 83.75% Dockerfile 0.11%

admet_ai's Introduction

ADMET-AI

This git repo contains the code for ADMET-AI, an ADMET prediction platform that uses Chemprop-RDKit models trained on ADMET datasets from the Therapeutics Data Commons (TDC). ADMET-AI can be used to make ADMET predictions on new molecules via the command line, via the Python API, or via a web server. A live web server hosting ADMET-AI is at admet.ai.greenstonebio.com

Please see the following paper and this blog post for more details, and please cite us if ADMET-AI is useful in your work. Instructions to reproduce the results in our paper are in docs/reproduce.md.

ADMET-AI: A machine learning ADMET platform for evaluation of large-scale chemical libraries

Table of Contents

Installation

ADMET-AI can be installed in a few minutes on any operating system using pip (optionally within a conda environment). If a GPU is available, it will be used by default, but the code can also run on CPUs only.

Optionally, create a conda environment.

conda create -y -n admet_ai python=3.10
conda activate admet_ai

Install ADMET-AI via pip.

pip install admet-ai

Alternatively, clone the repo and install ADMET-AI locally.

git clone https://github.com/swansonk14/admet_ai.git
cd admet_ai
pip install -e .

By default, the pip installation only includes dependencies required for making ADMET predictions, either via the command line or via the Python API. To install dependencies required for processing TDC data or plotting TDC results, run pip install admet-ai[tdc]. To install dependencies required for hosting the ADMET-AI web server, run pip install admet-ai[web].

If there are version issues with the required packages, create a conda environment with specific working versions of the packages as follows.

pip install -r requirements.txt
pip install -e .

Note: If you get the issue ImportError: libXrender.so.1: cannot open shared object file: No such file or directory, run conda install -c conda-forge xorg-libxrender.

Predicting ADMET properties

ADMET-AI can be used to make ADMET predictions in three ways: (1) as a command line tool, (2) as a Python module, or (3) as a web server.

Command line tool

ADMET predictions can be made on the command line with the admet_predict command, as illustrated below.

admet_predict \
    --data_path data.csv \
    --save_path preds.csv \
    --smiles_column smiles

This command assumes that there exists a file called data.csv with SMILES strings in the column smiles. The predictions will be saved to a file called preds.csv.

Python module

ADMET predictions can be made using the predict function in the admet_ai Python module, as illustrated below.

from admet_ai import ADMETModel

model = ADMETModel()
preds = model.predict(smiles="O(c1ccc(cc1)CCOC)CC(O)CNC(C)C")

If a SMILES string is provided, then preds is a dictionary mapping property names to values. If a list of SMILES strings is provided, then preds is a Pandas DataFrame where the index is the SMILES and the columns are the properties.

Web server

ADMET predictions can be made using the ADMET-AI web server, as illustrated below. Note: Running the following command requires additional web dependencies (i.e., pip install admet-ai[web]).

admet_web

Then navigate to http://127.0.0.1:5000 to view the website.

Analysis plots

The DrugBank reference plot and radial plots displayed on the ADMET-AI website can be generated locally using the scripts/plot_drugbank_reference.py and scripts/plot_radial_summaries.py scripts, respectively. Both scripts take as input a CSV file with ADMET-AI predictions along with other parameters.

admet_ai's People

Contributors

swansonk14 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.