当前位置: 首页 > ds >正文

Python打卡训练营打卡记录day38

知识点回顾:
  1. Dataset类的__getitem__和__len__方法(本质是python的特殊方法)
  2. Dataloader类
  3. minist手写数据集的了解

作业:了解下cifar数据集,尝试获取其中一张图片

import torch
from torch.utils.data import DataLoader, Dataset 
from torchvision import datasets, transforms 
import matplotlib.pyplot as plt
import numpy as np  # 用于图像转换# 设置随机种子,确保结果可复现
torch.manual_seed(42)# 1. 数据预处理(CIFAR-10的3通道参数)
transform = transforms.Compose([transforms.ToTensor(),  # 转换为张量并归一化到[0,1]transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010))  # CIFAR-10的3通道均值和标准差
])# 2. 加载CIFAR10数据集
train_dataset = datasets.CIFAR10(root='./data',train=True,download=True,  # 若本地已有数据,会跳过下载transform=transform
)test_dataset = datasets.CIFAR10(root='./data',train=False,transform=transform
)# 随机选择一张图片
sample_idx = torch.randint(0, len(train_dataset), size=(1,)).item() 
image, label = train_dataset[sample_idx] # 可视化函数(CIFAR-10彩色图)
def imshow(img):# 反标准化(3通道)img = img * torch.tensor([0.2023, 0.1994, 0.2010]).view(3,1,1) + torch.tensor([0.4914, 0.4822, 0.4465]).view(3,1,1)img = img.permute(1, 2, 0).numpy()  # 调整通道顺序为HWCplt.imshow(img)plt.show()# CIFAR-10的类别名称
class_names = ['airplane', 'automobile', 'bird', 'cat', 'deer','dog', 'frog', 'horse', 'ship', 'truck']print(f"Label: {class_names[label]}")
imshow(image)# 3. 创建数据加载器
train_loader = DataLoader(train_dataset,batch_size=64,shuffle=True
)test_loader = DataLoader(test_dataset,batch_size=1000
)

@浙大疏锦行

http://www.xdnf.cn/news/9412.html

相关文章:

  • CentOS 7.0重置root密码
  • Oracle OCP认证考试考点详解083系列16
  • 函数到底有多少细节?
  • 使用 Qemu 调试 LoongArch 应用程序
  • 物流项目第七期(路线规划之Neo4j的应用)
  • 本地socket排查
  • 详解MySQL调优
  • 高频面试--MySQL
  • 【Python打卡Day31】文件的拆分与使用@浙大疏锦行
  • 【C语言练习】066. 使用typedef定义新类型
  • 【每天一个知识点】智能体(Agent)”与“思维链(Chain of Thought, CoT)
  • 为什么选择迪宇电力厂家的绝缘胶垫?有什么优势以及产品参数
  • Python应用嵌套猜数字小游戏
  • 数据库大学实验二
  • PyTorch入门-Transorforms
  • 2.2.1 05年T3
  • python处理signal(信号)
  • 基于大模型的慢性胃炎全周期预测与诊疗方案研究报告
  • 联合索引与最左前缀原则详解
  • Springboot-基础
  • LY/T 2714-2016 木塑门套线检测
  • Spring Boot整合Spring AI全攻略:构建智能应用的工程实践
  • Java 并发编程通关秘籍——08死锁
  • webpack CDN打包优化
  • 有什么excel.js支持IE11,可以显示EXCEL单元格数据,支持单元格合并,边框线,单元格背景
  • LangGraph + LLM + stream_mode
  • WPF命令与MVVM模式:打造优雅的应用程序架构
  • 【AI News | 20250527】每日AI进展
  • springboot--实战--大事件--用户接口开发
  • 【机器学习基础】机器学习入门核心算法:支持向量机(SVM)