Saltar al contenido principal

Guía del Módulo: Modelos

El módulo de Modelos gestiona el ciclo completo de experimentación de ML: definir tareas, entrenar modelos, optimizar hiperparámetros, evaluar resultados, generar predicciones e interpretar el comportamiento del modelo mediante herramientas de explicabilidad. Todo está organizado alrededor de Sesiones — experimentos autocontenidos que agrupan modelos, métricas, predicciones y resultados de explicabilidad en un solo lugar.


Conceptos Fundamentales

Tareas

Una tarea define el tipo de problema de aprendizaje automático. Determina qué modelos están disponibles, qué tipos de columnas son válidos como entradas y salidas, y qué métricas de evaluación se calculan.

TareaTipos de entradaTipo de salidaCaso de uso
Clasificación TabularFloat, Integer, CategoricalCategorical (1 columna)Predecir una categoría a partir de datos estructurados
Clasificación de TextoTextoCategoricalClasificar documentos, reseñas, mensajes
RegresiónFloat, Integer, CategoricalFloat o Integer (1 columna)Predecir un valor continuo
TraducciónTextoTextoConvertir texto entre idiomas

Sesiones

Una sesión une un dataset, una configuración de tarea (columnas de entrada/salida, división de datos) y todos los modelos entrenados dentro de ese contexto. Las sesiones son persistentes — cerrar DashAI y volver a abrirlo te regresa al mismo estado.

La barra lateral izquierda organiza las sesiones por tipo de tarea. Cada entrada de sesión muestra su nombre y el dataset desde el que fue creada. Puedes mantener múltiples sesiones para el mismo dataset y tarea para explorar diferentes configuraciones de columnas o estrategias de división.

Divisiones de Datos

DashAI admite tres estrategias de división:

EstrategiaCuándo usarla
PredefinidaEl dataset ya contiene la estructura tren/prueba/validación desde el origen
Aleatoria por proporciónDivisión estándar usando proporciones configurables (por defecto: 60/20/20)
Manual por índices de filasControl total sobre qué filas van a cada subconjunto

Para divisiones aleatorias, tres opciones adicionales refinan el comportamiento:

  • Mezclar — aleatoriza el orden de las filas antes de dividir. Habilitado por defecto. Desactívalo solo cuando el orden de las filas sea significativo (p. ej., series de tiempo).
  • Estratificar — preserva la distribución de clases de la columna de salida en cada división. Crítico para datasets desequilibrados donde las clases minoritarias podrían estar subrepresentadas en divisiones más pequeñas.
  • Semilla — semilla aleatoria fija para reproducibilidad. El valor por defecto es 42. Establece un valor específico cuando necesitas comparar modelos entrenados en divisiones idénticas.

Modelos Disponibles

Clasificación Tabular (Scikit-learn)

ModeloNotas
SVCClasificador de Vectores de Soporte. Efectivo en espacios de alta dimensionalidad. Opciones de kernel: lineal, rbf, polinomial
LogisticRegressionModelo lineal para clasificación binaria y multiclase. Rápido e interpretable
RandomForestClassifierConjunto de árboles de decisión. Robusto ante el sobreajuste, maneja tipos de características mixtas
DecisionTreeClassifierModelo de árbol único. Totalmente interpretable, propenso al sobreajuste sin límites de profundidad
KNeighborsClassifierAprendizaje basado en instancias usando la distancia a los k vecinos más cercanos
HistGradientBoostingClassifierGradient boosting basado en histogramas. Maneja grandes datasets eficientemente, admite valores NA nativos
DummyClassifierModelo de línea base usando reglas simples (más frecuente, estratificado, etc.). Úsalo como piso de rendimiento

Regresión (Scikit-learn)

ModeloNotas
LinearRegressionMínimos cuadrados ordinarios. Simple, rápido, interpretable
LinearSVRRegresión de Vectores de Soporte con kernel lineal
RidgeRegressionRegresión lineal con regularización L2. Maneja la multicolinealidad
RandomForestRegressorRegresión por conjuntos. Maneja relaciones no lineales
GradientBoostingRegressorConjunto secuencial. Alta precisión, más lento de entrenar
MLPRegressorPerceptrón multicapa. Modelo no lineal flexible

Clasificación de Texto (Hugging Face)

