Glosario

PyTorch

Descubre PyTorch, el marco flexible de aprendizaje profundo para construir, entrenar y desplegar redes neuronales con aceleración GPU .

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

PyTorch es un marco de aprendizaje automático de código abierto que acelera el camino desde la creación de prototipos de investigación hasta el despliegue en producción. Desarrollado principalmente por el laboratorio de Investigación de IA de Facebook (FAIR), se ha convertido en una piedra angular en el campo del aprendizaje profundo debido a su flexibilidad, facilidad de uso y fuerte apoyo a la aceleración GPU . PyTorch se utiliza ampliamente tanto en el mundo académico como en la industria para una variedad de aplicaciones, incluyendo la visión por ordenador (CV), el procesamiento del lenguaje natural (PLN), y más. Para los usuarios familiarizados con los conceptos básicos del aprendizaje automático, PyTorch ofrece una plataforma intuitiva para construir, entrenar y desplegar modelos sofisticados.

Principales características y ventajas

PyTorch es conocido por su grafo computacional dinámico, que permite una mayor flexibilidad en la construcción de modelos complejos en comparación con los grafos estáticos utilizados en otros marcos como TensorFlow. Esta naturaleza dinámica significa que el grafo se define sobre la marcha, lo que facilita la depuración y permite un desarrollo de modelos más intuitivo. Además, la perfecta integración de PyTorch con Python y su amplio ecosistema de bibliotecas y herramientas mejoran aún más su usabilidad. Su gran compatibilidad con la aceleración de GPU (Unidad de Procesamiento Gráfico ) permite un entrenamiento más rápido de los modelos de aprendizaje profundo (DL), especialmente beneficioso para grandes conjuntos de datos y redes neuronales (NN) complejas.

Componentes básicos

PyTorch se basa en el concepto de tensores, que son matrices multidimensionales similares a las ndarrays de NumPy, pero con la capacidad añadida de ejecutarse en GPU. El marco proporciona un amplio conjunto de herramientas para las operaciones tensor , la diferenciación automática y la construcción de redes neuronales. El torch.nn ofrece una API de alto nivel para construir y entrenar redes neuronales, mientras que el módulo torch.optim proporciona varios algoritmos de optimización como Descenso Gradiente Estocástico (SGD) y Optimizador Adam. AutogradPyTorch, el paquete de diferenciación automática, calcula automáticamente los gradientes, lo que es crucial para entrenar redes neuronales utilizando retropropagación.

Aplicaciones en el mundo real

PyTorch se utiliza en una amplia gama de aplicaciones del mundo real en diversas industrias. He aquí dos ejemplos concretos:

  1. Sanidad: En el sector sanitario, PyTorch se emplea para el análisis de imágenes médicas, como la segmentación de tumores en resonancias magnéticas o la detección de anomalías en radiografías. Por ejemplo, los investigadores utilizan redes neuronales convolucionales (CNN ) en PyTorch para construir modelos que puedan identificar y clasificar con precisión enfermedades a partir de imágenes médicas, ayudando al diagnóstico precoz y a la planificación del tratamiento. Más información sobre la IA en la sanidad.
  2. Vehículos autónomos: PyTorch desempeña un papel crucial en el desarrollo de los coches autoconducidos. Se utiliza para entrenar modelos de aprendizaje profundo para tareas como la detección de objetos, la detección de carriles y la planificación de trayectorias. Por ejemplo, los modelos Ultralytics YOLO (You Only Look Once), que a menudo se implementan utilizando PyTorch, permiten la detección de objetos en tiempo real en las secuencias de vídeo de las cámaras de los vehículos, lo que permite al coche percibir su entorno y reaccionar ante él. Más información sobre la IA en los coches autoconducidos.

PyTorch vs. TensorFlow

Aunque tanto PyTorch como TensorFlow son marcos populares de aprendizaje profundo, tienen características distintas. TensorFlow, desarrollado por Google, utiliza un grafo computacional estático, lo que significa que toda la estructura del grafo debe definirse antes de ejecutar el modelo. Esto puede conducir a una ejecución más rápida, pero menos flexible en comparación con el grafo dinámico de PyTorch. TensorFlow tiene un ecosistema de despliegue más amplio, con herramientas como TensorFlow Serving y TensorFlow Lite para desplegar modelos en producción y en dispositivos móviles. PyTorch Por otro lado, es a menudo el preferido para la investigación debido a su flexibilidad y facilidad de uso, especialmente en entornos académicos.

Primeros pasos con PyTorch

Para empezar a trabajar con PyTorch, puedes explorar el sitio web oficial PyTorch , que proporciona documentación completa, tutoriales y apoyo de la comunidad. Además, la documentación deUltralytics ofrece valiosos recursos para utilizar PyTorch con los modelos de Ultralytics YOLO , incluidas guías sobre el entrenamiento, la validación y la implantación de modelos. También puedes explorar modelos preentrenados y empezar a entrenar tus propios modelos utilizando el Ultralytics HUB, que simplifica el proceso de construcción y despliegue de modelos de IA de visión.

Leer todo