Fundamentos de PyTorch
Clasificación de Texto con PyTorch y TorchText
Creación de modelos con PyTorch para IA moderna
Clasificación de Texto con PyTorch y Redes Neuronales Recurrentes
Manipulación de Tensores en PyTorch: Escalares a Multidimensionales
Debugging de Tensores en PyTorch: Tipos, Formas y Dispositivos
Operaciones entre Arrays NumPy y Tensores PyTorch
Quiz: Fundamentos de PyTorch
Estructura de modelo de deep learning en PyTorch
Regresión Lineal con PyTorch: Creación y Entrenamiento de Modelos
Regresión Lineal en PyTorch: Creación y Primeras Predicciones
Regresión Lineal con PyTorch: Pérdidas y Optimizadores
Visualización de pérdidas en entrenamiento con PyTorch
Predicciones con PyTorch usando CPU y graficación de resultados
Quiz: Estructura de modelo de deep learning en PyTorch
Redes neuronales con PyTorch
Clasificación de Texto con PyTorch y TorchText
Tokenización y Creación de Vocabulario con Torch Text
Creación de Data Loaders en PyTorch: Procesa Grandes Datasets Eficazmente
Modelo de Clasificación de Texto en PyTorch: Creación y Entrenamiento
Optimización de Modelos de Clasificación en Python
Creación y uso de funciones de evaluación en modelos de aprendizaje
Optimización y Funciones de Pérdida en Deep Learning
Entrenamiento de Modelos con PyTorch: Optimización y Validación
Inferencia de Modelos con PyTorch 2.0 y Torch Compile
Guardar y cargar modelos en PyTorch con checkpoints
Subir Modelos a JoggingFace: Repositorios y Comunidad Platzi
Optimización de modelos en PyTorch: carga y gestión de checkpoints
Quiz: Redes neuronales con PyTorch
Cierre del curso
Manejo de Tensores y Modelos con PyTorch
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
En este fascinante mundo de la inteligencia artificial y el aprendizaje automático, es común encontrarse con la necesidad de usar datos en diferentes formatos. Entre los más utilizados se encuentran los arrays de NumPy y los tensores de PyTorch. Aprender a convertir y operar entre estos formatos es clave para llevar a cabo desarrollos eficientes y flexibles. Te mostraremos cómo realizar estas conversiones y operaciones esenciales.
La conexión entre NumPy y PyTorch es sumamente poderosa. NumPy es una herramienta fundamental para el manejo de matrices y grandes cantidades de datos por su eficiencia y simplicidad, mientras que PyTorch es crucial en el procesamiento de datos para tareas más avanzadas de inteligencia artificial.
De NumPy a PyTorch: Si ya tienes un array de NumPy y deseas convertirlo en un tensor de PyTorch, puedes usar torch.from_numpy()
. Aquí un ejemplo sencillo:
import numpy as np
import torch
# Creación de un vector de NumPy con unos
vector = np.ones(4, dtype=np.float32)
# Conversión de NumPy a PyTorch
tensor = torch.from_numpy(vector)
De PyTorch a NumPy: Si trabajas con tensores y necesitas revertirlos a un formato de NumPy, simplemente utiliza .numpy()
en el tensor:
# Conversión de PyTorch a NumPy
array = tensor.numpy()
Realizar operaciones elementales como suma, resta, multiplicación, y división es crucial en cualquier pipeline de procesamiento de datos. Estas operaciones son básicas pero fundamentales para entender el flujo de datos:
Operaciones Element-wise: PyTorch permite realizar operaciones de forma elemento por elemento, siempre que los tensores tengan la misma forma.
# Definición de tensores
zeros_tensor = torch.zeros((3, 4))
ones_tensor = torch.ones((3, 4))
# Suma de tensores
sum_tensor = zeros_tensor + ones_tensor
# Multiplicación elemento por elemento
mul_tensor = zeros_tensor * ones_tensor
División y Broadcasting: PyTorch también es capaz de manejar divisiones y aplicar el concepto de broadcasting para adaptar las formas de los tensores cuando sea posible.
random_tensor = torch.rand(4)
# Podemos dividirlo por el tensor de unos
div_tensor = random_tensor / ones_tensor
La multiplicación de matrices es una piedra angular en cualquier tarea de inteligencia artificial. Aunque se trate de una operación más compleja, es esencial para llevar a cabo tareas avanzadas de machine learning.
Multiplicación de matrices usando PyTorch:
matrix1 = torch.rand((2, 3))
matrix2 = torch.rand((3, 2))
# Multiplicación de matrices
result_tensor = torch.matmul(matrix1, matrix2)
Este tipo de multiplicaciones sigue la lógica matemática tradicional y es una de las operaciones más comunes en el desarrollo de modelos de machine learning.
Hemos explorado cómo manipular y operar con tensores, aprender a convertirlos entre formatos NumPy y PyTorch, realizar operaciones elementales y no tan elementales como la multiplicación de matrices. Ahora estás preparado para embarcarte en el entrenamiento de modelos con PyTorch. La clave es seguir practicando y mejorando tus habilidades. ¡Prepárate para el próximo módulo! Y recuerda, la práctica hace al maestro. Te animamos a dejar tus comentarios y a unirte a la próxima etapa de este apasionante viaje.
¡Sigue adelante y nunca dejes de aprender!
Aportes 6
Preguntas 0
Hola,
Quiero compartirles 2 cosas. La primera que los tensores también se pueden multiplicar por medio del comando @. Por ejemplo: matriz1@matriz2 nos da el mismo resultado que torch.matmul(matriz1,matriz2).
También me gustaría compartirles un sitio web donde se desarrolla paso a paso la multiplicación de matrices. Puedes ingresar los valores que desees y paso a paso observarás el resultado: matrixmultiplication.xyz (la plataforma no me deja ingresar el link porque no contiene el cerficado https pero pueden copiar y pegar).
Para quienes tengan problemas con los temas vistos en esta clase les recomiendo este par de cursos donde se profundiza mas en el tema:
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?