Caffe只为一个品牌进行培训

时间:2016-02-21 01:40:47

标签: machine-learning neural-network computer-vision deep-learning caffe

这真的很奇怪。我正在实施这个模型:

enter image description here

除了我使用ImageData blob从文本文件中读取数据,batch_size:1。只有两个标签,文本文件照常组织

app/index.html

然而,Caffe只训练和测试标签0!

我使用常规工具运行caffe。

/home/.../pathToFile 0 ... /home/.../pathToFile 1

当我在pycaffe中打开网络时,我第一次收到此消息:

./build/tools/caffe train --solver=solver.prototxt

和。的大小 WARNING: Logging before InitGoogleLogging() is written to STDERR 现在是1,应该是2!

不仅如此,那个标签似乎是浮点而不是整数。

net.blobs['label'].data

我知道这之前有用过,我无法理解我做错了什么或从哪里开始排查。

1 个答案:

答案 0 :(得分:2)

网络的输出形状取决于输入batch_size:如果您定义batch_size: 1,则每次都会处理单个示例,因此它只会读取一个label。如果您将batch_size更改为2,则caffe将读取两个样本,因此label的形状将变为2。 这种“形状规则”的一个例外是损失输出:损失定义了一个标量函数,计算了梯度。因此,无论输入形状如何,损失输出总是标量。

关于label的数据类型:Caffe将所有变量存储在float32类型的“Blob”中。