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

1.模型和参数不变

模型:2个卷积层+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数据”

在这里插入图片描述

2.改模型

模型2.1:3个卷积层+2个全连接层 结果:RR=0.9158
在这里插入图片描述
模型2.2:4个卷积层+2个全连接层 结果:RR=0.9145
在这里插入图片描述
模型2.3:4个卷积层+3个全连接层 结果:RR=0.8776
在这里插入图片描述

模型2.4:4个卷积层(更改卷积核)+2个全连接层 结果:RR=0.9158
在这里插入图片描述
模型2.5:4个卷积层(更改输出通道数)+2个全连接层 结果:RR=0.9237(EPOCH=200)
在这里插入图片描述
2.5似乎是最好的,但之前的模型可能是因为没有完全收敛.

3. 改参数

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

3.1 优化器

之前全都以Adam作为优化器,收敛速度快(20次迭代内就能达到很高的RR),在2.5的模型中186次迭代达到RR=0.9237。
在这里插入图片描述

3.2 Batch_size

优化器选用Adam,LR=0.001。
在这里插入图片描述

3.3 Learning Rate

优化器选用Adam,Batch_size=64。
在这里插入图片描述

4.BN

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

BN:Max RR: 0.951316、Running time: 12049.209277153015 s
在这里插入图片描述

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)为什么?
在这里插入图片描述
后来考虑到是过拟合的原因(train_loss低,test_loss高),所以进行了一些改进。

5.1加入dropout

初步改进:加入dropout层,并调整了网络层数(减少一层卷积):
在这里插入图片描述

结果是:RR=0.99975、Running time: 60452.40188455582 s,看出来没有识别率明显的骤降,但仍不太稳定,所以还需要进一步减弱过拟合。
请添加图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值