CN115881209B - 一种rna二级结构预测的处理方法和装置 - Google Patents
一种rna二级结构预测的处理方法和装置 Download PDFInfo
- Publication number
- CN115881209B CN115881209B CN202310114452.1A CN202310114452A CN115881209B CN 115881209 B CN115881209 B CN 115881209B CN 202310114452 A CN202310114452 A CN 202310114452A CN 115881209 B CN115881209 B CN 115881209B
- Authority
- CN
- China
- Prior art keywords
- tensor
- secondary structure
- prediction
- model
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
本发明实施例涉及一种RNA二级结构预测的处理方法和装置,所述方法包括:构建二级结构预测模型;构建数据集对二级结构预测模型进行模型训练和测试处理;模型训练和测试处理成功,则获取任意RNA序列作为对应的第一RNA序列X;并将第一RNA序列输入训练测试成熟的二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据第一预测张量S进行RNA二级结构复现。通过本发明,可以对完整、残缺甚至带有错误碱基因子的一维RNA序列进行二级结构预测。
Description
技术领域
本发明涉及数据处理技术领域,特别涉及一种RNA二级结构预测的处理方法和装置。
背景技术
核糖核酸(RNA)是广泛存在于生物体中重要的遗传信息载体和调控分子,其由核糖核苷酸通过磷酸二酯键缩合为单链链状分子。RNA分子在生物体中通过其结构发挥重要的调控与信息传递作用。RNA分子的一级结构是指按一维序列方式表达的RNA序列,二级结构则是指连接了配对碱基对的二维结构。传统RNA二级结构预测方式有基于实验的预测方式。但该类方式存在耗时长、成本高等问题。
发明内容
本发明的目的,就是针对现有技术的缺陷,提供一种RNA二级结构预测的处理方法、装置、电子设备及计算机可读存储介质;创建一个二级结构预测模型,该模型由相对位置编码模块、序列编码模块、热力学限制矩阵编码模块、高维拓展模块、特征融合模块、前馈神经网络和分类预测网络构成;并从RNACentral数据库、RFAM数据库、bpRNA-1m数据库和ArchiveII数据库下载数据集来构建对应的预训练数据集、训练数据集和测试数据集;并基于预训练数据集对模型的序列编码模块进行预训练;并在预训练结束后,基于训练数据集和损失函数对模型进行整体训练;并在整体训练结束后,基于测试数据集对模型的置信度进行估计、并对模型的预测准确度进行评分,并在置信度和评分不满足预设的合理范围时对模型参数继续进行调整,从而进一步提高模型的泛化性;并在模型通过上述预训练、训练和测试之后,将模型应用到RNA二级结构预测场景中对完整、残缺甚至带有错误碱基因子的一维RNA序列进行二级结构预测,并根据预测结果进行二级结构复现。通过本发明,可以对完整、残缺甚至带有错误碱基因子的一维RNA序列进行正确的二级结构预测,从而达到降低二级结构预测成本、提高二级结构预测效率的目的。
为实现上述目的,本发明实施例第一方面提供了一种RNA二级结构预测的处理方法,所述方法包括:
构建二级结构预测模型;
构建数据集对所述二级结构预测模型进行模型训练和测试处理;
所述模型训练和测试处理成功,则获取任意RNA序列作为对应的第一RNA序列X;并将所述第一RNA序列输入训练测试成熟的所述二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据所述第一预测张量S进行RNA二级结构复现。
优选的,所述二级结构预测模型用于对模型输入的一维RNA序列进行RNA二级结构预测并输出对应的二维RNA序列碱基因子配对概率张量;所述一维RNA序列包括序列长度L0的碱基因子,L0≥1;所述碱基因子类型包括腺嘌呤A类型、鸟嘌呤G类型、胞嘧啶C类型、尿嘧啶U类型;所述二维RNA序列碱基因子配对概率张量的形状为L0×L0×2;所述二维RNA序列碱基因子配对概率张量包括L0*L0个向量长度为2的预测向量;所述预测向量包括配对碱基概率和非配对碱基概率两个预测概率。
进一步的,所述二级结构预测模型包括第一相对位置编码模块、第一序列编码模块、第一热力学限制矩阵编码模块、第一高维拓展模块、第一特征融合模块、第一前馈神经网络和第一分类预测网络;所述第一分类预测网络包括第一正则化卷积网络和第一全连接网络;
所述第一相对位置编码模块、所述第一序列编码模块和所述第一热力学限制矩阵编码模块的输入端与所述二级结构预测模型的输入端连接;
所述第一序列编码模块的输出端与所述第一高维拓展模块的输入端连接;所述第一序列编码模块的结构基于参考模型结构实现;所述参考模型结构包括RNA-FM模型的模型结构和ESM系列模型的编码+解码模块结构;所述ESM系列模型包括ESM-1b模型和ESM-1v模型;
所述第一特征融合模块的第一、第二输入端分别与所述第一热力学限制矩阵编码模块的输出端和所述第一高维拓展模块的输出端连接;
所述第一前馈神经网络包括输入层、隐藏层和输出层;所述输入层包括第一输入层单元和第二输入层单元,所述第一、第二输入层单元各自包括多个输入层节点;所述隐藏层包括第一隐藏层单元和第二隐藏层单元,所述第一、第二隐藏层单元各自包括多个隐藏层节点;所述第一输入层单元的输入端与所述第一相对位置编码模块的输出端连接;所述第二输入层单元的输入端与所述第一特征融合模块的输出端连接;所述第一隐藏层单元的各个隐藏层节点与所述第一输入层单元的所有输入层节点进行全连接;所述第二隐藏层单元的各个隐藏层节点与所述第二输入层单元的所有输入层节点进行全连接;所述输出层的输入端分别与所述第一隐藏层单元和所述第二隐藏层单元的输出端连接;所述输出层的输出端为所述第一前馈神经网络的输出端;
所述第一分类预测网络的输入端与所述第一前馈神经网络的输出端连接;所述第一分类预测网络的所述第一正则化卷积网络的输入端与所述第一分类预测网络的输入端连接、输出端与所述第一分类预测网络的所述第一全连接网络的输入端连接;所述第一分类预测网络的所述第一全连接网络的输出端与所述第一分类预测网络的输出端连接。
进一步的,所述第一相对位置编码模块用于对模型输入的所述一维RNA序列的所述序列长度L0的所述碱基因子进行两两碱基因子相对位置编码处理得到对应的相对位置编码张量并输出;所述相对位置编码张量的形状为L0×L0×1;
所述第一序列编码模块用于对模型输入的所述一维RNA序列进行碱基因子特征编码处理得到对应的特征编码张量并输出;所述特征编码张量的形状为L0×D,D为预设的特征维度;
所述第一热力学限制矩阵编码模块中预置一个针对一维RNA序列的自由能函数以及一个基于自由能函数参数进行碱基因子配对概率计算的配分函数;所述第一热力学限制矩阵编码模块用于将模型输入的所述一维RNA序列代入所述自由能函数之后对所述自由能函数进行最小自由能求解得到对应的自由能函数参数张量;并将所述自由能函数参数张量代入所述配分函数进行碱基因子配对概率计算得到对应的碱基因子配对概率张量;并将得到的所述碱基因子配对概率张量作为对应的热力学限制矩阵输出;所述热力学限制矩阵的形状为L0×L0×1;
所述第一高维拓展模块用于对所述第一序列编码模块输出的所述特征编码张量进行高维张量拓展;在高维张量拓展时,对形状为L0×D的所述特征编码张量进行L0-1次复制并对所有L0个相同的特征编码张量按行叠加方式进行叠加得到对应的形状为L0×L0×D的行叠加张量;并对形状为L0×D的所述特征编码张量进行张量转置得到对应的形状为D×L0的转置特征编码张量;并对形状为D×L0的所述转置特征编码张量进行L0-1次复制并对所有L0个相同的转置特征编码张量按列叠加方式进行叠加得到对应的形状为L0×L0×D的列叠加张量;并对所述行叠加张量与所述列叠加张量进行张量相加得到对应的高维拓展张量并输出;所述高维拓展张量的形状为L0×L0×D;
所述第一特征融合模块用于对所述第一热力学限制矩阵编码模块输出的所述热力学限制矩阵和所述第一高维拓展模块输出的所述高维拓展张量进行特征融合;在特征融合时,对所述高维拓展张量和所述热力学限制矩阵做哈达玛积运算得到对应的第一哈达玛积张量,并对所述第一哈达玛积张量与所述高维拓展张量做张量相加得到对应的特征融合张量并输出;所述特征融合张量的形状为L0×L0×D;
所述第一前馈神经网络用于基于所述第一输入层单元将所述第一相对位置编码模块输出的所述相对位置编码张量通过线性全连接投射到所述第一隐藏层单元;并基于所述第二输入层单元将所述第一特征融合模块输出的所述特征融合张量通过线性全连接投射到所述第二隐藏层单元;并基于所述输出层对所述第一、第二隐藏层单元输出的两个隐藏层张量进行张量重叠得到对应的隐藏特征层张量;所述隐藏特征层张量的形状为L0×L0×Dhidden;Dhidden为预设的特征维度;
所述第一分类预测网络的所述第一正则化卷积网络用于基于卷积神经网络对所述隐藏特征层张量进行正则化处理得到对应的正则化张量;所述正则化张量的形状与所述隐藏特征层张量保持一致,为L0×L0×Dhidden;
所述第一分类预测网络的所述第一全连接网络用于根据所述第一正则化卷积网络输出的所述正则化张量进行回归分类预测得到对应的所述二维RNA序列碱基因子配对概率张量并输出;所述全连接张量的形状为L0×L0×2。
进一步优选的,设所述隐藏特征层张量为H{hi,j,k},并设所述正则化张量为R{ri,j,k},1≤i≤L0,1≤j≤L0,1≤k≤Dhidden;所述第一正则化卷积网络的正则化模型为:
,
其中,
ε为正则化系数,
,
。
进一步优选的,所述卷积神经网络的网络参数包括补码参数、膨胀系数、卷积步长和卷积核尺寸;所述卷积步长默认为1;所述补码参数、所述膨胀系数和所述卷积核尺寸满足预设的卷积核参数不定方程;
所述卷积核参数不定方程为:
,
其中,padding为所述补码参数,dilation为所述膨胀系数,kernelsize为所述卷积核尺寸。
优选的,所述构建数据集对所述二级结构预测模型进行模型训练和测试处理,具体包括:
构建所述二级结构预测模型的预训练数据集、训练数据集和测试数据集;并使用交叉熵作为损失函数作为所述二级结构预测模型的模型训练损失函数;
按所述第一序列编码模块对应的参考模型的训练方式,基于所述预训练数据集对所述二级结构预测模型的所述第一序列编码模块进行编码模块预训练处理;
所述编码模块预训练处理成功,则基于所述训练数据集和所述模型训练损失函数对所述二级结构预测模型进行模型训练处理;
所述模型训练处理成功,则基于所述测试数据集对所述二级结构预测模型进行模型测试处理;
所述模型测试处理成功,则确认所述二级结构预测模型已经训练测试成熟。
进一步的,所述构建所述二级结构预测模型的预训练数据集、训练数据集和测试数据集,具体包括:
从RNACentral数据库和RFAM数据库中下载第一指定数量的RNA序列组成对应的所述预训练数据集;
从bpRNA-1m数据库下载bpRNA-1m-90数据集;从ArchiveII数据库下载ArchiveII数据集;所述bpRNA-1m-90数据集和所述ArchiveII数据集都包括多个RNA序列数据组;所述RNA序列数据组包括数据集RNA序列和对应的二级结构标签;所述数据集RNA序列为一维的RNA序列,包括多个碱基因子;所述二级结构标签由Lx*Lx个标签掩码组成,Lx为对应的所述数据集RNA序列的序列长度;各个所述标签掩码对应所述数据集RNA序列中的一对碱基因子,所述标签掩码的取值包括预设的配对掩码值和不配对掩码值;
对所述bpRNA-1m-90数据集中RNA序列长度超过第二指定数量的所述RNA序列数据组进行剔除;并按预设的训练数据百分比,从完成数据剔除的所述bpRNA-1m-90数据集中随机提取所述训练数据百分比的所述RNA序列数据组构成对应的所述训练数据集;并由所述bpRNA-1m-90数据集中剩余的所有所述RNA序列数据组和所述ArchiveII数据集的所有所述RNA序列数据组构成对应的所述测试数据集;所述第二指定数量默认为500,所述训练数据百分比默认为80%。
进一步的,所述基于所述训练数据集和所述模型训练损失函数对所述二级结构预测模型进行模型训练处理,具体包括:
步骤91,从所述训练数据集中选出一个所述RNA序列数据组作为对应的当前训练RNA序列数据组;并初始化第一计数器为0;
步骤92,将所述当前训练RNA序列数据组的所述数据集RNA序列和所述二级结构标签提取出来作为对应的当前训练RNA序列和当前训练二级结构标签;并对所述当前训练RNA序列的RNA序列长度进行统计得到对应的当前训练序列长度Ltr;所述当前训练二级结构标签由Ltr*Ltr个所述标签掩码组成;
步骤93,对所述当前训练RNA序列中的部分碱基因子进行随机修改或遮挡得到对应的第一训练RNA序列;
步骤94,将所述第一训练RNA序列输入所述二级结构预测模型进行二级结构预测处理,并将处理得到的所述二维RNA序列碱基因子配对概率张量作为对应的当前训练预测张量;所述当前训练预测张量的形状为Ltr×Ltr×2;所述当前训练预测张量包括Ltr*Ltr个训练预测向量;各个所述训练预测向量包括两个预测概率分别为训练配对碱基概率和训练非配对碱基概率;
步骤95,将所述当前训练二级结构标签作为真实概率量、所述当前训练预测张量作为预测概率量,代入所述模型训练损失函数进行交叉熵损失计算得到对应的第一损失值;
步骤96,对所述第一损失值是否满足于预设的损失值范围进行识别;若是则对所述第一计数器加1并转至步骤97;若否,则对所述二级结构预测模型的模型参数进行调制,并在参数调制结束时转至步骤94继续训练;
步骤97,对所述第一计数器是否超过预设的第一计数器阈值进行识别;若是,则结束模型训练并确认所述模型训练处理成功;若否,则从所述训练数据集中选出下一个所述RNA序列数据组作为新的所述当前训练RNA序列数据组,并转至步骤92继续训练。
进一步的,所述基于所述测试数据集对所述二级结构预测模型进行模型测试处理,具体包括:
步骤101,从所述测试数据集中选出一个所述RNA序列数据组作为对应的当前测试RNA序列数据组;并初始化第二计数器为0;
步骤102,将所述当前测试RNA序列数据组的所述数据集RNA序列和所述二级结构标签提取出来作为对应的当前测试RNA序列和当前测试二级结构标签;并对所述当前测试RNA序列的RNA序列长度进行统计得到对应的当前训练序列长度Ltst;所述当前测试二级结构标签由Ltst*Ltst个所述标签掩码组成;
步骤103,将所述当前测试RNA序列输入所述二级结构预测模型进行二级结构预测处理,并将处理得到的所述二维RNA序列碱基因子配对概率张量作为对应的当前测试预测张量;所述当前测试预测张量的形状为Ltst×Ltst×2;所述当前测试预测张量包括Ltst*Ltst个测试预测向量;各个所述测试预测向量包括两个预测概率分别为测试配对碱基概率和测试非配对碱基概率;
步骤104,根据所述当前测试预测张量进行置信度评估处理得到对应的第一置信度;
步骤105,根据所述当前测试预测张量和所述当前测试二级结构标签进行预测准确度评分得到对应的第一评分;
步骤106,对所述第一置信度识别满足预设的置信度范围且所述第一评分是否满足预设的评分范围进行识别;若所述第一置信度识别满足所述置信度范围且所述第一评分满足所述评分范围,则对所述第二计数器加1并转至步骤107;若所述第一置信度识别不满足所述置信度范围或所述第一评分不满足所述准确度范围,则对所述二级结构预测模型的模型参数进行调制,并在参数调制结束时转至步骤103继续测试;
步骤107,对所述第二计数器是否超过预设的第二计数器阈值进行识别;若是,则结束模型测试并确认所述模型测试处理成功;若否,则从所述测试数据集中选出下一个所述RNA序列数据组作为新的所述当前测试RNA序列数据组,并转至步骤102继续测试。
进一步优选的,所述根据所述当前测试预测张量进行置信度评估处理得到对应的第一置信度,具体包括:
将所述当前测试预测张量记为对应的当前测试预测张量S{sa,b,c};1≤a≤Ltst,1≤b≤Ltst, 1≤c≤2;sa,b,c=1对应所述测试配对碱基概率,sa,b,c=2对应所述测试非配对碱基概率;
根据所述当前测试预测张量S{sa,b}计算得到对应的第一限制矩阵M1{m1a,b}和第二限制矩阵M2{m2a,b},
,
;
对所述第一限制矩阵M1{m1a,b}、所述第二限制矩阵M2{m2a,b}和所述当前测试预测张量S{sa,b}分别进行列向量加和运算得到对应的第一加和矩阵M* 1{m1c}、第二加和矩阵M* 2{m2c}和第三加和矩阵S*{sc},1≤c≤Ltst,
,
,
;
对所述第一加和矩阵M* 1和所述第三加和矩阵S*进行哈达玛积运算得到对应的非配对张量SN;对所述第二加和矩阵M* 2和所述第三加和矩阵S*进行哈达玛积运算得到对应的配对张量SP,
,
,
为哈达玛积运算符;
根据所述配对张量SP和所述非配对张量SN计算得到对应的所述第一置信度,
,
其中,γ为所述第一置信度,max{SN}、min{SN}分别为所述非配对张量SN中的最大值和最小值,max{SP}、min{SP}分别为所述配对张量SP中的最大值和最小值。
进一步优选的,所述根据所述当前测试预测张量和所述当前测试二级结构标签进行预测准确度评分得到对应的第一评分,具体包括:
根据所述当前测试二级结构标签对所述当前测试预测张量中正确预测出的具有配对关系的碱基因子对数量进行统计生成对应的第一数量TP;并根据所述当前测试二级结构标签对所述当前测试预测张量中漏测的具有配对关系的碱基因子对数量进行统计生成对应的第二数量FN;并根据所述当前测试二级结构标签对所述当前测试预测张量中错误预测出的具有配对关系的碱基因子对数量进行统计生成对应的第三数量FP;
根据所述第一数量TP和所述第二数量FN计算对应的第一召回率Precall,
;
根据所述第一数量TP和所述第三数量FP计算对应的第一精准率Ppre,
;
根据所述第一精准率Ppre和所述第一召回率Precall计算对应的所述第一评分,
。
优选的,所述将所述第一RNA序列输入训练测试成熟的所述二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S,具体包括:
将所述第一RNA序列输入所述二级结构预测模型进行二级结构预测处理,并将处理得到的所述二维RNA序列碱基因子配对概率张量作为对应的所述第一预测张量S;所述第一RNA序列X的序列长度为L;所述第一RNA序列包括序列长度L的第一碱基因子xe,1≤e≤L;所述第一碱基因子的类型包括腺嘌呤A类型、鸟嘌呤G类型、胞嘧啶C类型、尿嘧啶U类型;所述第一预测张量S的形状为L×L×2;所述第一预测张量S包括L*L个第一预测向量se,f, 1≤f≤L;各个所述第一预测向量se,f包括第一配对碱基概率pe,f,1和第一非配对碱基概率pe,f,2。
本发明实施例第二方面提供了一种用于实现上述第一方面所述的RNA二级结构预测的处理方法的装置,所述装置包括:模型构建模块、模型训练测试模块和模型应用模块;
所述模型构建模块用于构建二级结构预测模型;
所述模型训练测试模块用于构建数据集对所述二级结构预测模型进行模型训练和测试处理;
所述模型应用模块用于在所述模型训练和测试处理成功之后,获取任意RNA序列作为对应的第一RNA序列X;并将所述第一RNA序列输入训练测试成熟的所述二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据所述第一预测张量S进行RNA二级结构复现。
本发明实施例第三方面提供了一种电子设备,包括:存储器、处理器和收发器;
所述处理器用于与所述存储器耦合,读取并执行所述存储器中的指令,以实现上述第一方面所述的方法步骤;
所述收发器与所述处理器耦合,由所述处理器控制所述收发器进行消息收发。
本发明实施例第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行上述第一方面所述的方法的指令。
本发明实施例提供了一种RNA二级结构预测的处理方法、装置、电子设备及计算机可读存储介质;创建一个二级结构预测模型,该模型由相对位置编码模块、序列编码模块、热力学限制矩阵编码模块、高维拓展模块、特征融合模块、前馈神经网络和分类预测网络构成;并从RNACentral数据库、RFAM数据库、bpRNA-1m数据库和ArchiveII数据库下载数据集来构建对应的预训练数据集、训练数据集和测试数据集;并基于预训练数据集对模型的序列编码模块进行预训练;并在预训练结束后,基于训练数据集和损失函数对模型进行整体训练;并在整体训练结束后,基于测试数据集对模型的置信度进行估计、并对模型的预测准确度进行评分,并在置信度和评分不满足预设的合理范围时对模型参数继续进行调整,从而进一步提高模型的泛化性;并在模型通过上述预训练、训练和测试之后,将模型应用到RNA二级结构预测场景中对完整、残缺甚至带有错误碱基因子的一维RNA序列进行二级结构预测,并根据预测结果进行二级结构复现。通过本发明,可以对完整、残缺甚至带有错误碱基因子的一维RNA序列进行正确的二级结构预测,降低了二级结构预测成本、提高了二级结构预测效率。
附图说明
图1为本发明实施例一提供的一种RNA二级结构预测的处理方法示意图;
图2a为本发明实施例一提供的二级结构预测模型的结构示意图;
图2b为本发明实施例一提供的第一高维拓展模块的高维张量拓展示意图;
图2c为本发明实施例一提供的第一前馈神经网络的网络结构示意图;
图3为本发明实施例二提供的一种RNA二级结构预测的处理装置的模块结构图;
图4为本发明实施例三提供的一种电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例一提供一种RNA二级结构预测的处理方法,如图1为本发明实施例一提供的一种RNA二级结构预测的处理方法示意图所示,本方法主要包括如下步骤:
本发明实施例一提供一种RNA二级结构预测的处理方法,如图1为本发明实施例一提供的一种RNA二级结构预测的处理方法示意图所示,本方法主要包括如下步骤:
步骤1,构建二级结构预测模型。
这里,本发明实施例够构建的二级结构预测模型用于对模型输入的一维RNA序列进行RNA二级结构预测并输出对应的二维RNA序列碱基因子配对概率张量;上述一维RNA序列包括序列长度L0的碱基因子,L0≥1;碱基因子类型包括腺嘌呤A类型、鸟嘌呤G类型、胞嘧啶C类型、尿嘧啶U类型;二维RNA序列碱基因子配对概率张量的形状为L0×L0×2;二维RNA序列碱基因子配对概率张量包括L0*L0个向量长度为2的预测向量;预测向量包括配对碱基概率和非配对碱基概率两个预测概率。
本发明实施例够构建的二级结构预测模型的模型结构,如图2a为本发明实施例一提供的二级结构预测模型的结构示意图所示,包括:第一相对位置编码模块、第一序列编码模块、第一热力学限制矩阵编码模块、第一高维拓展模块、第一特征融合模块、第一前馈神经网络和第一分类预测网络;第一分类预测网络包括第一正则化卷积网络和第一全连接网络;
第一相对位置编码模块、第一序列编码模块和第一热力学限制矩阵编码模块的输入端与二级结构预测模型的输入端连接;第一相对位置编码模块用于对模型输入的一维RNA序列的序列长度L0的碱基因子进行两两碱基因子相对位置编码处理得到对应的相对位置编码张量并输出;相对位置编码张量的形状为L0×L0×1;
第一序列编码模块的输出端与第一高维拓展模块的输入端连接;需要说明的是,本发明实施例的第一序列编码模块的结构是基于参考模型结构实现的;本发明实施例的参考模型结构包括RNA-FM模型的模型结构和ESM系列模型的编码+解码模块结构;ESM系列模型包括ESM-1b模型和ESM-1v模型;而关于RNA-FM模型的模型结构可通过论文《Interpretable RNA Foundation Model from Unannotated Data for Highly AccurateRNA Structure and Function Predictions》获得,在此不做一一赘述;关于ESM-1b模型的编码+解码模块结构可通过论文《Biological structure and function emergefromscaling unsupervised learning to 250 million protein sequences》获得,在此不做一一赘述;关于ESM-1v模型的编码+解码模块结构可通过论文《Language modelsenable zero-shot prediction of the effects of mutations on protein function》获得,在此不做一一赘述;第一序列编码模块用于对模型输入的一维RNA序列进行碱基因子特征编码处理得到对应的特征编码张量并输出;特征编码张量的形状为L0×D,D为预设的特征维度;
第一热力学限制矩阵编码模块中预置一个针对一维RNA序列的自由能函数以及一个基于自由能函数参数进行碱基因子配对概率计算的配分函数;第一热力学限制矩阵编码模块用于将模型输入的一维RNA序列代入自由能函数之后对自由能函数进行最小自由能求解得到对应的自由能函数参数张量;并将自由能函数参数张量代入配分函数进行碱基因子配对概率计算得到对应的碱基因子配对概率张量;并将得到的碱基因子配对概率张量作为对应的热力学限制矩阵输出;热力学限制矩阵的形状为L0×L0×1;
第一高维拓展模块用于对第一序列编码模块输出的特征编码张量进行高维张量拓展;如图2b为本发明实施例一提供的第一高维拓展模块的高维张量拓展示意图所示,第一高维拓展模块在高维张量拓展时,对形状为L0×D的特征编码张量进行L0-1次复制并对所有L0个相同的特征编码张量按行叠加方式进行叠加得到对应的形状为L0×L0×D的行叠加张量;并对形状为L0×D的特征编码张量进行张量转置得到对应的形状为D×L0的转置特征编码张量;并对形状为D×L0的转置特征编码张量进行L0-1次复制并对所有L0个相同的转置特征编码张量按列叠加方式进行叠加得到对应的形状为L0×L0×D的列叠加张量;并对行叠加张量与列叠加张量进行张量相加得到对应的高维拓展张量并输出;高维拓展张量的形状为L0×L0×D;
第一特征融合模块的第一、第二输入端分别与第一热力学限制矩阵编码模块的输出端和第一高维拓展模块的输出端连接;第一特征融合模块用于对第一热力学限制矩阵编码模块输出的热力学限制矩阵和第一高维拓展模块输出的高维拓展张量进行特征融合;在特征融合时,对高维拓展张量和热力学限制矩阵做哈达玛积运算得到对应的第一哈达玛积张量,并对第一哈达玛积张量与高维拓展张量做张量相加得到对应的特征融合张量并输出;特征融合张量的形状为L0×L0×D;
第一前馈神经网络如图2c为本发明实施例一提供的第一前馈神经网络的网络结构示意图所示,包括输入层、隐藏层和输出层;输入层包括第一输入层单元和第二输入层单元,第一、第二输入层单元各自包括多个输入层节点;隐藏层包括第一隐藏层单元和第二隐藏层单元,第一、第二隐藏层单元各自包括多个隐藏层节点;第一输入层单元的输入端与第一相对位置编码模块的输出端连接;第二输入层单元的输入端与第一特征融合模块的输出端连接;第一隐藏层单元的各个隐藏层节点与第一输入层单元的所有输入层节点进行全连接;第二隐藏层单元的各个隐藏层节点与第二输入层单元的所有输入层节点进行全连接;输出层的输入端分别与第一隐藏层单元和第二隐藏层单元的输出端连接;输出层的输出端为第一前馈神经网络的输出端;
第一前馈神经网络用于基于第一输入层单元将第一相对位置编码模块输出的相对位置编码张量通过线性全连接投射到第一隐藏层单元;并基于第二输入层单元将第一特征融合模块输出的特征融合张量通过线性全连接投射到第二隐藏层单元;并基于输出层对第一、第二隐藏层单元输出的两个隐藏层张量进行张量重叠得到对应的隐藏特征层张量;隐藏特征层张量的形状为L0×L0×Dhidden;Dhidden为预设的特征维度;
第一分类预测网络的输入端与第一前馈神经网络的输出端连接;第一分类预测网络的第一正则化卷积网络的输入端与第一分类预测网络的输入端连接、输出端与第一分类预测网络的第一全连接网络的输入端连接;第一分类预测网络的第一全连接网络的输出端与第一分类预测网络的输出端连接;
第一分类预测网络的第一正则化卷积网络用于基于卷积神经网络对隐藏特征层张量进行正则化处理得到对应的正则化张量;正则化张量的形状与隐藏特征层张量保持一致,为L0×L0×Dhidden;
需要说明的是,设隐藏特征层张量为H{hi,j,k}、正则化张量为R{ri,j,k},1≤i≤L0,1≤j≤L0,1≤k≤Dhidden;那么,第一正则化卷积网络的正则化模型为:
,
其中,
ε为正则化系数,
,
;
还需要说明的是,卷积神经网络的网络参数包括补码参数、膨胀系数、卷积步长和卷积核尺寸;卷积步长默认为1;为确保本发明实施例第一正则化卷积网络的输入、输出张量形状一致,本发明实施例规定第一正则化卷积网络的卷积神经网络的补码参数、膨胀系数和卷积核尺寸应满足预设的卷积核参数不定方程,该预设的卷积核参数不定方程为:
,
其中,padding为补码参数,dilation为膨胀系数,kernelsize为卷积核尺寸;
第一分类预测网络的第一全连接网络用于根据第一正则化卷积网络输出的正则化张量进行回归分类预测得到对应的二维RNA序列碱基因子配对概率张量并输出;全连接张量的形状为L0×L0×2。
步骤2,构建数据集对二级结构预测模型进行模型训练和测试处理;
具体包括:步骤21,构建二级结构预测模型的预训练数据集、训练数据集和测试数据集;并使用交叉熵作为损失函数作为二级结构预测模型的模型训练损失函数;
其中,构建二级结构预测模型的预训练数据集、训练数据集和测试数据集,具体包括:
步骤211,从RNACentral数据库和RFAM数据库中下载第一指定数量的RNA序列组成对应的预训练数据集;
这里,RNACentral数据库、RFAM数据库以及后续步骤中的bpRNA-1m数据库、ArchiveII数据库都是公开的RNA数据库;
步骤212,从bpRNA-1m数据库下载bpRNA-1m-90数据集;从ArchiveII数据库下载ArchiveII数据集;
其中,bpRNA-1m-90数据集和ArchiveII数据集都包括多个RNA序列数据组;RNA序列数据组包括数据集RNA序列和对应的二级结构标签;数据集RNA序列为一维的RNA序列,包括多个碱基因子;二级结构标签由Lx*Lx个标签掩码组成,Lx为对应的数据集RNA序列的序列长度;各个标签掩码对应数据集RNA序列中的一对碱基因子,标签掩码的取值包括预设的配对掩码值和不配对掩码值;
步骤213,对bpRNA-1m-90数据集中RNA序列长度超过第二指定数量的RNA序列数据组进行剔除;并按预设的训练数据百分比,从完成数据剔除的bpRNA-1m-90数据集中随机提取训练数据百分比的RNA序列数据组构成对应的训练数据集;并由bpRNA-1m-90数据集中剩余的所有RNA序列数据组和ArchiveII数据集的所有RNA序列数据组构成对应的测试数据集;
其中,第二指定数量默认为500,训练数据百分比默认为80%;
步骤22,按第一序列编码模块对应的参考模型的训练方式,基于预训练数据集对二级结构预测模型的第一序列编码模块进行编码模块预训练处理;
这里,由前文可知第一序列编码模块对应的参考模型包括RNA-FM模型、ESM系列模型;ESM系列模型又包括ESM-1b模型和ESM-1v模型;当第一序列编码模块基于RNA-FM模型的模型结构实现时,就按RNA-FM模型的训练方式基于预训练数据集对第一序列编码模块进行预训练,而关于RNA-FM模型的训练方式可通过论文《Interpretable RNA FoundationModel from Unannotated Data for Highly Accurate RNA Structure and FunctionPredictions》获得,在此不做一一赘述;当第一序列编码模块基于ESM-1b模型的编码+解码模块实现时,就按ESM-1b模型编码+解码模块的预训练方式基于预训练数据集对第一序列编码模块进行预训练,而关于ESM-1b模型的预训练方式可通过论文《Biologicalstructure and function emerge fromscaling unsupervised learning to 250million protein sequences》获得,在此不做一一赘述;当第一序列编码模块基于ESM-1v模型的编码+解码模块实现时,就按ESM-1v模型编码+解码模块的预训练方式基于预训练数据集对第一序列编码模块进行预训练,而关于ESM-1v模型的预训练方式可通过论文《Language models enable zero-shot prediction of the effects of mutations onprotein function》获得,在此不做一一赘述;
步骤23,编码模块预训练处理成功,则基于训练数据集和模型训练损失函数对二级结构预测模型进行模型训练处理;
具体包括:步骤231,从训练数据集中选出一个RNA序列数据组作为对应的当前训练RNA序列数据组;并初始化第一计数器为0;
步骤232,将当前训练RNA序列数据组的数据集RNA序列和二级结构标签提取出来作为对应的当前训练RNA序列和当前训练二级结构标签;并对当前训练RNA序列的RNA序列长度进行统计得到对应的当前训练序列长度Ltr;
其中,当前训练二级结构标签由Ltr*Ltr个标签掩码组成;
步骤233,对当前训练RNA序列中的部分碱基因子进行随机修改或遮挡得到对应的第一训练RNA序列;
步骤234,将第一训练RNA序列输入二级结构预测模型进行二级结构预测处理,并将处理得到的二维RNA序列碱基因子配对概率张量作为对应的当前训练预测张量;
其中,当前训练预测张量的形状为Ltr×Ltr×2;当前训练预测张量包括Ltr*Ltr个训练预测向量;各个训练预测向量包括两个预测概率分别为训练配对碱基概率和训练非配对碱基概率;
步骤235,将当前训练二级结构标签作为真实概率量、当前训练预测张量作为预测概率量,代入模型训练损失函数进行交叉熵损失计算得到对应的第一损失值;
这里,本发明实施例的模型训练损失函数是标准的交叉熵损失函数,标准的交叉熵损失基于真实概率量和预测概率量进行交叉熵损失计算方式也是公开的技术实现,在此不做进一步赘述;
步骤236,对第一损失值是否满足于预设的损失值范围进行识别;若是则对第一计数器加1并转至步骤237;若否,则对二级结构预测模型的模型参数进行调制,并在参数调制结束时转至步骤234继续训练;
这里,本发明实施例在对二级结构预测模型的模型参数进行调制时,基于模型参数与交叉熵损失函数中真实概率量和预测概率量的依赖关系可以构建一个对应的目标函数,并按使该目标函数达到最小值的方向对该目标函数中的模型参数进行求解,并根据求解结果对二级结构预测模型的模型参数进行重置;
步骤237,对第一计数器是否超过预设的第一计数器阈值进行识别;若是,则结束模型训练并确认模型训练处理成功;若否,则从训练数据集中选出下一个RNA序列数据组作为新的当前训练RNA序列数据组,并转至步骤232继续训练;
这里,本发明实施例的第一计数器阈值是一个预设阈值,用于对模型的总体训练次数进行限制;
步骤24,模型训练处理成功,则基于测试数据集对二级结构预测模型进行模型测试处理;
具体包括:步骤241,从测试数据集中选出一个RNA序列数据组作为对应的当前测试RNA序列数据组;并初始化第二计数器为0;
步骤242,将当前测试RNA序列数据组的数据集RNA序列和二级结构标签提取出来作为对应的当前测试RNA序列和当前测试二级结构标签;并对当前测试RNA序列的RNA序列长度进行统计得到对应的当前训练序列长度Ltst;
其中,当前测试二级结构标签由Ltst*Ltst个标签掩码组成;
步骤243,将当前测试RNA序列输入二级结构预测模型进行二级结构预测处理,并将处理得到的二维RNA序列碱基因子配对概率张量作为对应的当前测试预测张量;
其中,当前测试预测张量的形状为Ltst×Ltst×2;当前测试预测张量包括Ltst*Ltst个测试预测向量;各个测试预测向量包括两个预测概率分别为测试配对碱基概率和测试非配对碱基概率;
步骤244,根据当前测试预测张量进行置信度评估处理得到对应的第一置信度;
具体包括:步骤2441,将当前测试预测张量记为对应的当前测试预测张量S{sa,b,c};
其中,1≤a≤Ltst,1≤b≤Ltst, 1≤c≤2;sa,b,c=1对应测试配对碱基概率,sa,b,c=2对应测试非配对碱基概率;
步骤2442,根据当前测试预测张量S{sa,b}计算得到对应的第一限制矩阵M1{m1a,b}和第二限制矩阵M2{m2a,b};
其中,
,
;
步骤2443,对第一限制矩阵M1{m1a,b}、第二限制矩阵M2{m2a,b}和当前测试预测张量S{sa,b}分别进行列向量加和运算得到对应的第一加和矩阵M* 1{m1c}、第二加和矩阵M*2{m2c}和第三加和矩阵S*{sc},1≤c≤Ltst,
,
,
;
步骤2444,对第一加和矩阵M* 1和第三加和矩阵S*进行哈达玛积运算得到对应的非配对张量SN;对第二加和矩阵M* 2和第三加和矩阵S*进行哈达玛积运算得到对应的配对张量SP;;
其中,
,
,
为哈达玛积运算符;
步骤2445,根据配对张量SP和非配对张量SN计算得到对应的第一置信度;
其中,第一置信度γ为:
,
max{SN}、min{SN}分别为非配对张量SN中的最大值和最小值,max{SP}、min{SP}分别为配对张量SP中的最大值和最小值;
步骤245,根据当前测试预测张量和当前测试二级结构标签进行预测准确度评分得到对应的第一评分;
具体包括:步骤2451,根据当前测试二级结构标签对当前测试预测张量中正确预测出的具有配对关系的碱基因子对数量进行统计生成对应的第一数量TP;并根据当前测试二级结构标签对当前测试预测张量中漏测的具有配对关系的碱基因子对数量进行统计生成对应的第二数量FN;并根据当前测试二级结构标签对当前测试预测张量中错误预测出的具有配对关系的碱基因子对数量进行统计生成对应的第三数量FP;
步骤2452,根据第一数量TP和第二数量FN计算对应的第一召回率Precall,
;
步骤2454,根据第一数量TP和第三数量FP计算对应的第一精准率Ppre,
;
步骤2454,根据第一精准率Ppre和第一召回率Precall计算对应的第一评分,
;
步骤246,对第一置信度识别满足预设的置信度范围且第一评分是否满足预设的评分范围进行识别;若第一置信度识别满足置信度范围且第一评分满足评分范围,则对第二计数器加1并转至步骤247;若第一置信度识别不满足置信度范围或第一评分不满足准确度范围,则对二级结构预测模型的模型参数进行调制,并在参数调制结束时转至步骤243继续测试;
这里,置信度范围为本发明实施例预先设置的合理置信度取值范围,评分范围为本发明实施例预先设置的合理评分范围;若第一置信度识别不满足置信度范围或第一评分不满足准确度范围说明模型参数还需要做进一步调制;这里在对二级结构预测模型的模型参数进行调制时,基于模型参数与第一置信度的计算公式中非配对张量SN和配对张量SP的依赖关系可以构建一个对应的目标函数,并按使该目标函数达到最大值的方向对该目标函数中的模型参数进行求解,并根据求解结果对二级结构预测模型的模型参数进行重置;
步骤247,对第二计数器是否超过预设的第二计数器阈值进行识别;若是,则结束模型测试并确认模型测试处理成功;若否,则从测试数据集中选出下一个RNA序列数据组作为新的当前测试RNA序列数据组,并转至步骤242继续测试;
这里,本发明实施例的第二计数器阈值是一个预设阈值,用于对模型的总体测试次数进行限制;
步骤25,模型测试处理成功,则确认二级结构预测模型已经训练测试成熟。
步骤3,模型训练和测试处理成功,则获取任意RNA序列作为对应的第一RNA序列X;并将第一RNA序列输入训练测试成熟的二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据第一预测张量S进行RNA二级结构复现;
具体包括:步骤31,获取任意RNA序列作为对应的第一RNA序列X;
其中,第一RNA序列X的序列长度为L;第一RNA序列包括序列长度L的第一碱基因子xe,1≤e≤L;第一碱基因子的类型包括腺嘌呤A类型、鸟嘌呤G类型、胞嘧啶C类型、尿嘧啶U类型;第一预测张量S的形状为L×L×2;
步骤32,将第一RNA序列输入训练测试成熟的二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;
具体包括:将第一RNA序列输入二级结构预测模型进行二级结构预测处理,并将处理得到的二维RNA序列碱基因子配对概率张量作为对应的第一预测张量S;
其中,第一预测张量S包括L*L个第一预测向量se,f, 1≤f≤L;各个第一预测向量se,f包括第一配对碱基概率pe,f,1和第一非配对碱基概率pe,f,2;
步骤33,根据第一预测张量S进行RNA二级结构复现。
这里,由第一RNA序列可以对该RNA序列对应的RNA分子的一级结构进行复现,该一级结构类似一条直链;在得到第一预测张量S之后就能对第一RNA序列上各组具有高可能连接关系的碱基因子对进行识别,根据识别结果就能在该条直链上对具有高可能连接关系的两个碱基因子进行连接,通过碱基因子对的连接就能对这条直链进行弯曲和折叠操作,再基于RNA分子公知的茎、环结构形状就能对这条完成弯曲和折叠的链条进行茎、环形状绘制从而得到对应的RNA二级结构图,通过显示该RNA二级结构图就能实现对RNA二级结构的复现。
图3为本发明实施例二提供的一种RNA二级结构预测的处理装置的模块结构图,该装置为实现前述方法实施例的终端设备或者服务器,也可以为能够使得前述终端设备或者服务器实现前述方法实施例的装置,例如该装置可以是前述终端设备或者服务器的装置或芯片系统。如图3所示,该装置包括:模型构建模块201、模型训练测试模块202和模型应用模块203。
模型构建模块201用于构建二级结构预测模型。
模型训练测试模块202用于构建数据集对二级结构预测模型进行模型训练和测试处理。
模型应用模块203用于在模型训练和测试处理成功之后,获取任意RNA序列作为对应的第一RNA序列X;并将第一RNA序列输入训练测试成熟的二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据第一预测张量S进行RNA二级结构复现。
本发明实施例提供的一种RNA二级结构预测的处理装置,可以执行上述方法实施例中的方法步骤,其实现原理和技术效果类似,在此不再赘述。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,模型构建模块可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上确定模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所描述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,ASIC),或,一个或多个数字信号处理器(Digital Signal Processor,DSP),或,一个或者多个现场可编程门阵列(FieldProgrammable Gate Array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(System-on-a-chip,SOC)的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照前述方法实施例所描述的流程或功能。上述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。上述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,上述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线路((Digital Subscriber Line,DSL))或无线(例如红外、无线、蓝牙、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。上述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。上述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
图4为本发明实施例三提供的一种电子设备的结构示意图。该电子设备可以为实现前述实施例方法的终端设备或者服务器,也可以为与前述终端设备或者服务器连接的实现前述实施例方法的终端设备或服务器。如图4所示,该电子设备可以包括:处理器301(例如CPU)、存储器302、收发器303;收发器303耦合至处理器301,处理器301控制收发器303的收发动作。存储器302中可以存储各种指令,以用于完成各种处理功能以及实现前述实施例方法描述的处理步骤。优选的,本发明实施例涉及的电子设备还包括:电源304、系统总线305以及通信端口306。系统总线305用于实现元件之间的通信连接。上述通信端口306用于电子设备与其他外设之间进行连接通信。
在图4中提到的系统总线305可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI) 总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该系统总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口用于实现数据库访问装置与其他设备(例如客户端、读写库和只读库)之间的通信。存储器可能包含随机存取存储器(RandomAccess Memory,RAM) ,也可能还包括非易失性存储器(Non-Volatile Memory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器CPU、网络处理器(NetworkProcessor,NP)、图形处理器(GraphicsProcessing Unit,GPU)等;还可以是数字信号处理器DSP、专用集成电路ASIC、现场可编程门阵列FPGA或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
需要说明的是,本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中提供的方法和处理过程。
本发明实施例还提供一种运行指令的芯片,该芯片用于执行前述方法实施例描述的处理步骤。
本发明实施例提供了一种RNA二级结构预测的处理方法、装置、电子设备及计算机可读存储介质;创建一个二级结构预测模型,该模型由相对位置编码模块、序列编码模块、热力学限制矩阵编码模块、高维拓展模块、特征融合模块、前馈神经网络和分类预测网络构成;并从RNACentral数据库、RFAM数据库、bpRNA-1m数据库和ArchiveII数据库下载数据集来构建对应的预训练数据集、训练数据集和测试数据集;并基于预训练数据集对模型的序列编码模块进行预训练;并在预训练结束后,基于训练数据集和损失函数对模型进行整体训练;并在整体训练结束后,基于测试数据集对模型的置信度进行估计、并对模型的预测准确度进行评分,并在置信度和评分不满足预设的合理范围时对模型参数继续进行调整,从而进一步提高模型的泛化性;并在模型通过上述预训练、训练和测试之后,将模型应用到RNA二级结构预测场景中对完整、残缺甚至带有错误碱基因子的一维RNA序列进行二级结构预测,并根据预测结果进行二级结构复现。通过本发明,可以对完整、残缺甚至带有错误碱基因子的一维RNA序列进行正确的二级结构预测,降低了二级结构预测成本、提高了二级结构预测效率。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (13)
1.一种RNA二级结构预测的处理方法,其特征在于,所述方法包括:
构建二级结构预测模型;
构建数据集对所述二级结构预测模型进行模型训练和测试处理;
所述模型训练和测试处理成功,则获取任意RNA序列作为对应的第一RNA序列X;并将所述第一RNA序列输入训练测试成熟的所述二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据所述第一预测张量S进行RNA二级结构复现;
其中,所述二级结构预测模型用于对模型输入的一维RNA序列进行RNA二级结构预测并输出对应的二维RNA序列碱基因子配对概率张量;所述一维RNA序列包括序列长度L0的碱基因子,L0≥1;所述碱基因子类型包括腺嘌呤A类型、鸟嘌呤G类型、胞嘧啶C类型、尿嘧啶U类型;所述二维RNA序列碱基因子配对概率张量的形状为L0×L0×2;所述二维RNA序列碱基因子配对概率张量包括L0*L0个向量长度为2的预测向量;所述预测向量包括配对碱基概率和非配对碱基概率两个预测概率;
所述二级结构预测模型包括第一相对位置编码模块、第一序列编码模块、第一热力学限制矩阵编码模块、第一高维拓展模块、第一特征融合模块、第一前馈神经网络和第一分类预测网络;所述第一分类预测网络包括第一正则化卷积网络和第一全连接网络;
所述第一相对位置编码模块、所述第一序列编码模块和所述第一热力学限制矩阵编码模块的输入端与所述二级结构预测模型的输入端连接;
所述第一序列编码模块的输出端与所述第一高维拓展模块的输入端连接;所述第一序列编码模块的结构基于参考模型结构实现;所述参考模型结构包括RNA-FM模型的模型结构和ESM系列模型的编码+解码模块结构;所述ESM系列模型包括ESM-1b模型和ESM-1v模型;
所述第一特征融合模块的第一、第二输入端分别与所述第一热力学限制矩阵编码模块的输出端和所述第一高维拓展模块的输出端连接;
所述第一前馈神经网络包括输入层、隐藏层和输出层;所述输入层包括第一输入层单元和第二输入层单元,所述第一、第二输入层单元各自包括多个输入层节点;所述隐藏层包括第一隐藏层单元和第二隐藏层单元,所述第一、第二隐藏层单元各自包括多个隐藏层节点;所述第一输入层单元的输入端与所述第一相对位置编码模块的输出端连接;所述第二输入层单元的输入端与所述第一特征融合模块的输出端连接;所述第一隐藏层单元的各个隐藏层节点与所述第一输入层单元的所有输入层节点进行全连接;所述第二隐藏层单元的各个隐藏层节点与所述第二输入层单元的所有输入层节点进行全连接;所述输出层的输入端分别与所述第一隐藏层单元和所述第二隐藏层单元的输出端连接;所述输出层的输出端为所述第一前馈神经网络的输出端;
所述第一分类预测网络的输入端与所述第一前馈神经网络的输出端连接;所述第一分类预测网络的所述第一正则化卷积网络的输入端与所述第一分类预测网络的输入端连接、输出端与所述第一分类预测网络的所述第一全连接网络的输入端连接;所述第一分类预测网络的所述第一全连接网络的输出端与所述第一分类预测网络的输出端连接;
所述第一相对位置编码模块用于对模型输入的所述一维RNA序列的所述序列长度L0的所述碱基因子进行两两碱基因子相对位置编码处理得到对应的相对位置编码张量并输出;所述相对位置编码张量的形状为L0×L0×1;
所述第一序列编码模块用于对模型输入的所述一维RNA序列进行碱基因子特征编码处理得到对应的特征编码张量并输出;所述特征编码张量的形状为L0×D,D为预设的特征维度;
所述第一热力学限制矩阵编码模块中预置一个针对一维RNA序列的自由能函数以及一个基于自由能函数参数进行碱基因子配对概率计算的配分函数;所述第一热力学限制矩阵编码模块用于将模型输入的所述一维RNA序列代入所述自由能函数之后对所述自由能函数进行最小自由能求解得到对应的自由能函数参数张量;并将所述自由能函数参数张量代入所述配分函数进行碱基因子配对概率计算得到对应的碱基因子配对概率张量;并将得到的所述碱基因子配对概率张量作为对应的热力学限制矩阵输出;所述热力学限制矩阵的形状为L0×L0×1;
所述第一高维拓展模块用于对所述第一序列编码模块输出的所述特征编码张量进行高维张量拓展;在高维张量拓展时,对形状为L0×D的所述特征编码张量进行L0-1次复制并对所有L0个相同的特征编码张量按行叠加方式进行叠加得到对应的形状为L0×L0×D的行叠加张量;并对形状为L0×D的所述特征编码张量进行张量转置得到对应的形状为D×L0的转置特征编码张量;并对形状为D×L0的所述转置特征编码张量进行L0-1次复制并对所有L0个相同的转置特征编码张量按列叠加方式进行叠加得到对应的形状为L0×L0×D的列叠加张量;并对所述行叠加张量与所述列叠加张量进行张量相加得到对应的高维拓展张量并输出;所述高维拓展张量的形状为L0×L0×D;
所述第一特征融合模块用于对所述第一热力学限制矩阵编码模块输出的所述热力学限制矩阵和所述第一高维拓展模块输出的所述高维拓展张量进行特征融合;在特征融合时,对所述高维拓展张量和所述热力学限制矩阵做哈达玛积运算得到对应的第一哈达玛积张量,并对所述第一哈达玛积张量与所述高维拓展张量做张量相加得到对应的特征融合张量并输出;所述特征融合张量的形状为L0×L0×D;
所述第一前馈神经网络用于基于所述第一输入层单元将所述第一相对位置编码模块输出的所述相对位置编码张量通过线性全连接投射到所述第一隐藏层单元;并基于所述第二输入层单元将所述第一特征融合模块输出的所述特征融合张量通过线性全连接投射到所述第二隐藏层单元;并基于所述输出层对所述第一、第二隐藏层单元输出的两个隐藏层张量进行张量重叠得到对应的隐藏特征层张量;所述隐藏特征层张量的形状为L0×L0×Dhidden;Dhidden为预设的特征维度;
所述第一分类预测网络的所述第一正则化卷积网络用于基于卷积神经网络对所述隐藏特征层张量进行正则化处理得到对应的正则化张量;所述正则化张量的形状与所述隐藏特征层张量保持一致,为L0×L0×Dhidden;
所述第一分类预测网络的所述第一全连接网络用于根据所述第一正则化卷积网络输出的所述正则化张量进行回归分类预测得到对应的所述二维RNA序列碱基因子配对概率张量并输出;全连接张量的形状为。
2.根据权利要求1所述的RNA二级结构预测的处理方法,其特征在于,
设所述隐藏特征层张量为H{hi,j,k},并设所述正则化张量为R{ri,j,k},1≤i≤L0,1≤j≤L0,1≤k≤Dhidden;所述第一正则化卷积网络的正则化模型为:。
3.根据权利要求1所述的RNA二级结构预测的处理方法,其特征在于,
所述卷积神经网络的网络参数包括补码参数、膨胀系数、卷积步长和卷积核尺寸;所述卷积步长默认为1;所述补码参数、所述膨胀系数和所述卷积核尺寸满足预设的卷积核参数不定方程;
所述卷积核参数不定方程为:
,
其中,padding为所述补码参数,dilation为所述膨胀系数,kernelsize为所述卷积核尺寸。
4.根据权利要求1所述的RNA二级结构预测的处理方法,其特征在于,所述构建数据集对所述二级结构预测模型进行模型训练和测试处理,具体包括:
构建所述二级结构预测模型的预训练数据集、训练数据集和测试数据集;并使用交叉熵作为损失函数作为所述二级结构预测模型的模型训练损失函数;
按所述第一序列编码模块对应的参考模型的训练方式,基于所述预训练数据集对所述二级结构预测模型的所述第一序列编码模块进行编码模块预训练处理;
所述编码模块预训练处理成功,则基于所述训练数据集和所述模型训练损失函数对所述二级结构预测模型进行模型训练处理;
所述模型训练处理成功,则基于所述测试数据集对所述二级结构预测模型进行模型测试处理;
所述模型测试处理成功,则确认所述二级结构预测模型已经训练测试成熟。
5.根据权利要求4所述的RNA二级结构预测的处理方法,其特征在于,所述构建所述二级结构预测模型的预训练数据集、训练数据集和测试数据集,具体包括:
从RNACentral数据库和RFAM数据库中下载第一指定数量的RNA序列组成对应的所述预训练数据集;
从bpRNA-1m数据库下载bpRNA-1m-90数据集;从ArchiveII数据库下载ArchiveII数据集;所述bpRNA-1m-90数据集和所述ArchiveII数据集都包括多个RNA序列数据组;所述RNA序列数据组包括数据集RNA序列和对应的二级结构标签;所述数据集RNA序列为一维的RNA序列,包括多个碱基因子;所述二级结构标签由Lx*Lx个标签掩码组成,Lx为对应的所述数据集RNA序列的序列长度;各个所述标签掩码对应所述数据集RNA序列中的一对碱基因子,所述标签掩码的取值包括预设的配对掩码值和不配对掩码值;
对所述bpRNA-1m-90数据集中RNA序列长度超过第二指定数量的所述RNA序列数据组进行剔除;并按预设的训练数据百分比,从完成数据剔除的所述bpRNA-1m-90数据集中随机提取所述训练数据百分比的所述RNA序列数据组构成对应的所述训练数据集;并由所述bpRNA-1m-90数据集中剩余的所有所述RNA序列数据组和所述ArchiveII数据集的所有所述RNA序列数据组构成对应的所述测试数据集;所述第二指定数量默认为500,所述训练数据百分比默认为80%。
6.根据权利要求5所述的RNA二级结构预测的处理方法,其特征在于,所述基于所述训练数据集和所述模型训练损失函数对所述二级结构预测模型进行模型训练处理,具体包括:
步骤91,从所述训练数据集中选出一个所述RNA序列数据组作为对应的当前训练RNA序列数据组;并初始化第一计数器为0;
步骤92,将所述当前训练RNA序列数据组的所述数据集RNA序列和所述二级结构标签提取出来作为对应的当前训练RNA序列和当前训练二级结构标签;并对所述当前训练RNA序列的RNA序列长度进行统计得到对应的当前训练序列长度Ltr;所述当前训练二级结构标签由Ltr*Ltr个所述标签掩码组成;
步骤93,对所述当前训练RNA序列中的部分碱基因子进行随机修改或遮挡得到对应的第一训练RNA序列;
步骤94,将所述第一训练RNA序列输入所述二级结构预测模型进行二级结构预测处理,并将处理得到的所述二维RNA序列碱基因子配对概率张量作为对应的当前训练预测张量;所述当前训练预测张量的形状为Ltr×Ltr×2;所述当前训练预测张量包括Ltr*Ltr个训练预测向量;各个所述训练预测向量包括两个预测概率分别为训练配对碱基概率和训练非配对碱基概率;
步骤95,将所述当前训练二级结构标签作为真实概率量、所述当前训练预测张量作为预测概率量,代入所述模型训练损失函数进行交叉熵损失计算得到对应的第一损失值;
步骤96,对所述第一损失值是否满足于预设的损失值范围进行识别;若是则对所述第一计数器加1并转至步骤97;若否,则对所述二级结构预测模型的模型参数进行调制,并在参数调制结束时转至步骤94继续训练;
步骤97,对所述第一计数器是否超过预设的第一计数器阈值进行识别;若是,则结束模型训练并确认所述模型训练处理成功;若否,则从所述训练数据集中选出下一个所述RNA序列数据组作为新的所述当前训练RNA序列数据组,并转至步骤92继续训练。
7.根据权利要求5所述的RNA二级结构预测的处理方法,其特征在于,所述基于所述测试数据集对所述二级结构预测模型进行模型测试处理,具体包括:
步骤101,从所述测试数据集中选出一个所述RNA序列数据组作为对应的当前测试RNA序列数据组;并初始化第二计数器为0;
步骤102,将所述当前测试RNA序列数据组的所述数据集RNA序列和所述二级结构标签提取出来作为对应的当前测试RNA序列和当前测试二级结构标签;并对所述当前测试RNA序列的RNA序列长度进行统计得到对应的当前训练序列长度Ltst;所述当前测试二级结构标签由Ltst*Ltst个所述标签掩码组成;
步骤103,将所述当前测试RNA序列输入所述二级结构预测模型进行二级结构预测处理,并将处理得到的所述二维RNA序列碱基因子配对概率张量作为对应的当前测试预测张量;所述当前测试预测张量的形状为Ltst×Ltst×2;所述当前测试预测张量包括Ltst*Ltst个测试预测向量;各个所述测试预测向量包括两个预测概率分别为测试配对碱基概率和测试非配对碱基概率;
步骤104,根据所述当前测试预测张量进行置信度评估处理得到对应的第一置信度;
步骤105,根据所述当前测试预测张量和所述当前测试二级结构标签进行预测准确度评分得到对应的第一评分;
步骤106,对所述第一置信度识别满足预设的置信度范围且所述第一评分是否满足预设的评分范围进行识别;若所述第一置信度识别满足所述置信度范围且所述第一评分满足所述评分范围,则对所述第二计数器加1并转至步骤107;若所述第一置信度识别不满足所述置信度范围或所述第一评分不满足准确度范围,则对所述二级结构预测模型的模型参数进行调制,并在参数调制结束时转至步骤103继续测试;
步骤107,对所述第二计数器是否超过预设的第二计数器阈值进行识别;若是,则结束模型测试并确认所述模型测试处理成功;若否,则从所述测试数据集中选出下一个所述RNA序列数据组作为新的所述当前测试RNA序列数据组,并转至步骤102继续测试。
8.根据权利要求7所述的RNA二级结构预测的处理方法,其特征在于,所述根据所述当前测试预测张量进行置信度评估处理得到对应的第一置信度,具体包括:
将所述当前测试预测张量记为对应的当前测试预测张量S{sa,b,c};1≤a≤Ltst,1≤b≤Ltst, 1≤c≤2;sa,b,c=1对应所述测试配对碱基概率,sa,b,c=2对应所述测试非配对碱基概率;
根据所述当前测试预测张量S{sa,b}计算得到对应的第一限制矩阵M1{m1a,b}和第二限制矩阵M2{m2a,b},
;
对所述第一限制矩阵M1{m1a,b}、所述第二限制矩阵M2{m2a,b}和所述当前测试预测张量S{sa,b}分别进行列向量加和运算得到对应的第一加和矩阵{m1c}、第二加和矩阵{m2c}和第三加和矩阵S*{sc},1≤c≤Ltst,
;
对所述第一加和矩阵和所述第三加和矩阵S*进行哈达玛积运算得到对应的非配对张量SN;对所述第二加和矩阵和所述第三加和矩阵S*进行哈达玛积运算得到对应的配对张量SP,
;
根据所述配对张量SP和所述非配对张量SN计算得到对应的所述第一置信度,
,
其中,γ为所述第一置信度,max{SN}、min{SN}分别为所述非配对张量SN中的最大值和最小值,max{SP}、min{SP}分别为所述配对张量SP中的最大值和最小值。
9.根据权利要求7所述的RNA二级结构预测的处理方法,其特征在于,所述根据所述当前测试预测张量和所述当前测试二级结构标签进行预测准确度评分得到对应的第一评分,具体包括:
根据所述当前测试二级结构标签对所述当前测试预测张量中正确预测出的具有配对关系的碱基因子对数量进行统计生成对应的第一数量TP;并根据所述当前测试二级结构标签对所述当前测试预测张量中漏测的具有配对关系的碱基因子对数量进行统计生成对应的第二数量FN;并根据所述当前测试二级结构标签对所述当前测试预测张量中错误预测出的具有配对关系的碱基因子对数量进行统计生成对应的第三数量FP;
根据所述第一数量TP和所述第二数量FN计算对应的第一召回率Precall,
;
根据所述第一数量TP和所述第三数量FP计算对应的第一精准率Ppre,
;
根据所述第一精准率Ppre和所述第一召回率Precall计算对应的所述第一评分,。
10.根据权利要求1所述的RNA二级结构预测的处理方法,其特征在于,所述将所述第一RNA序列输入训练测试成熟的所述二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S,具体包括:
将所述第一RNA序列输入所述二级结构预测模型进行二级结构预测处理,并将处理得到的所述二维RNA序列碱基因子配对概率张量作为对应的所述第一预测张量S;所述第一RNA序列X的序列长度为L;所述第一RNA序列包括序列长度L的第一碱基因子xe,1≤e≤L;所述第一碱基因子的类型包括腺嘌呤A类型、鸟嘌呤G类型、胞嘧啶C类型、尿嘧啶U类型;所述第一预测张量S的形状为L×L×2;所述第一预测张量S包括L*L个第一预测向量se,f, 1≤f≤L;各个所述第一预测向量se,f包括第一配对碱基概率pe,f,1和第一非配对碱基概率pe,f,2。
11.一种用于执行权利要求1-10任一项所述的RNA二级结构预测的处理方法的装置,其特征在于,所述装置包括:模型构建模块、模型训练测试模块和模型应用模块;
所述模型构建模块用于构建二级结构预测模型;
所述模型训练测试模块用于构建数据集对所述二级结构预测模型进行模型训练和测试处理;
所述模型应用模块用于在所述模型训练和测试处理成功之后,获取任意RNA序列作为对应的第一RNA序列X;并将所述第一RNA序列输入训练测试成熟的所述二级结构预测模型进行二级结构预测处理得到对应的第一预测张量S;并根据所述第一预测张量S进行RNA二级结构复现。
12.一种电子设备,其特征在于,包括:存储器、处理器和收发器;
所述处理器用于与所述存储器耦合,读取并执行所述存储器中的指令,以实现权利要求1-10任一项所述的方法;
所述收发器与所述处理器耦合,由所述处理器控制所述收发器进行消息收发。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令被计算机执行时,使得所述计算机执行权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310114452.1A CN115881209B (zh) | 2023-02-15 | 2023-02-15 | 一种rna二级结构预测的处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310114452.1A CN115881209B (zh) | 2023-02-15 | 2023-02-15 | 一种rna二级结构预测的处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115881209A CN115881209A (zh) | 2023-03-31 |
CN115881209B true CN115881209B (zh) | 2023-05-02 |
Family
ID=85761151
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310114452.1A Active CN115881209B (zh) | 2023-02-15 | 2023-02-15 | 一种rna二级结构预测的处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115881209B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116705197B (zh) * | 2023-08-02 | 2023-11-17 | 北京深势科技有限公司 | 一种合成及逆合成分子图预测模型的处理方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751261A (zh) * | 2018-07-23 | 2020-02-04 | 第四范式(北京)技术有限公司 | 神经网络模型的训练方法和系统以及预测方法和系统 |
CN109215740A (zh) * | 2018-11-06 | 2019-01-15 | 中山大学 | 基于Xgboost的全基因组RNA二级结构预测方法 |
CN110010194A (zh) * | 2019-04-10 | 2019-07-12 | 浙江科技学院 | 一种rna二级结构的预测方法 |
CN110060728A (zh) * | 2019-04-10 | 2019-07-26 | 浙江科技学院 | 基于递归神经网络的rna二级结构预测方法 |
-
2023
- 2023-02-15 CN CN202310114452.1A patent/CN115881209B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115881209A (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ruehle | Data science applications to string theory | |
CN113535984B (zh) | 一种基于注意力机制的知识图谱关系预测方法及装置 | |
Wang et al. | Evolutionary extreme learning machine ensembles with size control | |
US20200167659A1 (en) | Device and method for training neural network | |
US20230075100A1 (en) | Adversarial autoencoder architecture for methods of graph to sequence models | |
CN106021990A (zh) | 一种将生物基因以特定的性状进行分类与自我识别的方法 | |
CN115881209B (zh) | 一种rna二级结构预测的处理方法和装置 | |
Sarkar et al. | An algorithm for DNA read alignment on quantum accelerators | |
CN113190688A (zh) | 基于逻辑推理和图卷积的复杂网络链接预测方法及系统 | |
CN115605876A (zh) | 边消息传递神经网络 | |
US11343325B2 (en) | Systems and methods for estimating typed graphlets in large data | |
WO2024045989A1 (zh) | 图网络数据集的处理方法、装置、电子设备、程序及介质 | |
CN115859302A (zh) | 源代码漏洞检测方法、装置、设备及存储介质 | |
CN110009048B (zh) | 一种神经网络模型的构建方法以及设备 | |
Downey et al. | alineR: An R package for optimizing feature-weighted alignments and linguistic distances | |
CN113257357B (zh) | 蛋白质残基接触图预测方法 | |
CN116090522A (zh) | 一种基于因果反馈的缺失数据集因果关系发现方法及系统 | |
CN114595641A (zh) | 组合优化问题的求解方法和系统 | |
Sharma et al. | Drugs–Protein affinity‐score prediction using deep convolutional neural network | |
Ruiz et al. | Sequentially learning the topological ordering of causal directed acyclic graphs with likelihood ratio scores | |
JP6993250B2 (ja) | コンテンツ特徴量抽出装置、方法、及びプログラム | |
Tosun et al. | Training restricted Boltzmann machines with overlapping partitions | |
CN116192650B (zh) | 一种基于子图特征的链路预测方法 | |
US11609936B2 (en) | Graph data processing method, device, and computer program product | |
CN112750074B (zh) | 小样本图像特征增强方法及系统、图像分类方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |