# 基于神经网络的swjtu教务网登录验证码识别系统
![](bp.png)
### 说明
参照[mnielsen](https://github.com/mnielsen)的[教程](http://neuralnetworksanddeeplearning.com/)实现的一个简单BP神经网络,在此向mnielsen表示感谢!
加入了一些优化措施的分支,在BP和SGD算法的基础上,加入了正则化、参数初始化优化、cross-entropy损失函数
此分支稳定后会merge到master分支
plian分支无优化,更加简单
### 识别效果
目前,字母分割准确率不高为主要问题,分割错误率大于5%
分割后的单个字母识别正确率能够达到99.5%
综合起来,最终准确率能够超过90%
后期考虑在字母分割阶段加入神经网络识别过程,提高整体正确率
### 主要源文件
|源文件 |功能 |
|:-------------------|:-----------------|
|pic_crawler.py |验证码训练数据爬取 |
|data_generator.py |生成训练/验证/测试数据 |
|preprocessor.py |输入数据预处理 |
|data_loader.py |从pickle中加载训练数据|
|network.py |BP神经网络 |
|dean_login.py |登录测试 |
`data`目录下的`swjtu_verif.pkl.gz`为处理好的训练数据,包含200k张训练图片(单个字符)以及验证和测试图片。`network.json`为已经训练好的网络参数,直接使用神经网络识别验证码时会从该文件中加载网络参数。
### 示例:
1.安装依赖
```shell
git clone git@github.com:wzbazinga/swjtu-verif-code.git
cd swjtu-verif-code
pip install -r requirements.txt
```
2.作为api调用
```python
from dean_login import login
res,session=login('username','password') #res:登录结果,session:登录成功后获取的requests.Session对象
if res:
response=session.get('http://jiaowu.swjtu.edu.cn/student/score/ScoreNew.jsp')
print response.text
else:
print 'oops'
```
3.准确率测试
```python
from dean_login import benchmark
benchmark('username','password') #1000次实际登录测试(单进程,单线程)
```
4.训练
```python
from data_loader import load_data
from network import Network
training,validate,test=load_data() #建议将swjtu_verif.pkl.gz解压后使用load_data_raw函数加载数据,否则速度比较慢
net=Network([17*17,20,26]) #也可不带参数,不带参数时网络结构为[17*17,20,26]
net.SGD(training,40,50,0.5,2.0,test,test_accuracy=True) #随机梯度下降算法,除training外的参数可不带
```
代码目前还很buggy
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【探索人工智能的宝藏之地】 无论您是计算机相关专业的在校学生、老师,还是企业界的探索者,这个项目都是为您量身打造的。无论您是初入此领域的小白,还是寻求更高层次进阶的资深人士,这里都有您需要的宝藏。不仅如此,它还可以作为毕设项目、课程设计、作业、甚至项目初期的立项演示。 【人工智能的深度探索】 人工智能——模拟人类智能的技术和理论,使其在计算机上展现出类似人类的思考、判断、决策、学习和交流能力。这不仅是一门技术,更是一种前沿的科学探索。 【实战项目与源码分享】 我们深入探讨了深度学习的基本原理、神经网络的应用、自然语言处理、语言模型、文本分类、信息检索等领域。更有深度学习、机器学习、自然语言处理和计算机视觉的实战项目源码,助您从理论走向实践,如果您已有一定基础,您可以基于这些源码进行修改和扩展,实现更多功能。 【期待与您同行】 我们真诚地邀请您下载并使用这些资源,与我们一起在人工智能的海洋中航行。同时,我们也期待与您的沟通交流,共同学习,共同进步。让我们在这个充满挑战和机遇的领域中共同探索未来!
资源推荐
资源详情
资源评论
收起资源包目录
基于神经网络的swjtu教务网登录验证码识别系统.zip (12个子文件)
资料总结
bp.png 149KB
data
network.json 131KB
swjtu_verif.pkl.gz 12.47MB
network.py 6KB
dean_login.py 1KB
pic_crawler.py 3KB
data_loader.py 271B
preporcessor.py 4KB
requirements.txt 78B
.gitignore 44B
data_generaotr.py 943B
README.md 3KB
共 12 条
- 1
资源评论
妄北y
- 粉丝: 1w+
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功