第一步
生成数据,习惯了lmdb,我的数据中包含训练集3000张,测试集600张,利用create.sh生成train_lmdb和val_lmdb,然后利用make_imagenet.sh生成mean文件。
第二步
网络结构文件的改写,
数据层的改写:
name: "VGG_ILSVRC_16_layers"
layer {
name: "data"
type: "Data"
top: "data"
top: "label"
include {
phase: TRAIN
}
transform_param {
mirror: true
crop_size: 224
mean_file: "/home/lyz/caffe-master/models/Cele_gender/Cele_mean.binaryproto"
}
data_param {
source: "/home/lyz/caffe-master/models/Cele_gender/Cele_train_lmdb"
batch_size: 32
backend: LMDB
}
}最后一个全连接层的改写:
layer {
name: "fc8-fine"
type: "InnerProduct"
bottom: "fc7"
top: "fc8-fine"
param {
lr_mult: 10
decay_mult: 1
}
param {
lr_mult: 20
decay_mult: 0
}
inner_product_param {
num_output: 2
weight_filler {
type: "gaussian"
std: 0.01
}
bias_filler {
type: "constant"
value: 0
}
}
}其他的参考deploy.prototxt文件。
第三步 网络的运行
书写solver文件,其中学习率设置为0.0001.然后运行train.sh即可。并观测运行结果。
本文介绍了如何使用Caffe框架进行人脸性别识别任务,包括数据预处理、网络结构修改及训练过程。首先通过脚本生成训练和验证数据,并创建平均图像;接着对网络配置文件进行调整,以适应新任务;最后设定训练参数并运行。
2295

被折叠的 条评论
为什么被折叠?



