前馈神经网络学习SVHN数据集

理论部分

神经模型 激活函数 线性代数 神经模型等式 监督学习 神经元层 前馈神经网络 向量化激活 输入向量的向量化 线性和非线性激活 输出层 向量化标签和输出 代价函数 梯度下降 消失和爆炸梯度 反向传播方程的向量化

SVHN数据集

街景门牌号码(SVHN)是用于开发机器学习和对象识别算法的真实图像数据集。 它是最常用的基准数据集之一,因为它需要最少的数据预处理和格式化。 尽管它与MNIST有一些相似之处,其中图像的裁剪数字很小,但SVHN合并了更多数量级的标记数据(超过600,000位数的图像)。 它也体现了现实世界中要识别自然场景图像中数字和数字的难题,图像没有任何对比度归一化,包含重叠的数字和分散注意力的特征,这使得与MNIST相比,这是一个更加困难的问题。

PyTorch构建和训练

通过导入所需的库来启动笔记本。

import torch
import torchvision
import numpy as np
import matplotlib.pyplot as plt
import torch.nn as nn
import torch.nn.functional as F
from torchvision.datasets import SVHN
from torchvision.transforms import ToTensor
from torchvision.utils import make_grid
from torch.utils.data.dataloader import DataLoader
from torch.utils.data import random_split
%matplotlib inline

现在,我们从torchvision.datasets使用SVHN类下载数据并创建PyTorch数据集,然后使用ToTensor()将数据集转换为tensor。

dataset = SVHN(root='data/', download=True, transform=ToTensor())

接下来,我们将使用random_split helper函数为数据集中的验证集预留12000张图像。

val_size = 12000
train_size = len(dataset) - val_size

train_ds, val_ds = random_split(dataset, [train_size, val_size])
len(train_ds), len(val_ds)

输出:

(61257, 12000)

现在,我们可以创建PyTorch数据加载器以用于批处理大小为64的训练和验证集。

本文源代码

详情参阅 - 亚图跨际

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值