推荐阅读:变异检测到底应该用什么软件?

简介: 原文见:Validating generalized incremental joint variant calling with GATK HaplotypeCaller, FreeBayes, Platypus and samtools说到变异检测,可能大家第一个想到的工具就是GATK HaplotypeCaller。

原文见:Validating generalized incremental joint variant calling with GATK HaplotypeCaller, FreeBayes, Platypus and samtools

说到变异检测,可能大家第一个想到的工具就是GATK HaplotypeCaller。它很出名,所以用的人多,为什么用的人多?是因为大家听说他很准,但是到底有多准呢?其实大家都不会去深究,不过没关系,有人会帮我们去做评测。

在2014年就有一篇博客,用NA12878/NA12891/NA12892 trio数据集对GATK HaplotypeCaller, FreeBayes, Platypus 和samtools 这五个软件做了一个比较,下面是比较结果。

首先作者这几个工具同时对所有样本进行变异检测,因为它们都号称可以利用群体结构相互验证,提高结果的正确性。

img_0d95972751b386b4216b633b77afd26d.png
群体变异检测

先不要被这个条形图的明显反差误差,以为Platypus非常差,其实它们都在一个数量级上。在同一个数量级上,GATK的HaplotypeCaller在精度和准确上都的确比其他软件好。也可以发现samtools其实在找indels更加的粗犷,找到了更多本来不存在的indels,但是在snp上的表现其实是一致的。

下一步是比较群体、混池和单个样本检测。这里说明一下混池,所谓的混池就是把多个样本混在一起测序,丢失了个体信息。

为什么要研究单个样本的变异效果呢?主要是为了提高效率,便于并行。

img_7a5c40eb679b1804bbe2373b72da7cf3.png
混池检测表现
img_99140d4110513b4645383e3ae7f4d97c.png
单样本检测

这上面两个图其实和之前那个图类似,但是的确在精度上和准度上有些降低。并且samtools的假阳性依旧非常感人。

最后说说我的看法:

这篇博客主要是看检测后的数据集效果,而没有看变异过滤后效果。GATK的优势在于,能够利用机器学习的方法根据已有变异数据库进一步提高结果的准确度。但是对于植物而言,所能做的就是硬指标过滤。

因此,如果做人类,最推荐的工具是GATK,因为表现的确很好。而且人类还会不断增加样本,需要使用GVCFS文件解决N+1的问题

如果是植物,我目前就用freebayes了,效率高,表现也不错。同时强烈推荐阅读这篇文献"Single Nucleotide Polymorphism Identification in Polyploids: A Review, Example, and Recommendations"。

img_b7d2cca743a3384e6cb7dfdbdede3024.png
植物多倍体找SNP策略1

img_4dcd08c59a36a0c6375aecaa125e1040.png
植物多倍体找SNP策略2

还有这三篇文章(可惜已经被原作者删了):

目录
相关文章
|
3月前
|
算法
疲劳检测-闭眼检测(详细代码教程)
疲劳检测-闭眼检测(详细代码教程)
86 1
|
6月前
|
存储 算法 开发工具
文档管理软件版本控制算法的代码例子
提供一个基本的示例,展示如何使用Python中的字典数据结构来模拟一个简单的版本控制系统。
480 0
|
7月前
|
Cloud Native 前端开发 程序员
面试前的自我评估:识别自己的强项与待提升之处
面试前的自我评估:识别自己的强项与待提升之处
79 0
|
3月前
|
机器学习/深度学习 网络架构 计算机视觉
YOLOv5改进 | 检测头篇 | 利用DBB重参数化模块魔改检测头实现暴力涨点 (附代码 + 详细修改教程)
YOLOv5改进 | 检测头篇 | 利用DBB重参数化模块魔改检测头实现暴力涨点 (附代码 + 详细修改教程)
95 3
|
机器学习/深度学习 人工智能 数据库
【表面缺陷检测】表面缺陷检测数据集汇总
本文收集整理了16个表面缺陷检测相关的数据集,并对每个数据集的特点进行了简单的介绍。
【表面缺陷检测】表面缺陷检测数据集汇总
|
5月前
|
机器学习/深度学习 文字识别 算法
[Halcon&图像] 缺陷检测的一些思路、常规检测算法
[Halcon&图像] 缺陷检测的一些思路、常规检测算法
358 1
|
5月前
|
自然语言处理 数据挖掘 Java
20源代码模型的数据增强方法:克隆检测、缺陷检测和修复、代码摘要、代码搜索、代码补全、代码翻译、代码问答、问题分类、方法名称预测和类型预测对论文进行分组【网安AIGC专题11.15】
20源代码模型的数据增强方法:克隆检测、缺陷检测和修复、代码摘要、代码搜索、代码补全、代码翻译、代码问答、问题分类、方法名称预测和类型预测对论文进行分组【网安AIGC专题11.15】
141 0
|
5月前
|
人工智能 算法 TensorFlow
基于AidLux的工业视觉少样本缺陷检测实战
基于AidLux的工业视觉少样本缺陷检测实战
38 0
|
9月前
|
监控 算法
转:如何使用模糊算法提高监控软件的性能
如何才能提高监控软件的性能呢?其实,咱们可以通过模糊算法从各个角度着手,让监控系统变得更聪明更高效。模糊逻辑就是那种对付那些有点儿模糊不太确定信息的法宝,它在解决一些莫名其妙的情况时可是大显身手。在监控软件的世界里,模糊逻辑也是个大明星,可以帮助我们做出更明智的决策和更敏捷的响应,然后整个系统就会变得特别厉害!
48 0
|
10月前
|
机器学习/深度学习 算法 数据挖掘
Sentieon | 应用教程: 使用DNAscope对HiFi长读长数据进行胚系变异检测分析
Sentieon | 应用教程: 使用DNAscope对HiFi长读长数据进行胚系变异检测分析
71 0