基于PyTorch的验证码识别

本文介绍了基于PyTorch的验证码识别项目,从PyTorch简介到构建数据集、网络模型,再到训练与测试的过程。通过PyTorch的神经网络和自动微分系统,最终达到了99%的识别准确率。
摘要由CSDN通过智能技术生成

基于PyTorch的验证码识别

假期之前就有了实现一个验证码识别的神经网络的打算。假期开始就跟着西瓜书和吴恩达的公开课整体学习了一遍并自己手撕了一个神经网络,结果非常不理想,准确率只有20%左右 (甚至不如OCR),期间还经历了虚拟机死机, 于是就转而使用PyTorch框架实现。

PyTorch简介

PyTorch是一个开源的Python机器学习库,基于Torch,底层由C++实现,应用于人工智能领域,如自然语言处理。它主要由Facebook的人工智能研究团队开发,并且被用于Uber的概率编程软件Pyro。

PyTorch主要有两大特征:

类似于NumPy的张量计算,可使用GPU加速;
基于带自动微分系统的深度神经网络。
PyTorch包括torch.nn、torch.optim等子模块。
来自:PyTorch-维基百科

PyTorch框架的基本流程

Created with Raphaël 2.3.0 构建数据集 构建网络模型 训练模型 检测模型

构建数据集

获取验证码图片的代码按下不表,图片大小为40×100。构建数据集是将图片按照框架要求放入torch.Tensor中。

import re
import torch
from torch.utils.data import Dataset
import os
from PIL import Image
from torchvision import transforms


class MyDataset(Dataset):
    transform = transforms.Compose([
        transforms.ToTensor(),
        transforms.Resize((40, 100<
  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值