DeepVariant简介
DeepVariant是由Google开发的一款基于深度学习的变异检测工具,它利用卷积神经网络从下一代测序数据中识别遗传变异。作为一款开源工具,DeepVariant自发布以来就受到了学术界和产业界的广泛关注和应用。
DeepVariant的工作流程主要包括以下几个步骤:
- 读取比对后的测序数据(BAM或CRAM格式)
- 将数据转换为堆积图像张量
- 使用卷积神经网络对每个张量进行分类
- 将结果输出为标准的VCF或gVCF文件
DeepVariant支持在二倍体生物中进行生殖系变异检测,适用于多种测序技术和数据类型,包括:
- 全基因组测序(WGS)和全外显子组测序(WES)
- Illumina和Element的NGS数据
- PacBio HiFi数据
- Oxford Nanopore的R10.4.1 Simplex和Duplex数据
- PacBio HiFi与Illumina WGS的混合数据
- Complete Genomics的T7和G400数据
需要注意的是,DeepVariant目前不支持体细胞变异检测,也不适用于DNA拷贝数超过两份的样本。此外,DeepVariant的模型主要基于人类数据训练,对于其他物种可能需要进行适当调整。
DeepTrio: 基于DeepVariant的家系变异检测工具
作为DeepVariant的扩展,Google还开发了DeepTrio工具,专门用于家系(父母-子女三人组)或二人组的变异检测。DeepTrio继承了DeepVariant的深度学习框架,能够利用神经网络预测家系中的基因组变异。
DeepTrio支持以下类型的输入数据:
- Illumina全基因组或全外显子组测序数据
- PacBio HiFi数据
值得注意的是,DeepTrio的模型也是基于人类数据训练的。此外,DeepTrio可以只使用两个样本(子代和一个亲本)进行分析,并使用外部工具GLnexus合并输出的VCF文件。
DeepVariant的使用方法
DeepVariant提供了Docker镜像,这是最推荐的使用方式。以下是一个典型的运行命令示例:
BIN_VERSION="1.6.1"
docker run \
-v "YOUR_INPUT_DIR":"/input" \
-v "YOUR_OUTPUT_DIR:/output" \
google/deepvariant:"${BIN_VERSION}" \
/opt/deepvariant/bin/run_deepvariant \
--model_type=WGS \
--ref=/input/YOUR_REF \
--reads=/input/YOUR_BAM \
--output_vcf=/output/YOUR_OUTPUT_VCF \
--output_gvcf=/output/YOUR_OUTPUT_GVCF \
--num_shards=$(nproc) \
--logging_dir=/output/logs
在这个命令中,用户需要指定输入输出目录、参考基因组、BAM文件等参数。--model_type
参数需要根据数据类型选择合适的值(WGS、WES、PACBIO、ONT_R104或HYBRID_PACBIO_ILLUMINA)。
对于X和Y染色体的变异检测,DeepVariant提供了特殊的支持。用户可以使用--haploid_contigs
和--par_regions_bed
参数来指定单倍体区域和假常染色体区域(PAR)。
除了Docker,DeepVariant还提供了从源代码构建和预编译二进制文件等安装方式。用户可以根据自己的需求选择合适的安装方法。
为什么选择DeepVariant?
DeepVariant具有以下几个主要优势:
-
高准确性: DeepVariant在2020年PrecisionFDA Truth Challenge V2比赛中赢得了ONT、PacBio和多技术组合类别的所有基准区域第一名,在2016年PrecisionFDA Truth Challenge中获得最佳SNP性能奖。它在不同测序技术、样本制备方法和物种中都保持了高准确性。
-
灵活性: DeepVariant可以直接用于PCR阳性样本和低质量测序数据,同时也可以轻松调整以适应不同的测序技术和非人类物种。
-
易用性: 用户只需设置首选的最低质量阈值,无需进行复杂的过滤。
-
成本效益: 使用Google Cloud的单个非抢占式n1-standard-16机器,调用30x全基因组的成本约为11.8美元,调用外显子组的成本约为0.89美元。
-
速度: DeepVariant提供了多种加速选项,可以在64核CPU机器上快速处理各种支持的数据类型。
-
使用选项多样: DeepVariant可以通过Docker或二进制文件运行,支持本地硬件和云端环境,并支持GPU和TPU等硬件加速器。
DeepVariant的工作原理
DeepVariant的工作流程主要包括以下几个阶段:
- make_examples: 将比对后的读段转换为堆积图像张量。
- call_variants: 使用卷积神经网络对每个张量进行分类。
- postprocess_variants: 将神经网络的输出处理为标准的VCF或gVCF文件。
DeepVariant依赖于Nucleus库,这是一个用于读写常见基因组学文件格式(如SAM和VCF)的Python和C++代码库,专为与TensorFlow机器学习框架无缝集成而设计。
如何引用DeepVariant
如果您在研究中使用了DeepVariant,请引用以下文献:
Poplin, R., Chang, P. C., Alexander, D., et al. (2018). A universal SNP and small-indel variant caller using deep neural networks. Nature Biotechnology, 36(983-987). https://doi.org/10.1038/nbt.4235
如果您使用DeepVariant和GLnexus进行多样本变异检测,还请引用:
Yun, T., Li, H., Chang, P. C., et al. (2021). Accurate, scalable cohort variant calls using DeepVariant和GLnexus. Bioinformatics. https://doi.org/10.1093/bioinformatics/btaa1081
结语
DeepVariant作为一款基于深度学习的变异检测工具,以其高准确性、灵活性和易用性在基因组学领域赢得了广泛认可。它不仅支持多种测序技术和数据类型,还提供了丰富的使用选项,满足了研究人员和临床工作者的各种需求。随着测序技术的不断发展和人工智能在生物信息学中的深入应用,我们有理由相信DeepVariant将在未来发挥更大的作用,为精准医疗和个性化治疗提供更可靠的基因组学数据支持。