Python打卡第38天

import numpy as np

import torch

import torch.nn as nn

import torch.optim as optim

from torch.utils.data import DataLoader, Dataset

from torchvision import datasets, transforms

import matplotlib.pyplot as plt

设置随机种子确保结果可复现

torch.manual_seed(42)

定义数据预处理

transform = transforms.Compose([

transforms.ToTensor(), # 将图像转换为Tensor

transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)) # 归一化处理

])

加载数据集

train_dataset = datasets.CIFAR10(

root='./data',

train=True,

download=True,

transform=transform

)

test_dataset = datasets.CIFAR10(

root='./data',

train=False,

transform=transform

)

类别名称

class_names = ('plane', 'car', 'bird', 'cat', 'deer',

'dog', 'frog', 'horse', 'ship', 'truck')

可视化函数

def imshow(img, title=None):

"""显示反归一化后的图像"""

img = img * 0.5 + 0.5 # 反归一化 [-1,1] -> [0,1]

np_img = img.numpy()

plt.figure(figsize=(4, 4))

plt.imshow(np.transpose(np_img, (1, 2, 0))) # CHW -> HWC

if title:

plt.title(title)

plt.axis('off')

plt.show()

随机选择并显示样本

sample_idx = torch.randint(0, len(train_dataset), (1,)).item()

image, label = train_dataset[sample_idx]

print(f"Label: {label} ({class_names[label]})")

imshow(image, f"Label: {class_names[label]}")

相关推荐
MZ_ZXD00133 分钟前
flask校园学科竞赛管理系统-计算机毕业设计源码12876
java·spring boot·python·spring·django·flask·php
倔强青铜三1 小时前
苦练Python第16天:Python模块与import魔法
人工智能·python·面试
wa的一声哭了1 小时前
python基础知识pip配置pip.conf文件
java·服务器·开发语言·python·pip·risc-v·os
LuckyLay2 小时前
1.1.5 模块与包——AI教你学Django
python·django·sqlite
LuckyLay2 小时前
Django专家成长路线知识点——AI教你学Django
后端·python·django
陈晨辰熟稳重2 小时前
20250713-`Seaborn.pairplot` 的使用注意事项
python·seaborn
魔力之心2 小时前
sklearn study notes[1]
人工智能·python·sklearn
云空3 小时前
《PyQt6-3D:开启Python 3D开发新世界》
python·3d·pyqt
Q_Q19632884753 小时前
python的平安驾校管理系统
开发语言·spring boot·python·django·flask·node.js·php
白毛大侠3 小时前
在 Ubuntu 24.04 中安装 Python 2.7、pip 及 mysqlclient==1.4.6 的完整指南
python·ubuntu·pip