Transfer Learning for Synthetic Lethality (SLTL)
Paper & Data
[Pending Publication]
Data & initial code release are stored under Zenodo:
Introduction
TL-iGeneCombo is a transfer learning paradigm built on Synlethic Lethality Knowledge Base (SLKB).
TL-iGeneCombo supports four transfer learning approaches:
-
Finetuning method
-
Freeze first layer method (based on feature extraction)
-
Freeze high parameters method (* New, see paper)
-
Freeze Shapley method (* New, see paper)
TL-iGeneCombo can be applied to any dataset, but supports synthetic lethality contexts for following scenarios:
-
Same genes and different cells
-
Same cell and different genes
-
Similar mechanisms
-
Big data to small data
Package Installation
Installing from PyPI (Recommended - Upon Release)
When released, SLKB pipeline can be installed through PyPI.
pip install SLTL
Creating from source
python setup.py sdist
pip install dist/SLTL-1.0.0.tar.gz --user
Torch v2.1.2 was used in the study.
Getting started
Downloading data
In order to replicate TL-iGeneCombo results, input datasets can be obtained from Zenodo repo.
Alternatively, you may download the data from the following:
Omics profiles: From DepMap (Depmap Q4 2023) -> Download all omics
XDeathDB Gene Sets: Under 'Cell Death Engine' navitagion bar, 'Complete' tab, and Cell death modes and Disease set to 'All' -> Click Download
MSigDB Gene Sets: Under accession v2023.2 -> Download all gene sets in json format
Synthetic Lethality (SL) data of SLKB: Under 'Download & Contact' -> Raw SL Data.
Gene Combinatorial Effect (GCE) data of SLKB: Generated from FigShare at the following link.
Rerunning transfer learning experiments
Following SLTL installation, proceed to run the following command in Python:
SLTL.extract_SLTL_notebook(location = os.getcwd())
This will result in the TL-iGeneCombo notebook to appear in your working directory. The whole notebook can be ran to obtain TL results.
Running transfer learning experiments on new data
Following SLTL installation, proceed to run the following command in Python:
SLTL.extract_template_notebook(location = os.getcwd())
This will result in a template notebook to appear in your working directory. This notebook can be modified to allow TL applications on new datasets.
Furthermore, both notebooks can be converted into python scripts to allow for CLI access by using the following command:
jupyter nbconvert --to script *.ipynb
Then, each Python file can run like the following:
# run once to obtain the results
python SLTL_notebook.py --seed=1 --re_evaluate=0 --re_save=0
# run again with re_evaluate being on for ensemble results
python SLTL_notebook.py --seed=1 --re_evaluate=1 --re_save=0
Pipeline and Documentation
When released, you can access the full documentation at the following link.
Alternatively, documentation is available under 'docs/' folder in this repository and can be accessed using mkdocs with the following command:
mkdocs serve
Note: mkdocs installation is required.
Contact
For any questions or requests, contact Prof. Lang Li at Lang.Li@osumc.edu.
Metadata
Release files for tl-igenecombo 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tl_igenecombo-1.0.0.tar.gz | 65.5 kB | Details |
Release files / tl_igenecombo-1.0.0.tar.gz
| Download URL | tl_igenecombo-1.0.0.tar.gz |
|---|---|
| Size | 65.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0b0dd034093744cb67ab2ae8f01aee4bb293eb7af866eae814b06f2a5ef690f9
|
|
BLAKE2b-256 checksum How to use checksums |
25c5e1d9e61e5c5cc57b7361f6ad38ce6a50511cb48203e84a1f541c94ffdd21
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|