蛋白质是生命活动的主要承担者,生命进化最终都会体现在蛋白质的功能的多样化上。蛋白质是由20种氨基酸编码的,相比于ATGC的DNA遗传编码信息,氨基酸字母表显示出极大地复杂性和多样性。这就产生了一系列非常有趣的问题:生命为什么会选择20种氨基酸作为标准字母表?更少的氨基酸能否组成或满足一个蛋白质执行功能的基本组成单元?我们能否用更少的氨基酸创造出摆脱当前遗传法则,设计更为独特的生命?
一、氨基酸约化
理论上,具有相似性质、原子排列或频率分布的天然氨基酸可以被合并,并用更小数量的约化字母表来表示编码的氨基酸,这个过程就叫氨基酸约化。 最简单的约化方案是以极性或者亲疏水性作为标准,将20种氨基酸只约化为两个字母,最终会得到约化氨基酸字母表。当然,这种极端的方法产生的蛋白质,一定长度的序列所能承载的信息实在太少,几乎不可能完成复杂的生命活动。那如果是3个,5个,10个呢?比如,我们使用氨基酸在不同蛋白质二级结构中的偏好性来约化20种氨基酸构成的蛋白质字母表。下图这个蛋白质,通过氨基酸约化分析,它的三维结构与二级结构有极高的匹配度。
另外,氨基酸字母表的大小直接决定motif序列的复杂性和多样性。Motif 序列是一类蛋白质共有的一段氨基酸序列,也就是说这个 Motif 序列是这类蛋白质所共享的。比如,常见的是转录因子的结合位点,蛋白质的结合位点等等。总的来说,氨基酸序列logo作为蛋白质序列保守度的可视化图形,对研究同源蛋白质的系统发育和功能差异,以及蛋白质定向分子设计具有非常重要的意义。
但是,传统的 Motif Logo 包括了20种氨基酸字母,显示出极大地复杂性和多样性。由于在 Logo 生成过程中缺少对氨基酸性质等生物学因素的考虑,往往会导致对蛋白质功能进化保守性的评估出现偏差,引入冗余信息掩盖关键氨基酸序列信息。利用氨基酸约化分析的不同方案去应用到 motif 的可视化中就可以很好的解决这个问题。基于约化氨基酸的信息学 Motif logo 具有更多的信息学和生物学意义,更好的反映了蛋白序列的功能保守性。
二、氨基酸约化 Motif
我们通过一个工具 RaacLogo 来完成约化 Motif 的构建,网址:
这里包含了40多种聚类算法和74种约化后的氨基酸字母,这些字母被提取生成673个约化的氨基酸簇(RAACs),用于简化复杂的logo字母。当20个氨基酸按照一定的相似性聚类到更小的字母表中,蛋白质的复杂性就会大大降低,减少了信息冗余,相应的一些功能保守区域将被更清晰地显示出来。
我们拿溶菌酶C(Lysozyme C,LYC)来获取约化氨基酸 Motif。这种酶具有溶菌作用,而且从鸡到人无处不在。首先收集从鸡到人的21个溶菌酶C比对序列,网站默认提供这个比对序列。然后,选择约化方案(极性/中性/疏水性,RKEDQN,GASTPHY,CLVIMFW),经过 RaacLogo 处理的 Motif 会非常整洁和简单,可以反映出高度的序列同源性。下面是详细步骤:
1.首先输入已经对比好的序列
2.选择一个氨基酸约化方案
3.点击 Submit 提交任务
4.我们选择其中一个方案
5.生成三种 Logo
原生氨基酸Motif,通过颜色和字母显示约化 Motif,通过颜色显示约化 Motif,可以通过右上角的导出相应的图片。
可以看到,尽管LYC的氨基酸编码在从鸡到人的进化过程中发生了很大的变化,但我们可以看到,LYC的整体氨基酸特性在约化后仍保持不变,并且LYC的同源功能得以维持。
三、基于氨基酸约化提取特征
另一个应用是基于目前如火如荼的机器学习,我们都知道,做机器学习最关键的步骤就是特征提取。通过约化氨基酸来做特征提取,不仅可以减少过拟合的机会,而且会极大地降低计算维度,去除冗余信息。从而利用这些特征来做蛋白质的分类与预测。
1.进入网站 RaacBook
选择 Analysis
2.输入整理好的数据集
比如,预测是否为分泌蛋白质,就需要整理好分泌蛋白的数据集与非分泌蛋白的数据集。以 Fasta 的格式导入输入框。
3.选择约化方案
4.到了这一步可以选择默认参数提交,得到结果
5.我们的特征在Download下
6.如果你熟悉机器学习,利用这个序列就可以来做蛋白质分类器
但是,如果不熟悉也没关系,RaacBook 也提供了自动化的流程,完成蛋白质分类器的训练。
四、基于氨基酸约化训练模型
1.进入网站 RaacBook
选择 Machine learning
2.提供两个数据集
这两个数据集,可以是任意两种蛋白质序列。比如,和之前一样去预测是否为分泌蛋白质,就需要整理好分泌蛋白的数据集与非分泌蛋白的两个数据集,然后以 Fasta 的格式上传。
3.选择参数
K-tuple:也叫K-mer,也就是说K个氨基酸作为一个整体做特征
Type:也就是分类方案
Method:机器学习方法,有KNN,SVM,RF,目前该工具正在更新更多的方法
4.提交拿结果
会拿到训练的ROC曲线,这个结果的好坏取决于之前选择的参数。
5.下载训练结果
6.拿到模型就可以去预测未知的序列
我们拿一个预测器来试试,比如防御素蛋白的预测器
输入一段序列,去预测蛋白质
可以看到,这几段序列会有不同的打分值,如果一个标签的占比高,就意味着这段序列极有可能是这个标签。比如,Psd1 这段序列就是植物中的一种防御素蛋白。
五、模型自动训练的扩展
机器学习中模型训练会消耗大量的硬件资源和时间,因此现在开发该工具的团队正在提供可以在本地运行的自动训练,以 Python 包的形式来使用与 RaacBook 类似的功能,敬请期待。先看看目前的进展图:
会提供更多的模型训练结果评估信息
筛选最优特征
ROC评估信息
高维特征缩减和可视化
总的来说,蛋白质氨基酸约化分析是对生命进化本质的探索,对于蛋白质合成、拓扑结构预测,功能预测分类以及药物设计等具有重要的意义。