ModeloNotas
DistilBertTransformerBERT destilado — transformador rápido y preciso para clasificación de texto. Requiere GPU para uso práctico
BagOfWordsTextClassificationModelEnfoque tradicional de vectores dispersos con un clasificador lineal. Rápido, interpretable, compatible con CPU

Traducción (Hugging Face)

ModeloNotas
OpusMtEnESTransformerTraducción del inglés al español usando los modelos Helsinki-NLP Opus-MT

Configuración de Hiperparámetros

Cada modelo expone sus hiperparámetros configurables en el modal Agregar Modelo. Los parámetros varían según el algoritmo — cada parámetro tiene un ícono de ayuda ? con una descripción.

Configuración Manual

Establece un valor fijo para cada parámetro. Este es el modo predeterminado — adecuado cuando tienes conocimiento previo sobre buenos valores o quieres probar configuraciones específicas.

Optimización de Hiperparámetros

Cada parámetro numérico tiene un interruptor Optimizar. Habilitarlo le indica a DashAI que busque automáticamente el mejor valor para ese parámetro en lugar de usar el valor fijo. Puedes habilitar la optimización en cualquier subconjunto de parámetros simultáneamente.

Hay dos optimizadores disponibles:

OptimizadorEstrategia
OptunaOptimizerOptimización bayesiana usando el muestreador TPE de Optuna. Eficiente — enfoca los ensayos en regiones prometedoras del espacio de parámetros
HyperOptOptimizerEstimador de Parzen estructurado en árbol (TPE) a través de HyperOpt. Estrategia similar a Optuna

Durante la optimización, DashAI registra métricas por ensayo y genera gráficos de visualización:

  • Gráfico de historial — valor de la métrica a través de todos los ensayos
  • Coordenadas paralelas — relación entre combinaciones de parámetros y valores de métricas
  • Gráfico de corte — efecto de parámetros individuales en la métrica
  • Gráfico de importancia — qué parámetros tienen mayor influencia en el resultado

Entrenamiento y Estado

Cada modelo en una sesión tiene un estado que refleja su estado actual:

EstadoSignificado
Not StartedEl modelo ha sido agregado pero nunca entrenado
FinalizadoEl entrenamiento se completó exitosamente
ErrorEl entrenamiento falló — revisa los parámetros o datos

Botones de acción por modelo:

  • ENTRENAR / RE-ENTRENAR — iniciar o reiniciar el entrenamiento. Re-entrenar sobreescribe los resultados de la ejecución anterior.
  • EDITAR — modificar el nombre del modelo o los hiperparámetros antes de re-entrenar.
  • EJECUTAR TODOS — encola todos los modelos no entrenados en la sesión para ejecución secuencial.

El entrenamiento se ejecuta como un trabajo en segundo plano rastreado en la Cola de Trabajos (parte inferior derecha de la pantalla). Puedes monitorear el progreso y ver los detalles de errores ahí.


Métricas de Evaluación

Las métricas se muestran en la pestaña MÉTRICAS EN VIVO de cada tarjeta de modelo, divididas en tres subpestañas: Entrenamiento, Validación y Prueba.

Métricas de Clasificación

MétricaQué mide
AccuracyProporción de predicciones correctas en general
F1Media armónica de Precisión y Recall. Mejor que Accuracy para clases desequilibradas
PrecisionDe todos los positivos predichos, cuántos eran realmente positivos
RecallDe todos los positivos reales, cuántos fueron correctamente predichos
ROCAUCÁrea bajo la curva ROC. Mide la separabilidad en todos los umbrales de clasificación
LogLossPenaliza las predicciones incorrectas con alta confianza. Menor es mejor
HammingDistanceFracción de etiquetas que son incorrectamente predichas
CohenKappaAcuerdo entre predicciones y etiquetas verdaderas, corrigiendo por azar

Métricas de Regresión

MétricaQué mide
RMSEError Cuadrático Medio — penaliza los errores grandes más que MAE
MAEError Absoluto Medio — magnitud promedio de los errores

Métricas de Traducción

MétricaQué mide
BLEUSuperposición de n-gramas entre traducciones generadas y de referencia
TERTasa de Edición de Traducción — ediciones necesarias para coincidir con la referencia

Comparación de Modelos

El panel de Comparación de Modelos en la parte superior de cada sesión proporciona una vista unificada de todos los modelos y su rendimiento.

Vista de Tabla

