Fine Tuned Progen2 Small
基於ProGen2架構的治療性抗體生成模型,在2.8億條蛋白質序列上預訓練,並通過5000個抗體-抗原結構微調
下載量 67
發布時間 : 11/17/2023
模型概述
用於生成治療性抗體序列的蛋白質生成模型,主要應用於免疫治療和疫苗開發研究
模型特點
大規模預訓練
在2.8億條蛋白質序列上進行預訓練,具有強大的序列生成能力
抗體特異性微調
使用5000個實驗解析的抗體-抗原晶體結構進行微調,優化抗體生成性能
多尺寸變體
提供從1.51億到64億參數的不同規模模型,適應不同計算需求
模型能力
治療性抗體序列生成
蛋白質適應性預測
抗體多樣性分析
使用案例
醫學研究
免疫治療開發
生成針對特定疾病的治療性抗體候選序列
需實驗驗證生成序列的有效性
疫苗設計
輔助設計疫苗所需的抗體蛋白序列
🚀 抗體生成器(基於ProGen2)模型卡片
本抗體生成器模型基於ProGen2架構,專為生成治療性抗體序列而開發,可應用於免疫學、疫苗開發和醫學治療等領域,為生物信息學、分子生物學等相關領域的研究人員和從業者提供支持。
🚀 快速開始
有關如何使用該模型的說明,包括示例提示和API文檔,請參閱代碼倉庫。
示例代碼
from models.progen.modeling_progen import ProGenForCausalLM
import torch
from tokenizers import Tokenizer
import json
# Define the model identifier from Hugging Face's model hub
model_path = 'AntibodyGeneration/fine-tuned-progen2-small'
# Load the model and tokenizer
model = ProGenForCausalLM.from_pretrained(model_path)
tokenizer = Tokenizer.from_file('tokenizer.json')
# Define your sequence and other parameters
target_sequence = 'MQIPQAPWPVVWAVLQLGWRPGWFLDSPDRPWNPPTFSPALLVVTEGDNATFTCSFSNTSESFVLNWYRMSPSNQTDKLAAFPEDRSQPGQDCRFRVTQLPNGRDFHMSVVRARRNDSGTYLCGAISLAPKAQIKESLRAELRVTERRAEVPTAHPSPSPRPAGQFQTLVVGVVGGLLGSLVLLVWVLAVICSRAARGTIGARRTGQPLKEDPSAVPVFSVDYGELDFQWREKTPEPPVPCVPEQTEYATIVFPSGMGTSSPARRGSADGPRSAQPLRPEDGHCSWPL'
number_of_sequences = 2
# Tokenize the sequence
tokenized_sequence = tokenizer(target_sequence, return_tensors="pt")
# Move model and tensors to CUDA if available
device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')
model = model.to(device)
tokenized_sequence = tokenized_sequence.to(device)
# Generate sequences
with torch.no_grad():
output = model.generate(**tokenized_sequence, max_length=1024, pad_token_id=tokenizer.pad_token_id, do_sample=True, top_p=0.9, temperature=0.8, num_return_sequences=number_of_sequences)
# Decoding the output to get generated sequences
generated_sequences = [tokenizer.decode(output_seq, skip_special_tokens=True) for output_seq in output]
✨ 主要特性
- 專業用途:專為生成治療性抗體序列而設計,可應用於免疫學、疫苗開發和醫學治療等領域。
- 強大基礎:基於ProGen2模型,該模型在超過2.8億個蛋白質序列的大規模數據集上進行了預訓練。
- 多種變體:提供不同大小和微調類型的模型變體,以滿足不同的需求。
📦 安裝指南
文檔未提及安裝步驟,故跳過該章節。
💻 使用示例
基礎用法
from models.progen.modeling_progen import ProGenForCausalLM
import torch
from tokenizers import Tokenizer
import json
# Define the model identifier from Hugging Face's model hub
model_path = 'AntibodyGeneration/fine-tuned-progen2-small'
# Load the model and tokenizer
model = ProGenForCausalLM.from_pretrained(model_path)
tokenizer = Tokenizer.from_file('tokenizer.json')
# Define your sequence and other parameters
target_sequence = 'MQIPQAPWPVVWAVLQLGWRPGWFLDSPDRPWNPPTFSPALLVVTEGDNATFTCSFSNTSESFVLNWYRMSPSNQTDKLAAFPEDRSQPGQDCRFRVTQLPNGRDFHMSVVRARRNDSGTYLCGAISLAPKAQIKESLRAELRVTERRAEVPTAHPSPSPRPAGQFQTLVVGVVGGLLGSLVLLVWVLAVICSRAARGTIGARRTGQPLKEDPSAVPVFSVDYGELDFQWREKTPEPPVPCVPEQTEYATIVFPSGMGTSSPARRGSADGPRSAQPLRPEDGHCSWPL'
number_of_sequences = 2
# Tokenize the sequence
tokenized_sequence = tokenizer(target_sequence, return_tensors="pt")
# Move model and tensors to CUDA if available
device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')
model = model.to(device)
tokenized_sequence = tokenized_sequence.to(device)
# Generate sequences
with torch.no_grad():
output = model.generate(**tokenized_sequence, max_length=1024, pad_token_id=tokenizer.pad_token_id, do_sample=True, top_p=0.9, temperature=0.8, num_return_sequences=number_of_sequences)
# Decoding the output to get generated sequences
generated_sequences = [tokenizer.decode(output_seq, skip_special_tokens=True) for output_seq in output]
📚 詳細文檔
模型詳情
屬性 | 詳情 |
---|---|
模型名稱 | 抗體生成器 |
版本 | 1.0 |
發佈日期 | 2023年12月15日 |
模型開發者 | Joesph Roberts、David Noble、Rahul Suresh、Neel Patel |
模型類型 | 基於ProGen2架構的蛋白質生成模型 |
許可證 | Apache 2.0 |
代碼倉庫 | https://github.com/joethequant/docker_protein_generator,https://github.com/joethequant/docker_streamlit_antibody_protein_generation |
基線模型參考 | ProGen2論文 |
模型概述
抗體生成器是一個專門用於生成治療性抗體的蛋白質生成模型。它基於Salesforce開發的先進語言模型ProGen2。ProGen2是2020年推出的原始ProGen模型的增強版本,在超過2.8億個蛋白質序列的大規模數據集上進行了預訓練。ProGen2擁有多達64億個參數,在生成新穎、可行的蛋白質序列和預測蛋白質適應性方面表現出了最先進的性能。
預期用途
- 主要用例:生成用於免疫學、疫苗開發和醫學治療的治療性抗體序列。
- 目標用戶:生物信息學、分子生物學及相關領域的研究人員和從業者。
訓練數據
- 基線模型數據:ProGen2在來自基因組、宏基因組和免疫庫數據庫的大量蛋白質序列上進行了訓練,總計超過2.8億個樣本。
- 微調數據:微調時使用了結構抗體數據庫,其中包含約5000個經過實驗解析的抗體及其抗原的晶體結構。
模型變體
模型標記為progen2_<大小><微調類型><提示類型>。
- 大小:指所使用的progen2基礎模型的大小,有4種變體可供選擇:
- 小型:1.51億個參數
- 中型:7.64億個參數
- 大型:27億個參數
- 超大型:64億個參數
- 微調類型:指基礎模型的微調方式,支持2種類型:
- 未微調
- 簡單微調:使用以下超參數,用5000個經過實驗解析的抗體及其抗原的晶體結構對基礎模型進行微調。
- 凍結層微調:使用以下超參數,用5000個經過實驗解析的抗體及其抗原的晶體結構對基礎模型進行微調。此外,除最後3層外的所有層都被凍結,以避免過擬合。
- 提示類型:指推理過程中是否為模型提供提示。
- 有提示:使用提示工程生成治療性抗體序列。
- 零樣本:不提供提示。
模型超參數
- 批量大小:40
- 輪數:10
- 學習率:0.00001
評估與性能
評估工具
- ANARCI:使用ANARCI工具對模型進行評估,該工具用於抗體編號和受體分類。ANARCI用於分析生成的抗體序列是否符合已知的抗體序列模式和結構。它有助於評估模型輸出在結構可行性和與已知抗體框架對齊方面的準確性。此評估對於確保生成的序列不僅新穎,而且具有生物學相關性和潛在功能性至關重要。ANARCI
- 多樣性得分:通過計算輸出中每個可能配對的候選序列之間的序列相似度,來衡量每個模型輸出的多樣性。該分佈的平均值表明模型輸出的變化範圍,這對於下游評估生成的候選序列很有用。我們同時計算整個可變序列以及僅HCDR3區域的平均序列相似度。
性能和分析
倫理考量
- 用例限制:生成的抗體在臨床或研究應用前應進行實驗驗證。
- 濫用風險:用戶應意識到生成的序列可能被用於有害應用。
鏈接
額外資源和鏈接
侷限性和未來工作
- 實際應用需驗證:預測結果在實際應用中需要進行實驗驗證。
- 未來改進方向:未來的改進將側重於納入多樣化的訓練數據,並提高生成抗體有效性的預測準確性。
聯繫信息
如有關於此模型的問題或反饋,請聯繫[XYZ]。
🔧 技術細節
文檔未提及技術實現細節,故跳過該章節。
📄 許可證
本模型使用Apache 2.0許可證。
Esm2 T36 3B UR50D
MIT
ESM-2是基於掩碼語言建模目標訓練的新一代蛋白質模型,適用於各類以蛋白質序列為輸入的下游任務微調。
蛋白質模型
Transformers

