Data-Centric AI
La IA centrada en los datos mejora los modelos al corregir sistemáticamente las etiquetas, la cobertura y la calidad de los datos de entrenamiento, mientras mantiene fija la arquitectura del modelo.
La IA centrada en los datos es la práctica de mejorar un sistema de IA mediante el diseño sistemático de sus datos, incluida la coherencia de las etiquetas, la cobertura de las condiciones reales, el equilibrio entre clases y la limpieza, mientras el modelo y el código de entrenamiento se mantienen prácticamente fijos. Andrew Ng popularizó el término en 2021 y sostuvo que arquitecturas como las redes neuronales convolucionales y los transformers están lo bastante maduras como para que la mayoría de las aplicaciones obtengan más beneficios de unos datos mejores que de un modelo mejor. Su opuesto, la IA centrada en el modelo, mantiene fijo un conjunto de datos de referencia e itera sobre arquitecturas, funciones de pérdida y ajuste de hiperparámetros, como hacen la mayoría de las clasificaciones académicas.
El ejemplo más conocido de Ng procede de la inspección de chapas de acero: un detector de defectos estancado en una precisión del 76,2 % no mejoró con cambios centrados en el modelo, pero corregir las etiquetas incoherentes elevó la cifra al 93,1 %. Ese mismo año, DeepLearning.AI y Landing AI organizaron una competición de IA centrada en los datos en la que el modelo era fijo y los participantes solo podían mejorar un conjunto de datos ruidoso de clasificación de imágenes de números romanos escritos a mano, limitado a 10 000 imágenes.
Prácticas principales#
- Etiquetado de datos coherente: Los anotadores siguen normas escritas para resolver casos ambiguos, como decidir si una caja debe incluir el retrovisor lateral de un coche o cómo etiquetar a una persona medio oculta. Si dos anotadores resuelven estos casos de forma distinta, generan ruido en las etiquetas que ningún modelo puede compensar.
- Detección de errores en las etiquetas: Los desacuerdos de un modelo con las etiquetas proporcionadas señalan posibles errores. Un estudio de 2021 de Northcutt, Athalye y Mueller encontró errores en las etiquetas de una media de al menos el 3,3 % de los ejemplos de prueba en 10 conjuntos de datos populares y de al menos el 6 % del conjunto de validación de ImageNet.
- Recopilación específica y datos sintéticos: El análisis de errores por clase, escena, iluminación o tamaño del objeto revela dónde falla un modelo, y añadir ejemplos nuevos de esos casos concretos resulta más útil que añadir ejemplos al azar.
- Limpieza de datos: Eliminar archivos dañados, imágenes irrelevantes y duplicados, sobre todo los casi duplicados que aparecen tanto en la partición de entrenamiento como en la de prueba.
- Aumento de datos: Ampliar el rango de iluminación, escala y perspectiva que ve el modelo sin recopilar imágenes nuevas.
Los duplicados entre particiones provocan filtraciones de datos, que inflan las puntuaciones de prueba, y el desequilibrio entre clases permite que un modelo alcance una precisión alta mientras no detecta la clase poco frecuente que importa, como ocurre en la detección de defectos de fabricación, donde las piezas defectuosas son escasas. En el análisis de imágenes médicas, los conjuntos de datos son pequeños y las etiquetas de expertos, caras; por eso las etiquetas coherentes y revisadas importan más que el volumen.
El ciclo centrado en los datos#
Un equipo centrado en los datos mantiene fijo el modelo, estudia sus errores con herramientas como una matriz de confusión y modifica los datos en respuesta, como hace la lección El primer ajuste fino y el ciclo de iteración cuando convierte la clase más débil de un modelo YOLO26 en la siguiente mejora del conjunto de datos:
En este ejemplo se corrompe el 20 % de las etiquetas del conjunto de datos de dígitos escritos a mano de scikit-learn, se señalan los ejemplos cuya predicción fuera de pliegue no coincide con su etiqueta y se vuelve a entrenar el mismo modelo sin ellos:
import numpy as np
from sklearn.datasets import load_digits
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_predict, train_test_split
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
# Replace 20% of the training labels with random digits to mimic annotation errors
rng = np.random.default_rng(0)
noisy = y_train.copy()
flip = rng.random(len(noisy)) < 0.2
noisy[flip] = rng.integers(0, 10, flip.sum())
wrong = noisy != y_train # some random digits match the true label
# The model stays fixed; only the training data changes
model = LogisticRegression(max_iter=5000)
print(f"noisy labels: {model.fit(X_train, noisy).score(X_test, y_test):.1%} test accuracy")
# Flag examples whose out-of-fold prediction disagrees with their label, then drop them
keep = cross_val_predict(model, X_train, noisy, cv=5) == noisy
print(f"flagged {(~keep).sum()} examples, {(~keep & wrong).sum()} of {wrong.sum()} wrong labels")
print(f"cleaned labels: {model.fit(X_train[keep], noisy[keep]).score(X_test, y_test):.1%} test accuracy")La precisión de prueba aumenta del 87,0 % al 94,1 % sin cambiar el modelo. El filtro señala 354 ejemplos: 211 de las 213 etiquetas incorrectas y 143 ejemplos correctos pero inusuales, de modo que el conjunto depurado pierde algunos ejemplos válidos junto con casi todos los errores.
Para comparar cambios en los datos, hay que saber exactamente qué datos se utilizaron para entrenar cada modelo. Ultralytics Platform almacena versiones de conjuntos de datos inmutables: la opción Guardar versión del conjunto de datos del entrenamiento en la nube vincula cada modelo a la instantánea con la que se entrenó; Comparar versiones muestra las imágenes, anotaciones y clases que cambiaron entre dos instantáneas; y la pestaña Modelos del conjunto de datos muestra la versión del conjunto de datos de cada modelo junto a métricas destacadas como mAP50-95.
IA centrada en los datos y términos relacionados#
- Aprendizaje activo: Elige qué ejemplos sin etiquetar se etiquetarán a continuación, normalmente aquellos sobre los que el modelo tiene menos certeza. Es una técnica dentro de la IA centrada en los datos.
- Ciclo de retroalimentación de datos: El ciclo de producción en el que las entradas y los errores de un modelo desplegado se convierten en nuevos datos de entrenamiento, por lo que el trabajo centrado en los datos se repite con cada versión.
- Operaciones de aprendizaje automático (MLOps): Las prácticas de ingeniería que permiten versionar, entrenar, desplegar y supervisar modelos, y que hacen reproducibles y comparables los cambios en los datos.










