Creating a universal SNP and small indel variant caller with deep neural networks理解

来源:互联网 发布:弹弓淘宝网 编辑:程序博客网 时间:2024/06/14 05:38

一、deepvariant研究背景

1.NGS数据的测序过程存在测序错误,错误率~0.1-10% 不等,并且不同测序设备的错误类型存在不同


read1第一个碱基T 对应的质量字符为/,其质量值为ASCII(/)-33,为14,代表这个碱基被正确测序的概率为91%
第二个碱基C 对应的质量字符为A,其质量值为ASCII(A)-33,为32,代表这个碱基被正确测序的概率为99.9%


2.肿瘤样本的异质性


  • 1、Clone1、clone2基本上都有A突变,但是突变频率不同或相同:15%与85%
  • 2、Clone1有A突变,但是Clone2没有A突变,有B突变、C突变…
  • 3、Clone1内部的某个细胞有A突变没有B突变,但是其它细胞有B突变没有A突变
  • 4、用药前Clone1有A突变、没有B突变,用药后Clone1没有A突变了反而有B突变了…
3.传统算法的限制性:测序平台

当前存在许多工具,使用不同的统计算法寻找找到reads与参考基因组之间的序列差异。这些差异有的是真实序列变异,有的是测序过程中引入的假阳性变异。
比如GATK 使用逻辑回归对碱基错误率进行建模,使用隐马尔可夫模型去计算read likelihood,使用贝叶斯算法来检出变异,再使用高斯混合模型做变异过滤。综合使用这些模型使得GATK 具有很高的敏感性与特异性。但是GATK 只适用于illumina测序平台的数据,如果要应用于Proton/PGM等测序平台,则需要更换统计算法或人工参数矫正。
并且这些算法基本上都在胚系变异检出上存在较好效果。

GATK测序流程如下:


首先,通俗的讲,GATK是个检测基因突变的工具包,也是我们常说的call变异。对于我们测序得到的fastq文件,我们首先要对它进行质量控制、比对到参考基因组(BWA软件),这两步是有其他的软件来做的。第三步才是对比对到参考基因组的bam文件进行call变异,但是,对于比对后得到的bam文件来说,用GATK还要进行数据预处理:第一步是将sorted.bam进行标记重复(在制备测序文库的过程中,PCR扩增会带来一些测序偏差,所以要尽量去除PCR扩增形成的测序副本(duplicates),使用Picard工具的MarkDuplicates可以去除或标记副本片段。),
第二步是indel区域重比对(由于测序样本中indel的存在,比对时indel附近会出现大量的碱基错配。局部重比对就是将indel区域重新比对,使附近的错误率降到最低。首先使用GATK中的RealignerTargetCreator根据已知indel来生成重比对的区域,然后使用GATK中的IndelRealigner对目标区域进行重比对。)
第三步是碱基质量重校准(将比对信息文件里的碱基质量值重新校准,使得能够更加接近参考序列与真实序列之间错配的概率。使用GATK中的BaseRecalibrator工具进行根据一些已知的区域,生成一个质量校准所需的数据文件,利用GATK中的PrintReads工具将经过质量校准的数据输出。
第四步重校正之后才进行call变异,这时可以用到GATK的HaplotypeCaller,简称HC(目前用的最多的),能通过对活跃区域(也就是与参考基因组不同处较多的区域)局部重组装,同时寻找SNP和INDEL。
然后 再进行变异的过滤或校正,得到一个VCF文件,就是我们的变异结果文件。

二、谷歌deep variant做法


DeepVariant的做法就是利用了卷积神经网络架构inception v2识别图像。

首先它利用一种转换方法,把测序数据与标准基因组对比,并将比对结果转变成RGB图片(只取存在变异位点的位置),然后用已经训练完卷积神经网络来分析其中的变异位点,大致转化规则:

红色通道:代表ATCG四种碱基

绿色通道:序列质量 read quality

蓝色通道:正向还是反向链 strand

在一张图片中的第一行的像素代表reference序列,余下行代表各read。对每一个候选位点都生成一张这样的图片。

然后这些候选位点被分为三类:hom-ref(与参考相同),het(杂合型),hom-alt(纯合变异),利用卷积神经网络进行训练和分类。分类后给出该基因属于每一种基因型的概率,将概率最大值作为该基因的基因型。如上图该基因为het。

候选变异区域:这步主要考量候选区域支持的reads数,以及支持变异的read数与该区域总reads数之比),碱基质量值不小于10。另外仅对参考基因组上碱基是ACGT的区筛选潜在变异。

卷积神经网络的训练过程:将标准基因和已知变异类型的标记基因放在inception中训练。

DeepVariant和GATK分别采用两种检测变异的策略做了比较,不论是否遵从GATK best-practices,不管是反映在SNP还是indel的结果上,DeepVariant都胜出。

阅读全文
0 0
原创粉丝点击