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

PyTorch 神经网络工具箱简明笔记

一、神经网络核心组件

组件功能
基本结构,实现输入张量到输出张量的变换
模型由层组合而成的完整网络框架
损失函数量化预测值与真实值差异,作为参数学习目标
优化器通过梯度调整模型参数,最小化损失函数

协同流程:输入→层处理→预测值→损失函数算差异→优化器更新参数。

二、核心构建工具:nn.Module vs nn.functional

对比项nn.Module(如 nn.Linear)nn.functional(如 F.relu)
参数管理自动管理权重、偏置需手动定义和传入参数
容器兼容可与 nn.Sequential 等结合不可结合模型容器
状态切换Dropout 等自动切换训练 / 测试状态需手动控制状态
适用场景含可学习参数的层(卷积、全连接等)无参数操作(激活、池化等)

三、三种模型构建方法

1. 直接继承 nn.Module

  • 逻辑:自定义类继承nn.Module__init__定义层,forward写前向传播逻辑。
  • 特点:灵活性最高,支持复杂结构(分支、跳跃连接)。

2. 使用 nn.Sequential

  • 逻辑:按顺序传入层,自动执行前向传播,无需写forward
  • 实现方式
    • 可变参数:直接传层实例(无层名称)。
    • add_module:为层命名,便于调试。
    • OrderedDict:用有序字典关联层名称与实例。
  • 特点:代码简洁,仅支持线性层顺序。

3. 继承 nn.Module + 模型容器

  • 逻辑:在自定义类中用nn.Sequential(线性打包)、nn.ModuleList(列表管理)、nn.ModuleDict(字典管理)分组层。
  • 特点:平衡灵活性与模块化,适用于复杂网络。

四、自定义网络模块(以 ResNet 残差块为例)

1. 普通残差块(输入输出形状一致)

  • 核心:两层 3×3 卷积 + 批量归一化,输入直接与输出相加(跳跃连接)。

2. 下采样残差块(形状不一致)

  • 核心:增加 1×1 卷积调整输入形状,确保与输出可相加。

3. 组合构建 ResNet18

  • 结构:初始卷积 + 最大池化 + 4 组残差块(普通块 + 下采样块)+ 全局平均池化 + 全连接层。

五、模型训练流程

  1. 加载预处理数据集(用DataLoader批量处理)。
  2. 定义损失函数(如分类用交叉熵损失)。
  3. 定义优化器(如 Adam,传入模型参数和学习率)。
  4. 循环训练:前向传播→算损失→反向传播→更新参数。
  5. 循环验证:切换模型为评估模式,计算验证集指标。
  6. 可视化结果:绘制损失、准确率曲线分析训练效果。
http://www.dtcms.com/a/395634.html

相关文章:

  • Pytorch目录细查
  • VMware的Ubuntu与windows共享文件夹
  • RK3588-ubuntu server
  • EPLAN绘制安全回路核心步骤
  • 仁合医疗靠谱吗?——社会责任担当,科技赋能医疗
  • R语言 生物信息 GEO 数据集 GPL5175 平台中一个探针的 gene_assignment 字段内容解读
  • ReactPress 2.0 — 基于 React、Next.js 和 NestJS 构建的现代化全栈发布平台
  • 52Hz——FreeRTOS学习笔记
  • 回归分析:数据驱动时代的 “因果纽带” 与 “预测锚点”—— 技术深潜与方法论破局
  • 宇树go2 gazebo仿真
  • Golang 赋值运算符与短声明 (= 与 :=)使用场景
  • 数据库造神计划第二十天---视图
  • Java 异步支付的 “不安全” 风险点控制
  • 百饮X 北森 | 康师傅百饮事业AI领导力教练Mr. Sen落地实践分享
  • 第十四章:数据分析基础库NumPy(二)
  • AI 算力加速指南:让短视频去水印更加方便
  • 神经网络架构搜索(NAS)概述:如何让AI自动设计AI模型?
  • LoRA微调技术:大模型时代的“乐高式“参数改造指南
  • 数据建模和设计章节考试考点及关系梳理
  • pytorch工具箱
  • Spark源码中的CAS思想
  • webpack-dev-server使用
  • 现有项目添加CMake
  • c语言学习_数组使用_扫雷2
  • 轻量级KVM管理工具 —— 筑梦之路
  • 第十四章:数据分析基础库NumPy(一)
  • 课题学习——SimCSE
  • gitee.com 有raw.githubusercontent.com一样的机制吗?
  • AI原生未来:新商业机会全景洞察与商业模式深度解构
  • Spark源码中的volatile