Baldur10 / drug-discovery-al

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Active Learning Systems for Screening Drugs


City University of Hong Kong

Final Year Project 2021-22

Supervisor: Dr.WEI, Ying


Description

This project is an Active Learning Framework for Drug Discovery which has been designed to be extendable and permits the integration of different Regression models for determing the potency of chemcial compounds.

Prerequisites

  1. Python Environment Manager such as conda or miniconda
  2. Code Editor - Visual Studio Code or Jupyter-Lab preferred

Usage

  1. Clone repo into the selected folder via
    git clone https://gitlab.com/Baldur10/drug-discovery-al
  2. Enter the root folder of the repo via
    cd \drug-discovery-al\
  3. Set up the conda environment by
    conda create --name dd-al --file=environ_al.yml
  4. Activate the conda environment via
    conda activate dd-al

ML Models Available

  1. Gaussian Processes Regressor (Scikit-Learn GPR)
  2. Random Forest Regressor (Intel(R) Extension for Scikit-Learn and Scikit-Learn RFR)
  3. Neural Network Regressor (SKORCH)

Pretrained Models for the default assays are available at:

Storage Link
Onedrive FYP Models

ML Loops

Training Loop

  1. Open the requisite model training scripts inside /scripts
  2. Taking the example of the Gaussian Processes Regressor Model, the approriater file is /scripts/test_gpr.ipynb
  3. Open the file in the code editor and run all cells. If given the option, select dd-al as the python interpretator
  4. The variable assay_limit can be changed to any integer 'n' to set the first 'n' number of assays for which models have to be trained.
  5. After the training loop is completed, the models can be found under /models and the data is present under /data/data_results

Testing Loop

  1. Before running Flask, set the environment variable using
    set FLASK_APP=app.py
  2. Run the Flask app via
    flask run

Support

Contact me at rmohan2-c@my.cityu.edu.hk

About


Languages

Language:Jupyter Notebook 86.2%Language:CSS 11.1%Language:HTML 1.6%Language:Python 1.1%Language:JavaScript 0.1%