(转)pytorch和torch框架对比(区别 联系)

一 区别
1.1 编程语言
pytorch 采用 python 语言。编程实际是 C语言做底层和C++做接口
torch 采用 lua 语言。编程实际是是 C语言做底层和lua语言做接口的深度学习库
知识扩展: Lua相当于一个小型加强版的C语言,支持类和面向对象

1.2 依赖库
pytorch 可调用python强大的第三方库,比如 opencv
torch 可调用 lua 库函数,目前 lua库函数没有python多
pytorch 依赖库多于 torch

1.3 效率
python的debug功能比lua强大很多,所以 pytorch 效率大于 torch

1.4 模型和中间变量的关系
pytorch中中间变量都存在于计算图中,所有model共享中间变量
torch中的中间变量则在每一个模块中,想要调用其他模块的参数就必须首先复制这个模块然后再调用

1.5 编写模型
pytroch:可直接修改 forward 函数
torch:不建议直接修改forward 函数,通常是修改updateOutput函数来实现forward操作

二 联系
2.1 编程
torch 代码在Pytorch中照样可以编译使用

2.2 编写模型
用autograd技术实现自动求导,不需要再去麻烦地写反向传播的计算函数

2.2 总结
pytorch可以说是torch的python版,并增加了很多新功能

三 官网图


四 两种深度学习框架选择
新手小白,入门推荐 pytorch
如果想学扎实,两种框架pytorch torch 同时使用,难度系数也不高

转自:https://blog.csdn.net/WJ_MeiMei/article/details/88720146

原文地址:https://www.cnblogs.com/Cong0ks/p/15433939.html