Cuando no hay genoma de referencia: el momento de trazar el propio mapa
Hasta ahora, en S03 a S16, todo lo que hemos hecho ha sido mapear las lecturas contra un genoma de referencia. Tanto BWA-MEM como GATK se basan en la premisa de que existe un mapa completo, representado por la secuencia de referencia humana.
Sin embargo, consideremos un caso de infección nosocomial donde se ha cultivado una bacteria de identidad desconocida. Ni siquiera está claro la especie. No hay un mapa al cual mapear. En este punto, debemos reconstruir el genoma desde cero utilizando millones de lecturas. Esto es lo que se conoce como ensamblaje de novo. Es el momento en que el grafo de De Bruijn, aprendido en M23, cobra vida mediante la herramienta práctica SPAdes.
Grafo de De Bruijn: repaso rápido
Dividimos las lecturas en fragmentos de longitud (k-mers), colocamos cada (k−1)-mer como un nodo y cada k-mer como una arista. Así, el ensamblaje del genoma se convierte en un problema de encontrar un camino euleriano que pase exactamente una vez por cada arista. Es el mismo grafo que dibujamos a mano en M23.
En datos reales, este grafo no es limpio. Presenta tres tipos de contaminación:
- Puntas (ramas cortas terminales): errores de secuenciación en los extremos de las lecturas.
- Burbujas (dos caminos que se separan y vuelven a unirse): variantes heterocigotas o errores.
- Secuencias repetidas: cuando una misma secuencia aparece varias veces en el genoma, el grafo se enreda y la ruta deja de ser única.
La calidad de un ensamblador depende de qué tan bien logre limpiar estos tres elementos.
Idea central de SPAdes: no elegir una sola k, sino usar varias
El problema del grafo de De Bruijn es el dilema del valor de .
- Si es pequeño: las regiones de bajo cobertura se conectan, pero el grafo se enreda gravemente en las secuencias repetidas.
- Si es grande: las repeticiones se resuelven mejor, pero el grafo se fragmenta en zonas de baja cobertura.
La solución de SPAdes es elegante: en lugar de elegir una sola, utiliza varias de forma secuencial. Transfiere información obtenida del grafo con una pequeña (por ejemplo, 21) al grafo con una mayor (por ejemplo, 55, 77), refinando progresivamente el resultado. Esta estrategia multi-k es la clave que ha convertido a SPAdes en el estándar de facto para el ensamblaje de microorganismos. Se trata de capturar la imagen general con baja resolución y luego añadir detalles con alta resolución, un enfoque similar al pirámide de imágenes en el procesamiento de imágenes.
Además, SPAdes incorpora dos elementos más:
- BayesHammer: corrige los errores de secuenciación de las lecturas mediante un enfoque bayesiano antes de construir el grafo. Utiliza la distribución de frecuencia de los k-mers, asumiendo que "los k-mers demasiado raros tienen alta probabilidad de ser errores".
- Resolución de repeticiones con información de pares de lecturas: utiliza la información de distancia entre los pares de lecturas para decidir cuál de las rutas separadas por una repetición es la correcta.
¿Cómo se mide la calidad del ensamblaje: el N50?
Los resultados del ensamblaje no son un único cromosoma circular perfecto, sino varios fragmentos continuos (contigs). ¿Cómo resumir la calidad con un solo número? La longitud media puede ser engañosa, ya que está muy influenciada por los miles de fragmentos cortos. Por eso se utiliza el N50.
Definición: al ordenar los contigs de mayor a menor longitud y acumular sus tamaños, es la longitud del contig en el punto en el que se supera por primera vez el 50 % de la longitud total del ensamblaje.
Cálculo manual del N50
Supongamos que las longitudes de los contigs son [500, 400, 300, 200, 100] kb, con una suma total de 1500 kb. La mitad es 750 kb.
| contig | longitud (kb) | acumulado (kb) |
|---|---|---|
| C1 | 500 | 500 |
| C2 | 400 | 900 ← supera 750 |
| C3 | 300 | 1200 |
| C4 | 200 | 1400 |
| C5 | 100 | 1500 |
El valor acumulado supera por primera vez los 750 en C2 (acumulado 900). Por lo tanto, N50 = 400 kb. Un N50 más grande indica que el ensamblaje está menos fragmentado. Sin embargo, si el N50 es grande, pero la longitud total del genoma está inflada, podría tratarse de un error de ensamblaje; por lo tanto, siempre se debe revisar junto con QUAST.
Ensamblaje directo en Galaxy (sin código y con CLI)
Si la línea de comandos resulta abrumadora, puede ejecutar todo el flujo de trabajo haciendo clic en usegalaxy.eu. Se proporcionan 250 GB de almacenamiento gratuito y recursos de GPU/CPU.
Flujo de trabajo de Galaxy (sin código)
- Upload: cargue dos archivos de lecturas emparejadas pequeñas de E. coli (por ejemplo, una submuestra de SRA).
- FastQC → fastp: verificación de calidad y recorte, como se aprendió en la lección S02.
- SPAdes: especifique forward/reverse para las entradas; seleccione el modo
--isolateo careful. Se recomienda k automático (auto). - QUAST: introduzca contigs.fasta para obtener un informe de N50, longitud total y errores de ensamblaje.
- Bandage: visualice assembly_graph.gfa para verificar visualmente los nudos repetitivos.
La misma tarea con CLI
# Se recomienda instalar SPAdes con conda (ver sección posterior S sobre Pixi/uv)spades.py \ -1 reads_R1.fastq.gz \ -2 reads_R2.fastq.gz \ --isolate \ -k 21,33,55,77 \ -o ecoli_assembly \ -t 4 -m 16
# Evaluación de la calidadquast.py ecoli_assembly/contigs.fasta -o quast_report--isolate es el modo diseñado para cultivos puros de cepa única. Si las muestras clínicas presentan baja cobertura y distribución desigual, --careful (limitado a genomas pequeños) reduce los errores de ensamblaje. Especificar -k permite controlar directamente la etapa multi-k.
Al realizar una búsqueda de BLAST en NCBI con el contig más largo del contigs.fasta de los resultados, comenzará a revelarse la identidad de esta bacteria desconocida. En el siguiente episodio S24, se confirmará su identidad mediante la taxonomía.
Mapeo CS
- Camino euleriano: Un camino que recorre cada arista exactamente una vez en un grafo de De Bruijn. Está directamente relacionado con la sección de recorrido de grafos de DryBench. A diferencia del camino hamiltoniano (OLC), se resuelve en tiempo polinómico.
- Simplificación de grafos: La eliminación de puntas y la fusión de burbujas son operaciones de contracción del grafo. Su principio es similar al de la optimización de grafos de flujo de control en compiladores.
- multi-k = pirámide de imágenes: El enfoque multiescala que transfiere información desde baja hasta alta resolución es afín a las pirámides de imágenes en visión por computadora y al método multigrid en análisis numérico.
- Hashing de k-mers: Contar k-mers mediante hashing se conecta con el índice FM/indexado por hash de M15.
Defectos comunes
- Ensamblaje directo sin recorte — Los adaptadores y los extremos de baja calidad provocan una explosión de puntas en el grafo. FastQC/fastp son esenciales como pasos previos.
- Uso de
--carefulen genomas grandes — Este modo está dedicado exclusivamente a genomas pequeños (bacterianos). En genomas eucariotas grandes, la memoria y el tiempo se disparan. - Conformarse solo con ver N50 — Si la longitud total difiere significativamente del tamaño esperado del genoma (hinchazón o pérdida), es una señal de errores de ensamblaje o contaminación. Consulte también los errores de ensamblaje (misassembly) de QUAST y la distribución de GC.
- Forzar un solo valor de k — Esto elimina la ventaja principal de SPAdes, que es multi-k. A menos que haya una razón especial, utilice auto o varios valores de k.
Para profundizar más
El texto es una narración reconstruida directamente por BPD. Para profundizar, utilice los siguientes materiales canónicos.
- Galaxy Training Network — Tutoriales de De Bruijn Graph Assembly y Unicycler assembly (training.galaxyproject.org, con subtítulos y documentación completos). Es el estándar para prácticas sin código.
- Artículo original (SPAdes): Bankevich et al. (2012), SPAdes: A New Genome Assembly Algorithm and Its Applications to Single-Cell Sequencing, Journal of Computational Biology 19:455. Origen de multi-k y BayesHammer.
- Herramienta de evaluación: Gurevich et al. (2013), QUAST: quality assessment tool for genome assemblies, Bioinformatics 29:1072. Estándar para las métricas N50 y de contigación.
- Visualización: Wick et al. (2015), Bandage: interactive visualization of de novo genome assemblies, Bioinformatics 31:3350 (rrwick.github.io/Bandage). Herramienta para la visualización de los nodos del grafo.
Con solo lecturas cortas, no es posible resolver completamente las secuencias repetitivas, por lo que quedan fragmentos. En el siguiente capítulo S23, avanzaremos hacia el ensamblaje híbrido (Unicycler) combinando lecturas largas para superar esta limitación.