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