1.一种基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,包括:
1 1
将包含N ‑甲基腺苷修饰位点的人类物种RNA碱基序列为正样本和不包含N ‑甲基腺苷修饰位点的人类物种RNA碱基序列为负样本,进行word2vec词嵌入编码;
将经过word2vec词嵌入编码后的序列分为两路词嵌入编码序列;其中,在一个词嵌入编码序列首段添加分类符号并进行位置编码形成正向序列,对另一个词嵌入编码序列位置反转后并在其首段添加分类符号和进行位置编码形成反向序列;
将正向序列和反向序列均输入编码模块中进行训练,获得正向特征序列和反向特征序列;其中,所述编码模块包括多个依次串接的编码块;所述编码块包括:一个多头自注意力层和一个前向反馈全连接层,且每层之间通过残差连接和标准化层连接;
将正向特征序列的分类符号的值和反向特征序列的分类符号的值相加,后经过全连接1
神经网络层和二分类器,预测人类物种RNA碱基序列中是否包含N ‑甲基腺苷修饰位点;其包括:分类符号的值token随机初始化,并随着训练不断更新,将更新后的两路分类符号的值token相加以实现分类符号的值token上的信息汇聚;
将更新后的token相加后,再经过全连接神经网络层和sigmoid两分类器预测是否为甲基化位点。
2.如权利要求1所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,对RNA碱基序列进行word2vec词嵌入编码,具体包括:利用大小为3个碱基的窗口,每次滑动1个碱基的形式,在每条样本序列上滑动,直到窗口碰到序列最末端时滑动结束,由此获得105种不同的子序列和唯一的整数序列组成的字典;
每条样本101个碱基,利用大小为3个碱基的窗口,每次滑动1个碱基的形式,在每条样本序列上滑动,直到窗口碰到序列最末端时滑动结束,由此得到99个由3个碱基组成的子序列,使用word2vec的CBOW模型编码RNA序列,因此,每个子序列被转换成表征语义的词向量,再利用得到的词向量将RNA碱基序列中长度为101bp转换成99*100的矩阵,其中,99为预处理时词的个数,100为词向量维度。
3.如权利要求1所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,所述编码模块包括:3个依次串联的编码块。
4.如权利要求1所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,所述多头自注意力层是将多个自注意力的输出拼接融合而形成的;自注意力将序列的查询query与序列的键key之间先做矩阵相乘再做放缩,得到一个注意力得分,使用softmax函数对注意力得分做归一化处理,得到每个键的权重,将权重矩阵相乘序列的值得到交互注意力输出,自注意力对应的数学公式形式如下:T
上式中,Q是查询向量、K是键向量、V是值向量,dk为键向量K的维度大小,K 为键向量的转置,即向量为列向量时,取了转置后就是行向量;当输入序列为X时,Q、K、V都是从同样的输入序列X线性变换而来的,通过以下等式表示:Q
Q=XW
K
K=XW
V
V=XW
Q K V
上式中,X为n行向量组成,W为权重,W代表查询向量Q的权重,W代表键向量K的权重,W代表值向量V的权重,三个权重最初随机初始化,最终值由网络自己学习得到;
多头自注意力层,则是将自注意力中的查询、键和值分别h次线性投影到dk、dk和dv维度上,其中dv为值向量V的维度大小;在每个查询、键和值的投影版本上,并行执行自注意力机制,产生dv维度的输出值;将以上h次自注意力的输出值拼接起来,再次投影到线性网络,产生最终值;即所述多头自注意力层对应的数学公式形式如下:O
MultiHead(Q,K,V)=Concat(head1,...,headh)WQ K V
headi=Attention(QWi ,KWi ,VWi)上式中,Concat为将多个自注意力的输出headi拼接,i取值正整数,代表具体第i头数,OW为多个自注意力拼接的权重, R
为代表集合实数集,实数集是包含所有有理数和无理数的集;dk为键向量K的维度大小,此处dk=16;dv为值向量V的维度大小,此处dv=16;dmodel为输出维度,此处dmodel=128;
以上公式,使用h=8个并行注意力层或头,对于其中的每一个,使用dk=dv=dmodel/h=
16。
5.如权利要求1所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,所述前向反馈全连接层,包括:两个线性变换组成,中间有一个Relu激活函数;即所述前向反馈全连接层对应的数学公式形式如下:FFN(x)=max(0,xW1+b1)W2+b2
上式中,max()为ReLU激活函数;W1、W2、b1和b2均为前向反馈全连接层的参数。
6.如权利要求1所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,所述编码模块包括:编码模块的输入和输出的维度dmodel=128,多头数h=8,前向反馈网络维度d_ff=512,均采用4倍的大小关系,dropout=0.1。
7.如权利要求1所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,还包括:构建数据集,其具体包括:数据集的长度是101bp,数据集包括正负数据集的RNA样本序列以及所对应的类别标签,确定训练集与测试集;
1 1
其中,训练集和测试集中含有N‑甲基腺苷修饰位点的RNA作为正样本,没有N ‑甲基腺苷修饰位点的RNA作为负样本;
其中,所述数据集的样本序列是以共同基序A为中心,前后取值窗口大小为50bp,即每1
个mA正样本/负样本由101bp组成,在以共同基序A为中心前后取值窗口大小为50bp的样本序列中,当以共同基序A为中心前后的碱基序列没有50bp长时,不足的核苷酸使用‘‑’字符填充;训练集包括593个正样本以及5930个负样本,测试集包括114个正样本以及1140个负样本。
8.如权利要求7所述的基于attention的双向表示模型的RNA修饰位点预测方法,其特征在于,还包括:采用训练集对两个编码模块进行参数共享训练,其具体包括:输入正向序列的编码模块所训练的参数用于输入反向序列的编码模块训练,并且输入反向序列的编码模块训练出的参数用于输入正向序列的编码模块训练。