基于支持向量机的蛋白质交互界面热点的预测的研究与改进
作者:王毅诚 陈向煌 字数:1856 点击:
随着人类和其他物种基因组序列测定的完成,生物信息学的研究中心逐步转移到对蛋白质组和功能基因组的研究。本文采用的是机器学习的方法,基于现有的一些研究成果,计算了6个序列特征和62个结构特征,尝试了支持向量机这种机器学习的方法对界面热点进行了训练和预测,接下来用了主成分分析继续优化了这种机器学习的方法.
2 材料与方法
2.1 支持向量机方法概述
SVM是一个监督学习的基于最大间隔的分类器。这些数据点是n维实空间中的点。我们希望能够把这些点通过一个n-1维的超平面分开。通常这个被称为线性分类器。但是我们还希望找到分类最佳的平面,即使得属于两个不同类的数据点间隔最大的那个面,该面亦称为最大间隔超平面。如果我们能够找到这个面,那么这个分类器就称为最大间隔分类器。它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中。
2.2 组合分类器简介
组合分类器是一个复合模型,由多个分类器复合而成。个体分类器投票,组合分类器基于投票返回类标号预测,组合分类器往往比它的成员分类器更准确。装袋、提升和随机森林都是流行的组合分类方法。它旨在于创建一个改进的复合分类模型M,使给定的数据集D创建k个训练集,其中用于创建。给定一个待分类的新数据元组,每个基分类通过返回类预测投票。组合分类器基于基类分类器的投票返回预测。
组合分类器往往比它的基类分类器更准确。基类可能出错,但当且仅当超过一半的基分类器出错时,组合分类器才会误分类。当模型之间存在显著差异是,组合分类器产生更好的结果。也就是说,理想情况下,各个基分类器之间几乎不相关。基分类器应该优于随机猜测。
先直观的考虑装袋如何作为一种提高准确率的方法。给定d个元素的元组D,装袋的过程如下。对于迭代d个元组的训练集采用又放回的抽样,由原始元组集D抽取。每个训练集都是一个自助样本,这样D的某些元素可能不存在中,有的可能出现多次,由每个训练集学习,得到分类模型。为了对未知元组分类,每个分类器返回它的预测类,算作一票。装袋分类器M统计得票,并将得票最多的赋予类X。通过给定检验元组的每个预测的平均值,装袋也可以用于连续值的预测。
2.3 组合分类器对支持向量机进行交互界面热点预测进一步优化
程序代码由matlab编写,先从excel文件中读取训练数据和测试数据,然后随机选取71个训练数据,主成分分析的参数和支持向量机的参数与之前一样,测试过后记录反馈的结果,如果投票次数不足则继续选取训练数据,然后分类,足够的话就统计投票结果,与测试的答案对比输出。
2.4 支持向量机实验结果与讨论
虽然由线性标准化的支持向量机比正太标准化的支持向量机各项参数都好,但是召回率仍未过半,其原因可能是维数过高导致的训练不足,而且特征之间极高的相关性并不适合支持向量机的表现。经过主成分分析预处理优化的效果与之前没有用主成分分析预处理的效果提高了68%。有这种提高的原因有如下,,首先是因为支持向量机比较适合一些低维度的分析,在主成分分析处理过以后的数据,在贡献保留98%的情况下仍然只有四项,数据规模缩小了将近95%但是数据的质量减少得并不多。第二个原因是用主成分分析使变量不相关以后更加有利于在坐标轴上划分。坐标轴上的维度理论上说是独立的,虽然不相关从数学角度上来说是退不出独立的,但是在实际情况下,在已经有不相关这个条件的情况下,把数据当作是独立的来处理通常都能获得很不错的效果。
对所有算法的综合比较可以发现主成分分析+支持向量机+组合分类器的召回率较高,贝叶斯网络在召回率不低的情况下的精确度较高。并且都已经超过现有的一些传统算法,结果如表2.1:
图2.2组合分类器投票次数与F值之间的关系
所以得出的结论是在训练样例充足的情况下,多次投票的支持向量机与单次没有显著差异。并且在投票结果有很多几乎全票投给阴性的测试数据答案是阳性,这已经不是支持向量机所能解决的问题了。所以再次提高准确率可能需要去的是新属性的获取,或者是属性质量的提高。F值随着组合分类器个数的变化如图2.2所示。
3 总结
本文开始介绍了蛋白质-蛋白质交互界面热点的一些相关背景,然后用了支持向量机对蛋白质-蛋白质相互作用界面上的热点进行了预测,并用主成分分析对这种机器学习算法进行了优化,而且用组合分类器对支持向量机进行了进一步的优化,其中用主成分分析和组合分类器优化的支持向量机得到的结果要比传统的算法更优。