学习caffe中,是否转战pytorch

谢邀.
pyTorch的优点在于
自动求梯度;动态计算图, 适合复杂的网络, 如RNN, 条件运算等.缺点在于
现在仍处在快速开发阶段, API很有可能会变化;现有的pyTorch代码还很少. 【学习caffe中,是否转战pytorch】 Caffe的优点在于
不需要写代码;Python接口很实用, 可以用Numpy进行交互.缺点在于
需要把数据转换为HDF5, LMDB格式等;复杂网络prototxt写起来很复杂, 比如ResNet-152的prototxt有6775行;文档不多, 经常需要读源代码.两者共同的优点和缺点没有列在上面. 用什么框架更好取决于你的任务, 在Facebook中通常用pyTorch进行科研, 而用Caffe2定制产品, 而对你而言
如果你想微调网络或者提取特征, Caffe是个很好的选择;如果你的模型非常复杂, 或者未来将涉及RNN, pyTorch的动态计算图会十分好用;如果你想把你的模型放在手机上跑, 用Caffe2吧.. Fei-Fei Li, Justin Johnson, and Serena Yeung. CS231n: Convolutional Neural Networks for Visual Recognition. Stanford. 2017.

■网友
pytorch非常灵活,非常python,写个新的网络结构比caffe快太多了。但是还不太完善,毕竟现在还是试用版。如果你要处理“数据网络结构会变”这种需求,那pytorch是最擅长的。如果网络结构固定,而且都用成熟组件,那其实暂时也没必要换。
■网友
推荐Keras也不错,没用过pytorch,只知道pytorch对动态计算图的支持不错。Keras是对tensorflow的高级抽象和封装,写网络模型很方便,可以很快写出网络模型验证方案,代码也简洁易读,比你写C艹舒服多了。


    推荐阅读