MATLAB和pytorch,PyTorch到底好用在哪里

PyTorch和TensorFlow到底哪个更好?大部分的说法不同,在此本人只说说我的看法。转pytorch 快一年了吧,回答一发。和pytorch 对标的不应该是tensorflow caffe,而是keras 和gluon。

2515de7545752ba0287559d0fa866b9e.png

在pytorch 出来之前keras 是我的首选工具,网络定义方便,并且有当时唯一的dataset类,实现一些简单的augment还可以。后来pytorch 出来了,大家才发现dataloader可以玩出这么多的花样,比如weight sampler ,collect fn。梯度可以在这么多种组合中一起反传,对一些需要同步更新backbone 的任务非常友好。以前觉得很难实现的op 比如hard negative mining,ohem(pytorch 的loss可以按照tensor中每个cell 回传梯度),在eager模式下可以很容易实现,对代码的掌控能力更强了。并且由于forward的存在,可以结合if else语句控制tensor的流向。

齐次,Pytorch 本身设计之初就是以py为主,这就要求在cpp和python之间尽可能的向python 靠拢,所以在pytorch中,所有Module 类都含有对一个forward 和backward的方法,哪怕是不懂cffi ,也可以轻松使用cpp cuda拓展的op。毕竟参数都是在module里定义的,运算已经尽可能的屏蔽掉了。

但是目前pytorch 最麻烦的一点就是deployed。虽然支持导出onnx,但是支持的op少的可怜。同事也吐槽过一些内存泄露的问题,并且那个libtorch的完成度实在不敢恭维,想要模型最终跑在trt上还要走好多路啊。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值