PyTorch
Descubre PyTorch, la biblioteca central en la que se basa Ultralytics YOLO26. Aprende sobre sus grafos dinámicos, la aceleración de GPU y cómo crear modelos eficientes de deep learning.
PyTorch es una biblioteca de aprendizaje automático de código abierto desarrollada principalmente por Meta AI que se ha convertido en un pilar para investigadores y desarrolladores del campo del aprendizaje profundo. Conocida por su flexibilidad y facilidad de uso, permite crear y entrenar redes neuronales complejas mediante un grafo computacional dinámico. Esta característica, conocida a menudo como «ejecución inmediata», permite evaluar el código al instante, lo que hace que la depuración y la creación de prototipos sean mucho más intuitivas que en los frameworks que dependen de definiciones de grafos estáticos. Se integra perfectamente con el lenguaje de programación Python y funciona como una extensión natural de las herramientas estándar de computación científica.
Mecánica fundamental y relevancia#
En el núcleo de este framework se encuentran los tensores, que son matrices multidimensionales similares a las de la documentación de NumPy. Sin embargo, a diferencia de las matrices estándar, los tensores de PyTorch están diseñados para aprovechar la aceleración de GPU proporcionada por NVIDIA CUDA. Esta aceleración de hardware es fundamental para el procesamiento masivamente paralelo necesario para entrenar modelos modernos de inteligencia artificial (AI) de forma eficiente.
La biblioteca admite un amplio ecosistema de herramientas para la visión por ordenador (CV) y el procesamiento del lenguaje natural. Al proporcionar un amplio conjunto de capas, optimizadores y funciones de pérdida prediseñados, simplifica el proceso de creación de algoritmos para tareas como la clasificación de imágenes y el modelado de secuencias.
Aplicaciones en el mundo real#
La versatilidad de este framework ha propiciado su adopción en diversos sectores para desarrollar soluciones de AI de gran impacto:
-
Vehículos autónomos: Los líderes del sector utilizan PyTorch para crear modelos de aprendizaje profundo que procesan las transmisiones de vídeo de las cámaras de los vehículos. Estos modelos realizan detección de objetos en tiempo real para identificar carriles, señales y peatones, lo que permite una navegación más segura.
-
Diagnóstico médico: Los investigadores utilizan el framework para desarrollar aplicaciones sanitarias avanzadas. Por ejemplo, permite crear sistemas que analizan resonancias magnéticas o radiografías para ayudar a los médicos a detectar tumores mediante una segmentación de imágenes precisa.
Comparación con herramientas relacionadas#
Para comprender mejor su función, resulta útil distinguir PyTorch de otras herramientas habituales de la pila de AI:
- Frente a TensorFlow: Desarrollado por Google, TensorFlow se basaba históricamente en grafos computacionales estáticos, lo que dificultaba la depuración, pero optimizaba la implementación. Aunque ambos frameworks han convergido en cuanto a funcionalidades, PyTorch suele preferirse para la creación rápida de prototipos y la investigación gracias a su interfaz intuitiva.
- Frente a OpenCV: OpenCV es una biblioteca centrada en funciones tradicionales de procesamiento de imágenes, como el cambio de tamaño, el filtrado y la conversión de color, en lugar de en el entrenamiento de redes neuronales. En un flujo de trabajo habitual, los desarrolladores utilizan OpenCV para el preprocesamiento de datos antes de introducir las imágenes en un modelo de PyTorch para su análisis.
Integración con Ultralytics#
Toda la familia de modelos de Ultralytics, incluidos el YOLO26 de vanguardia y el ampliamente utilizado YOLO11, está desarrollada de forma nativa sobre PyTorch. Esta base garantiza que los usuarios se beneficien de la velocidad, estabilidad y amplio soporte de la comunidad del framework. Tanto si realizas aprendizaje por transferencia con datos de entrenamiento personalizados como si exportas modelos para dispositivos periféricos, la arquitectura subyacente depende de los tensores y gradientes de PyTorch.
La próxima Ultralytics Platform simplifica aún más esta experiencia al proporcionar una interfaz unificada para gestionar la obtención de conjuntos de datos, el entrenamiento y la implementación sin necesidad de escribir grandes cantidades de código repetitivo.
El siguiente ejemplo muestra cómo verificar la disponibilidad de la GPU y ejecutar inferencias con un modelo YOLO, y demuestra cómo el framework gestiona la aceleración de hardware internamente:
import torch
from ultralytics import YOLO
# Check if CUDA (GPU) is available for PyTorch acceleration
device = "cuda" if torch.cuda.is_available() else "cpu"
print(f"PyTorch is using device: {device}")
# Load a YOLO26n model (built on PyTorch)
model = YOLO("yolo26n.pt")
# Perform object detection on an image
# PyTorch handles tensor operations and moves data to the GPU automatically
results = model("https://ultralytics.com/images/bus.jpg", device=device)








