预测蛋白质序列的远同源性关系的神经网络结构及方法与流程

文档序号:12887715阅读:389来源:国知局
预测蛋白质序列的远同源性关系的神经网络结构及方法与流程

本发明涉及蛋白质远同源性检测技术领域,尤其涉及一种预测蛋白质序列的远同源性关系的神经网络结构及方法。



背景技术:

蛋白质远同源性检测是生物信息学领域中的一个热点问题。蛋白质的远同源性指的是蛋白质之间序列相似度较低,但结构和功能相似度较高。通过蛋白质远同源性检测,能够提高蛋白质结构预测的准确度。

在这个问题上,最早是序列匹配的方法;然后是基于判别式方法,基于传统机器学习的方法致力于人工提取特征的方式和核方法的改进。

其中,基于序列匹配的方法是最早也最广泛应用的方法。但在序列相似度较低的情况下,该方法不能解决蛋白质远同源性检测问题。

而在判别式方法中,使用传统机器学习模型的方法的性能,很大程度上依赖于其人工构建特征的质量。由于对蛋白质知识的局限,人工构建的特征往往忽略了一些信息,大多提取的蛋白质信息量不够,影响预测性能。例如,目前已知的特征构建方法中,只引入了蛋白质子序列间相对位置关系,而忽略了其在整条序列上的绝对位置。而且,虽然一些基于比对的核方法取得了优良的效果,但是它存在耗时较长的问题。

另外,其他基于深度学习的方法是由一个lstm(long-shorttermmemory,一种递归神经网络)层和一个输出层组成。它只利用了lstm在最后一个时间步上产生的输出作为蛋白质的表示向量,输送到输出层分类。而蛋白质序列较长,只用最后一个输出无法很好的捕捉子序列间的长依赖关系。并且,这个蛋白质表示向量中蕴含的依赖关系信息无法寻找到对应的蛋白质子序列,从而难以分析。此外,它基于蛋白质序列谱来预测蛋白质远同源性,导致计算复杂度大大增加。



技术实现要素:

本发明的主要目的在于提供一种预测蛋白质序列的远同源性关系的神经网络结构及方法,无需人工构建特征和生成序列谱,节省时间,并提高预测的准确性。

为了达到上述目的,本发明提出一种预测蛋白质序列的远同源性关系的神经网络结构,包括:依次连接的输入层、lstm层、随时间分布的全连接层和输出层,其中:

所述输入层,用于获取输入的原始的蛋白质序列,将原始的蛋白质序列转换为神经网络能够处理的输入矩阵;

所述lstm层,用于捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征,所述当前输入子序列的特征包含其上下文依赖关系;

所述随时间分布的全连接层,用于对所述lstm层中的不同memorycell的输出以不同的权重,汇总依赖关系信息;

所述输出层,用于根据所述随时间分布的全连接层在每个时间步上的输出连接而成的向量,预测蛋白质序列的远同源性关系。

其中,所述lstm层包括单向lstm层和双向lstm层。

其中,所述单向lstm层用于将蛋白质序列从左到右进行处理,在某个时间步上的输出,包含了当前输入子序列和在其左边的子序列间的依赖关系。

其中,所述双向lstm层由一个前向lstm层和一个后向lstm层组成,分别从蛋白质序列的前端和后端开始处理,其中,对于同一个输入蛋白质子序列,前向lstm层的输出和后向lstm层的输出被连接成一个向量,前向lstm层用于捕捉该输入蛋白质子序列与在它左边的子序列之间的依赖关系,后向lstm层用于捕捉该输入蛋白质子序列与在它右边的子序列之间的依赖关系。

其中,所述输出层预测蛋白质序列的远同源性关系包括:产生一个预测输入蛋白质属于某个超家族的概率。

本发明还提出一种预测蛋白质序列的远同源性关系的方法,包括以下步骤:

通过输入层获取输入的原始的蛋白质序列,将原始的蛋白质序列转换为神经网络能够处理的输入矩阵;

通过lstm层捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出可以看作当前输入子序列的特征,所述当前输入子序列的特征包含其上下文依赖关系;

通过随时间分布的全连接层对所述lstm层中的不同memorycell的输出以不同的权重,汇总依赖关系信息;

通过输出层根据所述随时间分布的全连接层在每个时间步上的输出连接而成的向量,预测蛋白质序列的远同源性关系。

其中,所述lstm层为单向lstm层;所述通过lstm层捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征的步骤包括:将蛋白质序列从左到右进行处理,在某个时间步上的输出,包含了当前输入子序列和在其左边的子序列间的依赖关系。

其中,所述lstm层为双向lstm层,所述双向lstm层由一个前向lstm层和一个后向lstm层组成;所述通过lstm层捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征的步骤包括:

前向lstm层和后向lstm层分别从蛋白质序列的前端和后端开始处理,其中,对于同一个输入蛋白质子序列,前向lstm层的输出和后向lstm层的输出被连接成一个向量,通过前向lstm层捕捉该输入蛋白质子序列与在它左边的子序列之间的依赖关系,通过后向lstm层捕捉该输入蛋白质子序列与在它右边的子序列之间的依赖关系。

