基于深度学习caffe的图像分类-模型finetune

利用已有模型作为初始参数,融入收集到的人脸图像,对模型进行finetune处理,实现人脸识别的功能

caffe团队用imagenet图片进行训练,迭代30多万次,训练出来一个model。这个model将图片分为1000类,应该是目前为止最好的图片分类model了。一般来说,深度学习都需要上万张数据样本,如果我们想对自己的图片进行分类,但是样本量不多就几百张,训练出来的模型精度会很低,因此就可以利用别人训练好的模型参数当成我们的初始化参数。

使用别人训练好的参数,必须有一个前提,那就是必须和别人用同一个network,因为参数是根据network而来的。当然,最后一层,我们是可以修改的,因为我们的数据可能并没有1000类,而只有几类。我们把最后一层的输出类别改一下,然后把层的名称改一下就可以了。最后用别人的参数、修改后的network和我们自己的数据,再进行训练,使得参数适应我们的数据,这样一个过程,通常称之为微调(fine tuning).

数据集准备

准备数据,利用网上的一组淘宝数据,10个商品类1000张图片,每个类100张,当然你也可以根据自己的需要搜集自己想要识别的图片集,下载地址,百度网盘:https://pan.baidu.com/s/1o77w1wI
在caffe/examples文件夹下新建文件夹myfile4,并在myfile4中新建文件夹data用于存放我们的数据集,将下载的数据集中train和val文件复制到data中,