我有一个像这样的原型:
name: "CaffeNet"
layer {
name: "data"
type: "Data"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
mirror: true
crop_size: 100
mean_file: []
但我在lmdb中的图像大小是100X200,使这个网络工作的唯一方法是将 crop_size
设置为 100
,Caffe是否破坏了我的图像并从中心裁剪出来?有没有办法解决它?什么我删除作物大小?
PS :如果我删除裁剪尺寸,我会得到
源param形状是4096 3072(12582912);目标参数形状是4096 1024(4194304)
我看到this问题,但没有提交我的计算每个图层输出,我们只为完全连接的图层定义 num_output
.
虽然每层的输出计算不是很难:
output_net =(input_net(2 * pad)-kernel_size)/(stride 1)* num_output(或fillters)
data(100X200X3)
conv1(((100X200X3)+(2*0)-11)/(4+1)) * 96 = ((60000 -11) /5) * 96 = 1151788.8
pool1((input_net+(2*0)-3)/(2+1)) = (1151788.8 -3) /3 = 383928.6
conv2((input_net+(2*2)-5)/(1+1)) * 256 = ((383928.6 + (4) -5) /5) * 256 = ((383928.6 + -1) /5) * 256 = 19657093.12
pool2((input_net+(2*0)-3)/(2+1)) = (19657093.12 -3) /3 = 6552363.373333333
conv3((input_net+(2*1)-3)/(1+1)) * 384 = ((6552363.373333333 + (2) -5) /2) * 384 = 3276180.186666667 * 384 = 1258053191.679999936
conv4((input_net+(2*1)-3)/(1+1)) * 384 = ((1258053191.679999936 + (2) -5) /2) * 384 = 629026594.339999968 * 384 = 241546212226.559987712
conv5((input_net+(2*1)-3)/(1+1)) * 256 = ((241546212226.559987712 + (2) -5) /2) * 256 = 120773106111.779993856 * 256 = 3.091791516×10¹³
我怎样才能从这里开始正确的网络?而caffe说12582912,但它不是在我计算之后 . 如果我计算得对 .