我有一个带有多个标签的图像数据集;数据集中有100个类别,每个图像都有1至5个与之关联的标签。

我正在按照以下网址中的说明进行操作:

https://github.com/BVLC/caffe/issues/550

它说我需要生成一个文本文件,其中列出了图像及其标签,如下所示


/home/my_test_dir/picture-foo.jpg 0
/home/my_test_dir/picture-foo1.jpg 1



就我而言,由于我具有多标签图像,因此仅按如下所示添加标签是否可行?


/home/my_test_dir/picture-foo.jpg 0 2 5
/home/my_test_dir/picture-foo1.jpg 1 4



我感觉可能不会那么简单,如果我是对的,那么在设置Caffe的过程中,我应该在哪一步以及如何整合数据集的多标签性?

最佳答案

我相信Shai的答案不再是最新的。
Caffe supports multi-label/matrix ground truth用于HDF5和LMDB格式。
this github注释中的python代码段演示了如何构造多标签LMDB基本事实(有关HDF5格式,请参见Shai's answer)。
与单标签图像数据集的构造不同,为图像构造lmdb,而为多标签地面真相数据构造第二个单独的lmdb。该代码段处理了空间多标签地面真实情况,可用于图像的像素级标记。

数据写入lmdb的顺序至关重要。基本事实的顺序必须与图像的顺序匹配。

诸如SOFTMAX_LOSS,EUCLIDEAN_LOSS,SIGMOID_CROSS_ENTROPY_LOSS之类的损耗层也支持多标签数据。
但是,精度层仍然仅限于单标签数据。您可能要遵循this github issue来跟踪何时将此功能添加到Caffe。

关于neural-network - 带有多标签图像的咖啡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32680860/

10-12 18:24