Bio
Ressources pour en savoir plus sur Bio_embeddings:
- Prédire rapidement la structure des protéines et la fonction à partir de la séquence via des intégres: embed.protein.properties.
- Lisez la documentation actuelle: docs.bioembeddings.com.
- Chat avec nous: chat.bioembeddings.com.
- Nous avons présenté le pipeline Bio_Embeddings comme une conférence à ISMB 2020 & LMRL 2020. Vous pouvez trouver la conférence sur YouTube, l'affiche sur F1000 et notre manuscrit actuel du protocole.
- Consultez les
examples de configurations de pipeline A et notebooks .
Objectif du projet:
- Faciliter l'utilisation de représentations de séquences biologiques basées sur un modèle de langue pour le transfert d'apprentissage en fournissant une seule interface cohérente et à proximité
- Flux de travail reproductibles
- Profondeur de représentation (différents modèles de différents laboratoires formés sur différents ensembles de données à différentes fins)
- Exemples étendus, gérer la complexité des utilisateurs (par exemple, l'abstraction CUDA OOM) et des avertissements bien documentés et des messages d'erreur.
Le projet comprend:
- Les incorporations de python à usage général basés sur des modèles ouverts formés sur les représentations de séquences biologiques (SeqVEC, Prottrans, UNIREP, ...)
- Un pipeline qui:
- intégrer des séquences dans des représentations matricielles (par-acide aminé) ou des représentations vectorielles (par séquence) qui peuvent être utilisées pour former des modèles d'apprentissage ou à des fins analytiques
- Projets par intérims par séquence dans des représentations de dimension inférieure à l'aide de UMAP ou de T-SNE (pour la gestion des données et les visualisations des données)
- Visualise des ensembles de basse dimension d'incorporation par séquence sur des tracés interactifs 2D et 3D (avec et sans annotations)
- extrait les annotations des intérêts par séquence et des acides par amino utilisant des approches supervisées (lorsqu'elles sont disponibles) et non supervisées (par exemple par analyse de réseau)
- Un serveur Web qui enveloppe le pipeline en une API distribuée pour des travaux évolutifs et cohérents
Installation
Vous pouvez installer bio_embeddings via PIP ou l'utiliser via Docker. Faites attention aux dépendances supplémentaires pour align .
Pépin
Installez le pipeline et tous les extras comme tel:
pip install bio-embeddings[all]
Pour installer la version instable, veuillez installer le pipeline comme ainsi:
pip install -U " bio-embeddings[all] @ git+https://github.com/sacdallago/bio_embeddings.git "
Si vous n'avez besoin que d'exécuter un modèle spécifique (par exemple un modèle ESM ou Prottrans), vous pouvez installer des bio-embouchés sans dépendances, puis installer la dépendance spécifique au modèle, par exemple:
pip install bio-embeddings
pip install bio-embeddings[prottrans]
Les extras sont:
- seqvec
- prottrans
- prottrans_albert_bfd
- prottrans_bert_bfd
- prottrans_t5_bfd
- prottrans_t5_uniref50
- prottrans_t5_xl_u50
- prottrans_xlnet_uniref100
- ESM
- inirifier
- CPCProt
- plus
- bordereau
- profond
Docker
Nous fournissons une image Docker sur ghcr.io/bioembeddings/bio_embeddings . Exemple d'utilisation simple:
docker run --rm --gpus all
-v "$(pwd)/examples/docker":/mnt
-v bio_embeddings_weights_cache:/root/.cache/bio_embeddings
-u $(id -u ${USER}):$(id -g ${USER})
ghcr.io/bioembeddings/bio_embeddings:v0.1.6 /mnt/config.yml
Voir l'exemple docker dans le dossier examples pour les instructions. Vous pouvez également utiliser ghcr.io/bioembeddings/bio_embeddings:latest qui est construit à partir du dernier commit.
Dépendances
Pour utiliser le protocole mmseqs_search , ou les fonctions mmsesq2 dans align , vous devez en outre avoir MMSEQS2 dans votre chemin.
Notes d'installation
bio_embeddings a été développé pour les machines Unix avec des capacités GPU et CUDA installées. Si votre configuration en diverge, vous pouvez rencontrer des incohérences (par exemple, la vitesse est considérablement affectée par l'absence de GPU et CUDA). Pour les utilisateurs de Windows, nous recommandons fortement l'utilisation du sous-système Windows pour Linux.
Quel modèle vous convient?
Chaque modèle a ses forces et ses faiblesses (vitesse, spécificité, empreinte mémoire ...). Il n'y a pas de "un ajustement" et nous vous encourageons à au moins à essayer deux modèles différents lors de la tentative d'un nouveau projet exploratoire.
Les modèles prottrans_t5_xl_u50 , esm1b , esm , prottrans_bert_bfd , prottrans_albert_bfd , seqvec et prottrans_xlnet_uniref100 ont tous été formés dans le but de prédictions systématiques. De ce pool, nous pensons que le modèle optimal est prottrans_t5_xl_u50 , suivi de esm1b .
Utilisation et exemples
Nous vous recommandons fortement de consulter le dossier examples pour les exemples de pipelines, et le dossier notebooks pour les exécutions de pipelines post-traitement et l'utilisation générale des effectifs.
Après avoir installé le package, vous pouvez:
Utilisez le pipeline comme:
bio_embeddings config.yml
Un plan du fichier de configuration et un exemple de configuration peuvent être trouvés dans le répertoire examples de ce référentiel.
Utilisez les objets intégrés à usage général via Python, par exemple:
from bio_embeddings . embed import SeqVecEmbedder
embedder = SeqVecEmbedder ()
embedding = embedder . embed ( "SEQVENCE" )
D'autres exemples peuvent être trouvés dans le dossier notebooks de ce référentiel.
Citer
Si vous utilisez bio_embeddings pour vos recherches, nous l'apprécierons si vous pouviez citer l'article suivant:
Dallago, C., Schütze, K., Heinzinger, M., Olenyi, T., Littmann, M., Lu, Axe, Yang, KK, Min, S., Yoon, S., Morton, JT, & Rost, B. (2021). Les intégres apprises de l'apprentissage en profondeur pour visualiser et prédire les ensembles de protéines. Protocoles actuels, 1, E113. doi: 10.1002 / cpz1.113
Le bibtex correspondant:
@article{https://doi.org/10.1002/cpz1.113,
author = {Dallago, Christian and Schütze, Konstantin and Heinzinger, Michael and Olenyi, Tobias and Littmann, Maria and Lu, Amy X. and Yang, Kevin K. and Min, Seonwoo and Yoon, Sungroh and Morton, James T. and Rost, Burkhard},
title = {Learned Embeddings from Deep Learning to Visualize and Predict Protein Sets},
journal = {Current Protocols},
volume = {1},
number = {5},
pages = {e113},
keywords = {deep learning embeddings, machine learning, protein annotation pipeline, protein representations, protein visualization},
doi = {https://doi.org/10.1002/cpz1.113},
url = {https://currentprotocols.onlinelibrary.wiley.com/doi/abs/10.1002/cpz1.113},
eprint = {https://currentprotocols.onlinelibrary.wiley.com/doi/pdf/10.1002/cpz1.113},
year = {2021}
}
Additionally, we invite you to cite the work from others that was collected in `bio_embeddings` (see section _"Tools by category"_ below). We are working on an enhanced user guide which will include proper references to all citable work collected in `bio_embeddings`.
Contributeurs
- Christian Dalllago (responsable)
- Konstantin Schütze
- Tobias Olenyi
- Michael Heinzinger
Vous voulez ajouter votre propre modèle? Voir contribution pour les instructions.
Liste non exhaustive des outils disponibles (voir la section suivante pour plus de détails):
- Rapide
- Gant
- Word2vec
- Seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8)
- Seqvecsec et seqvecloc pour la structure secondaire et la prévision de la localisation subcellulaire
- Prottrans (Protbert, Protalbert, Prott5) (https://doi.org/10.1101/2020.07.12.199554)
- Protbertsec et Protbertloc pour la structure secondaire et la prédiction de localisation subcellulaire
- UNIREP (https://www.nature.com/articles/S41592-019-0598-1)
- ESM / ESM1B (https://www.biorxiv.org/content/10.1101/622803v3)
- Plus (https://github.com/mswzeus/plus/)
- Cpcprot (https://www.biorxiv.org/content/10.1101/2020.09.04.283929v1.full.pdf)
- PB-TUCKER (https://www.biorxiv.org/content/10.1101/2021.01.21.427551v1)
- Gopredsim (https://www.nature.com/articles/s41598-020-80786-0)
- Deepblast (https://www.biorxiv.org/content/10.1101/2020.11.03.365932v1)
Ensembles de données
-
prottrans_t5_xl_u50 RÉSIDUES ET LES RÉQUENCES ENCORTES DU Protéome humain à pleine précision + Prédictions de structure secondaire + Prédictions de localisation sous-cellulaire: -
prottrans_t5_xl_u50 RÉSIDUES ET LES RÉSIDES ENCORTEMENTS DU PROTOME FLY À PROPRES PROPICATION + Prédictions de structure secondaire + Prédictions de localisation sous-cellulaire + Prédiction de conservation + Prédiction de variation:
Outils par catégorie
Pipeline
- aligner:
- Deepblast (https://www.biorxiv.org/content/10.1101/2020.11.03.365932v1)
- intégrer:
- Prottrans Bert formé sur BFD (https://doi.org/10.1101/2020.07.12.199554)
- Seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8)
- Prottrans Albert formé sur BFD (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans XLNET formé sur UNIREF100 (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 formé sur BFD (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 formé sur BFD et affiné sur l'UNIREF50 (interne)
- UNIREP (https://www.nature.com/articles/S41592-019-0598-1)
- ESM / ESM1B (https://www.biorxiv.org/content/10.1101/622803v3)
- Plus (https://github.com/mswzeus/plus/)
- Cpcprot (https://www.biorxiv.org/content/10.1101/2020.09.04.283929v1.full.pdf)
- projet:
- t-sne
- Usine
- PB-TUCKER (https://www.biorxiv.org/content/10.1101/2021.01.21.427551v1)
- visualiser:
- Séquence 2D / 3D Espace d'intégration
- extrait:
- Supervisé:
- SeqVEC: DSSP3, DSSP8, trouble, emplacement subcellulaire et limite membranaire comme dans https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8
- Protbertsec et Protbertloc comme indiqué dans https://doi.org/10.1101/2020.07.12.199554
- non supervisé:
- via le niveau de séquence (réduit_embeddings), distance par paire (euclidienne comme gopredsim, plus d'options disponibles, par exemple cosinus)
Intégration à usage général
- Prottrans Bert formé sur BFD (https://doi.org/10.1101/2020.07.12.199554)
- Seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8)
- Prottrans Albert formé sur BFD (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans XLNET formé sur UNIREF100 (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 formé sur BFD (https://doi.org/10.1101/2020.07.12.199554)
- ProtTrans T5 formé sur BFD + ajusté fin sur UNIREF50 (https://doi.org/10.1101/2020.07.12.199554)
- Rapide
- Gant
- Word2vec
- UNIREP (https://www.nature.com/articles/S41592-019-0598-1)
- ESM / ESM1B (https://www.biorxiv.org/content/10.1101/622803v3)
- Plus (https://github.com/mswzeus/plus/)
- Cpcprot (https://www.biorxiv.org/content/10.1101/2020.09.04.283929v1.full.pdf)