التضمينات الحيوية
الموارد للتعرف على bio_embeddings:
- التنبؤ بسرعة بنية البروتين والوظيفة من التسلسل عبر التضمين: inmbed.protein.properties.
- اقرأ الوثائق الحالية: docs.bioembeddings.com.
- الدردشة معنا: chat.bioembeddings.com.
- قدمنا خط أنابيب Bio_embeddings كتحدث في ISMB 2020 & LMRL 2020. يمكنك العثور على الحديث على YouTube ، الملصق على F1000 ، ومخطوطة البروتوكول الحالية.
- تحقق من
examples تكوينات خطوط الأنابيب A و notebooks .
أهداف المشروع:
- تسهيل استخدام تمثيلات التسلسل البيولوجي القائمة على نموذج اللغة من خلال التعلم النقل من خلال توفير واجهة واحدة ومتسقة وربطها من الصفر
- مهام سير العمل القابلة للتكرار
- عمق التمثيل (نماذج مختلفة من مختبرات مختلفة مدربة على مجموعة بيانات مختلفة لأغراض مختلفة)
- أمثلة واسعة ، معالجة التعقيد للمستخدمين (على سبيل المثال ، تجريد cuda oom) والتحذيرات الموثقة جيدًا ورسائل الخطأ.
يشمل المشروع:
- غرض عام Python التضمين على أساس نماذج مفتوحة المدربين على تمثيل التسلسل البيولوجي (Seqvec ، Prottrans ، Unip ، ...)
- خط أنابيب:
- تضمين تسلسلات في عمليات التمثيل المصفوفة (لكل أميني الحمض) أو عمليات التمثيل المتجه (لكل تسلسل) يمكن استخدامها لتدريب نماذج التعلم أو لأغراض تحليلية
- مشاريع لكل تسلسل تضمين في تمثيلات أبعاد أقل باستخدام UMAP أو T-SNE (لمعالجة بيانات Lightwieght وتصوراتها)
- تصور مجموعات أبعاد منخفضة من التضمينات لكل تسلسل على قطع تفاعلية ثنائية الأبعاد وثلاثية الأبعاد (مع وبدون التعليقات التوضيحية)
- يستخلص التعليقات التوضيحية من كل التسلسل والتضمينات الحمدية للأمينية باستخدام أساليب خاضعة للإشراف (عند توفرها) والمناهج غير الخاضعة للرقابة (على سبيل المثال عن طريق تحليل الشبكة)
- خادم ويب يلف خط الأنابيب في واجهة برمجة تطبيقات موزعة لعلم أعمال قابلة للتطوير ومتسقة
تثبيت
يمكنك تثبيت bio_embeddings عبر PIP أو استخدامه عبر Docker. ضع في اعتبارك التبعيات الإضافية align .
pip
قم بتثبيت خط الأنابيب وجميع الإضافات مثل:
pip install bio-embeddings[all]
لتثبيت الإصدار غير المستقر ، يرجى تثبيت خط الأنابيب مثل:
pip install -U " bio-embeddings[all] @ git+https://github.com/sacdallago/bio_embeddings.git "
إذا كنت بحاجة فقط إلى تشغيل نموذج معين (على سبيل المثال نموذج ESM أو Prottrans) ، يمكنك تثبيت عمليات السميد الحيوي بدون تبعيات ثم تثبيت التبعية الخاصة بالموديل ، على سبيل المثال:
pip install bio-embeddings
pip install bio-embeddings[prottrans]
الإضافات هي:
- Seqvec
- prottrans
- prottrans_albert_bfd
- prottrans_bert_bfd
- prottrans_t5_bfd
- prottrans_t5_uniref50
- prottrans_t5_xl_u50
- prottrans_xlnet_uniref100
- ESM
- unirep
- CPCPROT
- زائد
- bepler
- أعماق
عامل ميناء
نحن نقدم صورة Docker في ghcr.io/bioembeddings/bio_embeddings . مثال على الاستخدام البسيط:
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
انظر مثال docker في مجلد examples للحصول على التعليمات. يمكنك أيضًا استخدام ghcr.io/bioembeddings/bio_embeddings:latest : latest التي تم بناؤها من أحدث الالتزام.
التبعيات
لاستخدام بروتوكول mmseqs_search ، أو وظائف mmsesq2 في align ، تحتاج بالإضافة إلى ذلك إلى الحصول على MMSEQS2 في طريقك.
ملاحظات التثبيت
تم تطوير bio_embeddings لآلات UNIX مع إمكانيات GPU وتثبيت CUDA. إذا كان الإعداد الخاص بك يختلف عن هذا ، فقد تواجه بعض التناقضات (على سبيل المثال ، تتأثر السرعة بشكل كبير بغياب وحدة معالجة الرسومات و CUDA). بالنسبة لمستخدمي Windows ، نوصي بشدة باستخدام نظام Windows الفرعي لـ Linux.
ما هو النموذج المناسب لك؟
كل نماذج لها نقاط القوة والضعف (السرعة ، الخصوصية ، بصمة الذاكرة ...). لا يوجد "يناسب الجميع" ونشجعك على الأقل على تجربة نموذجين مختلفين عند محاولة مشروع استكشافي جديد.
تم تدريب النماذج prottrans_t5_xl_u50 و esm1b و esm و prottrans_bert_bfd و prottrans_albert_bfd و seqvec و prottrans_xlnet_uniref100 مع هدف التنبؤات المنهجية. من هذا المجمع ، نعتقد أن النموذج الأمثل ليكون prottrans_t5_xl_u50 ، يليه esm1b .
الاستخدام والأمثلة
نوصيك بشدة بالتحقق من مجلد examples للحصول على أمثلة لخطوط الأنابيب ، ومجلد دفاتر notebooks لركض خطوط أنابيب ما بعد المعالجة واستخدام الأغراض العامة للتضمين.
بعد تثبيت الحزمة ، يمكنك:
استخدم خط الأنابيب مثل:
bio_embeddings config.yml
يمكن العثور على مخطط لملف التكوين ، وإعداد مثال في دليل examples لهذا المستودع.
استخدم الكائنات العامة الغرض العام عبر Python ، على سبيل المثال:
from bio_embeddings . embed import SeqVecEmbedder
embedder = SeqVecEmbedder ()
embedding = embedder . embed ( "SEQVENCE" )
يمكن العثور على المزيد من الأمثلة في مجلد notebooks في هذا المستودع.
استشهد
إذا كنت تستخدم bio_embeddings لبحثك ، فسنقدر ذلك إذا تمكنت من الاستشهاد بالورقة التالية:
Dallago ، C. ، Schütze ، K. ، Heinzinger ، M. ، Olenyi ، T. ، Littmann ، M. ، Lu ، Ax ، Yang ، Kk ، Min ، S. ، Yoon ، S. ، Morton ، JT ، & Rost ، B. (2021). تضمينات تعلمت من التعلم العميق لتصور مجموعات البروتين والتنبؤ بها. البروتوكولات الحالية ، 1 ، E113. doi: 10.1002/cpz1.113
bibtex المقابلة:
@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`.
المساهمين
- كريستيان دالاجو (قيادة)
- Konstantin Schütze
- توبياس أوليني
- مايكل هاينزينجر
تريد إضافة النموذج الخاص بك؟ انظر المساهمة في التعليمات.
قائمة غير شاملة للأدوات المتاحة (انظر القسم التالي لمزيد من التفاصيل):
- Fastext
- قفاز
- Word2Vec
- seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/S12859-019-3220-8)
- Seqvecsec و SeqVecloc للهيكل الثانوي والتنبؤ بالخلايا الخلوية
- Prottrans (Protbert ، Protalbert ، Prott5) (https://doi.org/10.1101/2020.07.12.19954)
- Protbertsec و Protbertloc للهيكل الثانوي والتنبؤ بالتوطين تحت الخلوي
- unip (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)
مجموعات البيانات
- بقايا
prottrans_t5_xl_u50 وتضمينات التسلسل للبروتين البشري بدقة كاملة + تنبؤات بنية ثانوية + تنبؤات توطين الخلايا الفرعية: - بقايا
prottrans_t5_xl_u50 وتضمينات التسلسل لبروتين الذبابة عند التنبؤات الكاملة للبنية الثانوية + تنبؤات توطين الخلايا الفرعية + التنبؤ بالحفظ + التنبؤ التباين:
أدوات حسب الفئة
خط أنابيب
- المحاذاة:
- deepblast (https://www.biorxiv.org/content/10.1101/2020.11.03.365932v1)
- التضمين:
- Prottrans Bert المدرب على BFD (https://doi.org/10.1101/2020.07.12.199554)
- seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/S12859-019-3220-8)
- تدرب Prottrans Albert على BFD (https://doi.org/10.1101/2020.07.12.199554)
- تدرب Prottrans XLNET على uniref100 (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 مدرب على BFD (https://doi.org/10.1101/2020.07.12.199554)
- تدرب Prottrans T5 على BFD وضبطه على UNIREF50 (في المنزل)
- unip (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)
- مشروع:
- T sne
- UMAP
- pb-tucker (https://www.biorxiv.org/content/10.1101/2021.01.21.427551v1)
- تصور:
- مساحة تضمين تسلسل ثنائي الأبعاد/ثلاثي الأبعاد
- يستخرج:
- تحت إشراف:
- SEQVEC: DSSP3 ، DSSP8 ، الاضطراب ، الموقع الخلوي وحدود الغشاء كما في https://bmcbioinformatics.biomedcentral.com/articles/10.1186/S12859-019-3220-8
- Protbertsec و Protbertloc كما ورد في https://doi.org/10.1101/2020.07.12.199554
- غير خاضع للإشراف:
- عبر مستوى التسلسل (LOWSED_EMBEDDINGS) ، المسافة الزوجية (إقليدية مثل GOPREDSIM ، المزيد من الخيارات المتاحة ، على سبيل المثال جيب التمام)
تضمينات الغرض العام
- Prottrans Bert المدرب على BFD (https://doi.org/10.1101/2020.07.12.199554)
- seqvec (https://bmcbioinformatics.biomedcentral.com/articles/10.1186/S12859-019-3220-8)
- تدرب Prottrans Albert على BFD (https://doi.org/10.1101/2020.07.12.199554)
- تدرب Prottrans XLNET على uniref100 (https://doi.org/10.1101/2020.07.12.199554)
- Prottrans T5 مدرب على BFD (https://doi.org/10.1101/2020.07.12.199554)
- تم تدريب Prottrans T5 على BFD + Tuned على UNIREF50 (https://doi.org/10.1101/2020.07.12.199554)
- Fastext
- قفاز
- Word2Vec
- unip (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)