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

Day 43图像数据与显存机制@浙大疏锦行

Day 43 学习笔记:图像数据与显存机制@浙大疏锦行

一、 图像数据基础

  1. 数据形状 (Shape)

    • 结构化数据(样本数, 特征数)

    • 图像数据

      (通道数, 高, 宽)

      PyTorch 默认格式 (Channel First)

      • 灰度图(如 MNIST):通道数 = 1
      • 彩色图(如 CIFAR-10):通道数 = 3 (RGB)
  2. 维度陷阱

    • PyTorch使用(C, H, W)
    • Matplotlib/OpenCV通常使用(H, W, C)
    • 注意:在使用plt.imshow()可视化 PyTorch 张量时,必须先使用np.transposepermute交换维度顺序。

二、 图像神经网络 (MLP) 定义

  1. 展平操作 (Flatten)
    • MLP 全连接层只能接收一维向量。
    • 必须在输入层前使用nn.Flatten()x.view()(C, H, W)拉平为(C×H×W)的一维向量。
  2. Batch Size 与模型定义
    • 模型定义阶段无关nn.Linear等层定义时不涉及 Batch Size。
    • 数据加载阶段相关DataLoader中设置 Batch Size。
    • 前向传播:PyTorch 会自动处理第一维度的 Batch,模型内部计算逻辑不变。

三、 显存 (VRAM) 占用分析

显存不仅仅用来存图片,主要由以下4部分组成:

组成部分说明估算公式 (Float32)
1. 模型参数模型的权重 (Weights) 和偏置 (Bias)参数量 ×× 4 Bytes
2. 梯度反向传播计算出的导数≈≈ 参数量 ×× 4 Bytes
3. 优化器状态优化器更新参数所需的额外信息SGD: 0
Adam: ≈≈ 参数量 ×× 8 Bytes (动量+方差)
4. 中间变量 & 数据输入数据 + 每一层的输出特征图 (Activations)受 Batch Size 影响最大
Batch Size ×× (单样本大小 + 中间层大小)

结论:模型参数和优化器占用是固定的(这也是为什么大模型很难跑起来),而调整 Batch Size 是控制显存占用的主要手段

四、 Batch Size 的选择策略

  1. 显存限制 (OOM)
    • Batch Size 设置过大会导致Out Of Memory
    • 建议从 16, 32, 64 开始尝试,通常设置为显卡最大承载能力的80%左右。
  2. 对训练的影响
    • Batch Size = 1:梯度随机性大,震荡剧烈,难以收敛。
    • Batch Size 较大:利用矩阵并行计算加速;梯度是多个样本的平均值,方向更准,训练更稳定。

@浙大疏锦行

http://www.cnnetsun.cn/news/170155.html

相关文章:

  • Linly-Talker支持语音指令控制数字人行为
  • OBS直播教程:OBS美颜插件怎么调出来?OBS美颜插件安装步骤
  • 9、从 NT 3.51 或 NT 4 迁移到 Active Directory 的全面指南
  • Linly-Talker支持语音情感强度调节滑块
  • 5、使用用户组来组织用户账户
  • 12、Windows系统文件管理与IE浏览器使用指南
  • 17、畅享媒体:Windows Media Player与Windows 7的使用指南
  • Linly-Talker支持语音转文字实时显示
  • 24、Windows 10 浏览器安全与隐私管理全攻略
  • 31、微软工具与职场最佳实践指南
  • 33、Windows 10 高级信息获取与注册表深度解析
  • Linly-Talker在老年大学远程教学中的适用性
  • Linly-Talker在校园广播站的自动化实践
  • 1、开启 Windows 10 之旅:基础操作全解析(上)
  • Linly-Talker助力品牌营销:定制化数字代言人上线
  • Linly-Talker在政府智慧服务中的落地设想
  • Linly-Talker情感表达能力测评:喜怒哀乐都能模仿
  • Linly-Talker一键部署Docker镜像现已开放下载
  • 7、PowerShell代码签名:保障脚本安全的全面指南
  • 12、网络带宽与 Windows Server 2003 相关技术解析
  • 17、Windows Server 2003 Active Directory 部署与管理全解析
  • Linly-Talker支持多语言输出:全球化数字人布局利器
  • 4、PowerShell 深入解析与实践指南
  • Linly-Talker在金融客服中的应用案例分享
  • Linly-Talker在远程教学中的创新应用场景
  • Linly-Talker深度解析:语音克隆与表情同步技术揭秘
  • 如何提升数字人真实感?Linly-Talker多模态融合策略
  • 用Linly-Talker构建虚拟主播:实时交互不是梦
  • Linly-Talker深度评测:AI数字人对话系统的未来已来
  • 提升客户体验:Linly-Talker在智能客服中的实践