day44

@浙大疏锦行

  1. 图像数据的格式:灰度和彩色数据

图像数据在深度学习中以张量形式存储,核心区别是通道数,PyTorch 中张量形状为 (通道数, 图像高度, 图像宽度)(与 PIL/OpenCV 的(高,宽,通道)格式不同,需转换)。

1.1 灰度图像数据

通道数:1(单通道,仅亮度信息)

形状示例:MNIST 手写数字(28×28 像素)的张量形状为 (1, 28, 28)

数据范围:原始像素值通常是 0-255(整数),训练前需归一化到 0-1(浮点型)

1.2 彩色图像数据

通道数:3(RGB 三通道,红、绿、蓝)

形状示例:CIFAR-10 数据集(32×32 像素)的张量形状为 (3, 32, 32)

数据范围:同灰度图,需将0-255归一化到0-1

  1. 图像任务的模型定义(以 CNN 为例)

图像任务常用卷积神经网络(CNN),核心层包括卷积层(提取特征)、池化层(降维)、全连接层(分类)。

  1. 显存占用的 4 种地方

GPU 显存是训练图像模型的核心资源限制,主要占用场景包括:

a. 模型参数 + 梯度参数

模型参数:模型的权重、偏置(如卷积层的 kernel、全连接层的 weight)

梯度参数:反向传播时计算的参数梯度(每个参数对应一个梯度,占用显存与参数等量)

b. 优化器参数

不同优化器会额外存储参数(如动量、二阶矩):

SGD:仅需模型参数 + 梯度,显存占用少;

Adam:需存储动量(m)和二阶矩(v),显存占用是模型参数的 3 倍(参数 + 梯度 + 动量 + 二阶矩)。

c. 数据批量所占显存

单批次数据的显存占用 = batch_size × 单张图像的字节数:

单张 CIFAR 图(3×32×32,float32):3×32×32×4字节=12288字节≈12KB

若batch_size=128:128×12KB≈1.5MB

batch_size 越大,这部分显存占用越高。

d. 神经元输出中间状态

前向传播时,各层的输出需要保存,用于反向传播的梯度计算:

  1. batchsize 和训练的关系

batchsize(批次大小)是训练中显存与训练效果的核心平衡项,影响如下:

相关推荐
敏编程16 小时前
一天一个Python库:jsonschema - JSON 数据验证利器
python
前端付豪16 小时前
LangChain记忆:通过Memory记住上次的对话细节
人工智能·python·langchain
databook16 小时前
ManimCE v0.20.1 发布:LaTeX 渲染修复与动画稳定性提升
python·动效
花酒锄作田1 天前
使用 pkgutil 实现动态插件系统
python
前端付豪1 天前
LangChain链 写一篇完美推文?用SequencialChain链接不同的组件
人工智能·python·langchain
曲幽1 天前
FastAPI实战:打造本地文生图接口,ollama+diffusers让AI绘画更听话
python·fastapi·web·cors·diffusers·lcm·ollama·dreamshaper8·txt2img
老赵全栈实战1 天前
Pydantic配置管理最佳实践(一)
python
阿尔的代码屋2 天前
[大模型实战 07] 基于 LlamaIndex ReAct 框架手搓全自动博客监控 Agent
人工智能·python
AI探索者2 天前
LangGraph StateGraph 实战:状态机聊天机器人构建指南
python
AI探索者2 天前
LangGraph 入门:构建带记忆功能的天气查询 Agent
python