Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

TensorFlow desde cero, Unidad 9 — Uso de TensorFlow con distintos tipos de datos, 9.1 — Datos tabulares ·

Cuándo usar DL en tabular

Cuándo usar Deep Learning en datos tabulares

Introducción

Los datos tabulares, a menudo en forma de hojas de cálculo o bases de datos, son una parte esencial del análisis y la toma de decisiones en numerosas industrias. Sin embargo, su estructura y formato presentan desafíos únicos que no siempre justifican el uso de técnicas de Deep Learning (DL). En este artículo, exploraremos cuándo es apropiado aplicar DL a datos tabulares, y discutiremos algunos errores comunes para evitar. Además, proporcionaremos un checklist accionable para ayudarte en tu decisión.

Explicación principal

Deep Learning ha demostrado ser una poderosa herramienta para analizar grandes cantidades de datos complejos e irregulares. Sin embargo, los datos tabulares son estructurados y uniformes, lo que puede hacer que la aplicación directa de DL sea innecesaria o incluso perjudicial en algunos casos.

Ejemplo de uso adecuado: Predicción del precio de viviendas

Supongamos que estás trabajando con una base de datos de propiedades inmobiliarias, conteniendo características como el número de habitaciones, tamaño, edad y ubicación. En este caso, podrías usar técnicas de aprendizaje automático supervisado como regresión lineal o árboles de decisión, pero también podrías aplicar una red neuronal simple para mejorar la precisión.

import pandas as pd
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

# Cargar datos
df = pd.read_csv('data/housing.csv')

# Preparación de datos
X = df.drop(columns=['price'])
y = df['price']

# Definir modelo
model = Sequential()
model.add(Dense(64, input_dim=X.shape[1], activation='relu'))
model.add(Dense(1))

# Compilar y entrenar modelo
model.compile(optimizer='adam', loss='mse')
model.fit(X, y, epochs=50)

Ejemplo de uso inadecuado: Clasificación basada en tablas

Imagina que tienes una base de datos con información sobre clientes, incluyendo su nombre, dirección, teléfono y correo electrónico. En este caso, la mayoría de los modelos de aprendizaje automático no necesitan DL para clasificar o segmentar estos datos. Un árbol de decisión o un modelo de lógica binaria podría ser más adecuado.

Errores típicos / trampas

  1. Sobremodelación: Las redes neuronales con muchas capas y múltiples parámetros pueden sobreajustar a datos tabulares, especialmente si la muestra es pequeña.
  2. Falta de interpretabilidad: Las redes neuronales son a menudo consideradas "cajas negras", lo que puede ser un problema en contextos donde la transparencia es crucial, como las regulaciones financieras o médicas.
  3. Escalado innecesario: Los datos tabulares a menudo no requieren el escalado de características que los datos multimodales pueden necesitar.

Checklist accionable

  1. Analiza la estructura de tus datos: Verifica si los datos están en formato tabular y qué tipo de análisis se requiere.
  2. Evalúa el tamaño del conjunto de datos: Si el conjunto es pequeño, las técnicas estadísticas tradicionales pueden ser más adecuadas que DL.
  3. Considera la interpretabilidad: Si necesitas que el modelo sea comprensible para otros expertos en tu equipo o stakeholders, evita usar redes neuronales profundos.
  4. Analiza la complejidad del problema: Pregunta si realmente necesitas el potencial de aprendizaje por refuerzo que proporcionan las redes neuronales, o si un algoritmo simple como lógica binaria o árboles de decisión podría ser suficiente.

Cierre

En resumen, la aplicación de Deep Learning a datos tabulares debe considerarse con cuidado. Asegúrate de evaluar cuidadosamente los pros y contras antes de tomar una decisión. Siempre es mejor optar por soluciones más simples cuando sea posible, ya que estas ofrecen beneficios como mayor interpretabilidad y menor riesgo de sobreajuste.

Siguientes pasos

  • Explora técnicas estadísticas: Aprende más sobre regresión lineal, árboles de decisión y bosques aleatorios.
  • Ejercita tus habilidades en Python: Mejora tu capacidad para preparar y analizar datos tabulares usando pandas y scikit-learn.
  • Prueba diferentes modelos: Experimenta con diversos tipos de modelos antes de optar por DL.

Sigue avanzando en tu viaje hacia la excelencia en Inteligencia Artificial y Deep Learning, pero no olvides evaluar cada paso con lógica y prudencia.

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).