CN111402953B - 基于层次注意力网络的蛋白质序列分类方法 - Google Patents
基于层次注意力网络的蛋白质序列分类方法 Download PDFInfo
- Publication number
- CN111402953B CN111402953B CN202010254010.3A CN202010254010A CN111402953B CN 111402953 B CN111402953 B CN 111402953B CN 202010254010 A CN202010254010 A CN 202010254010A CN 111402953 B CN111402953 B CN 111402953B
- Authority
- CN
- China
- Prior art keywords
- layer
- sequence
- lstm
- vector
- classification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B25/00—ICT specially adapted for hybridisation; ICT specially adapted for gene or protein expression
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Genetics & Genomics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于层次注意力网络的蛋白质序列分类方法,基于层次注意力网络的蛋白质序列分类模型HALSTM,该模型采用端到端的方式,可以自动进行特征提取和序列分类。其中,采用注意力机制捕获不同的氨基酸对序列分类的不同作用,并通过增加网络深度获取深层次的特征。在真实蛋白质序列数据集上的实验表明,HALSTM模型比多种基准算法能取得更好的分类效果。此外,实验验证了多层网络结构和注意力机制的有效性。实验结果表明,HALSTM模型能够有效地对蛋白质序列进行分类。
Description
技术领域
本发明涉及蛋白质序列分类相关领域,具体来讲是一种基于层次注意力网络的蛋白质序列分类方法,应用于蛋白质序列分类系统之中。
背景技术
蛋白质在生物体中扮演的重要角色,将蛋白质序列样本正确地划分到所属的蛋白质家族是开展计算生物学研究的基础问题之一。蛋白质序列分类对于认识蛋白质的结构和功能,进而理解细胞运行的复杂机制至关重要。相对于传统实验手段的低效率高成本,利用计算机的存储和计算能力,实现蛋白质序列分类具有更大优势,受到了生物医学研究者的广泛关注。
蛋白质序列分类的挑战在于序列本身没有明显的家族识别的特征。此外,为了构建具有高性能的分类器,需要有效融合领域知识提取合适特征。目前,蛋白质序列分类的方法主要分为两类。一类是基于同源性的序列比对方法,该类方法基于同源性的假设,通过将原始序列中具有相同氨基酸的位置对齐,再通过某种测度方式进行相似度评价,最后判断是否属于同一个家族。其中,文献(Altschul Stephen,Gish Warren.Local alignmentstatistics[J].Computer Methods for Macromolecular Sequence Analysis,1996,266:460-480.)通过统计对齐后的序列信息,计算序列的相似度,并基于这种思想开发了语用序列对齐和比较的工具BLAST。另一类是基于机器学习的方法,从原始序列中人工提取特征,构造特征向量,之后利用机器学习中的各种分类器进行分类。蛋白质序列的人工特征的构造对于分类效果至关重要,文献(Lacey Arron,Deng Jing,Xie Xiang.Proteinclassification using hidden markov models and randomized decision tree[C]//Proceedings of the 7th International Conference on Biomedical Engineering andInformatics,Dalian,China,Oct 14-16,2014.Piscataway,NJ:IEEE,2014:659-664.)提出了可以利用氨基酸、功能组、化学性质、二级结构等固有特性作为蛋白质的特征。文献(Iqbal Muhammad,Faye Ibrahima,Said Abas,et al.Computational technique for anefficient classification of protein sequences with distance-based sequenceencoding algorithm[J].Computational Intelligence,2017,33(1):32-55.)则使用每个氨基酸在序列中的位置信息构造向量。与上述两种提取特征的方式不同,文献(AttwoodTerri,Bradley Paul,Flower Darren,et al.PRINTS and its automatic supplement,prePRINTS[J].Nucleic Acids Research,2003,21(1):400-402.)提出了一种基于序列模式的蛋白质分类算法,所挖掘的并非整条序列的统计特性,而是局部的氨基酸片段,并且利用这些片段作为特征对蛋白质序列进行分类。
作为最新技术,深度学习已经应用于各行各业。在医学领域,IBM公司开发了Watson,该平台利用患者的信息和领域知识为医生的诊断提供帮助。在健康领域,谷歌的DeepMind团队利用深度学习技术研发出了有效的健康保健技术。在各种深度学习模型中,RNN(Recurrent Neural Networks)网络模型常用于序列数据的处理。它在前馈神经网络中加入了同一层神经元的连接,可以让信息能够在同一层传递,该特性使得它能够自然的处理序列数据。RNN有多种变体,其中长短时记忆网络LSTM(Long Short-Term Memory)在多种问题中取得了更好的表现,因而得到了广泛的应用。例如,文献(Sonderby Soren,WinterOle.Protein secondary structure prediction with long short term memory[J].Knowledge-Based Systems,2011,24(4):530-541.)使用RNN网络和前馈神经网络来对蛋白质二级结构进行预测。文献(Bosco Giosue,Gangi Mattia.Deep learningarchitectures for DNA sequence classification[C]//Proceedings of 11thInternational Workshop on Fuzzy Logic and Soft Computing Applications,Naples,Italy,Dec 19-21,2006.Berlin,Heidelberg:Springer,2016:162-171.)先对DNA序列进行下采样,再用RNN对序列进行分类。文献(Cerri Ricardo,Barros Radrigo,CarvalhoAndre.Neural networks for hierarchical classification of G-protein coupledreceptors[C]//Proceedings of Brazilian Conference on Intelligent Systems,Fortaleza,CE,Brazil,Oct 19-24,2013.Piscataway,NJ:IEEE,2013:125-130.)使用人工神经网络对G-耦合受体蛋白家族进行分类。
文献(基于序列的蛋白质功能分类系统的研究与设计,作者谭生龙,2016年27期)以蛋白质序列为研究对象,描述了使用机器学习方法对未知功能的蛋白质序列进行功能分类的一般方法。
专利号CN201510829185.1的发明提出了一种氨基酸距离多态性比较蛋白质序列进行物种分类的方法,包括如下步骤:对蛋白质序列上的每个氨基酸进行编号;计算蛋白质序列上相邻同种氨基酸之间的距离;统计相邻同种氨基酸的不同距离在每条蛋白质序列上出现的次数;根据统计数据进行两两序列对比,构建距离矩阵,根据距离矩阵计算产生系统发育树,进行物种分类。本方法将序列上氨基酸的差异转变为氨基酸之间距离的差异,既兼顾了空位,又无需插入间隔,方法简单,大大简化了计算量。
深度学习相对传统机器学习方法的优势在于;深度学习模型有效结合了特征提取和分类器的功能,避免了复杂的特征提取和特征组合的过程,从而降低了构建模型的难度。因此,利用深度学习技术研究蛋白质序列分类问题可以克服传统方法的不足,是一件有意义的工作。
蛋白质序列家族分类是生物信息学探索的核心问题之一。对大量未标注的蛋白质序列自动进行分类不仅可以减少人力成本,而且有助于蛋白质结构和功能的研究。针对蛋白质序列的分类问题,典型的方法采用人工提取蛋白质序列特征,再利用机器学习的方法进行分类。然而,蛋白质序列的特征并不明显。针对这一问题,本发明提出了基于层次注意力网络的蛋白质序列分类模型HALSTM,该模型采用端到端的方式,建立单层注意力网络模型和双层注意力网络模型,采用注意力机制捕获不同的氨基酸对序列分类的不同作用,并通过增加网络深度获取深层次的特征;可以自动进行特征提取和序列分类。
发明内容
因此,针对现有蛋白质序列的特征不明显的这一问题,本发明在此提供一种基于层次注意力网络的蛋白质序列分类方法,该方法能够应用于蛋白质序列分类系统之中;本发明基于层次注意力网络的蛋白质序列分类模型HALSTM,该模型采用端到端的方式,建立单层注意力网络模型和双层注意力网络模型,采用注意力机制捕获不同的氨基酸对序列分类的不同作用,并通过增加网络深度获取深层次的特征;可以自动进行特征提取和序列分类。其中,采用注意力机制捕获不同的氨基酸对序列分类的不同作用,并通过增加网络深度获取深层次的特征。在真实蛋白质序列数据集上的实验表明,HALSTM模型比多种基准算法能取得更好的分类效果。此外,实验验证了多层网络结构和注意力机制的有效性,实验结果表明,HALSTM模型能够有效地对蛋白质序列进行分类。
本发明是这样实现的,构造一种基于层次注意力网络的蛋白质序列分类方法,包括如下步骤;
1),构建Embedding层;Embedding层位于网络的输入层之后,该层的主要作用是实现数据的向量化,把数据处理成后面网络需要的输入形式;
2),建立LSTM的结构,在LSTM的结构中引入了1个核心元素“细胞”,细胞中存在状态参数,用来存储之前序列的信息;同时设计输入门、输出门和遗忘门,用来增加或者去除信息输入到细胞状态的能力;其特征在于;包括如下步骤;
3),建立单层注意力网络模型,在LSTM模型的基础上添加了注意力层;在该层中采用注意力机制,为序列中的每个氨基酸分配一个权重,并以此来控制每个氨基酸对分类的贡献;权重的向量可以作为一个参数,从数据的训练过程中学习到;
4),建立双层注意力网络模型;在单层注意力网络的基础上提出了多层注意力网络,以提取用于蛋白质序列分类的深层信息;
5),实现蛋白质序列分类模型的训练过程。
根据本发明所述基于层次注意力网络的蛋白质序列分类方法,其特征在于:对于Embedding层的实现如下;
在深度学习网络模型中,Embedding层位于网络的输入层之后,该层的主要作用是实现数据的向量化,把数据处理成后面网络需要的输入形式;
采用one-hot编码对蛋白质序列进行向量化;
给定一条蛋白质序列S,序列的长度为|S|,序列中的氨基酸表示为si,i∈[1,|S|];氨基酸编码用矩阵We表示;经过Embedding层该蛋白质序列中的氨基酸可以向量化为xi=Wesi,i∈[1,|S|]。
根据本发明所述基于层次注意力网络的蛋白质序列分类方法,其特征在于:对于LSTM内部结构的实现如下;
LSTM的结构中引入了1个核心元素“细胞”,细胞中存在状态参数,用来存储之前序列的信息;同时设计了3个门结构:输入门、输出门和遗忘门,用来增加或者去除信息输入到细胞状态的能力;LSTM结构的计算公式如下:
it=σ(Wixt+Uiht-1+bi) (1)
ft=σ(Wfxt+Ufht-1+bf) (2)
ot=σ(Woxt+Uoht-1+bo) (3)
ct=ft⊙ct-1+it⊙tanh(Wcxt+Ucht-1+bc) (4)
ht=ot⊙tanh(ct) (5)
上述公式中ht为t时刻的输出,ct为细胞在t时刻的细胞状态;σ(·)是sigmoid非线性函数,tanh(·)是hyperbolic tangent非线性函数,它们把线性方程映射到非线性空间,表示向量或矩阵对应元素之间的乘法;LSTM的参数有Wj,Uj,bj,j∈{i,f,o,c},其中W和U表示权重矩阵参数,b是偏移向量参数;
LSTM的输入是序列中各元素的向量化表示,在内部结构中通过结合输入的向量xt和上一时刻的输出向量ht-1,可以在t时刻输出一个固定长度的向量ht;该向量是结合了之前序列的信息和此刻序列的信息得到的。
根据本发明所述基于层次注意力网络的蛋白质序列分类方法,其特征在于:对于单层注意力网络模型的实现如下;
在LSTM模型的基础上添加了注意力层;在该层中采用注意力机制,为序列中的每个氨基酸分配一个权重,并以此来控制每个氨基酸对分类的贡献;权重的向量可以作为一个参数,从数据的训练过程中学习到;
蛋白质序列S从输入层输入网络,经过Embedding层后被向量化为xi;此时,向量xi可以输入LSTM层:
hi=LSTM(xi) (6)
隐藏状态矩阵H中的每个隐藏状态向量对序列的分类的作用不是相同的,因此在LSTM层后面添加注意力层;利用注意力机制为每个隐藏状态分配一个权重,用来表示该隐藏状态对分类的影响大小,计算过程如下所示:
vi=tanh(Whhi+bh) (7)
其中,参数为公式(7)使用tanh函数对隐藏状态进行非线性转换;公式(8)为softmax函数的具体形式,该函数可以规范ai在[0,1]范围之间;通过该函数可以把序列中每个氨基酸对应的隐藏状态在整个序列中的比重计算出来;而且softmax函数还将用作最终的分类器函数;所有隐藏状态的权重[a1,a2,…,a|s|]组合成一个权重向量
在权重向量和隐藏状态矩阵都已经存在的情况下可以计算出一个序列向量r:
r=HaT (9)
公式(9)对序列中每个氨基酸的隐藏状态加权求和的方式计算出整个序列的向量r可以作为序列特征输入softmax层,进行分类操作:
p=softmax(r) (10)
根据本发明所述基于层次注意力网络的蛋白质序列分类方法,其特征在于:对于双层注意力网络模型的实现如下;
在单层注意力网络的基础上提出了多层注意力网络,以提取用于蛋白质序列分类的深层信息;
在LSTM层的堆叠过程中将上层的信息和当前层的信息同时作为下一层LSTM网络的输入:
Hn+1=LSTM(Hn+Hn-1) (11)
按照公式(11)多次扩展LSTM层,可以形成深层的注意力网络,具体扩展LSTM网络的层数,需要根据不同的数据集进行多次尝试。
根据本发明所述基于层次注意力网络的蛋白质序列分类方法,其特征在于:对于模型训练的实现如下;
多层注意力网络模型使用端到端的训练方式,输入原始序列,输出分类结果;训练使用后向传播算法不断把参数向着误差减小的方向调整;训练过程中使用的目标函数为交叉熵损失函数:
本发明具有如下优点:本发明在此提供一种基于层次注意力网络的蛋白质序列分类方法,该方法能够应用于蛋白质序列分类系统之中;基于层次注意力网络的蛋白质序列分类模型HALSTM,该模型采用端到端的方式,建立单层注意力网络模型和双层注意力网络模型,采用注意力机制捕获不同的氨基酸对序列分类的不同作用,并通过增加网络深度获取深层次的特征;可以自动进行特征提取和序列分类。在真实蛋白质序列数据集上的实验表明,HALSTM模型比多种基准算法能取得更好的分类效果。另外,(1)针对蛋白质序列样本的特点,提出了基于深度学习的层次注意力网络模型HALSTM(Hierarchical AttentionLong Short-Term Memory),以实现蛋白质序列的分类。(2)模型中使用注意力机制捕获氨基酸对蛋白质序列分类的不同作用,使用多层网络来捕获蛋白质序列的深层特征,提升分类效果。(3)通过在蛋白质序列数据集上实验,验证了由注意力机制和多层网络构建的HALSTM模型有效性。和多个基准算法对比,实验结果表明HALSTM模型对蛋白质序列具有更好的分类效果。
附图说明
图1为3层LSTM注意力网络模型示意图;
图2为LSTM层数对时间的影响示意图;
图3为LSTM层数对Acc和F1-macro的影响示意图;
图4为注意力层的权值示意图;
图5为注意力层对Acc和F1-macro的影响示意图。
具体实施方式
下面将结合附图1-图5对本发明进行详细说明,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明通过改进在此提供一种基于层次注意力网络的蛋白质序列分类方法;该方法能够应用于蛋白质序列分类系统之中;针对蛋白质序列分类问题提出了层次注意力网络模型HALSTM;实现过程包括构建模型的Embedding层和LSTM内部结构,然后实现单层注意力网络模型,接着扩展到多层注意力网络模型,最后完成蛋白质序列分类模型的训练过程。具体实施例如下;
其一,构建Embedding层;
在深度学习网络模型中,Embedding层位于网络的输入层之后,该层的主要作用是实现数据的向量化,把数据处理成后面网络需要的输入形式。
One-hot方法简单实用,常被用于神经网络的输入且蛋白质中氨基酸有20种,one-hot向量化方法不会出现维度爆炸的情况,因此本发明专利采用one-hot编码对蛋白质序列进行向量化。
给定一条蛋白质序列S,序列的长度为|S|,序列中的氨基酸表示为si,i∈[1,|S|]。氨基酸编码用矩阵We表示。经过Embedding层该蛋白质序列中的氨基酸可以向量化为xi=WeSi,i∈[1,|S|]。
其二,LSTM内部结构的实现;
LSTM的结构中引入了1个核心元素“细胞”,细胞中存在状态参数,用来存储之前序列的信息。同时精心设计了3个门结构:输入门、输出门和遗忘门,用来增加或者去除信息输入到细胞状态的能力。LSTM结构的计算公式如下:
it=σ(Wixt+Uiht-1+bi) (1)
ft=σ(Wfxt+Ufht-1+bf) (2)
ot=σ(Woxt+Uoht-1+bo) (3)
ct=ft⊙ct-1+it⊙tanh(Wcxt+Ucht-1+bc) (4)
ht=ot⊙tanh(ct) (5)
上述公式中ht为t时刻的输出,ct为细胞在t时刻的细胞状态。σ(·)是sigmoid非线性函数,tanh(·)是hyperbolic tangent非线性函数,它们把线性方程映射到非线性空间,表示向量或矩阵对应元素之间的乘法。LSTM的参数有Wj,Uj,bj,j∈{i,f,o,c),其中W和U表示权重矩阵参数,b是偏移向量参数。
LSTM的输入是序列中各元素的向量化表示,在内部结构中通过结合输入的向量xt和上一时刻的输出向量ht-1,可以在t时刻输出一个固定长度的向量ht。该向量是结合了之前序列的信息和此刻序列的信息得到的。
其三,单层注意力网络模型的实现;
在蛋白质序列中,不同的氨基酸对蛋白质序列的家族划分具有不同的作用。在序列中存在某些短的氨基酸序列,称为模体(motif)或结构域(domain),对于确定序列的结构和功能具有重要的作用。而另一些氨基酸则在蛋白质家族分类的过程中所起的作用则相对较小。
若使用LSTM模型进行分类,则无法区分不同的氨基酸对于蛋白质序列分类所起的作用。本发明专利在LSTM模型的基础上添加了注意力层。在该层中采用注意力机制,为序列中的每个氨基酸分配一个权重,并以此来控制每个氨基酸对分类的贡献。权重的向量可以作为一个参数,从数据的训练过程中学习到。
其中,图1示意了3层LSTM注意力网络模型。容易看出,单层LSTM注意力网络模型是多层LSTM注意力网络的一个特例(移除图中灰底色部分)。Embedding层中圆点表示神经元。
蛋白质序列S从输入层输入网络,经过Embedding层后被向量化为xi。此时,向量xi可以输入LSTM层:
hi=LSTM(xi) (6)
隐藏状态矩阵H中的每个隐藏状态向量对序列的分类的作用不是相同的,因此在LSTM层后面添加注意力层。利用注意力机制为每个隐藏状态分配一个权重,用来表示该隐藏状态对分类的影响大小,计算过程如下所示:
vi=tanh(Whhi+bh) (7)
其中,参数为公式(7)使用tanh函数对隐藏状态进行非线性转换。公式(8)为softmax函数的具体形式,该函数可以规范ai在[0,1]范围之间。通过该函数可以把序列中每个氨基酸对应的隐藏状态在整个序列中的比重计算出来。而且softmax函数还将用作最终的分类器函数。所有隐藏状态的权重[a1,a2,…,a|s|]组合成一个权重向量
在权重向量和隐藏状态矩阵都已经存在的情况下可以计算出一个序列向量r:
r=HaT (9)
公式(9)对序列中每个氨基酸的隐藏状态加权求和的方式计算出整个序列的向量r可以作为序列特征输入softmax层,进行分类操作:
p=softmax(r) (10)
研究表明,深层网络可以表达比浅层网络大的多得函数集合,能够捕获更多的信息,目前已在许多领域取得了较好的效果。本发明在单层注意力网络的基础上提出了多层注意力网络,以提取用于蛋白质序列分类的深层信息。
图1中灰底色部分展示了3层LSTM注意力网络模型中LSTM层堆叠的过程。同时,从文献(He Kai,Zhang Xiang,Ren Shao,et al.Deep residual learning for imagerecognition[C]//Proceedings of 2016Conference on Computer Vision and PatternRecognition,Las Vegas,NV,USA,Jun 27-30,2016.Piscataway,NJ:IEEE,2016:770-778.)中可知把级联的网络层之间的信息综合起来可以减少信息的丢失,达到更好的效果。因此,本发明在LSTM层的堆叠过程中将上层的信息和当前层的信息同时作为下一层LSTM网络的输入:
Hn+1=LSTM(Hn+Hn-1) (11)
按照公式(11)多次扩展LSTM层,可以形成深层的注意力网络,具体扩展LSTM网络的层数,需要根据不同的数据集进行多次尝试。
其五,模型训练的实现;
多层注意力网络模型使用端到端的训练方式,输入原始序列,输出分类结果。训练使用后向传播算法不断把参数向着误差减小的方向调整。训练过程中使用的目标函数为交叉熵损失函数:
下面对本发明实施例进行相应的应用实例验证,以体现出本发明的应用性和实用性:
为验证层次注意力网络模型能有效的分类蛋白质序列,本发明分别在3组蛋白质家族数据集上和多个基准算法做了对比实验并进行了分析。
本发明专利从PFAM和UniProKB生物数据库中收集了Transmembrane、Multihemecytos和Yeast数据集并进行实验,所有实验均采用10折交叉验证。3组数据集的数据特征如表1所示。
本发明实现了若干蛋白质序列分类算法,用于和本发明专利提出的HALSTM模型进行比较。这些基准算法包括:基于序列模式的SCIS_MA算法,基于蛋白质性质的Feature+RDT算法,基于距离的序列编码算法Encoding+DT、Encoding+RDT和基于深度学习的LSTM模型。
(1)实验设定:
本发明专利实验所使用PC的运行环境为:Ubuntu 16.04操作系统,Intel XeonE5-2683 2.00GHz CPU,64G内存,GTX1080显卡。除SCIS_MA算法的代码来自文献(ZhouCheng,Cule Boris,Goethals Bart.Pattern based sequence classification[J].IEEETransactions on Knowledge&Data Engineering,2015,28(5):1285-1298.)外,其他算法程序均使用Python编写。深度学习模型采用Theano框架。
LSTM层中的参数使用高斯分布N(0,0.1)初始化,注意力层的参数使用均匀分布Uniform(-0.01,0.01)初始化。隐藏层的神经元个数为50,并且在进行最后分类前使用了dropout层,神经元屏蔽概率为0.5。优化器使用Adam,学习率为0.001,没有使用正则化项。在训练和预测的过程中,把每128条序列分为一块输入网络,进行批量计算。
(2)实验结果评价及分析:
在多分类问题中,分类的结果一般可以分为以下4种情况:
1)属于类m的样本被正确分到类m,这类样本数目记为TP。
2)不属于类m的样本被错误的分到了类m,这类样本的数目记为FP。
3)属于类m的样本被错误的分到了其他类,这类样本的数目记为TN。
4)不属于类m的样本被正确的分类到其他类别中,这类样本的数目记为FN。那么对于单个类别m的查准率可以表示为:π=TP/(TP+FP),查全率表示为:ρ=TP/(TP+FN)。兼顾查准率和查全率的F1分数为
表1数据集特征
对于多个类别的数据集,系统分类的整体性能可以使用准确率(Acc)和F1-macro两种不同的度量方法来评价:
M表示数据集中包含的类别数目。准确率平等的考虑每个序列,所以它的值受到常见类别的影响较大,F1-macro平等的对待每个类别,所以它的值主要受到稀有类的影响。本发明专利使用两种度量标准,可以更加客观的评价多类别分类的效果。
本发明专利在3组蛋白质序列集上运行HALSTM模型和各基准算法。表2中展示了传统方法和深度学习方法对蛋白质序列数据进行分类的结果。由于SCIS_MA算法采用文献(Zhou Cheng,Cule Boris,Goethals Bart.Pattern based sequence classification[J].IEEE Transactions on Knowledge&Data Engineering,2015,28(5):1285-1298.)提供的代码,未考虑F1-macro的结果,因此用/表示。本发明专利选择了HALSTM算法中准确率较高有4层LSTM的注意力网络作为展示,记为HALSTM(4)。
表2算法的实验结果
与基准算法相比,HALSTM模型在3组数据集上取得了最好的效果,准确率比最好的传统方法分别提升了4.42%、3.38%、0.64%,F1-macro提高了4.47%、3.29%、0.98%。在基准算法已有较高的准确率的数据集上,HALSTM模型同样获得了较大的提升。在基准算法中SCIS_MA算法使用序列模式进行分类,尽管可解释性比较高,但对于较长的蛋白质序列,分类效果欠佳。其他基准算法使用机器学习方法进行分类效果较好,但需要领域专家人工提取或者制造好的特征。深度学习方法无需人工提取特征,网络可以在训练过程自动进行特征提取。
与LSTM网络相比,HALSTM模型对蛋白质数据集的分类效果的准确率提升了8.80%、7.23%、2.74%,在F1-macro上提升了8.96%、7.30%、2.65%。上述结果表明本发明专利提出的HALSTM模型的有效性。
(3)网络层数分析:
层次注意力网络HALSTM模型中的一个重要特性是通过增加LSTM的层数捕获深层特征,提升蛋白质序列的分类效果。表2仅给出了4层LSTM网络的分类情况,下面本发明将详细分析不同层数LSTM对模型分类时间和效果的影响。
图2中显示了不同层数的模型在不同数据集上的运行时间。可见,运行时间随着层数增加而线性增加。因此当层数过多时模型的训练速度变慢。
图3展示了在3组蛋白质序列集上,不同LSTM层数的HALSTM模型在Acc和F1-macro两种不同度量标准上的分类效果。从图中可以看出,在3组数据上多层的HALSTM效果要比单层的好,其中前两组的提升效果较明显,第三组的效果提升较小。数据集在HALSTM(3)、HALSTM(4)和HALSTM(5)上分别取得了最好的效果。同时,注意到Acc和F1-macro两种度量标准差别很小。通过分析应该是因为数据集中每个类别的分类精度都比较高,且数据集分布比较均匀,因此Acc和F1-macro会比较接近。
因此,对于不同数据集应该适当增加层数,以提升效果。如果层数过多,不但会影响精度,还会增加运行时间。
(4)注意力层分析:
不同的氨基酸或短的氨基酸序列(模体、结构域)对于蛋白质的序列分类有重要的价值,而一些氨基酸的作用则相对较小。本发明提出的HALSTM网络模型中使用注意力机制,能够捕获不同的氨基酸对于序列分类的作用。为了验证注意力层在分类过程中的有效性,本发明专利设计了以下两组实验。
第一组实验利用可视化工具Heml将公式(8)中注意力层的权重向可视化,验证每个氨基酸分配到了不同的权值。
实验使用单层注意力网络模型分别训练3组数据集,从训练后的3组实验中分别取出10条序列对应的权重向量,使用Heml工具将权重向量的前30个实数可视化,如图4所示。每行代表一条序列的前30个氨基酸对应的权重,颜色越深,则表示权重越大,在使用模型进行分类的过程中所起的作用越大。从图中可以看到,不同的氨基酸的权重有所差别,不再是每个氨基酸对分类起到同样的作用。图中权重比较小,是因为一条序列中所有氨基酸的权重之和为1,所以当序列较长时,每个权重也相对较小。
第二组实验对比HALSTM模型和HLSTM模型(移除注意力层,其他同HALSTM)对蛋白质序列的分类效果,以此验证注意力层的有效性。
图5展示了Transmembrane和Multiheme cytos两组数据集上HALSTM模型和HLSTM模型对蛋白质序列的分类情况。从图中可以观察到,HALSTM模型无论准确率还是F1-macro均比HLSTM模型高。而且随着LSTM层数的增多,两个模型之间的差距有所增大。
两组实验分别从两个角度验证了注意力机制在蛋白质序列分类中的有效性。
结论:本发明专利提出了基于深度学习的层次注意力网络模型HALSTM,来解决蛋白质序列家族分类的问题。实验结果表明HALSTM比之前的方法表现的更加优异,同时通过实验验证了多层LSTM结构可以捕获更多深层信息,而注意力机制则可以成功挑选出对分类更有帮助的氨基酸。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本发明专利中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本发明专利所示的这些实施例,而是要符合与本发明所公开的原理和新颖特点相一致的最宽的范围。
Claims (3)
1.一种基于层次注意力网络的蛋白质序列分类方法,包括如下步骤;
1),构建Embedding层;Embedding层位于网络的输入层之后,该层的主要作用是实现数据的向量化,把数据处理成后面网络需要的输入形式;
2),建立LSTM的结构,在LSTM的结构中引入了1个核心元素“细胞”,细胞中存在状态参数,用来存储之前序列的信息;同时设计输入门、输出门和遗忘门,用来增加或者去除信息输入到细胞状态的能力;其特征在于:该方法还包括如下步骤;
3),建立单层注意力网络模型,在LSTM模型的基础上添加了注意力层;在该层中采用注意力机制,为序列中的每个氨基酸分配一个权重,并以此来控制每个氨基酸对分类的贡献;权重的向量作为一个参数,从数据的训练过程中学习到;
4),建立多层注意力网络模型;在单层注意力网络的基础上提出多层注意力网络,以提取用于蛋白质序列分类的深层信息;
5),实现蛋白质序列分类模型的训练过程;
对于Embedding层的实现如下;
在深度学习网络模型中,Embedding层位于网络的输入层之后,该层的主要作用是实现数据的向量化,把数据处理成后面网络需要的输入形式;
采用one-hot编码对蛋白质序列进行向量化;
给定一条蛋白质序列S,序列的长度为|S|,序列中的氨基酸表示为si,i∈[1,|S|];氨基酸编码用矩阵We表示;经过Embedding层该蛋白质序列中的氨基酸向量化为xi=Wesi,i∈[1,|S|];
对于单层注意力网络模型的实现如下;
在LSTM模型的基础上添加了注意力层;在该层中采用注意力机制,为序列中的每个氨基酸分配一个权重,并以此来控制每个氨基酸对分类的贡献;权重的向量作为一个参数,从数据的训练过程中学习到;
蛋白质序列S从输入层输入网络,经过Embedding层后被向量化为xi;此时,向量xi输入LSTM层:
hi=LSTM(xi) (6)
隐藏状态矩阵H中的每个隐藏状态向量对序列的分类的作用不是相同的,因此在LSTM层后面添加注意力层;利用注意力机制为每个隐藏状态分配一个权重,用来表示该隐藏状态对分类的影响大小,计算过程如下所示:
vi=tanh(Whhi+bh) (7)
其中,参数为公式(7)使用tanh函数对隐藏状态进行非线性转换;公式(8)为softmax函数的具体形式,该函数规范ai在[0,1]范围之间;通过该函数把序列中每个氨基酸对应的隐藏状态在整个序列中的比重计算出来;而且softmax函数还将用作最终的分类器函数;所有隐藏状态的权重[a1,a2,…,a|s|]组合成一个权重向量
在权重向量和隐藏状态矩阵都已经存在的情况下计算出一个序列向量r:
r=HaT (9)
公式(9)对序列中每个氨基酸的隐藏状态加权求和的方式计算出整个序列的向量r作为序列特征输入softmax层,进行分类操作:
p=softmax(r) (10)
对于双层注意力网络模型的实现如下;
在单层注意力网络的基础上提出了多层注意力网络,以提取用于蛋白质序列分类的深层信息;
在LSTM层的堆叠过程中将上层的信息和当前层的信息同时作为下一层LSTM网络的输入:
Hn+1=LSTM(Hn+Hn-1) (11)
按照公式(11)多次扩展LSTM层,形成深层的注意力网络,具体扩展LSTM网络的层数,需要根据不同的数据集进行多次尝试。
2.根据权利要求1所述基于层次注意力网络的蛋白质序列分类方法,其特征在于:对于LSTM内部结构的实现如下;
LSTM的结构中引入了1个核心元素“细胞”,细胞中存在状态参数,用来存储之前序列的信息;同时设计了3个门结构:输入门、输出门和遗忘门,用来增加或者去除信息输入到细胞状态的能力;LSTM结构的计算公式如下:
it=σ(Wixt+Uiht-1+bi) (1)
ft=σ(Wfxt+Ufht-1+bf) (2)
ot=σ(Woxt+Uoht-1+bo) (3)
ct=ft⊙ct-1+it⊙tanh(Wcxt+Ucht-1+bc) (4)
ht=ot⊙tanh(ct) (5)
上述公式中ht为t时刻的输出,ct为细胞在t时刻的细胞状态;σ(·)是sigmoid非线性函数,tanh(·)是hyperbolic tangent非线性函数,它们把线性方程映射到非线性空间,表示向量或矩阵对应元素之间的乘法;LSTM的参数有Wj,Uj,bj,j∈{i,f,o,c},其中W和U表示权重矩阵参数,b是偏移向量参数;
LSTM的输入是序列中各元素的向量化表示,在内部结构中通过结合输入的向量xt和上一时刻的输出向量ht-1,在t时刻输出一个固定长度的向量ht;该向量是结合了之前序列的信息和此刻序列的信息得到的。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010254010.3A CN111402953B (zh) | 2020-04-02 | 2020-04-02 | 基于层次注意力网络的蛋白质序列分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010254010.3A CN111402953B (zh) | 2020-04-02 | 2020-04-02 | 基于层次注意力网络的蛋白质序列分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111402953A CN111402953A (zh) | 2020-07-10 |
CN111402953B true CN111402953B (zh) | 2022-05-03 |
Family
ID=71413657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010254010.3A Active CN111402953B (zh) | 2020-04-02 | 2020-04-02 | 基于层次注意力网络的蛋白质序列分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111402953B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022109462A1 (en) * | 2020-11-23 | 2022-05-27 | NE47 Bio, Inc. | Protein database search using learned representations |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109671469A (zh) * | 2018-12-11 | 2019-04-23 | 浙江大学 | 基于循环神经网络预测多肽与hla i型分子之间结合关系与结合亲和力的方法 |
CN110287320A (zh) * | 2019-06-25 | 2019-09-27 | 北京工业大学 | 一种结合注意力机制的深度学习多分类情感分析模型 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3591572B1 (en) * | 2018-07-06 | 2021-09-01 | Tata Consultancy Services Limited | Method and system for automatic chromosome classification |
-
2020
- 2020-04-02 CN CN202010254010.3A patent/CN111402953B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109671469A (zh) * | 2018-12-11 | 2019-04-23 | 浙江大学 | 基于循环神经网络预测多肽与hla i型分子之间结合关系与结合亲和力的方法 |
CN110287320A (zh) * | 2019-06-25 | 2019-09-27 | 北京工业大学 | 一种结合注意力机制的深度学习多分类情感分析模型 |
Non-Patent Citations (3)
Title |
---|
EL_LSTM: Prediction of DNA-Binding Residue from Protein Sequence by Combining Long Short-Term Memory and Ensemble Learning;Jiyun Zhou等;《IEEE/ACM Transactions on Computational Biology and Bioinformatics》;20180723;第17卷(第1期);124-135 * |
Learning protein sequence embeddings using information from structure;Tristan Bepler等;《arXiv:1902.08661v2》;20191017;1-17 * |
基于模型的聚类在蛋白质分类研究中的应用;曹延姗;《中国优秀硕士学位论文全文数据库 (基础科学辑)》;20200215(第02期);A006-255 * |
Also Published As
Publication number | Publication date |
---|---|
CN111402953A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107622182B (zh) | 蛋白质局部结构特征的预测方法及系统 | |
CN110334843B (zh) | 一种时变注意力改进Bi-LSTM的住院就医行为预测方法及装置 | |
Khan et al. | Multi-objective feature subset selection using non-dominated sorting genetic algorithm | |
CN108445752B (zh) | 一种自适应选择深度特征的随机权神经网络集成建模方法 | |
CN109993100B (zh) | 基于深层特征聚类的人脸表情识别的实现方法 | |
CN111898689A (zh) | 一种基于神经网络架构搜索的图像分类方法 | |
Badawi et al. | A hybrid memetic algorithm (genetic algorithm and great deluge local search) with back-propagation classifier for fish recognition | |
Siddique et al. | Study and observation of the variations of accuracies for handwritten digits recognition with various hidden layers and epochs using neural network algorithm | |
Huang et al. | Differential evolution-based convolutional neural networks: An automatic architecture design method for intrusion detection in industrial control systems | |
CN113723238A (zh) | 一种人脸轻量网络模型构建方法和人脸识别方法 | |
Badriyah et al. | Improving stroke diagnosis accuracy using hyperparameter optimized deep learning | |
CN117153268A (zh) | 一种细胞类别确定方法及系统 | |
Wang et al. | Brain-inspired interpretable network pruning for smart vision-based defect detection equipment | |
CN111402953B (zh) | 基于层次注意力网络的蛋白质序列分类方法 | |
Yeganejou et al. | Improved deep fuzzy clustering for accurate and interpretable classifiers | |
Rekabdar et al. | Scale and translation invariant learning of spatio-temporal patterns using longest common subsequences and spiking neural networks | |
Yamada et al. | Weight Features for Predicting Future Model Performance of Deep Neural Networks. | |
Zha et al. | Recognizing plans by learning embeddings from observed action distributions | |
CN115310491A (zh) | 一种基于深度学习的类不平衡磁共振全脑数据分类方法 | |
Płoński et al. | Self-organising maps for classification with metropolis-hastings algorithm for supervision | |
Mayatopani et al. | Implementation of Self-Organizing Map (SOM) Algorithm for Image Classification of Medicinal Weeds | |
Hou et al. | Evolving dendritic neuron model by equilibrium optimizer algorithm | |
Chang et al. | An Efficient Hybrid Classifier for Cancer Detection. | |
Priya et al. | Multimodal biometric authentication using back propagation artificial neural network | |
CN111400685A (zh) | 一种采用竞争匹配的安全身份验证方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |