深度学习:验证码识别

柔情痞子 提交于 2020-02-17 02:02:02

需求:验证码识别

方案:数据集和样本本身很小,使用全连接层神经网络预测

code:

数据集

  • 图片数据集链接:https://pan.baidu.com/s/1ENAtDuyTriCa94CKBONHXg 提取码:77as(由于该链接中的数据不是压缩包的形式,非会员下载极其麻烦,所以不推荐这种方法)
  • 自己使用代码生成验证码图片及csv文件(推荐)
  • 直接使用tfecords文件(推荐)

文件介绍

  • cap_input.py:是将数据集数据使用tfrecords文件保存的代码
  • cap_train.py:是简单的模型设计文件

核心思想:

  • 数据处理
    • 验证码由字母转为0~26之间的某个数字进行代替,作为临时目标值
    • 样本的目标值设置为[None,4*26]的one-hot编码形式,作为真实目标值。
  • 模型创建:建立神经网络(全连接层神经网络)
  • 损失函数:softmax配合交叉熵损失函数进行损失计算
  • 损失函数求解:梯度下降求解损失函数。
  • 预测判断:对于一个样本预测的“4”中如果“26”个元素概率最大的索引和真实值的对应位置的最大索引不同,则认为预测错误。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!