Volver a la lista

Alternativas a Strelka2 y FreeBayes para la llamada de variantes: elige tu herramienta según los resultados del benchmark

Strelka2 y FreeBayes adoptan enfoques estadísticos distintos a los de GATK. Se resume con sentido práctico los principios de ambos llamadores de variantes, cuándo son preferibles y cómo realizar la evaluación comparativa (benchmarking) utilizando el conjunto de referencia GIAB.

Intermedio
|
18min
|
Verificado (2026-07-22)
variant caller benchmarkingStrelka2FreeBayes
Progreso0/120 (0%)

¿Por qué es útil conocer los llamadores alternativos en la práctica?

Ya hemos visto GATK4 y DeepVariant; ahora es momento de revisar los llamadores alternativos. Strelka2 y FreeBayes son herramientas de código abierto con una larga trayectoria, que pueden superar a GATK en ciertas situaciones, tener costos computacionales mucho menores o estar especializadas para bibliotecas específicas.

El objetivo de esta sección es desarrollar la intuición necesaria para responder a la pregunta: «¿Qué llamador es más ventajoso en esta situación?» al recibir un nuevo proyecto.

Strelka2 — El llamador propio de Illumina

Strelka2 es un llamador desarrollado por Illumina y publicado como código abierto en 2018. Admite tanto el modo germline como el somático.

Particularidades del principio

  • Modelo genotípico empírico: Al igual que HaplotypeCaller, realiza un ensamblaje local, pero depende en gran medida de parámetros empíricos previamente entrenados para su modelo probabilístico.
  • Especializado para secuenciadores Illumina: Está ajustado a los patrones de error de NovaSeq, HiSeq X y MiSeq.
  • Fortaleza en tumores somáticos (tumor-normal): Presenta alta sensibilidad clínica en pares tumor-normal.

Comando de ejecución

bash
# Ejecución germinal
configureStrelkaGermlineWorkflow.py \
--bam=S1.bam \
--referenceFasta=hg38.fa \
--runDir=strelka_germline_S1
strelka_germline_S1/runWorkflow.py -m local -j 16
# Ejecución somática
configureStrelkaSomaticWorkflow.py \
--normalBam=normal.bam \
--tumorBam=tumor.bam \
--referenceFasta=hg38.fa \
--runDir=strelka_somatic_S1
strelka_somatic_S1/runWorkflow.py -m local -j 16

El comando Configure genera el script del flujo de trabajo y este se ejecuta efectivamente. Un concepto similar al de Nextflow.

Puntos fuertes

  • Velocidad: Entre 1/3 y 1/5 del tiempo que tarda GATK4.
  • Validación en Illumina: En varias pruebas comparativas, el F1 de los indels es ligeramente superior al de GATK.
  • Integración con la gestión de flujos de trabajo: Garantiza la reproducibilidad mediante Configure + runWorkflow.

Puntos débiles

  • Desventaja en especies no humanas: Al estar ajustado para humanos con Illumina, GATK es más estable en otras especies.
  • Dificultad de personalización: No admite el reentrenamiento del modelo.

FreeBayes — llamador de haplotipos lógicamente flexible

FreeBayes es una herramienta de código abierto creada por Erik Garrison (el mismo autor del grafo pangenómico). Se mantiene activamente en GitHub.

Particularidades del principio

  • Basado en haplotipos: Al igual que HaplotypeCaller, crea haplotipos locales y calcula la verosimilitud a partir de las lecturas.
  • Soporte para poliploides: Permite especificar el número de conjuntos cromosómicos mediante -p N (2n en humanos, 4n·6n·8n en plantas, haploide en microorganismos).
  • Soporte para muestras mixtas: Permite la llamada incluso cuando múltiples individuos están mezclados en un solo archivo BAM (secuenciación de pool).

Comando de ejecución

bash
freebayes \
--ploidy 2 \
--fasta-reference hg38.fa \
--targets exome.bed \
--min-alternate-fraction 0.20 \
S1.bam > S1.freebayes.vcf

Basta con configurar unas pocas opciones.

  • --ploidy: ploidía; 2 en humanos, 4, 6 u 8 en plantas y 1 en bacterias.
  • --min-alternate-fraction: VAF mínima; 0,20 es un umbral clínico habitual.
  • --targets: intervalos objetivo.

Ventajas

  • Poliploidía: como GATK se centra principalmente en humanos diploides, FreeBayes resulta útil en proyectos de plantas y microorganismos.
  • Rapidez en genomas pequeños: la llamada de variantes de un genoma microbiano de 5 Mbp tarda pocos minutos.
  • Comunidad abierta: las incidencias suelen recibir respuestas rápidas.

Desventajas

  • Sensibilidad en referencias humanas: algo inferior a GATK o DeepVariant.
  • Filtrado mínimo: requiere añadir un filtrado posterior, por ejemplo con bcftools filter.

¿Cuándo usar qué programa? Matriz de decisión práctica

SituaciónPrimera opciónSegunda opción
WGS/WES humano en clínica estándarGATK4DeepVariant
Máxima sensibilidad en WGS humanoDeepVariantGATK4
Pares tumor-normal humanos, somáticasMutect2Strelka2
Solo tumor humanoMutect2 (PoN)Strelka2
Lecturas largas PacBio HiFiDeepVariantClair3
Genomas microbianos haploidesFreeBayesSnippy (Bcftools)
Plantas y especies acuáticas poliploidesFreeBayesGATK4 (opción de ploidía)
Escala pequeña y pocas muestrasStrelka2Filtro rígido de GATK4
Máxima prioridad a la reproducibilidad de un artículoLa misma herramienta del artículo original

