【问题标题】:What is the relationship between PyTorch and Torch?PyTorch 和 Torch 是什么关系?
【发布时间】:2017-11-06 09:09:24
【问题描述】:

有两个 PyTorch 存储库:

第一个显然需要 Torch 和 lua 并且是一个包装器,但第二个除了名称之外没有提及 Torch 项目。

它与Lua Torch有什么关系?

【问题讨论】:

  • 第一个repo真的是官方的吗??这不就是pytorch 的一个分支吗?

标签: torch pytorch


【解决方案1】:

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

火炬:

像 numpy 这样的张量库,与 numpy 不同,它具有强大的 GPU 支持。
Lua 是 Torch 的包装器(是的!你需要对 Lua 有很好的了解),为此你需要 LuaRocks 包管理器。

PyTorch:

无需 LuaRocks 包管理器,无需在 Lua 中编写代码。由于我们使用的是 Python,我们可以以最大的灵活性开发深度学习模型。我们还可以使用 PyTorch 自己的 autograd 来利用主要的 Python 包,例如 scipy、numpy、matplotlib 和 Cython。

pytorch forum 对此进行了详细讨论。除此之外,PyTorch 和 Torch 都使用 THNN。 Torch 为 THNN 库提供 lua 包装器,而 Pytorch 为其提供 Python 包装器。

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

如需更多见解,请查看此讨论会here。

【讨论】:

  • pytorch 的开发与torch 完全相关还是只是巧合?
  • 问题的本质是:“这两者之间有什么关系吗?”,而这个答案并没有真正解决它。
  • 这个答案令人困惑。 Hughperkins/pytorch 和 pytorch/pytorch 哪一个是“Torch”,哪一个是“PyTorch”?
【解决方案2】:

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

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

如果您想知道选择哪一个,我肯定会推荐pytorch/pytorch,因为它直接与 THNN 通信,由 THNN 的开发者编写并持续维护。 hughperkins/pytorch 似乎不再维护了。

【讨论】:

  • 补充一点,任何提到 PyTorch 的论文几乎肯定是指 pytorch/pytorch,这在 github 上也非常受欢迎
猜你喜欢
  • 2018-02-16
  • 2019-05-22
  • 2019-11-17
  • 2019-01-02
  • 2014-03-14
  • 2013-06-14
  • 2020-05-04
  • 2020-01-08
  • 2015-01-13
相关资源
最近更新 更多