PyTorch - Terminologies

Dans ce chapitre, nous discuterons de certains des termes les plus couramment utilisés dans PyTorch.

NumPy PyTorch

Un tenseur PyTorch est identique à un tableau NumPy. Un tenseur est un tableau à n dimensions et par rapport à PyTorch, il fournit de nombreuses fonctions pour opérer sur ces tenseurs.

Les tenseurs PyTorch utilisent généralement des GPU pour accélérer leurs calculs numériques. Ces tenseurs créés dans PyTorch peuvent être utilisés pour adapter un réseau à deux couches à des données aléatoires. L'utilisateur peut implémenter manuellement les passages avant et arrière sur le réseau.

Variables et Autograd

Lors de l'utilisation d'autograd, le passage avant de votre réseau définira un computational graph - les nœuds du graphe seront des Tensors, et les arêtes seront des fonctions qui produisent des Tensors de sortie à partir des Tensors d'entrée.

Les Tensors PyTorch peuvent être créés en tant qu'objets variables où une variable représente un nœud dans un graphe de calcul.

Graphiques dynamiques

Les graphiques statiques sont agréables car l'utilisateur peut optimiser le graphique à l'avance. Si les programmeurs réutilisent le même graphique encore et encore, alors cette optimisation initiale potentiellement coûteuse peut être maintenue car le même graphique est réexécuté encore et encore.

La principale différence entre eux est que les graphes de calcul de Tensor Flow sont statiques et PyTorch utilise des graphes de calcul dynamiques.

Paquet Optim

Le package optim de PyTorch résume l'idée d'un algorithme d'optimisation qui est implémenté de nombreuses manières et fournit des illustrations d'algorithmes d'optimisation couramment utilisés. Cela peut être appelé dans l'instruction d'importation.

Multitraitement

Le multitraitement prend en charge les mêmes opérations, de sorte que tous les tenseurs fonctionnent sur plusieurs processeurs. La file d'attente verra ses données déplacées dans la mémoire partagée et n'enverra un descripteur qu'à un autre processus.