caffe 本身并不支持 多类标的输入, 该框架主要用于解决图片分类的问题,而目前,两个重要的问题需要多标签的输入:多任务学习(multi-task)和多标签分类(multi-label),本文针对这两个问题,实现了多标签的输入
目前,网上流行的多标签输入方法主要有以下四种:
1. 最简单,使用mxnet,它本身支持了多标签分类的问题,因此也自带了多标签的输入
2. 用HDF5 + Slice Layer的方法完成,这种方法实现上没有什么难度,但是当数据量很大时,HDF5的存储方式会产生数十倍于图片的硬盘消耗,而且生成的过程也非常缓慢,本人一开始就主要使用这种方法,往往事倍功半
3. 用两个data的输入(两个LMDB),一个只输出图片,一个只输出标签,这种方法相对前面两种要难一些,不过应该效果也不错
4. 直接修改caffe的网络使其满足多标签的输入,为了方便以后的实验,本人实现了这种方法
方法描述:注意到caffe的大多数数据转换都是从./.build_release/tools/convert_imageset 这种方法开始的,因此,从convert_i