PyTorch
From Wikipedia, the free encyclopedia
| Créateur | Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan |
|---|---|
| Dernière version | 2.10.0 ()[1] |
| Dépôt | github.com/pytorch/pytorch |
| Écrit en | C++, Python, C et Compute Unified Device Architecture |
| Système d'exploitation | Linux, macOS et Microsoft Windows |
| Formats lus | PyTorch Serialized File Format (d) |
| Formats écrits | PyTorch Serialized File Format (d) |
| Type |
Bibliothèque logicielle Bibliothèque logicielle Python (d) Structure logicielle d'apprentissage automatique (d) |
| Licence | BSD 3-clauses |
| Documentation | pytorch.org/docs/stable/index.html |
| Site web | pytorch.org |
PyTorch est une bibliothèque logicielle Python open source d'apprentissage automatique qui s'appuie sur Torch (en) développée par Meta[2].
PyTorch est gouverné par la PyTorch Foundation[3].
PyTorch permet d'effectuer les calculs tensoriels nécessaires notamment pour l'apprentissage profond (deep learning). Ces calculs sont optimisés et effectués soit par le processeur (CPU) soit, lorsque c'est possible, par un processeur graphique (GPU) supportant CUDA. PyTorch a été créé par les équipes de recherche de Facebook, précédées par les travaux de recherche de Ronan Collobert au cœur de l'équipe de Samy Bengio[4] à l'IDIAP.
PyTorch se présente sous les traits d'un dérivé d'un logiciel antérieur, Torch, dont l'utilisation nécessitait la maîtrise du langage Lua. PyTorch est désormais indépendant de Lua et se programme en Python.
PyTorch permet, entre autres, de:
- manipuler des tenseurs (tableaux multidimensionnels), de les échanger facilement avec Numpy et d'effectuer des calculs efficaces sur CPU ou GPU (par exemple, des produits de matrices ou des convolutions);
- calculer des gradients pour appliquer facilement des algorithmes d'optimisation par descente de gradient. PyTorch utilise la bibliothèque autograd[5].
PyTorch définit une classe appelée Tensor (torch.Tensor) pour stocker les données et opérer sur des tableaux rectangulaires multidimensionnels homogènes de nombres. Les tenseurs PyTorch sont similaires aux tableaux NumPy, mais peuvent également être utilisés sur un GPU Nvidia compatible CUDA. PyTorch prend en charge divers sous-types de Tensors[6].
Historique
En Caffe2 (en) fusionne avec PyTorch [7]. PyTorch rejoint la Fondation Linux en septembre 2022[8].