IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 论文解读:A novel antibacterial peptide recognition algorithm based on BERT -> 正文阅读

[人工智能]论文解读:A novel antibacterial peptide recognition algorithm based on BERT

论文概述

在这里插入图片描述

1. 论文基本信息

发表期刊: BRIEFINGS IN BIOINFORMATICS(BIB)
期刊影响因子及文章数量:
在这里插入图片描述
在这里插入图片描述
论文链接:https://academic.oup.com/bib/advance-article-abstract/doi/10.1093/bib/bbab200/6284370
代码和数据链接: https://github.com/BioSequenceA
nalysis/Bert-Protein

2. 生物背景

2.1 肽的理解

  • 肽的定义:肽是具有一级结构的氨基酸序列,两个氨基酸形成的肽称为二肽
  • 肽和蛋白质的区别:肽是小分子(氨基酸数较少),而蛋白质是大分子(氨基酸数通常在100个以上)。肽只有一级结构,而蛋白质拥有二级、三级、四级结构。

2.2 抗菌肽的理解

  • 抗菌肽(AMPs)的作用:由于抗生素的滥用,病原菌的耐药性问题日益严重,已成为人类健康的巨大威胁。寻找抗生素的新原料是保证人类生命安全和质量的有效途径。抗菌肽(AMPs)是小分子多肽,是生物先天免疫系统的关键组成部分,对细菌、病毒和真菌具有广谱抗菌活性。
  • 抗病毒的原理:破坏目标细菌的细胞膜、干扰DNA的产生等

2.3 论文解决的问题

预测肽是不是抗菌肽,如下图所示在这里插入图片描述

3. 实验数据

3.1 引用的数据集

1. 预训练数据集
UniProt:下载了556603个蛋白质片段,预训练阶段为无监督,所以下载的是不带有标签。
2. 微调数据集
微调数据共6个,包含训练集和测试集。不同的阈值、不同的判定条件得到正负样本数量是不一样的,这里不做讨论,详情参考论文以及论文附件一,微调数据的形式如下图所示:
在这里插入图片描述
微调数据集的正负样本数量如下图所示:
在这里插入图片描述

3.2 作者自己处理的数据集

1. 预训练数据集
正样本:选择80%同一性阈值下的非冗余AMP序列,包含8478个序列,过滤掉与AntiBP2数据集重叠的样本,将剩余的7995=个AMP序列作为正样本。
负样本:AMP预测工具得到8565个非AMP序列作为负样本,与AntiBP2不重复。
2. 微调数据集
正样本:从AntiBP2检索了总共999个独特的AMPs作为正样本
负样本:随机选择了AntiBP2中999个大于100个氨基酸的细胞内蛋白质作为负样本
3. 通用模型预训练数据集
使用StarPepDB数据库中包含的16 990个非冗余AMP序列,加上相同数量的随机选择的非冗余非AMP多肽链作为训练集来训练一个通用模型。
4. 正负样本平衡数据集和失衡数据集
利用MAMPs-Pred模型的数据集[29]和iAMP-2L模型的数据集,构建平衡数据集和失衡数据集,如下图所示
在这里插入图片描述

4. 方法

4.1 数据预处理

  1. K-mer(以3-kmer为例)
    当序列的末端少于k个氨基酸时,剩余的氨基酸形成一个‘单词’,如最后L就单独形成一个单词。
    在这里插入图片描述
    transformer的模型结构如下图所示:
    2. MSM任务对序列进行mask
    引入mask破坏文本的架构,通过学习得到mask的词组。类似于英语的完形填空。随机覆盖序列中15%的氨基酸里面有80%的序列真正的被mask,有10%氨基酸随机为其他的氨基酸,在10%氨基酸保持不变,在这里插入图片描述
    3. NSP任务对序列进行拆分
    NSP的目的是获取句子间的信息,这点是语言模型无法直接捕捉的。在NSP任务中,数据被随机分成两部分,将序列分成两段A,B,0%的概率B是A的下一个句子,50%的概率B是语料中的一个随机句子.
    在这里插入图片描述
    4. 根据相应的K-mer和对应的字典建立索引关系(以3-mer为列)
    在这里插入图片描述

4.2 预训练

模型输入为序列,
在这里插入图片描述
transformer的模型如下图所示
在这里插入图片描述
模型的相关参数:
hidden_size=768,
num_hidden_layers=12,
num_attention_heads=12,
intermediate_size=3072,
hidden_act=“gelu”,
hidden_dropout_prob=0.1,
attention_probs_dropout_prob=0.1,
max_position_embeddings=512,
type_vocab_size=16,
initializer_range=0.02

4.3 微调

微调数据的形式:
微调的数据以train.tf_record的文件格式保存 (不是序列) (.tf_record主要用于存放tensorflow产生的二进制文件),类似于字典的形式,以AMPScan的数据集为例,读取32个数据,即batch_size=32,填充的最大维度为128,得到的数据如下图所示
在这里插入图片描述

NSL的模型结构如下图所示,
在这里插入图片描述

MSM微调模型的输入为整个序列的编码,包括[CLS]、[SEQ]、[MASK],如下图所示
在这里插入图片描述
将MSM和NSL的损失相加,作为最终的的损失,来最终更新模型的参数

4.4 预测

