PyTorch 和 Torch 是什么关系?

What is the relationship between PyTorch and Torch?

有两个 PyTorch 存储库:

第一个显然需要 Torch 和 lua 并且是一个包装器,但第二个除了其名称之外没有对 Torch 项目进行任何引用。

它与 Lua Torch 有什么关系?

这里是 pytorch 和 torch 的简短比较。

手电筒:

A Tensor library like numpy, unlike numpy it has strong GPU support.
Lua is a wrapper for Torch (Yes! you need to have a good understanding of Lua), and for that you will need LuaRocks package manager.

PyTorch:

No need for the LuaRocks package manager, no need to write code in Lua. And because we are using Python, we can develop Deep Learning models with utmost flexibility. We can also exploit major Python packages likes scipy, numpy, matplotlib and Cython with PyTorch's own autograd.

pytorch forum. Adding to that both PyTorch and Torch use THNN上对此有详细的讨论。 Torch 为 THNN 库提供 lua 包装器,而 Pytorch 为其提供 Python 包装器。

PyTorch 的循环网络、权重共享和内存使用以及与 C 接口的灵活性,以及​​ Torch 的当前速度。

如需更多见解,请查看此讨论环节 here

只是为了澄清两个 pytorch 存储库之间的混淆:

  • pytorch/pytorch 与 (Lua) Torch 非常相似,但在 Python 中。所以它是 THNN 的包装器。这也是脸书写的
  • hughperkins/pytorch: 我在 pytorch 出现之前在 Torch 中开发时遇到过这个 repo,但我从未使用过它所以我不太确定它是否是用 [=24 编写的包装器=] over (Lua) Torch 依次是 THNN 的包装器或 THNN 和 Lua 的包装器。在这两种情况下,这都不是 Torch 的原始版本。它是 Hugh Perkins 在没有 Python Torch 替代品时编写的。

如果您想知道选择哪一个,我肯定会推荐 pytorch/pytorch,因为它直接与 THNN 通信,由制作 THNN 的人编写并持续维护。 hughperkins/pytorch好像没有维护了