1.本发明属于量子计算机技术领域,尤其涉及一种基于较少参数的量子门控循环神经网络的抗菌肽的预测方法。
背景技术:2.抗菌肽是一种具有抗菌活性的多肽,一般由不到50个氨基酸组成,广泛存在于所有的生命形式中。由于其具有高效的抗菌活性,近年来备受医学界的关于,其有望成为化学抗生素的替代品。由于多肽序列复杂多变,人们无法从序列结构简单地预测其是否是抗菌肽。计算机技术不断发展,人们逐渐尝试使用计算机去预测未知的抗菌肽。传统的预测方法一般使用人工智能模型,将多肽数据编码到计算机上,通过循环神经网络,预测其性质。这些人工智能模型使用经典计算机。而经典计算机处理信息的能力有限。多肽数据库数据庞大,经典计算机使用经典比特储存数据,效率不高,其处理氨基酸序列的能力也有限,很难找到序列中存在内禀关系。
技术实现要素:3.量子计算机储存信息的能力强大,并且量子计算机的计算单元量子比特本身具有纠缠性质,可以高效地处理这类信息。
4.针对上述现有技术中存在的缺陷,本发明提供一种基于较少参数的量子门控循环神经网络的抗菌肽的预测方法,包括以下步骤:步骤s101、获取表征待预测的多肽序列氨基酸的属性的多维数据;步骤s103、将所述多维数据逐元素的取反正切,获得所述多维数据的量子门的旋转角;步骤s105、基于所述量子门的旋转角,将所述多肽序列氨基酸的属性的多维数据加载到所述第一量子门控循环神经网络模型;步骤s107、输出针对所述多肽序列氨基酸的预测结果。
5.其中,所述第一量子门控循环神经网络模型采用较少参数的多个门控循环单元。
6.其中,所述较少参数的门控循环单元包括复位门和更新门。
7.其中,步骤s103中所述多维数据的量子门的旋转角表示如下:, 表示氨基酸的某一固有属性。
8.其中,所述复位门,其用于控制上一个时间戳的状态对新输入的贡献,其量子实现如下:,其中s表示sigmoid激活函数,为参数化的量子线路,表示当前时间戳输入的隐藏状态向量和输入的结合。
9.其中,所述新输入的量子实现如下:,其中,为参数化量子线路,t为激活函数tanh。
10.其中,所述更新门,其用于控制上一个时间戳的隐藏状态向量以及新输入对下一个时间戳的隐藏状态向量的影响程度,其量子实现为:,其中s表示sigmoid激活函数,为参数化的量子线路,表示当前时间戳输入的隐藏状态向量和输入的结合。
11.其中,当前时间戳输出的隐藏状态向量其中,当前时间戳输出的隐藏状态向量,其中为当前时间戳输入的隐藏状态向量,为新输入。
12.其中,所述步骤s107包括:由当前时间戳输出的隐藏状态向量经过参数化的量子线路之后可以得到当前时间戳的输出实现如下:。
13.其中,每次将数据输入到当前门控循环单元之前,需要判断演化到当前时间戳的门控循环单元的长度是否达到了进行处理的多肽序列长度,如果达到了多肽序列长度则停止,将最后一个时间戳的输出作为最终多肽序列是否为抗菌肽的预测结果。
14.与现有技术相比,本发明基于角度编码方式将输入和隐藏状态向量输入到设计的单个参数化量子线路(pqc)中,使得我们新设计的量子门控循环神经网络的门控循环单元用于输出隐藏状态向量的参数化量子线路相比于之前提出的门控循环单元所需要的参数量减少了一半,且可结合不同的角度编码方式,在不增加量子比特数目的情况下可以根据需要改变隐藏向量的维度,以满足不同序列记忆的要求,此外我们在将隐藏状态向量输出之前采用了参数化量子线路qc进行处理,使最终的输出更加灵活多变,且可以满足不同的输出要求。
15.其次本门控循环单元可根据真实量子计算机可提供的保真度较好的量子比特数,结合不同的角度编码方式减少或增加门控循环单元中参数化量子线路的比特数,使得本算法能更灵活的适应目前的含噪声中尺度(nisq)量子计算机。从模型本身的角度来说通过利用量子计算的非定域特性,使得我们的模型相比于经典的循环神经网络,攫取特征的能力以及收敛速度更强、更快。且就我们所知目前关于量子循环神经网络在多肽抗菌肽分类领域尚为空白。
16.通过本发明提出的一种高效的量子计算机神经网络模型,可以高效的分类抗菌肽与非抗菌肽,并预测未知的多肽是否为抗菌肽。该模型可以大大加速抗菌肽药物的研发。
附图说明
17.通过参考附图阅读下文的详细描述,本技术示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本技术的若
干实施方式,并且相同或对应的标号表示相同或对应的部分,其中:图1是示出根据本发明实施例的一种基于较少参数的量子门控循环神经网络的抗菌肽的预测方法流程图;图2是示出根据本发明实施例的角度编码方式通过和旋转量子门作用在量子比特上将特征向量加载到量子态的振幅的示意图;图3是示出根据本发明实施例的较少参数的量子门控循环神经网络原理框架图;图4是示出根据本发明实施例的门控循环单元的原理框架示意图;图5是示出根据本发明实施例的参数化量子线路的原理示意图。
具体实施方式
18.为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
19.在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种。
20.应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述
……
,但这些
……
不应限于这些术语。这些术语仅用来将
……
区分开。例如,在不脱离本发明实施例范围的情况下,第一
……
也可以被称为第二
……
,类似地,第二
……
也可以被称为第一
……
。
21.应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
22.取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
23.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的商品或者装置中还存在另外的相同要素。
24.文中缩略语解释pdb(protein data bank)蛋白质数据库nisq(noisy intermediate-scale quantum) 含噪声中尺度量子计算机下面结合附图详细说明本发明的可选实施例。
25.实施例一、如图1所示,本发明提出的一种基于较少参数的量子门控循环神经网络的抗菌肽
的预测方法,包括以下步骤:步骤s101、获取表征待预测的多肽序列氨基酸的属性的多维数据;步骤s103、将所述多维数据逐元素的取反正切,获得所述多维数据的量子门的旋转角;步骤s105、基于所述量子门的旋转角,将所述多肽序列氨基酸的属性的多维数据加载到所述第一量子门控循环神经网络模型;步骤s107、输出针对所述多肽序列氨基酸的预测结果。
26.其中,所述第一量子门控循环神经网络模型采用较少参数的多个门控循环单元。
27.其中,所述较少参数的门控循环单元包括复位门和更新门。
28.其中,步骤s103中所述多维数据的量子门的旋转角表示如下:,表示氨基酸的某一固有属性。
29.其中,所述复位门,其用于控制上一个时间戳的状态对新输入的贡献,其量子实现如下:,其中s表示sigmoid激活函数,为参数化的量子线路,表示当前时间戳输入的隐藏状态向量和输入的结合。
30.其中,所述新输入的量子实现如下:,其中,为参数化量子线路,t为激活函数tanh。
31.其中,所述更新门,其用于控制上一个时间戳的隐藏状态向量以及新输入对下一个时间戳的隐藏状态向量的影响程度,其量子实现为:,其中s表示sigmoid激活函数,为参数化的量子线路,表示当前时间戳输入的隐藏状态向量和输入的结合。
32.其中,当前时间戳输出的隐藏状态向量其中,当前时间戳输出的隐藏状态向量,其中为当前时间戳输入的隐藏状态向量,为新输入。
33.其中,所述步骤s107包括:由当前时间戳输出的隐藏状态向量经过参数化的量子线路之后可以得到当前时间戳的输出实现如下:。
34.其中,每次将数据输入到当前门控循环单元之前,需要判断演化到当前时间戳的门控循环单元的长度是否达到了进行处理的多肽序列长度,如果达到了多肽序列长度则停止,将最后一个时间戳的输出作为最终多肽序列是否为抗菌肽的预测结果。
35.其中,将每个批次b中的多肽氨基酸属性序列数据输入第一量子门控循环神经网络模型中,每个多肽氨基酸属性序列均能获得一个预测值,然后通过求每个批次所有多
肽氨基酸属性序列预测值的均方误差获得用于表征模型性能的均方差损失函数,所述均方误差损失函数的表达式如下式所示:,其中表示当前多肽氨基酸属性序列是否为抗菌肽的真实标签,k为批次b所包含的蛋白质氨基酸序列个数。
36.其中,基于参数移动法则,求所述均方差损失函数关于量子线路参数的分析梯度,然后利用经典计算机更新量子线路参数,最后将多肽氨基酸属性序列训练数据集,训练多个epoch,使得预测所述多肽氨基酸序列是否为抗菌肽达到期望的准确度后停止。
37.实施二、本发明还提出了一种基于较少参数的量子门控循环神经网络的抗菌肽的预测系统,其包括:抗菌肽数据库,其用于存储抗菌肽数据集;预处理模块,其用于对多肽序列氨基酸属性数据的预处理;隐藏状态向量和表征多肽属性数据加载模块,其用于将当前时间戳输入的隐藏状态向量和上一个模块的表征多肽序列氨基酸属性数据结合为特征向量,然后利用角度编码方式通过和旋转量子门作用在量子比特上将特征向量加载到量子态的振幅上;循环处理模块,其用于将多肽序列氨基酸属性数据 按序输入到所述较少参数的量子门控循环神经网络模型中,进行量子态信息的处理以实现序列特征的提取,每次将数据输入到当前门控循环单元之前,需要判断演化到当前时间戳的门控循环单元的长度是否达到了进行处理的多肽序列长度,如果达到了多肽序列长度则停止,将最后一个时间戳的输出作为最终多肽序列是否为抗菌肽的预测结果;构建损失函数模块,其用于获取表征所述模型性能的损失函数;更新量子线路参数模块,其用于对所述较少参数的量子门控循环神经网络模型的参数进行更新,以提高所述模型的预测准确性。
38.以下为具体处理过程:首先准备抗菌肽的训练数据集。使用公开数据集收集抗菌肽数据,例如apd3数据库、dramp数据库、baamps数据库。从数据库中,我们可以得到5000个左右的抗菌肽的氨基酸序列信息。从pdb蛋白数据库中,随机选取与之前选取的抗菌肽数量相当的多肽氨基酸序列,这些多肽作为负例,我们认为其没有抗菌肽的活性。
39.得到氨基酸序列数据集之后,使用cd-hit降低序列的冗余性。将正例和负例组合到一起,选取其中的80%作为训练数据,20%作为测试数据。
40.多肽序列氨基酸属性数据的预处理模块用于:将表征多肽序列氨基酸属性的多维数据逐元素的取反正切获得量子门的旋转角如式所示,注意此处表示氨基酸的一种固有属性,i表示某一属性的序号。
41.具体的此处以丙氨酸为例,其相应的特征属性数据为,对其逐元素的取反正切我们得到特征属性相应的旋转
角度,而此处量子门控循环神经网络的初始隐藏状态向量我们设置为全零。
42.隐藏状态向量和表征多肽序列氨基酸属性数据加载模块用于:采用旋转量子门作用在量子比特上将多肽序列氨基酸属性数据加载到量子态的振幅上。使用测试数据集验证模型的好坏。此处所使用的较少参数的门控循环单元主要由复位门和更新门组成具体如下:首先是复位门,它用于控制上一个时间戳的状态对新输入的贡献。
43.复位门的量子实现如下:,其中s表示sigmoid激活函数,为参数化的量子线路,表示当前时间戳输入的隐藏状态向量和输入的结合。
44.在复位门的基础上我们可以进一步得到新输入的量子实现,其中为参数化量子线路,t为激活函数tanh。
45.接着是更新门,它用于控制上一个时间戳的隐藏状态向量以及新输入对下一个时间戳的隐藏状态向量的影响程度。
46.更新门的量子实现为,其中s表示sigmoid激活函数,为参数化的量子线路,表示当前时间戳输入的隐藏状态向量和输入的结合。
47.基于更新门我们便可得到当前时间戳输出的隐藏状态向量基于更新门我们便可得到当前时间戳输出的隐藏状态向量,其中为当前时间戳输入的隐藏状态向量,为新输入。
48.由当前时间戳输出的隐藏状态向量经过参数化的量子线路之后可以得到当前时间戳的输出实现如下:,循环处理模块用于:在开始的时候将隐藏状态向量初始化,输入第一个门控循环单元中,然后将多肽序列氨基酸属性数据按序输入到本发明提出的较少参数的量子门控循环神经网络中,进行量子态信息的处理以实现序列特征的提取。每次将数据输入到当前门控循环单元之前,需要判断演化到当前时间戳的门控循环单元的长度是否大于进行处理的多肽序列长度,如果大于则停止输入。将最后一个时间戳的输出作为最终多肽序列是否为抗菌肽的预测。
49.构建损失函数模块用于:将每个批次b中的多肽氨基酸属性序列数据输入基于较少参数的量子门控循环神经网络当中,每个多肽氨基酸属性序列均能通过上述循环处理模块获得一个预测值,然后通过求每个批次所有多肽氨基酸属性序列预测值的均方误差获得用于表征模型性能的损失函数。
50.更新量子线路参数模块用于:基于已有的参数移动法则,求上一个模块的损失函
数关于量子线路参数的分析梯度,然后利用经典计算机更新量子线路参数,最后将多肽氨基酸属性序列训练数据集,训练多个epoch,使得本发明提出的基于较少参数的量子门控循环神经网络预测多肽序列是否为抗菌肽方法得到期望的准确度后停止。
51.实施例三、为了进一步解释本发明提出的基于较少参数的量子门控循环神经网络预测氨基酸序列是否为是抗菌肽方法,我们提出了如下的实施列。
52.多肽序列氨基酸属性数据的预处理模块:将表征多肽序列氨基酸属性的多维数据,例如此处取丙氨酸的极化,归一化范德华体积,疏水性,等电点,螺旋性,折叠性的六种属性数据为,根据式(6)逐元素的取反正切获得相应于多肽序列氨基酸属性的量子门的旋转角为。
53.隐藏状态向量和表征多肽序列氨基酸属性数据加载模块:将当前时间戳输入的隐藏状态向量和上一个模块的表征多肽序列氨基酸属性数据结合为特征向量,然后利用角度编码方式通过和旋转量子门作用在量子比特上将特征向量加载到量子态的振幅上,如图2所示。
54.循环处理模块:本发明新设计的较少参数的量子门控循环神经网络整体框架如图3所示,其中的rnn表示本发明提出的较少参数的门控循环单元如图4所示。图4中的s和t分别表示sigmoid和tanh激活函数,与之前的门控循环单元直接将隐藏状态向量作为输出相比,本发明设计的门控循环单元,通过参数化量子线路对隐藏状态向量处理之后再将最后的测量结果作为输出,从而使得我们设计架构更加灵活。表示参数化量子线路,其具体形式如图5所示,图中虚线框的和门将特征向量编码为量子态。后面的cnot和参数化的旋转门用于对前面包含特征向量的量子态进行处理。
55.循环处理模块的整体过程如下:在开始的时候根据自行设定的隐藏向量的维度(此处我们设置为3)将最初的隐藏状态向量初始化为全零向量,输入第一个门控循环单元中,然后将多肽序列氨基酸属性数据按序输入到本发明提出的较少参数的量子门控循环神经网络中,进行量子态信息的处理以实现序列特征的提取。每次将数据输入到当前门控循环单元之前,需要判断演化到当前时间戳的门控循环单元的长度是否达到了进行处理的多肽序列长度,如果达到了多肽序列长度则停止。将最后一个时间戳的输出作为最终多肽序列是否为抗菌肽的预测结果。
56.构建损失函数模块:将每个批次b中的多肽氨基酸属性序列数据输入基于较少参数的量子门控循环神经网络当中,通过上述循环处理模块每个多肽氨基酸属性序列均能获得一个预测值,然后根据每个批次求出的预测值结合预测值相应的是否为抗菌肽的真实标签求出多肽氨基酸属性序列预测值和真实值之间的均方误差,从而获得用于表征模型性能的损失函数,均方误差损失函数的表达式如下式所示:,其中表示当前多肽氨基酸属性序列是否为抗菌肽的真实标签,k为批次b所包含的蛋白质氨基酸序列个数。
57.更新量子线路参数模块:首先一个测量算符在参数化量子线路下的期望值
可表示为,则期望值函数关于参数化量子线路参数的梯度可以表示为,以上便是已有的求参数化量子线路关于算符期望值分析梯度的参数移动法则。在已有的参数移动法则的基础上,可以求上一个模块的均方误差损失函数关于量子线路参数的分析梯度。然后利用经典计算机通过梯度下降方法更新参数化量子线路参数,最后根据多肽氨基酸属性序列训练数据集,训练多个epoch,直到本发明提出的基于较少参数的量子门控循环神经网络预测多肽序列是否为抗菌肽方法得到期望的准确度后停止。
58.实施例四、本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行如上实施例所述的方法步骤。
59.需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质可以但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
60.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
61.可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(an)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
62.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用
于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
63.描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
64.以上介绍了本发明的较佳实施方式,旨在使得本发明的精神更加清楚和便于理解,并不是为了限制本发明,凡在本发明的精神和原则之内,所做的修改、替换、改进,均应包含在本发明所附的权利要求概括的保护范围之内。