2。2。4 根据抽取方法From优Y尔E论W文W网wWw.YouERw.com 加QQ75201,8766 调整训练数据集 8
3 训练和分类 9
3。1 构造神经网络分类器 9
3。2 反向传播算法进行训练 10
3。3 根据字母分类器预测单词 12
4 提升识别正确率 14
4。1 用词典提升识别正确率 14
4。2 通过编辑距离提升识别正确率 14
4。3 将词典和编辑距离结合起来 15
5 总结 16
1 绪论
1。1 研究背景和意义
近年来,随着互联网的高速发展,网络信息安全成为备受关注的问题。作为互联网信息传播的媒介,网络论坛、微博、贴吧等已经悄然融入社会生活的各个方面,人们对验证码生成和识别技术的研究也随之日渐升温。为了防止恶意自动注册、自动投票,防止垃圾邮件的产生,越来越多的网站开始使用验证码。验证码就是将一串随机产生的数字或符号,生成一幅图像,图像里加上一些干扰像素,由用户肉眼识别其中的验证码信息,输入表单提交网站验证,验证成功后才能使用某项功能。[1]对于验证码的识别,机器是很难识别的,人的肉眼有时也会判断错误。因此,为了提升识别的正确率,我们采用神经网络算法进行识别,用户对不确定的验证码就可以根据神经网络算法识别的结果,进行判断并输入。通过神经网络进行识别,可以进一步深入了解神经网络算法识别的原理和方法。论文网
神经网络算法最初是根据人类大脑的工作机制设计的,是由大量类似于神经元的简单处理单元广泛互联的复杂网络系统,它是在现代并行神经学研究成果的基础上提出的,它反映了人脑的某些特征,但却并非神经系统的真实描述,而只是其简化、抽象和模拟。本文将介绍利用神经网络算法识别具有字母的验证码图片。[1]
1。3 研究内容和研究方法
在数据挖掘中,利用神经网络算法识别验证码是基于机器学习的,神经网络是由一系列相互连接的神经元组成。每个神经元都是一个简单的函数,接受一定输入,给出相应输出。[2]
神经网络识别验证码,其识别的过程和原理是需要深入挖掘的,并在深入了解的基础上,通过一定的方法和手段,提升字母识别的正确率,是我们关注的重点。
本文研究的内容,主要是研究神经网络算法识别的过程,并在理解神经网络识别原理的基础上,努力提升识别的正确率是关键所在。在研究过程中,我们会重点对验证码数据进行训练和测试,不断地调整训练的次数,不断地调整学习率和权重,以及图片的错切值,直到达到最佳的识别效果。
我们采用Anaconda2版本的IPython Notebook jupyter软件,运用python语言实现上述算法,并最终实现对验证码的识别。