[0036] 参考说明书附图1,下面通过实施来具体说明本发明的技术方案,但本发明并不局限于以下实施例子。
[0037] 步骤1:根据现有生物学知识,在染色体层面按照基因分布进行分割,根据基因存在位置获得SNP的有效位置区间信息,以待后续分割SNP。这里使用了CEU(Northern Europeans from Utah)的样本基因作为模拟。
[0038] 步骤2:假设基于以人群的病例病情对照,采用n个独立个体的基因序列,在染色体层面上对SNP进行翻译,获得所需输入数据。
[0039] 步骤3:如说明书附图4所示,根据步骤1中获得的位置信息,将步骤2中获得的SNP序列根据有效位置区间信息对SNP进行分组,分成多个SNP集;
[0040] 步骤4:如说明书附图5所示,对于任意一个给定的SNP集,它包含有k个个体,每个个体有p个SNP,令第i个个体的SNP为Zi1,Zi2,Zi3,……Zip,i≤k;忽略基因的一般性原则,将每个SNP编码成trinary fashion形式,根据等位基因的影响,对序列中的纯合子、杂合子Zij进行赋值,其中Zij=0,1,2。病例控制状态设为Y,第i个个体记作Yi,其中Yi=1为Case,Yi=0为Control。使用SNP集作为X输入,病例控制状态设为Y输入。
[0041] 步骤5:如说明书附图3所示,搭建双向LSTM模型;
[0042] 使用LSTM的结构的目的是为了增加一个记忆存储单元,用于存储信息,它的状态包含上一时刻的陈旧信息,同时又是下一时刻权值变化的依据,可以更好地挖掘数据中更深层面的内容, 由以下的函数复合得到:
[0043] it=σ(Wxixt+Whiht-1+Wcict-1+bi)
[0044] ft=σ(Wxfxt+Whfht-1+Wcfct-1+bf)
[0045] ct=ftct-1+ittanh(Wxcxt+Whcht-1+bc)
[0046] ot=σ(Wxoxt+Whoht-1+Wcoct+bo)
[0047] ht=ottanh(ct)
[0048] 公式中,Wxi为输入序列x与输入门之间的权值,Whi为隐藏层与输入门之间的权值;Wci为激活载体与输入门之间的权值,bi为输入门为t时的偏差值;
[0049] Wxf为输入序列x与遗忘门之间的权值,Whf为隐藏层与遗忘门之间的权值,Wcf为激活载体与遗忘门之间的权值,bf为遗忘门为t时的偏差值;
[0050] Wxc为输入序列x与激活载体之间的权值,Whc为隐藏层与激活载体之间的权值,bc为激活载体为t时的偏差值;
[0051] Wxo为输入序列x与输出门之间的权值,Who为隐藏层与输出门之间的权值;Wco为激活载体与输出门之间的权值,bo为输出门为t时的偏差值;
[0052] ht为t时刻的隐藏层;
[0053] 上述式子中σ是逻辑sigmoid函数,sigmoid(x)函数为: i,f,o,c分别为输入门(Input Gate)、遗忘门(Forget Gate)、输出门(Output Gate)和激活载体,其中i,f,o,c与h具有相同的维度,便于后续的矩阵计算,因此需要与隐藏向量h具有相同的大小。
[0054] 双向LSTM在水平的上具有相反的方向,故可以获得较远距离的内容,通过堆叠放置中间的隐藏层,这些隐藏层归属于递归神经网络,可以根据上一个隐藏层的输出,形成下一个隐藏层的输入。
[0055]
[0056] 定义h0=x,输出为y
[0057]
[0058] 假设其中用于隐藏层的层数为N,则隐藏层代表的向量hn通过n=1~N,t=1~T进行迭代计算获得。
[0059] 其中前馈网络隐藏序列为 反馈网络隐藏序列为
[0060]
[0061]
[0062]
[0063] 使用上述步骤中的SNP集作为X输入,病例控制状态设为Y输入,由于本例采用模拟数据,因此此处病例控制状态根据随机选定的某个SNP的tranary fashion形式,数值为2则设定为1,数值为0、1则设定为0,将两者输入到搭建的双向LSTM模型中,开始训练双向LSTM模型,并保存训练好的双向LSTM模型。
[0064] 步骤6:按照步骤1中处理序列的方法,对待预测的基因序列进行处理,并将处理完的基因序列输入训练好的双向LSTM模型,从而得出该待预测的基因序列获病的概率。
[0065] 以上所述仅为本发明的一个实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。