Deep learning 咖啡豆大小会破坏我的lmdb图像吗?

Deep learning 咖啡豆大小会破坏我的lmdb图像吗?,deep-learning,caffe,Deep Learning,Caffe,我有一个类似这样的协议: 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\u s

我有一个类似这样的协议:

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\u size
设置为
100
,Caffe会破坏我的图像并从中心进行裁剪吗?有没有办法解决这个问题?我删除的作物大小是多少

PS:如果删除作物大小,我将获得

源参数形状为40963072(12582912);目标参数形状为4096 1024(4194304)

我看到了这个问题,但并没有字段来计算每一层的输出,我们只是为完全连接的层定义
num_输出

虽然计算每层的输出并不困难,但是:

输出\净=(输入\净+(2*pad)-内核\大小)/(步幅+1)*数量\输出(或填充)


我怎样才能从这里开始正确的网络?caffe说是12582912,但不是经过我的计算。如果我算对了。

你想把一个长方形(100x200)变成一个正方形(100x100)。恐怕蛮力在这里似乎不是正确的方法。为什么不重新设计网络,使其真正适合您的输入?或者,将顶部完全连接的层转换为卷积层(请参阅),然后在顶部添加一个全局池层。@Shai,谢谢您,先生,我非常感谢您的回答和贡献。我要读那个教程。我不能用咖啡吗?我已经改变了那个网络中我能改变的一切。@Shai,我以前读过那个教程和Christopher Bourez博客中的一个教程,我已经实现了他们的代码,他们设计了过滤器,但网络不应该学习这些吗?如果我移除完全连接的层,那么如果没有神经网络,网络将如何分类?我以前曾经可视化过我的网络,我认为我唯一能做的就是删除一些层或添加一些层,那么没有神经网络的网络是否可以正常工作?本教程并没有向您展示如何删除层,而是如何使用等效的卷积层更改经过训练的完全连接层。如果不更改网络的输入大小,则最终会得到相同的网络
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¹³