day42Dataset和Dataloader@浙大疏锦行

day42Dataset和Dataloader@浙大疏锦行

下载数据集

python 复制代码
import torch
import torchvision
from torchvision import datasets, transforms
import matplotlib.pyplot as plt
import numpy as np

# 设置随机种子
torch.manual_seed(42)

# 1. 定义预处理
# CIFAR-10 图片是 32x32 的 RGB 图片
transform = transforms.Compose([
    transforms.ToTensor(),  # 转为 Tensor,范围 [0, 1]
])

# 2. 加载 CIFAR-10 数据集
# root='./data' 指定下载/存放路径,如果数据不存在会自动下载
train_dataset = datasets.CIFAR10(
    root='./data', 
    train=True, 
    download=True, 
    transform=transform
)

# CIFAR-10 的类别
classes = ('plane', 'car', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck')

print(f"数据集大小: {len(train_dataset)}")
python 复制代码
# 3. 随机获取并展示一张图片
sample_idx = torch.randint(0, len(train_dataset), size=(1,)).item()
image, label = train_dataset[sample_idx]

print(f"样本索引: {sample_idx}")
print(f"标签索引: {label}")
print(f"对应类别: {classes[label]}")
print(f"图片形状: {image.shape}") # (C, H, W)

# 可视化函数
def imshow(img):
    # img: (C, H, W) -> (H, W, C)
    npimg = img.numpy()
    plt.imshow(np.transpose(npimg, (1, 2, 0)))
    plt.axis('off') # 不显示坐标轴
    plt.show()

imshow(image)

样本索引: 37542

标签索引: 6

对应类别: frog

图片形状: torch.Size([3, 32, 32])

@浙大疏锦行

相关推荐
free-elcmacom2 小时前
机器学习高阶教程<6>推荐系统高阶修炼手册:混排、多任务与在线学习,解锁精准推荐新境界
人工智能·python·学习·算法·机器学习·机器人
西西学代码2 小时前
Flutter---常用打印图标
前端·python·flutter
企微自动化2 小时前
企业微信外部群自动化系统的异常处理机制设计
开发语言·python
山土成旧客2 小时前
【Python学习打卡-Day24】从不可变元组到漫游文件系统:掌握数据结构与OS模块
数据结构·python·学习
技术小甜甜2 小时前
[Python] 使用 Tesseract 实现 OCR 文字识别全流程指南
开发语言·python·ocr·实用工具
idkmn_2 小时前
Daily AI 20251219 (PyTorch基础回顾3)
人工智能·pytorch·python·深度学习·神经网络
Iridescent11212 小时前
Iridescent:Day28
python
m0_726365832 小时前
大力学习台灯T6/T6Pro 救砖实战:macOS/Windows 用 mtkclient 从 Fastboot 无限重启完整恢复(含固件下载地址)
python·github·智能硬件
free-elcmacom2 小时前
机器学习高阶教程<7>Transformer原理全景解读:从“序列困境”到“注意力革命”
人工智能·python·机器学习·transformer