蛋白质二级结构预测是生物信息学的重要组成部分,在生物信息学领域具有重要意义。本文提出了一种新的卷积神经网络结合Softmax分类器的算法预测蛋白质二级结构。首先用改进的卷积神经网络对蛋白质氨基酸序列进行特征提取,然后把卷积神经网络中第三次卷积后的输出作为Softmax分类器的输入并进行训练和预测。我们将本文提出的方法在25PDB数据集上做了3-折交叉验证,结果证明蛋白质二级结构预测的准确率有提高。 Protein secondary structure prediction belongs to bioinformatics, and it’s important in research area. In this paper, we propose a new prediction way of protein using convolutional neural networks and Softmax. First, the improved convolutional neural network is used to extract the characteristics of the protein amino acid sequence, and then the third convolved output in the convolutional neural network is used as input to the Softmax classifier, and these data are trained and predicted. The dataset is a typical 25PDB dataset for protein. In terms of accuracy, the method is the cross validation based on the 3-fold. The results demonstrate that the accuracy of protein secondary structure prediction is improved.
王蕾蕾,成金勇
齐鲁工业大学(山东省科学院),计算机科学与技术学院,山东 济南
收稿日期:2019年2月9日;录用日期:2019年2月21日;发布日期:2019年2月28日
蛋白质二级结构预测是生物信息学的重要组成部分,在生物信息学领域具有重要意义。本文提出了一种新的卷积神经网络结合Softmax分类器的算法预测蛋白质二级结构。首先用改进的卷积神经网络对蛋白质氨基酸序列进行特征提取,然后把卷积神经网络中第三次卷积后的输出作为Softmax分类器的输入并进行训练和预测。我们将本文提出的方法在25PDB数据集上做了3-折交叉验证,结果证明蛋白质二级结构预测的准确率有提高。
关键词 :蛋白质二级结构,卷积神经网络,Softmax分类器
Copyright © 2019 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
人类基因组计划(Human Genome Project, HGP) [
深度学习 [
近年来,随着深度学习算法的不断发展,卷积神经网络引起了广大研究者的关注。卷积神经网络(Convolutional Neural Networks, CNN) [
s ( i , j ) = ( X * W ) ( i , j ) + b = ∑ k − 1 n _ i n ( X k * W k ) ( i , j ) + b (1)
公式中,n_in是输入数据组成的矩阵个数,Xk是第k个的输入矩阵。Wk则是卷积过程中我们选取的卷积核里的第k个子卷积核矩阵。 s ( i , j ) 表示的是卷积核W对应位置的元素在其输出矩阵中的值。
卷积神经网络的基本结构包括卷积层、池化层和全连接层。卷积层主要执行的是卷积操作,其中用到的方法主要是局部连接和权值共享的方法,主要是在模拟大脑中有局部感受野的细胞,从而能够从获得的信息中提取出一些初级特征的过程。池化层主要执行的是下采样操作,包括最大值池化和平均池化等方法。输入的数据经过池化层的下采样操作后,输出的数据矩阵会变小,但是数量不变,所以池化层能够对从上一层的卷积层中输出的数据进行压缩,这样就能减小计算的复杂度、从而使学习参数数量减少,同时能有效地防止过拟合问题。在卷积神经网络模型中,最后的一层或是几层就是全连接层,全连接层的主要功能是对前面卷积和池化操作提取的特征进行加权求和,能够保证输入的数据在进行池化操作后保留下来的少量数据特征能够尽可能的重现原来的输入数据。
图1中,input为数据以矩阵的形式输入卷积神经网络,输入的数据进行卷积操作,得到C1层,C1层的数据进行下采样操作,得到S1层,卷积神经网络完成第一次卷积、下采样操作。第一次卷积—下采样操作的输出作为下一次卷积操作的输入,进行第二次卷积、下采样操作,以此类推,直到最后一次卷积操作完成,把卷积、下采样后得到的特征进行全连接并作为卷积神经网络提取特征的输出,把输出的数据输入到分类器中进行分类,得到我们所需要的分类结果。
图1. 卷积神经网络结构图
传统的逻辑回归模型主要处理的是二分类的问题,如Logistic回归模型 [
h θ ( x ) = 1 1 + exp ( − θ T x ) (2)
其损失函数对应如下:
J ( θ ) = − 1 m [ ∑ i = 1 m y ( i ) log h θ ( x ( i ) ) + ( 1 − y ( i ) ) log ( 1 − h θ ( x ( i ) ) ) ] (3)
其中, x ( i ) 是输入的样本数据, y ( i ) 是对应的标签数据,θ是训练的模型参数,m是样本的总数,因为传统的逻辑回归应用于二分类问题,所以m的取值为2。在多分类问题中,我们用到的是Softmax回归,其中 y ( i ) 可以取 k ( k > 2 ) 个值,对应的m取值为k。
对于给定的输入x,针对每一个类别j估算出其概率值 p = ( y = j | x ) 。也就是说,针对每一种分类的结果估算其出现的概率。所以,对于 y = k ( k > 2 ) 时回归模型函数的形式如下:
h θ ( x ( i ) ) = [ p ( y ( i ) = 1 | x ( i ) ; θ ) p ( y ( i ) = 2 | x ( i ) ; θ ) ⋮ p ( y ( i ) = k | x ( i ) ; θ ) ] = 1 ∑ j = 1 k e θ j T x ( i ) [ θ 1 T x ( i ) θ 2 T x ( i ) ⋮ θ k T x ( i ) ] (4)
为了使公式看起来更加简便,用 θ 表示全部的模型参数,在Softmax回归中,把 θ 1 , θ 2 , ⋯ , θ k 按行排列组成一个矩阵 θ ,如下所示:
θ = [ — θ 1 T — — θ 2 T — ⋮ — θ K T — ] (5)
Softmax回归所对应的损失函数如下所示:
J ( θ ) = − 1 m [ ∑ i = 1 m ∑ j = 1 k 1 { y ( i ) = j } log e θ j T x ( i ) ∑ l = 1 k e θ l T x ( i ) ] (6)
在上面的公式中, 1 { . } 表示的是示性函数。
从以上可以推出,对于给定的输入数据x,针对每一个类别j估算出的其概率值 p = ( y = j | x ) 如下所示:
P ( y ( i ) = j | x ( i ) ; θ ) = e θ j T x ( i ) ∑ l = 1 k e θ j T x ( i ) (7)
为了简化计算量和解决反向传播时出现的梯度消失问题,在卷积层之后加入了Relu激活层。本文的网络结构包括输入层、卷积层、池化层、Relu激活层和全连接层。一般的卷积神经网络是在全连接之后,对所提取的特征进行分类预测,本文是提取第三层卷积层之后的特征,输入到Softmax分类器中进行训练和预测。
主要的网络结构图和参数设置如图2所示。
主要介绍蛋白质数据库以及本文的实验过程和结果分析。
图2. 卷积神经网络–Softmax网络结构图
在蛋白质二级结构预测的研究中,非同源蛋白质数据集25PDB数据集经常被用到。我们用本文提出的方法在25PDB数据集上做了交叉验证 [
通过位置特异性叠代BLAST (Position-Specific Iterated BLAST, PSI-BLAST)程序进调用三次迭代并进行序列的对比就能获得位置特异性打分矩阵(Position-Specific Scoring Matrix, PSSM) [
首先通过运行PSI-BLAST程序搜索nr数据库生成对应PSSM矩阵。用大小为13的滑动窗口沿着PSSM矩阵中的蛋白质序列滑动,得到了一个260维的数据。把数据作为卷积神经网络的输入,用3 * 3的卷积核对数据进行卷积操作,经过3次卷积操作,把卷积神经网络第三次卷积后提取到的特征输出作为Softmax分类器的输入,用Softmax对提取的特征进行训练和预测,得到预测结果也就是蛋白质二级结构的三种形式:C (卷曲)、E (链残基)和H (卷曲)。主要的流程图如图3所示:
图3. 实验流程图
在数据处理的滑动窗口选择和在卷积神经网络提取特征时卷积核大小的选择上我们做了反复多次试验。在处理PSSM矩阵时,我们分别选取了9、11、13、15和17作为滑动窗口的大小,分别得到了数据维数为180维、220维、260维、300维和340维的矩阵,经过实验得出,滑动窗口大小为13的时候,预测的效果是最好的。在卷积核大小的选择上,我们分别以2 * 2,3 * 3,4 * 4和5 * 5作为卷积核的大小进行实验,最后我们设置的卷积层分别是600个4 * 4的卷积核、300个2 * 2的卷积核和200个2 * 2的卷积核。
一个预测算法的好坏主要是通过衡量其预测精度来决定的。蛋白质二级结构的预测精度可以对正确预测的螺旋和折叠数量来进行计算。本文用到的衡量的方法是Q3和片段重叠准确率(Segment Overlap Score, SOV)方法。
Q3是被用于残基上的,通过计算正确预测的蛋白质残基占已知蛋白质二级结构序列中总的残基数的比例计算出。Q3值的范围为 [ 0 , 1 ] ,1表示准确预测。Q3就可以表示为:
Q 3 = 正 确 预 测 的 残 基 数 残 基 总 数 (8)
SOV方法是由Burkhard Rost [
本文把25PDB数据集分成三份并编号为1、2和3,选择其中的一份作为训练集,剩余的两份作为测试集。我们依次以1、2和3作为测试集,用传统的卷积神经网络和本文的网络结构对其进行了训练和预测,得到了Q3和SOV的平均值。
对于本文用到的25PDB数据集,只使用卷积神经网络对训练集和测试集进行分类预测的Q3正确率和SOV如下表1所示:
1 | 2 | 3 | 平均 | ||
---|---|---|---|---|---|
训练集 | Q3 | 77.41 | 76.50 | 76.97 | 76.96 |
SOV | 73.29 | 72.42 | 72.04 | 72.58 | |
测试集 | Q3 | 76.34 | 75.52 | 75.85 | 75.90 |
SOV | 72.69 | 71.61 | 71.66 | 71.98 |
表1. 卷积神经网络预测结果
对于25PDB数据集,先使用改进的卷积神经网络进行特征提取,再提取第三层卷积层的特征输入到softmax分类器中进行分类预测的Q3正确率和SOV如下表2所示:
1 | 2 | 3 | 平均 | ||
---|---|---|---|---|---|
训练集 | Q3 | 78.41 | 78.41 | 78.31 | 78.37 |
SOV | 73.62 | 74.43 | 73.56 | 73.87 | |
测试集 | Q3 | 77.01 | 76.99 | 77.18 | 77.06 |
SOV | 72.79 | 73.11 | 73.08 | 72.99 |
表2. 卷积神经网络和Softmax预测结果
从上表预测结果可以看出,对于蛋白质数据集25PDB,只使用传统的卷积神经网络对蛋白质数据进行分类预测,在训练集上的Q3正确率是76.96%,在测试集上的Q3正确率是75.90%,本文的方法是在传统的卷积神经网络中加入了Relu激活层,对蛋白质数据集进行特征提取,把卷积神经网络第三次卷积得到的特征作为Softmax分类器的输入对特征数据进行分类预测,在训练集上的Q3正确率是78.37%,在测试集上的Q3正确率是77.06%。本文的方法相较于经典的卷积神经网络方法在训练集和测试集上Q3平均预测精度分别提高了1.14%和1.16%。因为自动编码器可以不断调整它的各层的参数,得到每一层的权重,因而能够捕捉可以代表输入数据的最重要的因素,是一种尽可能复现输入信号的神经网络,所以预测结果提高了。但是自动编码器没有全局优化,输入的重建可能不是学习通用表征的理想度量,所以预测正确率的提高不是很明显。
本文结合了改进了卷积神经网络方法,在传统的卷积神经网络方法中加入了Relu激活层,简化了计算量并优化了梯度消失问题,直接提取第三层卷积层的特征作为输出,在分类预测方面引入了Softmax分类函数。把改进的卷积神经网络对蛋白质数据集25PDB经过卷积层、Relu激活层和池化层之后提取到的第三层卷积后的特征作为Softmax分类器的输入,用Softmax分类器对提取到的特征进行训练和预测。从表1和表2中可以看出只用卷积神经网络对25PDB数据集进行训练和预测的Q3和SOV分别是75.90%和71.98%,在本文的方法中的Q3和SOV分别是77.06%和72.99%,预测结果都有提高。卷积神经网络通过卷积和下采样操作能最大程度地提取到数据重要的信息,本文的方法在卷积神经网络中加入了Relu激活层,并把第三层卷积提取到的特征直接作为Softmax分类器的输入,最大程度地保留了原始信息,简化了计算量并解决了梯度消失问题。所以提高了预测结果的精度。
本研究获得山东省自然科学基金(No. ZR2017LB024)项目资助。
王蕾蕾,成金勇. 基于卷积神经网络和Softmax的蛋白质二级结构预测Protein Secondary Structure Prediction Using Convolutional Neural Network and Softmax[J]. 计算机科学与应用, 2019, 09(02): 450-457. https://doi.org/10.12677/CSA.2019.92051
https://doi.org/10.1126/science.3945817
https://doi.org/10.1201/9780203852507
https://doi.org/10.1038/nature14539
https://doi.org/10.1109/5.726791
https://doi.org/10.1113/jphysiol.1962.sp006837
https://doi.org/10.1002/9781118548387
https://doi.org/10.1016/S0022-2836(05)80360-2
https://doi.org/10.1002/(SICI)1097-0134(19990201)34:2<220::AID-PROT7>3.0.CO;2-K