pytorch 我是土堆课程学习

2026-1-15

tips:

gethub的download zip 之后,浏览器上下载卡住了:使用 fdm(free download Manager)

右键下载链接复制到fdm即可

anaconda常用指令

进入 Anaconda prompt

conda create -n 环境名称 python=3.6

ad: conda create -n tudui python=3.6

conda list 获取base环境中的所有包

conda env list 表示Anaconda里面所有的环境

conda activate tudui 激活"tudui"这个环境

当然也可以用Anaconda Navigator这种可视化页面来操作

在tudui环境中安装notebook的包

conda activate tudui

conda install nb_conda (注意这里最好别用pip)

jupyter notebook

主要是要看conda list里面有没有ipkernel,没有就需要安装这个包

然后用浏览器进入

新建对应conda环境tudui的notebook

验证:import torch

torch.cuda.is_available()

正确输出:true

help()与dir()

help(torch.cuda.is_available)

dir(torch.cuda.is_available())

Dataset与Dataloader

DatasetDataLoader是 PyTorch 中数据加载的两个核心组件,它们分工明确,一起协作完成高效的数据加载和处理。

1. Dataset

  • 定义数据集的定义者和描述者

  • 职责 :负责定义数据如何组织、存储和读取

  • 关键方法

    • __len__():返回数据集的大小

    • __getitem__():根据索引返回单个数据样本

  • 特点:被动组件,不管理批次、打乱等

python 复制代码
from torch.utils.data import Dataset
import torch

class MyDataset(Dataset):
    def __init__(self, data):
        self.data = data
    
    def __len__(self):
        return len(self.data)
    
    def __getitem__(self, idx):
        return self.data[idx]  # 返回单个样本

# 创建数据集
dataset = MyDataset(torch.randn(100, 3, 32, 32))  # 100个样本
print(f"数据集大小: {len(dataset)}")  # 100
sample = dataset[0]  # 获取第一个样本
print(f"样本形状: {sample.shape}")  # torch.Size([3, 32, 32])

2. DataLoader

  • 定义数据加载的管理者和执行者

  • 职责 :负责批量加载、打乱、并行处理

  • 关键功能

    • 批量处理

    • 数据打乱

    • 多进程并行加载

    • 数据预处理

  • 特点:主动组件,管理加载流程

python 复制代码
from torch.utils.data import DataLoader

# 创建数据加载器
dataloader = DataLoader(
    dataset,          # 传入 Dataset
    batch_size=16,    # 批次大小
    shuffle=True,     # 打乱数据
    num_workers=2,    # 并行进程数
    drop_last=True    # 丢弃最后一个不完整的批次
)

# 遍历批次
for batch in dataloader:
    print(f"批次形状: {batch.shape}")  # torch.Size([16, 3, 32, 32])
    break

P6_Dataset类代码实战

P7_TenSorBoard的使用(一)

P8_TenSorBoard的使用(二)

P9_Transforms的使用(一)

相关推荐
通信小呆呆13 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick13 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee13 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn8613 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e13 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨13 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
cqbzcsq13 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
YangYang9YangYan13 天前
2026初入职场学习数据分析的价值
学习·数据挖掘·数据分析
guslegend13 天前
理论学习:什么是 Coding Agent?
学习
自传.13 天前
尚硅谷 Vibe Coding|第三章(1) Claude Code深度使用与进阶技巧 学习笔记
笔记·学习·尚硅谷·vibecoding