1.本发明涉及蛋白质氨基酸技术领域,特别涉及一种实现快速筛选氨基酸序列的方法及装置。
背景技术:2.基于序列的分析和预测是生物信息学的基本任务,这些预测和分析大大促进了对dna、rna和蛋白质的序列结构和功能的理解。序列的快速积累要求同样普遍地开发新的预测模型,这取决于是否有支持这些努力的有效工具。在过去的几十年里,高通量测序技术有了长足的进步和广泛的应用,产生了前所未有数量庞大的dna、rna和蛋白质序列数据。随着这些数据的快速积累,有效地分析、挖掘和可视化生物序列已成为一项复杂的任务。在各种计算解决方案中,机器学习方法是一种流行的、高效的生物序列准确功能预测/分析的解决方案。许多基于序列的机器学习方法已经被提出,有助于更好地理解dna、rna和蛋白质的功能和结构,特别是在人类疾病方面。尽管用于序列分析和预测的机器学习框架多种多样,但总的来说,它们在收集序列数据后遵循同样的五个主要步骤:特征提取、特征分析、分类器构建、性能评估和数据/结果可视化。但是,目前没有针对大分子蛋白质特征的计算以及蛋白质氨基酸序列的计算效率比较低的问题。
技术实现要素:3.根据本发明实施例提供的方案解决的技术问题是如何实现快速筛选氨基酸序列。
4.根据本发明实施例提供的一种实现快速筛选氨基酸序列的方法,包括:
5.将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln;
6.通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列,并将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m;
7.利用所述目标氨基酸序列矩阵m,分别计算所述目标氨基酸序列l的组成、转移、分布ctd和序列顺序组合数socn;
8.利用所述目标氨基酸序列l的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列。
9.根据本发明实施例提供的一种实现快速筛选氨基酸序列的装置,包括:
10.获取模块,用于将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln;通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列,并将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m;
11.计算模块,用于利用所述目标氨基酸序列矩阵m,分别计算所述目标氨基酸序列的组成、转移、分布ctd和序列顺序组合数socn;
12.筛选模块,用于利用所述目标氨基酸序列的ctd和socn,从预置的氨基酸序列库中
筛选出与所述目标氨基酸序列l特征相似的氨基酸序列。
13.根据本发明实施例提供的方案,能够快速比对蛋白质氨基酸序列的差异,能够加速从海量蛋白质氨基酸序列中筛选出特征相似的氨基酸序列。
附图说明
14.此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于理解本发明,并不构成对本发明的不当限定。在附图中:
15.图1是本发明实施例提供的一种实现快速筛选氨基酸序列的方法流程图;
16.图2是本发明实施例提供的一种实现快速筛选氨基酸序列的装置示意图。
具体实施方式
17.以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
18.图1是本发明实施例提供的一种实现快速筛选氨基酸序列的方法流程图,如图1所示,包括:
19.步骤s101:将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln;
20.步骤s102:通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列,并将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m;
21.步骤s103:利用所述目标氨基酸序列矩阵m,分别计算所述目标氨基酸序列l的组成、转移、分布ctd和序列顺序组合数socn;
22.步骤s104:利用所述目标氨基酸序列l的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列。
23.其中,所述将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln包括:根据用户配置的切分数量n,将所述目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln。
24.其中,所述通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列包括:将所述每个目标子氨基酸序列ln中的每个氨基酸字母分别转换成一个数字,得到由数字构成的一维数字向量氨基酸序列;将所述一维数字向量氨基酸序列进行维度提成处理后,得到由数字构成的独热向量氨基酸序列。
25.其中,所述将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m包括:将所述n个独热向量氨基酸序列按照原始顺序进行拼接组合处理,得到目标氨基酸序列矩阵m。
26.其中,所述利用所述目标氨基酸序列矩阵m,计算所述目标氨基酸序列l的组成、转移、分布ctd包括:利用所述目标氨基酸序列矩阵m,计算组成矩阵c,其包括:r∈{极性,疏水性,中性};
27.其中,n(r)为氨基酸类型为r的数量,l为氨基酸序列总长度;
28.利用所述目标氨基酸序列矩阵m,计算转移矩阵t,其包括:
r,s∈{极性,中性),(中性,疏水性),(疏水性,极性)};
29.其中,n(r,s)和n(s,r)为由r转移到s的数量和由s转移到r的数量;
30.利用所述目标氨基酸序列矩阵m,计算分布矩阵d;
31.其中,所述利用所述目标氨基酸序列矩阵m,计算序列顺序组合数socn包括:
[0032][0033]
其中,d
i,i+d
为序列第i位置的氨基酸和i+d位置的氨基酸在距离矩阵上的距离。
[0034]
其中,所述利用所述目标氨基酸序列l的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列包括:通过对所述目标氨基酸序列l的ctd和socn进行拼接处理,得到所述目标氨基酸序列的全部特征f1;将所述目标氨基酸序列的全部特征f1和所述氨基酸序列库中的每个氨基酸序列的全部特征f2进行相似度计算,得到两个氨基酸序列的相似性;利用所述两个氨基酸序列的相似性,得到与所述目标氨基酸序列l特征相似的氨基酸序列。
[0035]
图2是本发明实施例提供的一种实现快速筛选氨基酸序列的装置示意图,如图2所示,包括:获取模块201,用于将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln;通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列,并将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m;计算模块202,用于利用所述目标氨基酸序列矩阵m,分别计算所述目标氨基酸序列的组成、转移、分布ctd和序列顺序组合数socn;筛选模块203,用于利用所述目标氨基酸序列的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列。
[0036]
其中,所述获取模块201具体用于根据用户配置的切分数量n,将所述目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln。
[0037]
其中,所述获取模块201还具体用于将所述每个目标子氨基酸序列ln中的每个氨基酸字母分别转换成一个数字,得到由数字构成的一维数字向量氨基酸序列;将所述一维数字向量氨基酸序列进行维度提成处理后,得到由数字构成的独热向量氨基酸序列。
[0038]
步骤1、大分子(蛋白质)数据文件fasta格式下载s101,蛋白质数据一般是字符串形式的,长度为l,由20种常见天然氨基酸以大写英文字符表示组合而成,比如“aaa”就是三个丙氨酸构成的一个序列,长度为3;
[0039]
步骤2、以往氨基酸序列解析都是采用迭代方式,一个字符一个字符进行处理,遇到较长的氨基酸序列时候,处理速度很慢。本发明利用分布式思想,对长序列氨基酸进行切分,长氨基酸序列字符串来自下载的fasta数据文件,直接读取文件即可,依据长氨基酸序列的长度l,判断具体切分的数量n,得到n份子序列ln,每一份子序列长度为ln=l/n,切分的子序列可以同时处理;
[0040]
步骤3、把20种氨基酸字符编码的每个子序列ln转换成为数字编码的序列en,每个氨基酸字母对应一个数字,从0-19,比如丙氨酸a对应数字0,精氨酸r对应数字1,依此类推,每个氨基酸字母都对应上一个数字,这样,子序列ln都变成了由0-19这些数字构成的序列
en,接着对数字序列en,提升其维度,其原大小为:ln
×
1,转换后维度为:ln
×
20,即将en中的每个数字转变成一个长度为20的向量,比如en序列中的第一个数字为3,变为一个长度为20的向量h1,h1向量的第4个位置的数值为1,其余位置数值均为0,en序列第二个数字为0,则转变成向量h2,h2向量第1个位置的数值为1,其余位置数值均为0,依此类推,最后得到hn序列,其大小为:ln
×
20;
[0041]
步骤4、将n份转变成独热向量的的序列hn汇总,即序列按照原始顺序拼接组合,得到完整的序列矩阵m,则该矩阵大小为l
×
20;
[0042]
步骤5、得到矩阵m之后,计算ctd,ctd代表了氨基酸序列的分布以及物化特征,13个物化特征包括:疏水性、规范范德华体积、极性、电性、二级结构以及溶质可达性(见表1)。每一个特征都有3个级别的划分组,将20种氨基酸划分到不同的组别里。这样,根据类别划分,一个氨基酸序列的每个氨基酸会对应一个特征的一个组,基于这种统计,可以计算氨基酸序列在13个特征中的占比:
[0043]
组成(composition)计算,由3个值组成:极性polar、中性neutral和疏水性hydrophobic的氨基酸占比,见如下公式,其中n(r)为氨基酸类型为r的数量,l为氨基酸序列总长度:
[0044][0045]
转移(transition)计算,比如从极性氨基酸转移到中性氨基酸,在序列上就是一个极性氨基酸后面跟着一个中性氨基酸这样的组合:{polar,neutral},其余的转移比如极性转移到疏水性、疏水性转移到中性同理;于是有如下计算公式,其中n(r,s)和n(s,r)可以理解为由r转移到s的数量和由s转移到r的数量,l为氨基酸序列总长度:
[0046]
r,s∈{(polar,neutral),(neutral,hydrophobic),(hydrophobic,polar)}
[0047]
分布(distribution)计算,3种氨基酸(极性、中性、疏水性),每种计算5个值,即从头开始统计氨基酸序列,每一种氨基酸第一次出现在序列的位置(start),以及分别占每种氨基酸总数的25%、50%、75%和100%时候出现在序列的位置(end),然后这些值都除以序列总长度l。得益于步骤4的向量化,上述计算全部只需要很少的几次矩阵运算即可完成;
[0048]
步骤5.1计算组成(compositoin)矩阵c(13
×
3),具体含义是,参照表1,13种特征,每个特征下,3种氨基酸极性分类标准占序列总长度的比例;根据步骤4得到的向量化序列矩阵m(l
×
20),先将其转换成矩阵m1,m1有3个维度,大小为13
×
l
×
3,根据表1,可以得到独热矩阵b,b有3个维度,大小为13
×3×
20,b矩阵获得的具体方法同步骤4;接着进行矩阵乘法:
[0049]m×
b[...,2,1]=m1
[0050]
在b[...,2,1]中,...含义为在与m乘法的时候,保留矩阵b的第一个维度(大小为13)不参与乘法,2,1代表其余2个维度转置(原始是3
×
20,转置后为20
×
3)参与m的乘法运算;得到矩阵m1之后,对m1的第二个维度(大小为l),进行求和,相当于消去第二个维度,只剩下第一和第三个维度,得到矩阵c,除以序列长度l即可得到最终结果;
[0051]
步骤5.2计算转移(transitiion)矩阵t(13
×
3),具体含义是,参照表1,13种特征,每个特征下,3种氨基酸极性分类接触关系对出现次数,占序列总长度的比例;根据步骤4得到的向量化序列矩阵为m(l
×
20),先将其转换成矩阵m1,参考步骤5.1;接着进行一次矩阵求和运算,即:
[0052]
m1[...,1:-1,:]+m1[...,2:,:]=ma
[0053]
ma矩阵大小为13
×
(l-1)
×
3,...含义为保留m1矩阵的第一个维度,1:-1代表m1的第二个维度l,从第一个位置开始,取到倒数第二个位置,2:代表m1的第二个维度l,从第二个位置开始,一直取到最后一个位置,:代表m1的第三个维度全部取出,这个矩阵求和其实为了统计了序列长度l上的不同种类极性的氨基酸的前后接触次数,接着统计ma的第3个维度上没有出现2的部分,出现2代表这前后接触的是同一种类的氨基酸极性,得到了矩阵mb,大小为:13
×
x
×
3,x代表不是这个值是不确定的,每个具体的序列都不一样,取值范围是1~l-1,最后mb矩阵按照第二个维度(x)求和,得到矩阵t(13
×
3),除以总长度l即可得到最终结果;
[0054]
步骤5.3计算分布(distribution)矩阵d,其大小为13
×3×
5,13代表13种氨基酸分类特征,参见表1,3代表极性、中性、疏水性,5代表极性、中性、疏水性氨基酸第一次出现的1个位置p1和占每个类别的氨基酸总数的25%、50%、75%和100%时候出现在序列的4个位置;首先求出矩阵m1,参考步骤5.1,大小为13
×
l
×
3,接着m1按照第二个维度(l)进行累积求和,累积求和即这一次求和结果是在之前的求和结果之上,不断累加,保留每次累积求和的结果,并不消去第二个维度,可以得到矩阵m2(13
×
(l-1)
×
3),接着m1按照第二个维度求和,得到m3,m3分别乘以0.00001、0.25、0.5、0.75、1.0,得到5个矩阵m_t1、m_t2、m_t3、m_t4,m_t5,大小均为13
×
3,接着m2分别与m_t1、m_t2、m_t3、m_t4、m_t5进行矩阵减法,可以得到m_mask1、m_mask2、m_mask3、m_mask4,m_mask5,大小均为13
×
(l-1)
×
3,筛选m_maskn第三个维度上大于等于0的部分,然后取出对应第二个维度的最小值,则可以得到5个矩阵,m_min1、m_min2、m_min3、m_min4、m_min5,大小均为13
×
3,将他们拼接到一起,再除以序列长度l,即可得到最终结果d(13
×3×
5)。
[0055]
步骤6、计算socn,第d阶序列顺序组合数计算公式为:
[0056][0057]
其中d
i,i+d
为:序列第i位置的氨基酸和i+d位置的氨基酸在距离矩阵dist上的距离,dist大小为:20
×
20,即每个氨基酸和其余氨基酸的特征距离,n-lag为最大距离间隔上限,指的是在长度l的序列上,两个氨基酸位置的间隔,默认为30;其中距离矩阵dist根据经验计算得到,无需自己计算,已有现成矩阵(参考schneider and wrede,1994)。在进行取i和i+d位置时,可以直接构造出独热向量lag,即lag向量大小为l,位置i和位置i+d处为1,其余地方为0,基于步骤4得到独热矩阵m,则取值操作为:
[0058]m×
lag=s
[0059]
矩阵s,大小为l
×
20,相当于是lag为1的地方,m的值保留,lag为0的地方,m的值为0,原有值被覆盖;去除s第二个维度全部为0的部分,得到s_new,大小为x
×
20,x代表不是确定值,范围为1~l,接着进行矩阵求和:
[0060]
s_new[1:-1,:]+s_new[2:,:]=s_con
[0061]
s_con大小为(x-1)
×
20,这个操作是统计序列前后氨基酸的接触关系,接着将s_con第二个维度值不为0的全部筛选出来,如果序列上的前后氨基酸不同,则会有2个不为0的位置,即对应矩阵dist的坐标,如果前后氨基酸一样,则会有1个不为0的位置,对应矩阵dist对角线位置的坐标,这一步得到的矩阵为s_mask,大小为l
×
2,根据s_mask的坐标取出对应dist的值,得到s_d矩阵,大小为l,l平方求和得到最终的结果sd,d的取值可以是间隔1,也可以是间隔最大的n-lag,比如30。
[0062]
步骤7、将步骤5和步骤6计算得到的ctd特征和socn特征进行拼接组合,ctd展开后特征数量为:13
×
3+13
×
3+13
×3×
5=273,socn特征展开后数量为:30,这样得到一个氨基酸序列的全部特征f,其特征数量为273+30=303,将两个氨基酸序列的特征f1和f2进行相似度计算,一般选取cosine距离计算:
[0063][0064]
即可得到两个氨基酸序列的相似性,方便快速从蛋白质库中筛选出跟当前搜索的蛋白质相似的氨基酸序列。
[0065]
尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。
技术特征:1.一种实现快速筛选氨基酸序列的方法,其特征在于,包括:将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln;通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列,并将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m;利用所述目标氨基酸序列矩阵m,分别计算所述目标氨基酸序列l的组成、转移、分布ctd和序列顺序组合数socn;利用所述目标氨基酸序列l的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列。2.根据权利要求1所述的方法,其特征在于,所述将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln包括:根据用户配置的切分数量n,将所述目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln。3.根据权利要求1所述的方法,其特征在于,所述通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列包括:将所述每个目标子氨基酸序列ln中的每个氨基酸字母分别转换成一个数字,得到由数字构成的一维数字向量氨基酸序列;将所述一维数字向量氨基酸序列进行维度提成处理后,得到由数字构成的独热向量氨基酸序列。4.根据权利要求1所述的方法,其特征在于,所述将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m包括:将所述n个独热向量氨基酸序列按照原始顺序进行拼接组合处理,得到目标氨基酸序列矩阵m。5.根据权利要求1所述的方法,其特征在于,所述利用所述目标氨基酸序列矩阵m,计算所述目标氨基酸序列l的组成、转移、分布ctd包括:利用所述目标氨基酸序列矩阵m,计算组成矩阵c,其包括:利用所述目标氨基酸序列矩阵m,计算组成矩阵c,其包括:r∈{极性,疏水性,中性};其中,n(r)为氨基酸类型为r的数量,l为氨基酸序列总长度;利用所述目标氨基酸序列矩阵m,计算转移矩阵t,其包括:利用所述目标氨基酸序列矩阵m,计算转移矩阵t,其包括:r,s∈{极性,中性),(中性,疏水性),(疏水性,极性)};其中,n(r,s)和n(s,r)为由r转移到s的数量和由s转移到r的数量;利用所述目标氨基酸序列矩阵m,计算分布矩阵d。6.根据权利要求1所述的方法,其特征在于,所述利用所述目标氨基酸序列矩阵m,计算序列顺序组合数socn包括:
其中,d
i,i+d
为序列第i位置的氨基酸和i+d位置的氨基酸在距离矩阵上的距离。7.根据权利要求1所述的方法,其特征在于,所述利用所述目标氨基酸序列l的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列包括:通过对所述目标氨基酸序列l的ctd和socn进行拼接处理,得到所述目标氨基酸序列的全部特征f1;将所述目标氨基酸序列的全部特征f1和所述氨基酸序列库中的每个氨基酸序列的全部特征f2进行相似度计算,得到两个氨基酸序列的相似性;利用所述两个氨基酸序列的相似性,得到与所述目标氨基酸序列l特征相似的氨基酸序列。8.一种实现快速筛选氨基酸序列的装置,其特征在于,包括:获取模块,用于将目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln;通过对所述n个目标子氨基酸序列ln分别进行数字转换处理,得到由数字构成的n个独热向量氨基酸序列,并将所述n个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵m;计算模块,用于利用所述目标氨基酸序列矩阵m,分别计算所述目标氨基酸序列的组成、转移、分布ctd和序列顺序组合数socn;筛选模块,用于利用所述目标氨基酸序列的ctd和socn,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列l特征相似的氨基酸序列。9.根据权利要求8所述的装置,其特征在于,所述获取模块具体用于根据用户配置的切分数量n,将所述目标氨基酸序列l进行划分处理,得到n个目标子氨基酸序列ln。10.根据权利要求8所述的装置,其特征在于,所述获取模块还具体用于将所述每个目标子氨基酸序列ln中的每个氨基酸字母分别转换成一个数字,得到由数字构成的一维数字向量氨基酸序列;将所述一维数字向量氨基酸序列进行维度提成处理后,得到由数字构成的独热向量氨基酸序列。
技术总结本发明公开了一种实现快速筛选氨基酸序列的方法及装置,其方法包括:将目标氨基酸序列L进行划分处理,得到N个目标子氨基酸序列LN;通过对所述N个目标子氨基酸序列LN分别进行数字转换处理,得到由数字构成的N个独热向量氨基酸序列,并将所述N个独热向量氨基酸序列进行汇总处理,得到目标氨基酸序列矩阵M;利用所述目标氨基酸序列矩阵M,分别计算所述目标氨基酸序列L的组成、转移、分布CTD和序列顺序组合数SOCN;利用所述目标氨基酸序列L的CTD和SOCN,从预置的氨基酸序列库中筛选出与所述目标氨基酸序列L特征相似的氨基酸序列。目标氨基酸序列L特征相似的氨基酸序列。目标氨基酸序列L特征相似的氨基酸序列。
技术研发人员:李翛然 陈宇综 易爽 马东强
受保护的技术使用者:医图生科(苏州)生命科学技术有限公司
技术研发日:2022.03.21
技术公布日:2022/7/5