Pytorch Implémentation de Planet, un outil géométrique en profondeur pour prédire la réponse de la population aux médicaments. Planet fournit un nouveau graphique de connaissances cliniques qui capture les relations entre la biologie de la maladie, la chimie des médicaments et les caractéristiques de la population. En utilisant ce graphique de connaissances, la planète peut prendre une population et des médicaments à appliquer (par exemple, un essai clinique) comme entrée et prédire l'efficacité et l'innocuité des médicaments pour la population. Pour une description détaillée de l'algorithme, veuillez consulter notre manuscrit "Prédire la réponse de la population aux médicaments via un graphique de connaissances cliniques".
Exécutez les commandes suivantes pour créer un environnement conda:
conda create -n planet python=3.8
source activate planet
pip install torch==1.10.1+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html
pip install transformers==4.4.2 datasets==2.7.1 tensorboard==2.11.0 pandas wandb scikit-learn seqeval matplotlib pyyaml seaborn anndata scanpy
pip install setuptools==58.2.0 numpy==1.22.2
pip install torch-scatter==2.0.9 torch-sparse==0.6.12 -f https://pytorch-geometric.com/whl/torch-1.10.1+cu113.html
pip install torch-geometric==2.0.0
pip install ogb==1.3.0 --no-deps
Après cette installation, la version de la bibliothèque tokenizers
doit être de 0,10,3. Dans le cas où vous rencontrez une erreur sur la version tokenizers
, accédez à <conda_path>/envs/<env_name>/lib/python3.8/site-packages/transformers/dependency_versions_check.py
et remplacez le if pkg == "tokenizers": ...
Bloquer avec if pkg == "tokenizers": continue
.
Le temps d'installation total doit être dans les 10 minutes.
Exigence matérielle: 100 Go de RAM et GPU de 40 Go de mémoire
Vous pouvez télécharger toutes les données (graphique de connaissances, ensemble de données d'essais cliniques, modèles, etc.) à partir d'ici (data.zip) . Décompressez ceci, qui créera un répertoire ./data
.
Nous fournissons un cahier de démonstration pour charger les données du graphique de connaissances et des essais cliniques de la planète et de l'exécution des modèles de planète:
notebooks/demo.ipynb
Le temps d'exécution prévu doit être d'environ 10 minutes.
Allez dans ./gcn_models
Directory. Nous formons des modèles pour prédire l'efficacité, la sécurité et les événements indésirables potentiels d'un essai clinique.
Pour former un modèle de prédiction d'efficacité , exécutez les commandes dans
../scripts/train_efficacy.sh
Pour former un modèle de prédiction de sécurité , exécutez les commandes dans
../scripts/train_safety.sh
Pour former un modèle pour la prédiction des événements indésirables , exécutez les commandes dans
../scripts/train_ae.sh
Aperçu: La gestion de nos modèles pour prédire les nouveaux essais cliniques implique deux étapes:
parsing_package/parse_trial.py
) afin que les données de l'essai soient prétraitées et liées au graphique de connaissances de la planètenotebooks/predict_for_new_clinial_trial.ipynb
)Plus précisément, pour ce faire, suivez les étapes ci-dessous:
./parsing_package
. Installez les dépendances en suivant ./parsing_package/README
./parsing_package
Directory et exécutez parse_trial.py
pour traiter un nouvel essai clinique (par exemple, NCT02370680)./notebooks
Directory et exécutez predict_for_new_clinial_trial.ipynb
pour obtenir des prédictions AE, de sécurité et d'efficacité pour le nouvel essai clinique. Si vous trouvez notre code et notre recherche utiles, veuillez envisager de citer:
@article { planet2023 ,
author = { Maria Brbi{'c} and Michihiro Yasunaga and Prabhat Agarwal and Jure Leskovec } ,
title = { Predicting population response to drugs via clinical knowledge graph } ,
year = { 2023 } ,
}