Todos los modelos de la sesión aparecen como filas con sus valores de métricas lado a lado. Cambia entre las divisiones de ENTRENAMIENTO, VALIDACIÓN y PRUEBA usando los botones en la parte superior. Los modelos que no han sido entrenados muestran - en las columnas de métricas.

Evalúa siempre la selección final del modelo en la división de PRUEBA — las métricas de entrenamiento y validación pueden no reflejar el verdadero rendimiento de generalización.

Vista de Gráficos

Dos tipos de gráficos apoyan la comparación visual:

Gráfico de barras — agrupa métricas en el eje x con una barra por modelo por métrica. El mejor para comparar modelos en una sola métrica de un vistazo.

Gráfico de radar — cada eje es una métrica; cada modelo es un polígono. Un polígono más grande y regular indica un rendimiento consistentemente sólido en todas las métricas. Los polígonos irregulares revelan compensaciones — un modelo fuerte en Accuracy pero débil en Recall, por ejemplo, crea una forma visiblemente irregular.

El panel de Métricas te permite seleccionar qué métricas aparecen en el gráfico. Usa TODAS / NINGUNA para alternar rápidamente.


Predicciones

Después del entrenamiento, cada modelo puede generar predicciones en dos modos, a los que se accede desde la pestaña PREDICCIONES de la tarjeta del modelo.

Predicciones sobre Dataset

Ejecuta el modelo contra un dataset completo cargado en DashAI. Útil para puntuación por lotes — aplicar el modelo a un conjunto de validación, un conjunto de retención o nuevos datos entrantes.

El modal muestra una vista previa del dataset seleccionado con sus columnas de entrada y columna objetivo resaltadas, para que puedas verificar la compatibilidad antes de enviar. Los resultados están disponibles como vista previa en línea (primeras 100 filas) y como descarga CSV completa.

Predicciones Manuales

Ingresa una o más filas de datos directamente — no se necesita ningún archivo. Las columnas categóricas aparecen como menús desplegables con valores válidos; las columnas numéricas son texto libre. Se pueden agregar múltiples filas con Agregar Fila.

Este modo es particularmente útil para:

  • Demostrar el comportamiento del modelo en ejemplos específicos
  • Probar casos límite y condiciones de frontera
  • Contextos de aula o presentación donde quieres mostrar cómo las entradas individuales afectan las predicciones

Explicabilidad

La pestaña EXPLICABILIDAD de cada modelo entrenado proporciona herramientas para comprender las decisiones del modelo. Hay dos tipos disponibles.

Explicadores Globales

Analizan el comportamiento del modelo en todo el dataset — qué características importan más en general y cómo se relacionan con la salida del modelo.

ExplicadorQué produce
Kernel SHAPValores SHAP para cada característica — cuantifica la contribución de cada característica a las predicciones en todo el dataset
Permutation Feature ImportanceClasifica las características según cuánto disminuye el rendimiento del modelo cuando cada característica se mezcla aleatoriamente
Partial DependenceMuestra el efecto marginal de una o dos características en el resultado predicho

Explicadores Locales

Analizan el comportamiento del modelo para una predicción específica — por qué el modelo produjo esta salida para esta entrada particular.

Los explicadores locales ayudan a identificar comportamientos inesperados en instancias específicas, lo que es valioso tanto para depurar modelos como para explicar decisiones individuales a las partes interesadas.


Consejos

  • Incluye siempre un DummyClassifier (o equivalente de línea base) en cada sesión. Cualquier modelo que no supere al dummy necesita más ajuste.
  • Habilita Estratificar siempre que tu columna objetivo tenga desequilibrio de clases — evita divisiones donde la clase minoritaria esté ausente o subrepresentada en validación o prueba.
  • Usa una Semilla fija entre sesiones cuando compares enfoques — las divisiones idénticas eliminan la variabilidad de datos como factor de confusión.
  • Las métricas de la división de PRUEBA son la medida autorizada de generalización. Buenas métricas de entrenamiento con malas métricas de prueba indican sobreajuste.
  • Ejecuta Permutation Feature Importance antes de finalizar un modelo — a menudo revela que algunas columnas de entrada agregan ruido en lugar de señal y pueden eliminarse para simplificar el modelo.
  • Cuando uses DistilBertTransformer para clasificación de texto, asegúrate de que tus columnas de texto sin procesar se pasen directamente — no apliques convertidores TF-IDF o BagOfWords antes, ya que el transformador maneja su propia tokenización.