Sentieon | 应用教程:DNAscope使用机器学习模型进行胚系变异调用

举报
INSVAST 发表于 2024/02/24 17:47:05 2024/02/24
【摘要】 模型性能在该网址:https://github.com/Sentieon/sentieon-dnascope-ml上可以了解到最新的 DNAscope模型的性能和运行时间。请在https://github.com/Sentieon/sentieon-models上下载最新模型。在DNAscope中使用机器学习模型DNAscope中机器学习模型的目标从201808.01版本开始,DNAscop...

模型性能

在该网址:https://github.com/Sentieon/sentieon-dnascope-ml上可以了解到最新的 DNAscope模型的性能和运行时间。

请在https://github.com/Sentieon/sentieon-models上下载最新模型。


在DNAscope中使用机器学习模型


DNAscope中机器学习模型的目标


从201808.01版本开始,DNAscope允许使用一种模型来进行变异调用,通过改进候选检测和过滤,提高准确性。

Sentieon®可以提供使用GIAB真实数据子集训练的模型,您可以在https://github.com/genome-in-a-bottle找到模型。该模型是将样本HG001和HG005通过Sentieon® BWA-mem对齐和Sentieon®去重处理的流程,并使用变异调用结果来校准模型以适应真实数据集而创建的。


将机器学习模型与DNAscope结合使用


有两个单独的命令用于调用变异并应用机器学习模型。输入的BAM文件应该来自一个仅执行了比对和去重的流程,以匹配模型创建的方法论。

PCRFREE=true #PCRFREE=true means the sample is PCRFree, change it to false for PCR samples.
if [ "$PCRFREE" = true ] ; then
    sentieon driver -t NUMBER_THREADS -r REFERENCE -i DEDUPED_BAM \
    --algo DNAscope [ -d dbSNP ] --pcr_indel_model none \
    --model ML_MODEL/dnascope.model TMP_VARIANT_VCF
else
    sentieon driver -t NUMBER_THREADS -r REFERENCE -i DEDUPED_BAM \
    --algo DNAscope [ -d dbSNP ] --model ML_MODEL/dnascope.model \
    TMP_VARIANT_VCF
fi
sentieon driver -t NUMBER_THREADS -r REFERENCE --algo DNAModelApply \
  --model ML_MODEL/dnascope.model -v TMP_VARIANT_VCF VARIANT_VCF

注意:

如果您使用的数据不含PCR,则在运行时添加选项非常重要。--pcr_indel_model NONEDNAscope

根据是否涉及PCR,使用不同的先验概率来查找显著的INDEL变异,这可以通过选项来控制。默认设置适用于PCR样本。因此,对于无PCR样本,设置是很重要的。DNAscope--pcr_indel_model--pcr_indel_model--pcr_indel_model none

以下是命令所需的输入:

  • NUMBER_THREADS:计算中将使用的计算机线程数。我们建议该数量不超过您系统中可用的计算核心数量。

  • REFERENCE:参考FASTA文件的位置。您应该确保该参考文件与映射阶段使用的文件相同。

  • DEDUPED_BAM输入BAM文件的位置。

  • TMP_VARIANT_VCFDNAscope的变异调用输出的位置和文件名。这是一个临时文件。

  • VARIANT_VCF变异调用输出的位置和文件名。将创建相应的索引文件。该工具将使用.gz扩展名输出一个压缩文件。

  • ML_MODEL机器学习模型文件的位置。在DNAscope命令中,该模型将用于确定变异调用中使用的设置。

以下是命令可选的输入:

  • dbSNP:单核苷酸多态性数据库(dbSNP)的位置,该数据库将用于标记已知变异。您只能使用一个dbSNP文件。


使用DNAscope生成GVCF输出文件


从202112.04版本开始,DNAscope允许使用模型以Genomic VCF (GVCF)格式生成变异调用。GVCF格式包含有关在正在处理的样本中为参考等位基因正纯合的位点的附加信息。最近训练过的DNAscope模型是必需的,并且使用Sentieon version 202112.01或更早版本训练的DNAscope模型将导致错误。

