web-dev-qa-db-fra.com

Quelle est la relation entre PyTorch et Torch?

Il existe deux référentiels PyTorch:

Le premier nécessite clairement Torch et Lua et est un wrapper, mais le second ne fait aucune référence au projet Torch sauf avec son nom.

Comment est-il lié à la torche Lua ( http://torch.ch/ )?

25
Labo

Voici une brève comparaison sur pytorch et torch.

  • Torche:

    Une bibliothèque Tensor comme Numpy, contrairement à Numpy, elle prend en charge le GPU. Lua est un wrapper pour Torch (Oui! Vous devez avoir une bonne compréhension de Lua), et pour cela, vous aurez besoin du gestionnaire de paquets LuaRocks.

  • PyTorch:

    Pas besoin du gestionnaire de paquets LuaRocks, pas besoin d'écrire du code dans Lua. Et parce que nous utilisons Python, nous pouvons développer des modèles de Deep Learning avec la plus grande flexibilité. Nous pouvons également exploiter les principaux packages Python aime scipy, numpy, matplotlib et Cython avec la propre autograd de pytorch.

Il y a une discussion détaillée à ce sujet sur forum pytorch . Ajoutant à cela que PyTorch et Torch utilisent THNN . Torch fournit des enveloppes lua à la bibliothèque THNN tandis que Pytorch fournit des enveloppes Python pour les mêmes).

Les réseaux récurrents de PyTorch, le partage de poids et l'utilisation de la mémoire avec la flexibilité d'interfaçage avec C, et la vitesse actuelle de Torch.

Pour plus d'informations, jetez un œil à cette session de discussion ici .

17
blitu12345

Juste pour clarifier la confusion entre les deux référentiels pytorch:

  • pytorch/pytorch est très similaire à (Lua) Torch mais en Python. C'est donc un wrapper sur THNN. Cela a également été écrit par Facebook.
  • hughperkins/pytorch: J'ai rencontré ce dépôt lorsque je développais dans Torch avant que pytorch n'existe, mais je ne l'ai jamais utilisé, donc je ne suis pas sûr qu'il s'agisse d'un wrapper écrit en Python over (Lua) Torch qui est à son tour un wrapper sur THNN OR un wrapper sur THNN et Lua. Dans les deux cas, ce n'est pas la version originale de Torch. Il a été écrit par Hugh Perkins quand il y avait n'était pas Python alternative pour Torch.

Si vous vous demandez lequel choisir, je recommanderais certainement pytorch/pytorch car il communique directement avec THNN, est écrit par les personnes qui ont créé THNN et est continuellement maintenu. hughperkins/pytorch ne semble plus être maintenu.

6
Fabrice Dugas