Esta matriz sirve como base para las decisiones prácticas. Como los resultados de los benchmarks se actualizan cada año, conviene revisar los informes más recientes al iniciar un proyecto.

Metodología de las pruebas comparativas: GIAB + hap.py

¿Cómo pueden compararse los llamadores de variantes de forma justa? Existe un protocolo estándar.

1. Definir los criterios con el conjunto de referencia GIAB

El consorcio Genome in a Bottle (GIAB) combinó múltiples plataformas y llamadores para crear conjuntos de verdad de siete muestras humanas (HG001–HG007), con regiones y genotipos de alta confianza. Estos conjuntos son el estándar de referencia para benchmarking.

  • HG001 (NA12878): dispone del conjunto de verdad más completo.
  • HG002–HG007: amplían la diversidad representada.

2. Comparar con hap.py

hap.py, desarrollado por Illumina, es una herramienta estándar de comparación.

bash
hap.py \
truth.vcf.gz \
S1.gatk.vcf.gz \
-f confident_regions.bed \
-r hg38.fa \
-o gatk_vs_truth

Se muestran los siguientes indicadores en los resultados.

  • Precision (Precisión): Proporción de verdaderos positivos entre las variantes llamadas.
  • Recall (Sensibilidad): Proporción de verdaderos positivos que fueron llamados.
  • F1: Media armónica.
  • Por tipo (SNP · INDEL): Rendimiento por cada tipo de variante.

3. vcfeval

vcfeval de RTG Tools también es estándar. Los resultados coinciden en gran medida con los de hap.py.

Cálculo manual — ¿Qué indica el F1?

Resultados de un benchmark hipotético.

LlamadorPrecisionRecallF1
GATK4 HC0.9950.9930.994
DeepVariant0.9960.9970.996
Strelka20.9940.9950.994
FreeBayes0.9870.9830.985

En el estándar de SNP para WGS humano, el orden por sensibilidad es: DeepVariant ligeramente por delante, GATK/Strelka2 dominantes y FreeBayes algo rezagado. El significado práctico de cada valor:

  • Precision 0.996 = De 1 millón de variantes llamadas, 4.000 son falsos positivos.
  • Recall 0.997 = De 1 millón de verdaderos positivos, se omiten 3.000.

En un flujo de trabajo clínico, 4.000 falsos positivos son significativos y requieren curación posterior. Esta curación ocupa la mayor parte del tiempo práctico.

Ensemble — Combinación de múltiples llamadores

Existe un enfoque que combina los resultados de varios llamadores para maximizar la sensibilidad.

  • Union: Variantes llamadas por al menos un llamador → Sensibilidad máxima · Aumento de falsos positivos.
  • Intersection: Variantes llamadas por todos los llamadores → Especificidad máxima · Disminución de la sensibilidad.
  • 2-of-3: Al menos 2 de 3 llamadores están de acuerdo → Punto de equilibrio.

nf-core/sarek admite este enfoque de ensemble. En cohortes a gran escala, el ensemble aporta un valor práctico real en la mejora de la sensibilidad.

Práctica con Colab — Benchmark pequeño de chr22

bash
!apt-get install -y freebayes samtools bcftools >/dev/null
# Ejemplo pequeño
!wget -q https://sra-pub-src-1.s3.amazonaws.com/HG002/HG002_chr22.bam
!samtools index HG002_chr22.bam
# Llamada de variantes con FreeBayes
!freebayes -f hg38_chr22.fa HG002_chr22.bam > freebayes.vcf
!bcftools view freebayes.vcf | head -30

Como la instalación de hap.py es relativamente pesada, se recomienda ejecutarlo por separado mediante Docker.

Mapeo de características

  • Haplotipos bayesianos: FreeBayes utiliza un enfoque de haplotipos locales similar al de HaplotypeCaller.
  • Parámetros empíricos: Strelka2 utiliza estadísticas previamente entrenadas.
  • Benchmarking (precision/recall/F1): consulte la unidad de DryBench sobre marcos de benchmarking (benchmarking-frameworks).

Conclusión

La elección del llamador depende del contexto; la matriz de esta unidad sirve como mapa para esa decisión. En la siguiente unidad (S14) veremos herramientas especializadas en variantes estructurales grandes que los llamadores de lecturas cortas pueden pasar por alto: Manta, Delly y GRIDSS.

Para profundizar

  • Kim S. et al. (2018), Strelka2: fast and accurate calling of germline and somatic variants. Nature Methods 15:591. Artículo original de Strelka2.
  • Garrison E. & Marth G. (2012), Haplotype-based variant detection from short-read sequencing. arXiv:1207.3907. Artículo original de FreeBayes.
  • Zook J.M. et al. (2019), An open resource for accurately benchmarking small variant and reference calls. Nature Biotechnology 37:561. Protocolo de benchmarking de GIAB.
  • precisionFDA Truth Challenge (https://precision.fda.gov/challenges): competición de benchmarking de llamadores de variantes.
  • nf-core/sarek (https://nf-co.re/sarek): flujo de trabajo de conjunto basado en Nextflow.

Conservar la matriz de llamadores como referencia al inicio de cada proyecto acelera considerablemente la toma de decisiones. En la siguiente unidad pasaremos a las herramientas de variantes estructurales.

💬 Preguntas y comentarios

0 comentarios

Puedes publicar sin iniciar sesión. Los comentarios de invitados no pueden editarse ni eliminarse después.

0/2000

Cargando...