要调用变异和应用机器学习模型,需要运行两个独立的命令。输入的BAM文件应来自仅进行了比对和去重复的流程,以匹配模型创建的方法论。

PCRFREE=true #PCRFREE=true means the sample is PCRFree, change it to false for PCR samples.
if [ "$PCRFREE" = true ] ; then
    sentieon driver -t NUMBER_THREADS -r REFERENCE -i DEDUPED_BAM \
    --algo DNAscope [ -d dbSNP ] --pcr_indel_model none \
    --model ML_MODEL/dnascope.model --emit_mode gvcf TMP_VARIANT_GVCF
else
    sentieon driver -t NUMBER_THREADS -r REFERENCE -i DEDUPED_BAM \
    --algo DNAscope [ -d dbSNP ] --model ML_MODEL/dnascope.model \
    --emit_mode gvcf TMP_VARIANT_GVCF
fi
sentieon driver -t NUMBER_THREADS -r REFERENCE --algo DNAModelApply \
  --model ML_MODEL/dnascope.model -v TMP_VARIANT_GVCF VARIANT_GVCF 

注意:

如果您使用的数据不含PCR,则在运行时添加选项非常重要。--pcr_indel_model NONEDNAscope

根据是否涉及PCR,使用不同的先验概率来查找显著的INDEL变异,这可以通过选项来控制。默认设置适用于PCR样本。因此,对于无PCR样本,设置是很重要的。DNAscope--pcr_indel_model--pcr_indel_model--pcr_indel_model none

以下是命令所需的输入:

  • NUMBER_THREADS:计算中将使用的计算机线程数。我们建议该数量不超过您系统中可用的计算核心数量。

  • REFERENCE:参考FASTA文件的位置。您应该确保该参考文件与映射阶段使用的文件相同。

  • DEDUPED_BAM:输入BAM文件的位置。

  • TMP_VARIANT_VCF:DNAscope的变异调用输出的位置和文件名。这是一个临时文件。

  • VARIANT_VCF:变异调用输出的位置和文件名。将创建相应的索引文件。该工具将使用.gz扩展名输出一个压缩文件。

  • ML_MODEL:机器学习模型文件的位置。在DNAscope命令中,该模型将用于确定变异调用中使用的设置。

以下是命令可选的输入:

  • dbSNP:单核苷酸多态性数据库(dbSNP)的位置,该数据库将用于标记已知变异。您只能使用一个dbSNP文件。

使用Sentieon version 202112.06及更高版本中的GVCFtyper算法,可以对GVCF输出文件进行单独或与其他样本的GVCF进行联合基因分型,并输出单个样本或多个样本的VCF文件。

sentieon driver -r REFERENCE --algo GVCFtyper \
  -v s1_VARIANT_GVCF -v s2_VARIANT_GVCF -v s3_VARIANT_GVCF VARIANT_VCF 
通过以下网址您可以查阅到Sentieon手册以获取有关GVCFtyper算法的详细信息:
https://support.sentieon.com/manual/usages/general/#gvcftyper-algorithm
注意:
GVCFtyper可以将来自多个测序平台的DNAscope GVCF基因型转化为单个多样本VCF。
GVCFtyper不支持将使用机器学习模型生成的DNAscope GVCFs与未使用机器学习模型的DNAscope GVCFs或其他工具生成的GVCFs混合进行联合基因分型。

机器学习模型的局限性


当使用带有机器学习模型的DNAscope时,即使软件不会报错,大部分DNAscope的选项也不应该使用。特别是应避免使用以下选项:
  • --var_type BND:使用带有机器学习模型的DNAscope与结构变异调用是不兼容的。请避免在这种情况下使用结构变异调用选项。
此外,如果使用了包括INDEL重对齐或BQSR等附加阶段的流程生成的输入BAM文件,可能会降低性能,因为这些阶段的影响已经融入到模型中。因此,建议避免在这种情况下使用经过这些额外阶段处理的BAM文件作为输入。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。