本发明设计了一种预测蛋白质序列的远同源性关系的神经网络结构及方法,基于深度学习技术,提出一个四层神经网络结构来预测蛋白质序列的远同源性关系,该发明能自动从原始蛋白质序列中发掘其特征,并侦测蛋白质子序列间的依赖关系,汇总依赖信息,从而分类。因此,它无需人工构建特征和生成序列谱,节省了大量时间,并提高了预测的准确性。

与传统用lstm做单分类的方式不同,本发明利用了lstm在每个时间步上的输出作为当前输入蛋白质子序列的特征,包含了其上下文依赖关系,然后,使用一个随时间分布的全连接网络,来给lstm中同一个memoryblock中不同memorycell的输出以不同的权重,从而达到汇总子序列间依赖关系的目的。在lstm层,本发明采用了两种结构,一种使用单向lstm,一种使用双向lstm,使用双向lstm更适合该网络结构,由此取得了更好的性能,适用于对预测精度要求较高的场景。

附图说明

图1和图2分别是本发明预测蛋白质序列的远同源性关系的两种神经网络结构示意图。

图3是本发明预测蛋白质序列的远同源性关系的方法的流程示意图。

为了使本发明的技术方案更加清楚、明了,下面将结合附图作进一步详述。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1和图2,图1和图2是本发明预测蛋白质序列的远同源性关系的两种神经网络结构示意图。图1是使用单向lstm作为lstm层的网络结构图,图2是使用双向lstm作为lstm层的网络结构图。

如图1和图2所示,本发明提出一种预测蛋白质序列的远同源性关系的神经网络结构,为一个四层神经网络,该神经网络结构包括:依次连接的输入层、lstm层、随时间分布的全连接层和输出层,其中:

所述输入层,用于获取输入的原始的蛋白质序列,将原始的蛋白质序列转换为神经网络能够处理的输入矩阵;

所述lstm层,用于捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征,所述当前输入子序列的特征包含其上下文依赖关系;

所述随时间分布的全连接层,用于对所述lstm层中的不同memorycell的输出以不同的权重,汇总依赖关系信息;

所述输出层,用于根据所述随时间分布的全连接层在每个时间步上的输出连接而成的向量,预测蛋白质序列的远同源性关系。

其中,在lstm层,可以使用单向lstm层和双向lstm层两种,其网络结构分别由图1和图2所示。图1是使用单向lstm作为lstm层的网络结构图,图2是使用双向lstm作为lstm层的网络结构图。

本发明基于深度学习技术,提出一个四层神经网络结构来预测蛋白质序列的远同源性关系。该发明能自动从原始蛋白质序列中发掘其特征,并侦测蛋白质子序列间的依赖关系,汇总依赖信息,从而分类。因此,它无需人工构建特征和生成序列谱,节省了大量时间,并提高了预测的准确性。

以下详细阐述本发明四层神经网络结构的原理:

具体地,其中,输入层的作用为将原始的蛋白质序列转换为神经网络能够处理的输入矩阵。

lstm是一种循环神经网络,它由memoryblock随时间展开而成。lstm的结构中每个时刻的隐层包含了多个memoryblocks(一般采用一个block),每个block包含了多个memorycell(即对历史信息进行记录),每个memorycell包含一个cell和三个gate。

lstm能够按照一个顺序处理蛋白质序列,蛋白质序列长度一般在几百以上,由此包含其子序列的绝对位置信息。lstm中的关键部件memorycell通过输入门、遗忘门、输出门的互相作用能够达到根据当前输入子序列和之前的子序列之间的关系,来达到吸收信息,更新状态,和输出信息的功能。因此,lstm层的功能为捕捉蛋白质子序列间的依赖关系。

本发明通过将lstm在每个时间步上的输出与随时间分布的全连接网络相连,来更好的捕捉蛋白质子序列间的依赖关系。并且,lstm在每个时间步上的输出可以看作为当前输入子序列的特征,包含了其上下文依赖关系。

图1是用单向lstm作为lstm层的网络结构图。单向lstm将蛋白质序列从左到右进行处理。在某个时间步上的输出,包含了当前输入子序列和在其左边的子序列间的依赖关系。虽然它能更好的捕捉蛋白质间的依赖关系,但对于某个时间步上的子序列来说,它的输出只能包含它和它左边的子序列间的依赖关系,忽略了“未来”信息。

图2是用双向lstm作为lstm层的网络结构图。总的来说,双向lstm由一个前向lstm和一个后向lstm组成,它们分别从蛋白质序列的前段和后端开始处理。对于同一个输入蛋白质子序列,前向lstm的输出和后向lstm的输出将会被连接成一个向量。所以,对于一个子序列来说,前向lstm能够捕捉它与在它左边的子序列之间的依赖关系,后向lstm能够捕捉它与在它右边的子序列之间的依赖关系。因此,由这两个输出连接起来的向量能更好捕捉当前子序列的上下文依赖关系,从而能够更好的表示当前子序列。

