Bio incrustaciones
Recursos para aprender sobre Bio_embeddings:
- Predecir rápidamente la estructura de la proteína y la función de la secuencia a través de incrustaciones: increment.protein.properties.
- Lea la documentación actual: docs.bioembeddings.com.
- Chat con nosotros: chat.bioembeddings.com.
- Presentamos la tubería Bio_embeddings como una charla en ISMB 2020 y LMRL 2020. Puede encontrar la charla en YouTube, el póster en F1000 y nuestro manuscrito de protocolo actual.
- Consulte los
examples de configuraciones de tuberías A y notebooks .
Objetivos del proyecto:
- Facilitar el uso de representaciones de secuencia biológica basada en el modelo de lenguaje para el aprendizaje de transferencia al proporcionar una interfaz única y consistente y una fricción cercana a cero
- Flujos de trabajo reproducibles
- Profundidad de representación (diferentes modelos de diferentes laboratorios entrenados en diferentes conjuntos de datos para diferentes fines)
- Ejemplos extensos, manejar la complejidad para los usuarios (por ejemplo, la abstracción OOM) y las advertencias y mensajes de error bien documentados.
El proyecto incluye:
- Incremistadores de Python de propósito general basados en modelos abiertos entrenados en representaciones de secuencia biológica (SEQVEC, Prottrans, Unirep, ...)
- Una tubería que:
- Incorpora secuencias en representaciones de matriz (per-amino-ácido) o representaciones vectoriales (por secuencia) que pueden usarse para capacitar modelos de aprendizaje o con fines analíticos
- Proyectos de incrustación por secuencia en representaciones de dimensiones más bajas utilizando UMAP o T-SNE (para el manejo y visualizaciones de datos de luz de luz)
- Visualiza conjuntos de baja dimensión de incrustaciones por secuencia en gráficos interactivos 2D y 3D (con y sin anotaciones)
- Extractos de anotaciones de la secuencia e incrustes per-amino-ácidos utilizando enfoques supervisados (cuando disponibles) y no supervisados (por ejemplo, por análisis de red)
- Un servidor web que envuelve la tubería en una API distribuida para trabajos de trabajo escalables y consistentes
Instalación
Puede instalar bio_embeddings a través de PIP o usarlo a través de Docker. Cuida las dependencias adicionales para align .
Pepita
Instale la tubería y todos los extras como así:
pip install bio-embeddings[all]
Para instalar la versión inestable, instale la tubería como así:
pip install -U " bio-embeddings[all] @ git+https://github.com/sacdallago/bio_embeddings.git "
Si solo necesita ejecutar un modelo específico (por ejemplo, un modelo de ESM o Comtans), puede instalar bio-embebes sin dependencias y luego instalar la dependencia específica del modelo, por ejemplo, por ejemplo:
pip install bio-embeddings
pip install bio-embeddings[prottrans]
Los extras son:
- Seqvec
- protanos
- Prottrans_albert_BFD
- Prottrans_bert_BFD
- Prottrans_t5_bfd
- Prottrans_t5_uniref50
- Prottrans_t5_xl_u50
- Prottrans_xlnet_uniref100
- ESM
- unirep
- cpcprot
- más
- replante
- profundo
Estibador
Proporcionamos una imagen Docker en ghcr.io/bioembeddings/bio_embeddings . Ejemplo de uso 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
Vea el ejemplo docker en la carpeta de examples para obtener instrucciones. También puede usar ghcr.io/bioembeddings/bio_embeddings:latest que se construye a partir de la última confirmación.
Dependencias
Para usar el protocolo mmseqs_search , o las funciones mmsesq2 en align , también necesita tener MMSEQS2 en su camino.
Notas de instalación
bio_embeddings se desarrolló para máquinas UNIX con capacidades de GPU y CUDA instalado. Si su configuración diverge de esto, puede encontrar algunas inconsistencias (por ejemplo, la velocidad se ve significativamente afectada por la ausencia de una GPU y CUDA). Para los usuarios de Windows, recomendamos encarecidamente el uso del subsistema de Windows para Linux.
¿Qué modelo es adecuado para ti?
Cada modelos tiene sus fortalezas y debilidades (velocidad, especificidad, huella de memoria ...). No hay un "único fijación" y lo alentamos al menos a probar dos modelos diferentes al intentar un nuevo proyecto exploratorio.
Los modelos prottrans_t5_xl_u50 , esm1b , esm , prottrans_bert_bfd , prottrans_albert_bfd , seqvec y prottrans_xlnet_uniref100 estaban entrenados con el objetivo de las predicciones sistemáticas. Desde este grupo, creemos que el modelo óptimo es prottrans_t5_xl_u50 , seguido de esm1b .
Uso y ejemplos
Le recomendamos encarecidamente que consulte la carpeta examples para ejemplos de tuberías, y la carpeta de notebooks para ejecuciones de tuberías posteriores al procesamiento y uso general de los incrustadores.
Después de haber instalado el paquete, puede:
Use la tubería como:
bio_embeddings config.yml
Se puede encontrar un plan del archivo de configuración y una configuración de ejemplo en el directorio examples de este repositorio.
Use los objetos de embedida de propósito general a través de Python, por ejemplo:
from bio_embeddings . embed import SeqVecEmbedder
embedder = SeqVecEmbedder ()
embedding = embedder . embed ( "SEQVENCE" )
Se pueden encontrar más ejemplos en la carpeta de notebooks de este repositorio.
Citar
Si usa bio_embeddings para su investigación, le agradeceríamos si pudiera citar el siguiente documento:
Dallago, C., Schütze, K., Heinzinger, M., Olenyi, T., Littmann, M., Lu, Axe, Yang, Kk, Min, S., Yoon, S., Morton, Jt y Rost, B. (2021). Aprendidos incrustaciones del aprendizaje profundo para visualizar y predecir conjuntos de proteínas. Protocolos actuales, 1, E113. doi: 10.1002/cpz1.113
El bibtex correspondiente:
@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`.
Colaboradores
- Christian Dallago (líder)
- Konstantin Schütze
- Tobias Olenyi
- Michael Heinzinger
¿Quieres agregar tu propio modelo? Ver contribuyendo para instrucciones.
Lista de herramientas no exhaustivas disponibles (consulte la siguiente sección para obtener más detalles):
- Rápida
- Guante
- Word2vec
- Seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8)
- Seqvecsec y Seqvecloc para la estructura secundaria y la predicción de la ilocalización subcelular
- Prottrans (Protbert, Protalbert, Prott5) (https://doi.org/10.1101/2020.07.12.199554)
- Protbertsec y Protbertloc para la estructura secundaria y la predicción de localización subcelular
- Unirep (https://www.nature.com/articles/s41592-019-0598-1)
- ESM/ESM1B (https://www.biorxiv.org/content/10.1101/622803v3)
- Más (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)
Conjuntos de datos
-
prottrans_t5_xl_u50 residuos e incrustaciones de secuencia del proteoma humano a plena precisión + predicciones de estructura secundaria + predicciones de localización subcelular: -
prottrans_t5_xl_u50 residuos e incrustaciones de secuencia del proteoma de mosca a plena precisión + predicciones de estructura secundaria + predicciones de localización subelular + predicción de conservación + predicción de variación:
Herramientas por categoría
Tubería
- alinear:
- Deepblast (https://www.biorxiv.org/content/10.1101/2020.11.03.365932v1)
- empotrar:
- Los Prottrans Bert entrenaron en BFD (https://doi.org/10.1101/2020.07.12.199554)
- Seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8)
- Protans Albert entrenado en BFD (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans XLNet capacitado en UNIF100 (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 entrenados en BFD (https://doi.org/10.1101/2020.07.12.199554)
- Los Prottrans T5 entrenados en BFD y ajustados en uniref50 (interno)
- Unirep (https://www.nature.com/articles/s41592-019-0598-1)
- ESM/ESM1B (https://www.biorxiv.org/content/10.1101/622803v3)
- Más (https://github.com/mswzeus/plus/)
- Cpcprot (https://www.biorxiv.org/content/10.1101/2020.09.04.283929v1.full.pdf)
- proyecto:
- t-sne
- UMAP
- Pb-tucker (https://www.biorxiv.org/content/10.1101/2021.01.21.427551v1)
- visualizar:
- ESPACIO DE SECUENCIA 2D/3D
- extracto:
- supervisado:
- SEQVEC: DSSP3, DSSP8, Trastorno, ubicación subcelular y límite de membrana como en https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8-8
- Protbertsec y Protbertloc como se informa en https://doi.org/10.1101/2020.07.12.199554
- sin supervisión:
- a través de la secuencia a nivel (reducido_embeddings), distancia por pares (euclidean como gopredsim, más opciones disponibles, por ejemplo, coseno)
Incremistadores de propósito general
- Los Prottrans Bert entrenaron en BFD (https://doi.org/10.1101/2020.07.12.199554)
- Seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/s12859-019-3220-8)
- Protans Albert entrenado en BFD (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans XLNet capacitado en UNIF100 (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 entrenados en BFD (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 entrenados en BFD + Tuned FINE en UNIF50 (https://doi.org/10.1101/2020.07.12.199554)
- Rápida
- Guante
- Word2vec
- Unirep (https://www.nature.com/articles/s41592-019-0598-1)
- ESM/ESM1B (https://www.biorxiv.org/content/10.1101/622803v3)
- Más (https://github.com/mswzeus/plus/)
- Cpcprot (https://www.biorxiv.org/content/10.1101/2020.09.04.283929v1.full.pdf)