🖼️ 1. Redes Neuronales Convolucionales (CNNs)
🧠 ¿Qué son?
Las CNNs son redes neuronales diseñadas especialmente para trabajar con imágenes. A diferencia de las redes normales (densas), pueden detectar patrones espaciales como bordes, formas y texturas.
Es como tener ojos computacionales que aprenden a reconocer cosas viendo muchos ejemplos.
🧩 ¿Para qué sirven?
- Clasificación de imágenes (gato/perro)
- Detección de objetos (¡ese es un auto!)
- Reconocimiento facial
- Análisis médico con imágenes (radiografías)
- Visión para autos autónomos
🧱 ¿Cómo funcionan?
- Capa convolucional: escanea la imagen con filtros pequeños (como lentes) que detectan patrones.
- Capa de activación: usualmente
ReLU
, activa solo ciertas neuronas. - Capa de pooling: reduce tamaño y mantiene lo importante (ej: max pooling).
- Capas densas: al final, hacen la predicción (como una red neuronal normal).
🎨 Visualmente:
Una imagen entra → filtros detectan patrones → se resumen → se clasifican
🖼️ → 🧲 (filtros) → 🔍 (patrones) → 🧠 (predicción)
🧑💻 Ejemplo rápido en Keras:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
model = Sequential([
Conv2D(32, (3,3), activation='relu', input_shape=(64, 64, 3)),
MaxPooling2D(pool_size=(2, 2)),
Flatten(),
Dense(64, activation='relu'),
Dense(1, activation='sigmoid') # para binario
])
🕒 2. Redes Recurrentes (RNN, LSTM, GRU)
🧠 ¿Qué son?
Las RNNs (Redes Neuronales Recurrentes) están hechas para trabajar con datos secuenciales, es decir, cuando el orden importa: texto, audio, series de tiempo, etc.
Piensa en ellas como neuronas que recuerdan lo que vieron antes para predecir lo que viene después.
📦 Usos comunes:
- Predicción de texto (autocompletar)
- Traducción automática
- Análisis de sentimientos
- Predicción de series temporales (clima, bolsa)
- Chatbots
🌀 ¿Cómo funcionan?
- Las RNN tradicionales repiten la misma neurona para cada paso de la secuencia.
- Pero tienen problemas con memoria a largo plazo, por eso nacieron:
- 🧠 LSTM (Long Short-Term Memory): retienen información durante más pasos.
- ⚙️ GRU (Gated Recurrent Unit): como LSTM, pero más simple.
🧑💻 Ejemplo de una RNN con Keras:
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Embedding, LSTM, Dense
model = Sequential([
Embedding(input_dim=10000, output_dim=128),
LSTM(64),
Dense(1, activation='sigmoid')
])
🤖 3. Transformers (BERT, GPT, etc.)
🧠 ¿Qué son?
Los Transformers revolucionaron el procesamiento del lenguaje natural (NLP). A diferencia de las RNNs, no procesan el texto paso a paso, sino que prestan atención a todas las palabras a la vez (mecanismo de attention).
Imagina que al leer una frase, prestas atención a todas las palabras clave al mismo tiempo. Así trabaja un Transformer.
📦 Usos:
- Traductores (Google Translate)
- Generadores de texto (ChatGPT 😄)
- Análisis de sentimientos
- Búsquedas inteligentes
- Resumir textos, responder preguntas, etc.
🔎 ¿Cómo funciona?
- Usa una estructura llamada attention para saber a qué partes del texto debe enfocarse.
- No depende del orden lineal como las RNN.
- Puede procesar frases muy largas eficientemente.
- Se entrena con muchísimos textos (pre-entrenamiento + ajuste fino).
🔧 Modelos famosos:
Modelo | Descripción |
---|---|
BERT | Lee en ambas direcciones → bueno para clasificación |
GPT | Genera texto → bueno para redacción y generación |
T5 | Todo es un problema de texto a texto |
RoBERTa, DistilBERT, etc. | Variaciones optimizadas |
🧑💻 Ejemplo con Hugging Face (BERT para análisis de sentimientos):
from transformers import pipeline
# Modelo preentrenado
analizador = pipeline("sentiment-analysis")
resultado = analizador("Me encanta aprender machine learning")
print(resultado)
🧩 En resumen
Modelo | Mejor para… | Estructura | Datos de entrada |
---|---|---|---|
CNN | Imágenes | Filtros convolucionales | Imágenes en 2D o 3D |
RNN/LSTM | Texto / series temporales | Secuencias con memoria | Secuencia de palabras |
Transformers | Texto avanzado (GPT, BERT) | Atención + posiciones | Texto completo |