CNN进行非接触掌纹识别的改进过程

1.模型和参数不变

模型:2个卷积层+1个全连接层
CNN进行非接触掌纹识别的改进过程_第1张图片
参数:

BATCH_SIZE = 32 # 定义超参数,每次处理32张图片
EPOCHS = 20 # 将数据集训练20轮
LR = 0.01 # 学习率
TRAIN_DIVISION = 3 # 训练集划分占比
optimizer = optim.Adam(model.parameters(), lr=LR) # 优化器

1.1 “IITD/Left部分数据” VS “IITD/Left+Right数据”

CNN进行非接触掌纹识别的改进过程_第2张图片

2.改模型

模型2.1:3个卷积层+2个全连接层 结果:RR=0.9158
CNN进行非接触掌纹识别的改进过程_第3张图片
模型2.2:4个卷积层+2个全连接层 结果:RR=0.9145
CNN进行非接触掌纹识别的改进过程_第4张图片
模型2.3:4个卷积层+3个全连接层 结果:RR=0.8776
CNN进行非接触掌纹识别的改进过程_第5张图片

模型2.4:4个卷积层(更改卷积核)+2个全连接层 结果:RR=0.9158
CNN进行非接触掌纹识别的改进过程_第6张图片
模型2.5:4个卷积层(更改输出通道数)+2个全连接层 结果:RR=0.9237(EPOCH=200)
CNN进行非接触掌纹识别的改进过程_第7张图片
2.5似乎是最好的,但之前的模型可能是因为没有完全收敛.

3. 改参数

综合结果,模型选用2.5的。

3.1 优化器

之前全都以Adam作为优化器,收敛速度快(20次迭代内就能达到很高的RR),在2.5的模型中186次迭代达到RR=0.9237。
CNN进行非接触掌纹识别的改进过程_第8张图片

3.2 Batch_size

优化器选用Adam,LR=0.001。
CNN进行非接触掌纹识别的改进过程_第9张图片

3.3 Learning Rate

优化器选用Adam,Batch_size=64。
CNN进行非接触掌纹识别的改进过程_第10张图片

4.BN

批量标准化网络层:
1)统计每个通道所有点的像素值的均值和方差;
2)每个通道的像素值减均值除方差;

BN:Max RR: 0.951316、Running time: 12049.209277153015 s
CNN进行非接触掌纹识别的改进过程_第11张图片

5. 数据集

同济非接触式掌纹数据集:
Max RR: 0.999500、Running time: 39925.49079298973 s
(Train Epoch:22 Loss:0.000003
Test – Average loss:0.2042,RR:0.265000)是为什么?

Max RR: 0.999250、Running time: 39227.911673784256 s
(Train Epoch:114 Loss:0.000000
Test – Average loss:0.1773,RR:0.197000)为什么?
CNN进行非接触掌纹识别的改进过程_第12张图片

你可能感兴趣的:(掌纹识别,掌纹识别)