输入序列,即可利用训练好的模型进行训练。

5. 结果

5.1 对比其他方法独立测试结果

使用六种方法提出的数据集对用uniprot预训练的模型进行微调,改变论文方法的训练集和测试集的K值,来判定K值对实验结果的影响以及作者提出方法的优势,比较的方法使用的K值均为1
在这里插入图片描述
下图是上图作者的方法与原始方法的差值(RFAmPEP30和Deep-AmPEP30都是用Yan的数据集):
在这里插入图片描述
结论:

  1. 在MAMPs-Pred 、AmPEP 、Deep-AmPEP30和RFAmPEP30的数据集上,k= 2的模型表现最好
  2. 在 AMPScan Vr.2 、Bi-LSTM和iAMP-2 L方法和数据上 ,k= 1的模型表现最好
  3. 作者的模型在所有数据集上都表现得更好

5.2. 预训练对实验结果的影响

省略了预训练步骤,而直接使用AMPScan Vr.2的数据集重新训练模型,然后对独立测试进行比较。
在这里插入图片描述
看图思路:

  1. 颜色深浅:同一色系由深变浅分别表示预训练、不预训练、AMPSsan的结果(图列从左挖往右看)
  2. 色系差异:绿色表示K=1,蓝色表示K=2,褐色表示K=3(图例从上往下看)

结论:

  1. 随着k值的增加,预训练对模型性能提升的影响变得更加明显。
  2. 字典的大小变得越来越大,需要对模型进行大规模的训练来学习更复杂的信息,从而获得良好的预测结果。

5.3 平衡数据对微调模型的影响

对MAMPsPred模型的数据集和iAMP-2 L模型的数据集进行下采用分别得到平衡的数据集和失衡的数据集(如表4),先利用平衡的训练集和失衡的测试集对预训练的模型进行微调,再进行独立测试,并进一步比较K值对微调模型的阴线,得到下图结果。
在这里插入图片描述
结论:

  1. 无论数据集是否平衡,作者的方法都表现出出色的性能
  2. 在非平衡集上训练的模型的整体识别性能不如平衡集
  3. 不平衡模型对AMPs和非AMPs的识别准确率差异更为明显,体现在Sn的降低幅度较大,Sp的降低幅度较小(甚至还有提升)

AmPEP模型提供的数据集中存在大量的负数据,从AmPEP模型数据集中得到一组1:1、1:3、1:5、1:7和1:9正负样本比例的数据,通过10倍交叉验证评估了Ampep模型的预测性能
在这里插入图片描述
结论:
随着训练集中非AMPs数量的增加,Sp指数迅速增加,随后会拉高Acc,但Sn和MCC会随着数据集变得更加不平衡而降低。
原因:
随着负样本正价将不可避免地将其注意力从具有较少数据的正样本集转移到更准确地预测负样本上,以实现更高的整体准确性(列子,解释)。

5.4 训练得到一个通用模型

增加训练集的多样性可以在一定程度上提高模型的通用性,所以使用更多样的AMP和非AMP数据集来训练我们的模型。在此基础上,通过增强对新数据集特定特征的学习,使模型更适合新数据集(举列子)。
基于以上的先验知识,作者对数据进行了以下两点预处理:

  1. 从AntiBP2中检索了999个独特的AMPs作为正样本,从MitPred中随机选择了999个大于100个氨基酸的细胞内蛋白质作为负样本。
  2. 选择大型的非冗余生物活性肽数据库StarPepDB中80%同一性阈值下的非冗余AMP序列,包含8478个序列,过滤掉与AntiBP2数据集重叠的样本,将剩余的7995个AMP序列作为正样本。通过AMP预测工具处理非冗余的非AMPsUniProt 2016得到8565个负样本 。

实验设计:

  1. 使用AntiBP2模型的训练集(上述第一步得到的数据集)来微调用UniProt预训练的模型,以获得模型A,并对模型训练集进行5折交叉验证。
  2. 用AntiBP2模型的训练集来微调在上述新的AMP和非AMP数据集(上述第二步得到的数据集)上训练的模型,以获得模型B,并对模型训练集进行5折交叉验证,得到如下结果:
    在这里插入图片描述
    结果:

1.B的表现更好,即不同数据集中的AMPs之间存在一些共同特征。

实验设计:

使用StarPepDB数据库中包含的16 990个非冗余AMP序列,加上相同数量的随机选择的非冗余非AMP多肽链作为训练集来训练一个通用模型。我们对这个模型进行了5倍交叉验证,结果如表7所示。
在这里插入图片描述
结果:

  1. 在各测量指标中,k= 1的模型最好
  2. 该通用模型可以直接用于确定给定的生物序列是否是AMP,或者作为全新样本集的预训练模型,从而节省模型训练成本并提高模型识别的准确性

6. 结论

  1. 提出一种利用预训练预测AMPs的新方法。
  2. 确认预训练和平衡数据集可以提高模型性能
  3. 新模型实现了对AMP数据集的准确识别,在测试中优于现有方法
  4. 提供通用的蛋白质预训练模型,可作为其他蛋白质预测任务的预训练模型。提供通用的AMP识别模型,可直接用于识别给定生物序列是否为AMP,或作为新样本集的预训练模型。
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-17 01:27:50  更:2021-08-17 01:28:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 20:59:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码