pytorch 转化到caffe

1. 没有转换成功,因为caffe不支持gather layer. 而pytorch yolov3层,非常容易产生gather, 就算是tensor.view(), slice 都会产生gather运算符。

2. tensorrt也是最近才支持gather运算符。何况已经很久不更新的caffe.

mpi caffe的可以支持gather 层, https://github.com/craftGBD/caffe-GBD/blob/master/src/caffe/layers/gather_layer.cpp

但是目标是要转换到nnie,里面应该没有mpi。

3. 什么是merge batchnorm?

把batchnorm 合并到前面的卷积层里面,从而去掉了bn,scale层,起到了加速效果。为什么能合并呢,卷积不是全连接,wx+b, 但是输入通过im2col后,卷积操作就化成了矩阵的wx+b。

y = wx+b

z = gamma * (y-batch_mean)/sqrt(var) + beta

从而:z = gamma*w/sqrt(var) * x + (gamma * b / sqrt(var) + beta)

 

 

你可能感兴趣的:(深度学习)