Un solo genoma de una especie no era suficiente
DNABERT de F16 se preentrenó centrándose en un solo genoma humano. Sin embargo, gran parte de la gramática de secuencias que define las funciones biológicas (promotores, potenciadores y sitios de empalme) está conservada a través de las especies. Entonces, ¿aprendería el modelo una "gramática del ADN" más generalizada si introdujéramos genomas de cientos de especies simultáneamente en el preentrenamiento? Esta pregunta dio origen a Nucleotide Transformer (2023, colaboración conjunta entre InstaDeep, NVIDIA y TUM).
Principio — Impulsar la generalización mediante escala y diversidad
Corpus de preentrenamiento multi-especie
El estudio de Nucleotide Transformer comparó diferentes corpus: el genoma de referencia humano, 3.202 genomas humanos y los genomas de 850 especies de diversos linajes. Es decir, no todas las variantes entrenaron con estos datos al mismo tiempo; el núcleo del análisis fue separar y examinar el impacto de la diversidad de datos sobre la generalización.
La hipótesis central de este enfoque es que, incluso utilizando la misma arquitectura de Transformer y la función de pérdida de modelado de lenguaje enmascarado (masked language modeling), a medida que aumenta la diversidad de especies en los datos de entrenamiento, el modelo captura mejor las señales biológicas verdaderamente conservadas en lugar del ruido específico de cada especie.
Escalado según el tamaño de los parámetros
Nucleotide Transformer se publicó en varias variantes con tamaños que van desde 50 millones hasta miles de millones de parámetros. A diferencia de F16, donde el tamaño del vocabulario de la tokenización por k-mer está fijo en , esta serie observa sistemáticamente cómo cambia el rendimiento en subtareas al aumentar conjuntamente la capacidad del modelo (número de parámetros) y la escala de los datos de preentrenamiento.
Esto traslada la lógica de las leyes de escalado (scaling laws) observadas en el procesamiento del lenguaje natural al dominio de los modelos de lenguaje genómico. Desde una perspectiva práctica, es fundamental notar que aumentar el modelo no siempre garantiza una mejora en el rendimiento; la calidad y la diversidad de los datos deben respaldarlo conjuntamente.
Ejemplo de cálculo manual: dimensión de embedding y clasificador downstream
Supongamos que un Nucleotide Transformer preentrenado extrae un vector de embedding de dimensión oculta al procesar una única secuencia de 1000 pb. En el caso de añadir un clasificador binario (por ejemplo, para determinar la presencia de un promotor) sobre este embedding, los parámetros que deben aprenderse en la capa lineal son aproximadamente
Es insignificante en comparación con el número de parámetros del propio modelo preentrenado (de cientos de millones a miles de millones). Esta es la ventaja práctica de los modelos fundacionales que también observamos en F11: el entrenamiento pesado se realiza solo una vez, y en el laboratorio real solo es necesario reentrenar un cabezal (head) ligero.
Práctica: Verificar la similitud de secuencias zero-shot con embeddings preentrenados
# Colab T4, capa gratuita. Las variantes grandes (miles de millones de parámetros) pueden provocar desbordamiento de memoria, por lo que# primero se practica con variantes pequeñas (del orden de 50 a 100 millones de parámetros).
from transformers import AutoTokenizer, AutoModelimport torch
# La ruta del modelo es un ejemplo. Consulte el repositorio oficial para obtener el nombre actual del punto de control publicado.# tokenizer = AutoTokenizer.from_pretrained("InstaDeepAI/nucleotide-transformer-v2-50m-multi-species")# model = AutoModel.from_pretrained("InstaDeepAI/nucleotide-transformer-v2-50m-multi-species")
def get_embedding(seq: str, tokenizer, model) -> torch.Tensor: \"\"\"Se introduce una secuencia para obtener el vector de incrustación con agrupación media (mean pooling).\"\"\" tokens = tokenizer(seq, return_tensors="pt")["input_ids"] with torch.no_grad(): outputs = model(tokens) # Agrupación media sobre el eje de longitud de la secuencia en la última capa oculta return outputs.last_hidden_state.mean(dim=1)
# Ejemplo de ejecución real (después de cargar el modelo y el tokenizador)# emb_a = get_embedding("ACGTGACCTGATCGATCGATCG", tokenizer, model)# emb_b = get_embedding("ACGTGACCTGATCGATCGATGG", tokenizer, model) # Diferencia de 1 nucleótido# cosine_sim = torch.nn.functional.cosine_similarity(emb_a, emb_b)# print(f"Similitud del coseno: {cosine_sim.item():.4f}")Utilizar este embedding tal cual permite realizar comparaciones de similitud zero-shot (como el cambio en el embedding antes y después de una variante de un solo nucleótido) y, si se dispone de una pequeña cantidad de datos etiquetados, se puede añadir un clasificador ligero encima para realizar un ajuste fino (fine-tuning).
Mapeo CS
- Transferencia de aprendizaje y leyes de escalado: Observar sistemáticamente la relación entre el número de parámetros, la escala de los datos y el rendimiento de la tarea consiste en trasladar directamente a la genómica la metodología de las leyes de escalado establecida en la investigación de modelos de lenguaje de gran tamaño.
- Aprendizaje de representaciones (Representation Learning): La estructura que comprime secuencias crudas en vectores de embedding de longitud fija para su reutilización en tareas downstream comparte la misma filosofía de diseño que los modelos fundacionales de célula única que se tratarán en F21.
- Generalización mediante diversidad de dominios: La estrategia de aumentar la generalización entrenando con datos de múltiples especies es estructuralmente idéntica al aprendizaje multidominio en visión por computadora, donde se combinan múltiples conjuntos de datos para el preentrenamiento.
Errores comunes
- La suposición de que un modelo más grande es siempre mejor: Aumentar solo el número de parámetros no garantiza una mejora proporcional en el rendimiento de las tareas downstream. Dado que, según la tarea, los modelos de tamaño intermedio suelen ser más estables, lo más seguro es comparar diversas variantes de tamaño.
- Confundir los embeddings universales con evidencia clínica: La similitud de embeddings zero-shot es solo una señal exploratoria; para identificar variantes con significado clínico, se requiere por separado un pipeline de predicción de patogenicidad validado, como las prácticas de AlphaMissense en F14 o Evo 2 en F20.
Para profundizar más
Este texto ha sido redactado y reestructurado por el equipo de investigación de BPD. Profundice consultando los artículos originales y los materiales oficiales.
- Artículo original de Nucleotide Transformer: Dalla-Torre et al. (2025), Nucleotide Transformer: building and evaluating robust foundation models for human genomics, Nature Methods 22, 287–297.
- Artículo de referencia sobre las leyes de escalado: Kaplan et al. (2020), Scaling Laws for Neural Language Models, preprint de arXiv.
Una vez asegurada la generalización con datos genómicos multiespecie, el siguiente desafío es la longitud de las propias secuencias. En la próxima entrega (F18), veremos cómo manejar contextos largos de más de 100,000 pares de bases con HyenaDNA y Enformer.