yonghenglh6 / DepthwiseConvolution

A personal depthwise convolution layer implementation on caffe by liuhao.(only GPU)
525 stars 185 forks source link

与convd的不同 #31

Closed wzj5133329 closed 5 years ago

wzj5133329 commented 5 years ago

你好,请问在使用engine:CAFFE时,DepthwiseConvolution与conv的实现方式一模一样是吗,贡献是实现了group时可以使用cuda吗?还有在添加你的层入我的caffe时不需要添加进caffe.proto吗?

yonghenglh6 commented 5 years ago

CPU是一模一样的(和年前的版本的conv相比)。 “贡献是实现了group时可以使用cuda吗?”对,主要用于训练。 “还有在添加你的层入我的caffe时不需要添加进caffe.proto吗?”不需要,它复用了conv的参数定义。

wzj5133329 commented 5 years ago

非常感谢!nice work...

wzj5133329 commented 5 years ago

你好,我还有一个问题,当用到GPU时,DepthwiseConvolution里面的group加与不加是一样的吗?不加默认也分离吗?CPU版中不加应该就是一个普通的卷积层吧?

yonghenglh6 commented 5 years ago

不,必须要加。 虽然不加也做分离,但是因为集成了普通conv的内存分配,不加的话会影响W和b的内存分配尺寸,不加的话将来转成普通conv(并增加group参数)会报错。

wzj5133329 commented 5 years ago

如果不加,做分离是不是隐式group转成与输入输出一致呢,因为我不加与加了后用caffe测试占用显存是一样的,加了之后是为了可以直接将type改为Convolution使用吗?这样是为了移植到其他框架上吗^_^

yonghenglh6 commented 5 years ago

对,是为了将来切换回caffe,然后转移到其他框架。