Skip to content

UniPert: A Multi-Modal Representation Learning Framework for Unifying Genetic and Chemical Perturbation

License

Notifications You must be signed in to change notification settings

lynn-1998/UniPert

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UniPert

Main Image

🛠️ Installation

Step 1: Create a Conda Environment

Create a new conda environment with Python 3.9:

conda create -n unipert python=3.9 -y
conda activate unipert

Step 2: Install PyTorch and PyG

As a prerequisite, you must have PyTorch and PyTorch Geometric (PyG) installed to use this repository.

  1. Install PyTorch based on your system and CUDA version. Visit the PyTorch website for detailed instructions.
    We recommend using the development version torch==1.12.1 for compatibility:

    # CUDA-support (e.g., CUDA 11.3):
    pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113
    
    # CPU-only
    pip install torch==1.12.1+cpu torchvision==0.13.1+cpu torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cpu
  2. Install PyG. Refer to the PyG installation guide for system-specific instructions.
    For most users, the following command should suffice:

    pip install torch-geometric

Step 3: Clone the UniPert Repository

Clone the UniPert repository to your local machine:

git clone https://github.com/TencentAILabHealthcare/UniPert.git
cd UniPert

Step 4: Install Dependencies

Install the required dependencies:

pip install -r requirements.txt

📖 Demo

Name Description
🧬 Encode Genetic Perturbagens Tutorial on how to encode genetic perturbagens from FASTA files (such as those downloaded from UniProt) or gene name lists using UniPert.
💊 Encode Chemical Perturbagens Tutorial on how to encode chemical perturbagens from compound-SMILES files (e.g., .csv, .txt, and .xlsx downloaded from PubChem and ChEMBL) or compound name list using UniPert.
🌐 Encode Perturbagens For Perturbation AnnData Tutorial on how to generate UniPert embeddings for perturbation AnnData files (.h5ad) with genetic or chemical perturbagen metadata.

📧 Contact

If you have any suggestions/ideas for UniPert or issues while using UniPert, please feel free to reach out to us. You can submit an issue on GitHub or contact us directly via email at:

🚨 License

This source code is licensed under the GPL-3.0 license found in the LICENSE file in the root directory of this source tree.

About

UniPert: A Multi-Modal Representation Learning Framework for Unifying Genetic and Chemical Perturbation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%