🚀 GO-Language模型
GO-Language模型旨在將蛋白質的基因本體定義編碼為向量表示,可用於預測新基因的功能,在基因研究領域具有重要價值。
🚀 快速開始
本模型是一個有用的基因本體功能封裝,可用於探索基因層面的相似性以及比較功能術語。作為一個BERT風格的掩碼語言學習器,它可用於確定掩碼位置最可能的標記。
from transformers import pipeline
unmasker = pipeline("fill-mask", model="damlab/GO-language")
unmasker("involved_in [MASK] involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372")
[{'score': 0.1040298342704773,
'token': 103,
'token_str': 'GO:0002250',
'sequence': 'involved_in GO:0002250 involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372'},
{'score': 0.018045395612716675,
'token': 21,
'token_str': 'GO:0005576',
'sequence': 'involved_in GO:0005576 involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372'},
{'score': 0.015035462565720081,
'token': 50,
'token_str': 'GO:0000139',
'sequence': 'involved_in GO:0000139 involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372'},
{'score': 0.01181247178465128,
'token': 37,
'token_str': 'GO:0007165',
'sequence': 'involved_in GO:0007165 involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372'},
{'score': 0.01000668853521347,
'token': 14,
'token_str': 'GO:0005737',
'sequence': 'involved_in GO:0005737 involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372'}
]
✨ 主要特性
- 可將蛋白質的基因本體定義編碼為向量表示。
- 用於探索基因層面的相似性以及比較功能術語。
- 作為BERT風格的掩碼語言學習器,可確定掩碼位置最可能的標記。
📦 安裝指南
文檔未提及安裝步驟,故跳過該章節。
💻 使用示例
基礎用法
from transformers import pipeline
unmasker = pipeline("fill-mask", model="damlab/GO-language")
unmasker("involved_in [MASK] involved_in GO:0007165 located_in GO:0042470 involved_in GO:0070372")
高級用法
文檔未提及高級用法相關代碼示例,故跳過該部分。
📚 詳細文檔
模型概述
此模型旨在將蛋白質的基因本體定義編碼為向量表示。它在來自模式生物的一組基因本體術語上進行訓練。每個功能按ID號排序,並與其註釋描述(如 is_a
、enables
、located_in
等)相結合。該模型進行了標記化處理,使得每個描述和GO術語都是一個獨立的標記。其目的是作為PROT - BERT和GO語言之間的翻譯模型,這種類型的翻譯模型對於預測新基因的功能很有用。
預期用途和侷限性
該模型是一個有用的基因本體功能封裝,允許探索基因層面的相似性以及比較功能術語。
訓練數據
使用來自 damlab/uniprot 的數據集,從一個隨機初始模型開始訓練。基因本體功能(按ID號)與註釋術語一起進行了排序。
訓練過程
預處理
將所有字符串連接起來,並分塊為256個標記的塊進行訓練。隨機抽取20%的塊用於驗證。
訓練
使用HuggingFace訓練模塊,通過MaskedLM數據加載器進行訓練,掩碼率為15%。學習率設置為E - 5,有50K的熱身步驟,採用cosine_with_restarts學習率調度,直到連續3個epoch在保留數據集上的損失沒有改善為止。
🔧 技術細節
本模型使用HuggingFace訓練模塊,結合MaskedLM數據加載器,以15%的掩碼率進行訓練。學習率設置為E - 5,有50K的熱身步驟,並採用cosine_with_restarts學習率調度。在訓練過程中,將所有字符串連接並分塊為256個標記的塊,隨機抽取20%的塊用於驗證,訓練持續到連續3個epoch在保留數據集上的損失不再改善。
📄 許可證
本項目採用MIT許可證。
📄 BibTeX引用和引用信息
[更多信息待補充]