生物信息遇上Deep learning(4): DeepNano

前言

我终于完成了我的毕业设计和我的毕业照,前后停滞了一个多月的时间,有一些个人原因也有毕业事情太多了,也希望大家见谅,还有,我目前还处于自学和初学的阶段,有些私聊的朋友想找我做项目啥的,本人时间和精力上都不太允许,望见谅!以后我会多更新的

今天还是讲讲另外一篇我看的文章,是做长序列的base calling的,是基于循环神经网路来做的, base calling 和variant calling比较相似,只不过一个是由于测序工具导致的测序错误,一个是由于发生了SNP或者indel导致的,因此这个文章所做的方法对于variant calling 也有一定的参考价值。

论文地址在2017年发表在PLOS ONE

源码地址:用的Theno写的

Motivation

这篇论文的动机是为了解决第三代测序技术的高错误率的问题,针对的是目前非常流行的三代测序技术MinION测序技术开发的,通过设计一个深度的双向循环神经网路,用于减少测序的错误率,检测出序列中的错误碱基,相比于主流深度学习

的方法,作者提出的演算法有更好的表现。

MinION测序技术简介

纳米孔测序技术是最近几年兴起的新一代测序技术。目前测序长度可以达到150kb。目前市场上广泛接受的纳米孔测序平台是Oxford Nanopore Technologies(ONT)公司的MinION纳米孔测序仪。它的特点是单分子测序,测序读长长,测序速度快,测序数据实时监控,机器方便携带等,但是和其他高通量的测序技术一样,测序的平均错误率相对二代测序更高,达到15%-20%,这么高的测序错误率也限制了三代测序技术在实际应用的发展。

不同碱基会产生不同的电磁强度,据此来区分不同碱基种类

BiGRU

? 作者指出,Oxford Nanopore公司做base calling是基于Metrichor计算云平台,并且是一个没有完全开源的演算法,其采用的演算法是hidden Markov model (HMM),也就是大名鼎鼎的隐马模型,基本思路是将测序片段分割成多个长度为k的子序列,并以此根据定义的k长度和不同序列的交叠区域,获得状态转移状态,最后生成一个类似于de Bruijn的图结构,因此图中主结构的概率可以看作为置信度,而多余的转移边可以看做是丢失、分割错误或者是indel,最后通过维特比演算法来计算最高的似然转移概率。

? 但是这种基于隐马的演算法有个最大的问题就是它不擅长处理长序列,而只是对于相对较短的序列检测有较好的效果,长距离的序列依赖无法通过k-mers来很好的表达,也无法捕捉长距离的序列关联。

因此,作者就才用了深度学习中的循环神经网路用于捕捉长序列之间的关联性,但传统的RNN对于长序列也会存在由于训练长度过长导致的记忆单元的限制,而目前一些改进的RNN就能有效地改善这个问题,例如长短期记忆网路LSTM和门循环神经网路GRU.

BiRNN结构示意

? 作者最终采用的是双向的GRU来序列长序列的关联,并用于base calling, 单向的RNN也可以做特征提取,但是由于可以前端和后端两个方向进行测序,可以有效提升测序的容量,因此把双向的信息加入会有更好的表现。

? GRU相比于LSTM的结构会更简单,只有两个控制门,分别是更新门和重置门,更新门的作用类似于LSTM的遗忘门和输入门。它决定了要丢弃哪些信息以及要添加的新信息,重置门是另一个门,它决定忘记过去的信息量,如果有兴趣继续了解GRU的原理的,请点这里,个人觉得还算是通俗易懂的。

网路损失

作者直接将RNN的隐层输出直接接全连接到输出层,对于每个输入的序列,通常有三种情况,最常见的就是有一个base 出错,第二种是没有发生出错,第三种是两个及以上的base出错,对于最后一种情况,作者统一简化成两个base出错的情况,因此,最后输出层就是维度为一种四个维度,分别是A、C、G、T和-,其中-表示没有发生错误,最后计算一个softmax交叉熵损失,比如A和G发生错误,那个vector就是[1,0,1,0,0]和全连接层的输出做个CE loss.

测试

作者采用SQK-MAP006测序机中的 Escherichia coli 和Klebsiella pneumoniae 作为训练集和验证集,并采用双向的测序结果作为网路输入,最终的准确率相比于ONT的Metrichor 有几个百分点的提升。

总结

这算是第一篇用RNN做calling的文章,整个框架也相对简单,主要的优点是利用了双向测序和双向RNN的结合,从而提升了准确率,而且整个测试的效率也非常高,缺点的话就是这个工具只是做到一个判断的作用,没有办法纠正两个以上的错误情况,还有就是网路比较小,有过拟合的情况。

欢迎大家关注我的知乎专栏:

从零开始生物信息学?

zhuanlan.zhihu.com图标

相同内容也可以关注我的微信公众号: 壹读基因:


推荐阅读:
相关文章