🚀 生物語言模型(bio-lm)
本項目的生物語言模型基於預訓練模型進一步訓練,可用於生命科學領域的下游任務,特別是標記分類任務。
🚀 快速開始
此模型旨在針對下游任務進行微調,尤其是標記分類任務。若要快速驗證模型在填空任務中的效果,可使用以下代碼:
from transformers import pipeline, RobertaTokenizerFast
tokenizer = RobertaTokenizerFast.from_pretrained('roberta-base', max_len=512)
text = "Let us try this model to see if it <mask>."
fill_mask = pipeline(
"fill-mask",
model='EMBO/bio-lm',
tokenizer=tokenizer
)
fill_mask(text)
✨ 主要特性
📦 安裝指南
文檔未提供安裝步驟,如需使用可參考 transformers
庫的安裝方法。
💻 使用示例
基礎用法
以下代碼展示瞭如何在填空任務中使用該模型:
from transformers import pipeline, RobertaTokenizerFast
tokenizer = RobertaTokenizerFast.from_pretrained('roberta-base', max_len=512)
text = "Let us try this model to see if it <mask>."
fill_mask = pipeline(
"fill-mask",
model='EMBO/bio-lm',
tokenizer=tokenizer
)
fill_mask(text)
📚 詳細文檔
模型描述
該模型是一個 RoBERTa基礎預訓練模型,使用 BioLang數據集 中的英文生命科學領域科學文本示例,通過掩碼語言建模任務進行了進一步訓練。
預期用途和限制
如何使用
該模型的預期用途是針對下游任務進行微調,特別是標記分類任務。
限制和偏差
此模型應針對特定任務(如標記分類)進行微調。並且,模型必須與 roberta-base
分詞器一起使用。
訓練數據
該模型在 BioLang數據集 上通過掩碼語言建模任務進行訓練,該數據集包含從生命科學領域發表的論文中提取的 1200 萬個摘要和圖注示例。
訓練過程
訓練在配備 4 個 Tesla V100 GPU 的 NVIDIA DGX Station 上進行。
訓練代碼可在 https://github.com/source-data/soda-roberta 找到。
- 命令:
python -m lm.train /data/json/oapmc_abstracts_figs/ MLM
- 分詞器詞彙量:50265
- 訓練數據:EMBO/biolang MLM
- 訓練樣本數:12005390
- 評估樣本數:36713
- 訓練輪數:3.0
per_device_train_batch_size
:16
per_device_eval_batch_size
:16
learning_rate
:5e-05
weight_decay
:0.0
adam_beta1
:0.9
adam_beta2
:0.999
adam_epsilon
:1e-08
max_grad_norm
:1.0
- TensorBoard 運行記錄:lm-MLM-2021-01-27T15-17-43.113766
訓練結束時的結果:
訓練集: 'loss': 0.8653350830078125
驗證集: 'eval_loss': 0.8192330598831177, 'eval_recall': 0.8154601116513597
評估結果
測試集評估結果:
召回率: 0.814471959728645
🔧 技術細節
- 訓練硬件:NVIDIA DGX Station(4 個 Tesla V100 GPU)
- 訓練代碼倉庫:https://github.com/source-data/soda-roberta
- 訓練任務:掩碼語言建模
- 分詞器:
roberta-base
- 訓練參數:如上述訓練過程部分所述
📄 許可證
文檔未明確提及許可證信息。
📋 信息表格
屬性 |
詳情 |
模型類型 |
基於 RoBERTa 基礎預訓練模型進一步訓練的生物語言模型 |
訓練數據 |
BioLang數據集,包含 1200 萬個生命科學領域的英文科學文本示例 |