我认为我们可以编写一份关于如何执行多类别分类的Caffe描述。
所谓多类别分类是指:输入数据包含多个模型输出类别的表示,或者仅可归类到多个模型输出类别中的其中一个。
例如:包含猫和狗的图像应该对猫和狗预测类别都输出(理想情况下)约1的概率,并且对其它类别全部输出约0的概率。
基于这篇论文,这个失效并关闭了的PR以及这个开放的PR,看起来Caffe完全能够接受标签。这是正确的吗?
构建这样的网络是否需要使用多个神经元(内积->ReLU->内积)和softmax层,就像这篇论文第13页所示;或者Caffe的ip和softmax目前支持多个标签维度?
当我将标签传递给网络时,哪个例子说明了正确的方法(如果不是同时)?:
例如:猫吃苹果 注意:这里使用了Python语法,但我使用的是c++源代码。
第0列 - 类在输入中; 第1列 - 类不在输入中
[[1,0], # Apple
[0,1], # Baseball
[1,0], # Cat
[0,1]] # Dog
或
第0列 - 类别在输入中
[[1], # Apple
[0], # Baseball
[1], # Cat
[0]] # Dog
如果有任何不清楚的地方,请告诉我,我会提供示意图以阐明我要问的问题。