然后,在lstm层后加入一个随时间分布的全连接网络层。随时间分布指的是该全连接网络与lstm层的memoryblock同时随时间展开。在同一个memoryblock中的memorycell能够抽取不同程度的子序列间的依赖关系。所以,加入一个随时间分布的全连接网络层来给不同memorycell的输出以不同的权重,从而更好的汇总依赖关系信息。

输出层实际上是一个一层的全连接网络,它的激活函数是sigmoid,输入为随时间分布的全连接网络在每个时间步上的输出连接而成的向量。最终,在输出层产生一个预测输入蛋白质属于某个超家族的概率。

相比现有技术,本发明提出了一个四层神经网络结构用于蛋白质远同源性检测方案,它由输入层、lstm层、随时间分布的全连接层和输出层组成。与传统用lstm做单分类的方式不同,本发明利用了lstm在每个时间步上的输出作为当前输入蛋白质子序列的特征,包含了其上下文依赖关系。然后,使用一个随时间分布的全连接网络,来给lstm中同一个memoryblock中不同memorycell的输出以不同的权重,从而达到汇总子序列间依赖关系的目的。

在lstm层,本发明采用了两种结构,一种使用单向lstm,一种使用双向lstm。使用双向lstm更适合该网络结构,由此取得了更好的性能,适用于对预测精度要求较高的场景。但是由于单向lstm训练模型所需时间更少,所以它适用于对效率要求较高,对精度要求较低的情况。

此外,本发明还提出一种预测蛋白质序列的远同源性关系的方法,包括以下步骤:

s1,通过输入层获取输入的原始的蛋白质序列,将原始的蛋白质序列转换为神经网络能够处理的输入矩阵;

s2,通过lstm层捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征,所述当前输入子序列的特征包含其上下文依赖关系;

s3,通过随时间分布的全连接层对所述lstm层中的不同memorycell的输出以不同的权重,汇总依赖关系信息;

s4,通过输出层根据所述随时间分布的全连接层在每个时间步上的输出连接而成的向量,预测蛋白质序列的远同源性关系。

其中,所述lstm层为单向lstm层时,所述通过lstm层捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征的步骤包括:将蛋白质序列从左到右进行处理,在某个时间步上的输出,包含了当前输入子序列和在其左边的子序列间的依赖关系。

所述lstm层为双向lstm层时,所述双向lstm层由一个前向lstm层和一个后向lstm层组成;所述通过lstm层捕捉蛋白质序列中子序列间的依赖关系,在每个时间步上输出当前输入子序列的特征的步骤包括:

前向lstm层和后向lstm层分别从蛋白质序列的前端和后端开始处理,其中,对于同一个输入蛋白质子序列,前向lstm层的输出和后向lstm层的输出被连接成一个向量,通过前向lstm层捕捉该输入蛋白质子序列与在它左边的子序列之间的依赖关系,通过后向lstm层捕捉该输入蛋白质子序列与在它右边的子序列之间的依赖关系。

其中,输入层的作用为将原始的蛋白质序列转换为神经网络能够处理的输入矩阵。

lstm是一种循环神经网络,它由memoryblock随时间展开而成。lstm的结构中每个时刻的隐层包含了多个memoryblocks(一般采用一个block),每个block包含了多个memorycell(即对历史信息进行记录),每个memorycell包含一个cell和三个gate。

lstm能够按照一个顺序处理蛋白质序列,蛋白质序列长度一般在几百以上,由此包含其子序列的绝对位置信息。lstm中的关键部件memorycell通过输入门、遗忘门、输出门的互相作用能够达到根据当前输入子序列和之前的子序列之间的关系,来达到吸收信息,更新状态,和输出信息的功能。因此,lstm层的功能为捕捉蛋白质子序列间的依赖关系。

本发明通过将lstm在每个时间步上的输出与随时间分布的全连接网络相连,来更好的捕捉蛋白质子序列间的依赖关系。并且,lstm在每个时间步上的输出可以看作为当前输入子序列的特征,包含了其上下文依赖关系。

在lstm层后加入一个随时间分布的全连接网络层。随时间分布指的是该全连接网络与lstm层的memoryblock同时随时间展开。在同一个memoryblock中的memorycell能够抽取不同程度的子序列间的依赖关系。所以,加入一个随时间分布的全连接网络层来给不同memorycell的输出以不同的权重,从而更好的汇总依赖关系信息。

输出层实际上是一个一层的全连接网络,它的激活函数是sigmoid,输入为随时间分布的全连接网络在每个时间步上的输出连接而成的向量。最终,在输出层产生一个预测输入蛋白质属于某个超家族的概率。

相比现有技术,本发明设计了一种预测蛋白质序列的远同源性关系的神经网络结构及方法,基于深度学习技术,提出一个四层神经网络结构来预测蛋白质序列的远同源性关系,该发明能自动从原始蛋白质序列中发掘其特征,并侦测蛋白质子序列间的依赖关系,汇总依赖信息,从而分类。因此,它无需人工构建特征和生成序列谱,节省了大量时间,并提高了预测的准确性。

以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1