基于神经网络的验证码实验研究(二)

8.训练和分类
构造神经网络分类器,接收图像,预测图像。

构造神经网络,需要更多的Hide层对实验结果会有很大的效果,会对计算效率产生作用。此处使用MLP,即多层感知机。最主要的特点就是含有多个神经元层,因此从神经网络衍生出深度神经网络,即DNN。

它可以被看作是一个有向图,由多个的节点层所组成,每一层都全连接到下一层。
除了输入节点,每个节点都是一个带有非线性激活函数的神经元(或称处理单元)。

  • 创建一个最基础的、具有三层结构的多层感知机,它由输入层、输出层和一层隐含层组成。输入层和输出层的神经元数量是固定的。
  • 现在,数据集有400个特征,那么第一层就需要有400个神经元,而26个可能的类别表明我们需要26个用于输出的神经元。
    训练

9.训练后进行查看
查阅
效果图片所示:
效果
10.f1-score的测试分析
模型测试
结果

  • 我们使用F1指标来判断结果好坏。
  • f1数值达到0.9左右, 说明模型训练还不错。而且分数越高,说明模型预测越好。

11.预测函数
预测函数

定义一个预测验证码的函数predict_captcha

  • 使用前面定义的图像切割函数, segment_iamge 抽取小图像;
  • 整理数据集=datasetX_test.
  • 进行图像预测。
  • assert len检查输入输出集是否相等。
  • predicted_word将预测的字母拼接起来。

12.尝试预测尝试预测
效果图片所示:
结果
对于字母处理,我们在前面只定义了大写字母,因此我们的神经网络model也只能识别大写字母。

13.NLTK

  • 借助NLTK模块创建单词数据集,只使用长度为4的单词,从NLTK中导入words
    nltk
  • 第一次模拟训练匹配率:
    第一次
  • 第n次修正模型后训练匹配率:
    优化

Number correct is 26
Number incorrect is 5487

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值