Guía paso a paso para entrenar tu primer modelo en PyTorch y TensorFlow

Si estás empezando con Machine Learning, una de las primeras tareas que debes dominar es el entrenamiento de un modelo.
En esta guía aprenderás, paso a paso, cómo entrenar un modelo básico en PyTorch y TensorFlow para predecir valores en base a datos de entrada.
1️⃣ Conceptos básicos antes de entrenar un modelo
Antes de empezar, es importante entender algunos conceptos clave:
🔹 Modelo: Es una representación matemática que aprende a hacer predicciones basándose en datos.
🔹 Entrenamiento: Proceso en el que el modelo ajusta sus parámetros para minimizar el error.
🔹 Función de pérdida: Mide cuán incorrectas son las predicciones del modelo.
🔹 Optimizador: Algoritmo que ajusta los parámetros del modelo para reducir el error.
2️⃣ Configurar el entorno
Para seguir esta guía, necesitas instalar PyTorch y TensorFlow. Puedes hacerlo ejecutando:
pip install torch torchvision torchaudio tensorflow numpy
3️⃣ Crear y entrenar un modelo en PyTorch
Vamos a entrenar un modelo de regresión lineal que prediga un valor numérico en base a una entrada.
Paso 1: Importar librerías
import torch
import torch.nn as nn
import torch.optim as optim
Paso 2: Crear los datos de entrenamiento
# Datos de entrada (X) y salida (Y)
X = torch.tensor([[1], [2], [3], [4], [5]], dtype=torch.float32)
Y = torch.tensor([[2], [4], [6], [8], [10]], dtype=torch.float32)
Paso 3: Definir el modelo
modelo = nn.Linear(in_features=1, out_features=1)
Paso 4: Definir la función de pérdida y el optimizador
criterio = nn.MSELoss()
optimizador = optim.SGD(modelo.parameters(), lr=0.01)
Paso 5: Entrenar el modelo
for epoch in range(500):
optimizador.zero_grad()
predicciones = modelo(X)
perdida = criterio(predicciones, Y)
perdida.backward()
optimizador.step()
Paso 6: Realizar una predicción
entrada = torch.tensor([[6]], dtype=torch.float32)
print(f"Predicción para X=6: {modelo(entrada).item():.2f}")
4️⃣ Crear y entrenar un modelo en TensorFlow
Ahora entrenaremos el mismo modelo en TensorFlow.
Paso 1: Importar librerías
import tensorflow as tf
import numpy as np
Paso 2: Crear los datos de entrenamiento
X = np.array([1, 2, 3, 4, 5], dtype=np.float32)
Y = np.array([2, 4, 6, 8, 10], dtype=np.float32)
Paso 3: Definir el modelo
modelo = tf.keras.Sequential([
tf.keras.layers.Dense(units=1, input_shape=[1])
])
Paso 4: Compilar el modelo
modelo.compile(optimizer='sgd', loss='mean_squared_error')
Paso 5: Entrenar el modelo
modelo.fit(X, Y, epochs=500, verbose=0)
Paso 6: Realizar una predicción
print(f"Predicción para X=6: {modelo.predict([6])[0][0]:.2f}")
5️⃣ Comparación entre PyTorch y TensorFlow
🔹 PyTorch es más flexible y permite controlar cada paso del entrenamiento de manera manual. Ideal para investigación y depuración.
🔹 TensorFlow automatiza más el proceso y está optimizado para despliegues en producción.
6️⃣ Preguntas frecuentes (FAQs)
¿Cuál es más fácil de aprender?
Si ya usas Python, PyTorch te resultará más intuitivo. TensorFlow tiene una curva de aprendizaje más pronunciada, pero es potente para despliegues.
¿Necesito una GPU para entrenar modelos?
No, puedes entrenar en CPU, aunque si el modelo es grande, una GPU acelerará el proceso.
¿Cuál debería usar?
Depende de tu objetivo:
- Si estás aprendiendo y quieres experimentar → PyTorch
- Si quieres llevar modelos a producción → TensorFlow
7️⃣ Conclusión
Ahora que ya entrenaste tu primer modelo en PyTorch y TensorFlow, puedes explorar métodos más avanzados como redes neuronales profundas.
Si quieres conocer otros artículos parecidos a Guía paso a paso para entrenar tu primer modelo en PyTorch y TensorFlow puedes visitar la categoría IA.

Deja una respuesta