一、数据处理与查看
- 下载、解压数据集
from pathlib import Path
import requests
import pickle
import gzip
FILENAME = Path("D:/DataSet/mnist.pkl.gz")
with gzip.open((FILENAME).as_posix(),"rb") as f:
((x_train,y_train),(x_valid,y_valid),_) = pickle.load(f,encoding="latin-1")
- 查看数据集中的数据
from matplotlib import pyplot
import numpy as np
pyplot.imshow(x_train[0].reshape((28,28)),cmap="gray")
一共有50000张数据,每张图片 784 维(784个特征或者说784个像素点),也就是 h * w * c(长 * 宽 * 颜色通道)= 28 * 28 * 1 。
输出的 10 个值,就是从 0-9 这 10 个数的预测分类概率值,哪个概率大就预测为哪个数字。所以 y 标签也需要转换有10个值的对应编码。
- 数据用map转成tensor格式并查看
import torch
x_train, y_train, x_valid, y_valid = map(torch.tensor, (x_train, y_train, x_valid, y_valid))
n, c = x_train.shape
x_train, x_train.shape, y_train.min(), y_train.max()
print(x_train, y_train