PyTorch
PyTorch | ||
---|---|---|
Información general | ||
Tipo de programa | biblioteca de software | |
Autor |
| |
Desarrollador | Facebook's AI Research lab (FAIR) | |
Vulnerabilidades | CVE-2024-5480 | |
Licencia | BSD | |
Información técnica | ||
Programado en | ||
Plataformas admitidas | IA-32, x86-64 | |
Versiones | ||
Última versión estable | 2.5.129 de octubre de 2024 | |
Última versión en pruebas | 0.1.62 de febrero de 2017 | |
Enlaces | ||
PyTorch[1][2] es una biblioteca de aprendizaje automático[3] de código abierto basada en la biblioteca de Torch, utilizado para aplicaciones como visión artificial y procesamiento de lenguajes naturales, principalmente desarrollado por el Laboratorio de Investigación de Inteligencia Artificial[4] de Facebook (FAIR).[5][6][7][8][9][10][11] Es un software libre y de código abierto liberado bajo la Licencia Modificada de BSD. A pesar de que la interfaz de Python está más pulida y es el foco principal del desarrollo, PyTorch también tiene una interfaz en C++.[12]
Un número de las piezas de software de Aprendizaje Profundo están construidas utilizando PyTorch, incluyendo Tesla Autopilot,[13] Uber's Pyro, HuggingFace's Transformers, PyTorch Lighting,[14][15] y Catalyst.[16][17][18][19]
PyTorch proporciona dos características de alto nivel:[20]
- Computación de tensores (como NumPy ) con una aceleración fuerte a través de unidades de procesamientos gráficos (GPU).
- Redes neuronales profundas[21] construidas en un sistema de diferenciación automática de bases de datos.
Además, PyTorch se integra bien con bibliotecas como TensorRT para inferencia de alto rendimiento y soporta formatos como ONNX para facilitar el despliegue en diversas plataformas [22].
Historia
[editar]Facebook operó PyTorch y Convolutional Architecture for Fast Feature Embedding (Caffe2), pero los modelos definidos para los dos entornos de trabajo o Frameworks eran incompatibles. El proyecto Open Neural Network Exchange (ONNX[23][24]) fue creado por Facebook y Microsoft en septiembre de 2017 para convertir modelos entre frameworks. Caffe2 se fusionó con PyTorch a finales de marzo de 2018.[25]
Módulos
[editar]Autograd module
[editar]PyTorch utiliza un método llamado diferenciación automática. Unos registrador registra lo que las operaciones que se han hecho, y luego las reproduce hacia atrás para calcular los gradientes. Este método es especialmente potente cuando se están construyendo redes neuronales para ahorrar tiempo en una época en la que calcular la diferenciación de los parámetros es un paso adelante.
Optim
module
[editar]torch.optim
es un módulo que implementa varios algoritmos de optimización que se utilizan para construir redes neuronales. La mayoría de los métodos comúnmente usados ya son compatibles, por lo que no hay ninguna necesidad de crearlos desde cero.
nn
module
[editar]PyTorch Autograd hace que sea fácil definir gráficos computacionales y coger distintos grados, pero Raw Autograd puede ser un nivel demasiado bajo para definir redes neuronales complejas. Por esto es por lo que se creó el módulo nn
, para ayudar a crear redes neuronales más complejas.
Véase también
[editar]- Lista de proyectos de inteligencia artificial
- Comparación de software de aprendizaje profundo
- Programación diferenciable
- DeepSpeed
- Linterna (aprendizaje de máquina)
- Tensor
Referencias
[editar]- ↑ https://itelligent.es/es/conoces-pytorch-herramienta-open-source-la-puedes-crear-redes-neuronales/
- ↑ https://cleverpy.com/que-es-pytorch-y-como-se-instala/
- ↑ https://www.paradigmadigital.com/dev/introduccion-pytorch/
- ↑ https://hackernoon.com/pytorch-y-su-funcionamiento-0p5j32hs
- ↑ Yegulalp, Serdar (19 de enero de 2017). «Facebook brings GPU-powered machine learning to Python». Consultado el 11 de diciembre de 2017.
- ↑ Lorica, Ben (3 de agosto de 2017). «Why AI and machine learning researchers are beginning to embrace PyTorch». O'Reilly Media. Consultado el 11 de diciembre de 2017.
- ↑ Ketkar, Nikhil (2017). «Introduction to PyTorch». Deep Learning with Python (en inglés). Apress, Berkeley, CA. pp. 195–208. ISBN 9781484227657. doi:10.1007/978-1-4842-2766-4_12.
- ↑ «Natural Language Processing (NLP) with PyTorch – NLP with PyTorch documentation». dl4nlp.info (en inglés). Archivado desde el original el 21 de junio de 2019. Consultado el 18 de diciembre de 2017.
- ↑ Patel, Mo (7 de diciembre de 2017). «When two trends fuse: PyTorch and recommender systems» (en inglés). Consultado el 18 de diciembre de 2017.
- ↑ Mannes, John. «Facebook and Microsoft collaborate to simplify conversions from PyTorch to Caffe2» (en inglés). Consultado el 18 de diciembre de 2017. «FAIR is accustomed to working with PyTorch – a deep learning framework optimized for achieving state of the art results in research, regardless of resource constraints. Unfortunately in the real world, most of us are limited by the computational capabilities of our smartphones and computers.»
- ↑ Arakelyan, Sophia (29 de noviembre de 2017). «Tech giants are using open source frameworks to dominate the AI community». VentureBeat (en inglés estadounidense). Consultado el 18 de diciembre de 2017.
- ↑ «The C++ Frontend». PyTorch Master Documentation. Consultado el 29 de julio de 2019.
- ↑ Karpathy, Andrej. «PyTorch at Tesla - Andrej Karpathy, Tesla».
- ↑ PYTORCH-Lightning: The lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate, Lightning-Team, 18 de junio de 2020, consultado el 18 de junio de 2020.
- ↑ «Ecosystem Tools». pytorch.org (en inglés). Consultado el 18 de junio de 2020.
- ↑ «Uber AI Labs Open Sources Pyro, a Deep Probabilistic Programming Language» (en inglés estadounidense). 3 de noviembre de 2017. Consultado el 18 de diciembre de 2017.
- ↑ PYTORCH-TRANSFORMERS: PyTorch implementations of popular NLP Transformers, PyTorch Hub, 1 de diciembre de 2019, consultado el 1 de diciembre de 2019.
- ↑ GitHub - catalyst-team/catalyst: Accelerated DL & RL, Catalyst-Team, 5 de diciembre de 2019, consultado el 5 de diciembre de 2019.
- ↑ «Ecosystem Tools». pytorch.org (en inglés). Consultado el 4 de abril de 2020.
- ↑ «PyTorch – About». pytorch.org. Archivado desde el original el 15 de junio de 2018. Consultado el 11 de junio de 2018.
- ↑ https://www.genbeta.com/desarrollo/asi-puedes-aprender-a-usar-pytorch-herramienta-accesible-para-crear-redes-neuronales
- ↑ https://pytorch.org/docs/stable/onnx.html
- ↑ Lozano, Marcelo. «Open Neural Network Exchange: Intel define su compromiso | Hormigatv». Consultado el 3 de diciembre de 2020.
- ↑ «ONNX | Home». onnx.ai. Consultado el 3 de diciembre de 2020.
- ↑ «Caffe2 Merges With PyTorch». 2 de abril de 2018.