E
facebook
3.5M
22
Esm2 T6 8M UR50D
MIT
ESM-2是基於掩碼語言建模目標訓練的新一代蛋白質模型,適用於對蛋白質序列進行各類任務的微調。
蛋白質模型
Transformers

E
facebook
1.5M
21
Esm2 T33 650M UR50D
MIT
ESM-2是基於掩碼語言建模目標訓練的最先進蛋白質模型,適用於對蛋白質序列進行分析和預測任務
蛋白質模型
Transformers

E
facebook
640.23k
41
Esm2 T12 35M UR50D
MIT
ESM-2是基於掩碼語言建模目標訓練的前沿蛋白質模型,適用於各類蛋白質序列分析任務
蛋白質模型
Transformers

E
facebook
332.83k
15
Prot Bert
基於BERT架構的蛋白質序列預訓練模型,通過自監督學習捕捉蛋白質序列的生物物理特性
蛋白質模型
Transformers

P
Rostlab
276.10k
111
Prostt5
MIT
ProstT5是一種蛋白質語言模型,能夠在蛋白質序列與結構之間進行翻譯。
蛋白質模型
Transformers

P
Rostlab
252.91k
23
Prot T5 Xl Uniref50
基於T5-3B架構的蛋白質序列預訓練模型,通過自監督學習捕捉蛋白質的生物物理特性
蛋白質模型
Transformers

P
Rostlab
78.45k
44
Esm2 T30 150M UR50D
MIT
ESM-2是基於遮蔽語言建模目標訓練的最先進蛋白質模型,適用於對各類以蛋白質序列為輸入的任務進行微調。
蛋白質模型
Transformers

E
facebook
69.91k
7
Prot Bert Bfd
基於Bert架構的蛋白質序列預訓練模型,通過自監督學習從21億蛋白質序列中提取生物物理特徵
蛋白質模型
Transformers

P
Rostlab
30.60k
16
Esm1b T33 650M UR50S
MIT
ESM-1b是基於Transformer的蛋白質語言模型,通過無監督學習蛋白質序列數據,可用於蛋白質結構和功能預測。
蛋白質模型
Transformers

E
facebook
24.20k
18
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98