Skip to content

aivant/ShapeLinker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShapeLinker

ShapeLinker is a method for the shape-conditioned de novo linker design for PROTACs. It is based on Link-INVENT and uses reinforcement learning to steer the linker generation towards a query shape with desired physicochemical properties. Shape alignment is performed with a novel, fast attention-based point cloud alignment method.

Preprint: Reinforcement Learning-Driven Linker Design via Fast Attention-based Point Cloud Alignment

Requirements

  • Multi-parameter optimization using shape alignment requires two different conda environments (see below).
  • Only works on Cuda-enabled GPU.
  • The code was tested on Debian 10 only.

Installation

  1. Create ShapeLinker conda environment
conda env create -f env.yml
  1. Create shape_align environment:
conda install -c conda-forge mamba
mamba create -n shape_align python=3.9 pytorch=1.13.0 torchvision pytorch-cuda=11.6 fvcore iopath nvidiacub pytorch3d -c bottler -c fvcore -c iopath -c pytorch -c nvidia -c pytorch3d
conda activate shape_align
pip install pykeops biotite open3d plyfile ProDy pykeops rdkit==2022.9.5 tqdm==4.49.0 unidip pytorch-lightning
pip install git+https://github.com/hesther/espsim.git

Data

Download data and models from https://storage.googleapis.com/vantai-public-archive/shapelinker. This data dump includes:

  • folder data
    • folder xtal_poses: Processed and fragmented crystal structures
    • protacdb_extended_linkers.csv: Processed PROTAC-DB data
    • pdb_systems_data.csv: Processed data for the investigated crystal structures
  • folder models
    • protacdb_extlinker_model_align.pth: Trained model for shape alignment
    • folder agents: Trained RL agents for the different crystal structures

The Link-INVENT prior, which is needed for any RL run, can be accessed here.

Steps to get directory structure used in notebooks:

  1. Store folder data in ShapeLinker/utils
cd ShapeLinker/utils
gsutil cp -r gs://vantai-public-archive/shapelinker/data .
  1. Store folder models in ShapeLinker
cd ShapeLinker
gsutil cp -r gs://vantai-public-archive/shapelinker/models . # includes trained RL agents
  1. Dump linkinvent.prior in ShapeLinker/models
cd ShapeLinker/models
wget https://github.com/MolecularAI/ReinventCommunity/raw/master/notebooks/models/linkinvent.prior

Usage

The notebooks (folder ShapeLinker/notebooks) used here were adapted from ReinventCommunity and help with preparing runs for RL or sampling. There is also a notebook to help with training a shape alignment model (notebooks/train_shape_alignment_model.ipynb). We recommend training a new model for poses different from the crystal structures investigated here (of which the extended linkers were used).

The folder utils/postprocessing contains more useful jupyter notebooks allowing the postprocessing and evaluation of the generated data.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published