理解神经网络流程

个人记录 2025 10 3

神经网络流程

数据的预处理 通过dataset和dataloader进行

dataset 处理数据旋转裁切调整对比度等操作 将数据修改成张量的格式 就像numpy 用array格式,pandas用的是dataframe格式

dataloader 处理数据如果批次大小和加载数量,因为他不像机器学习可以把数据一次性读进来。

前向传播 样本特征输入后进行预测,通过损失函数中参数权重偏置进行链式求导法则得到梯度,用梯度下降法更新参数

循环 最终使得梯度平稳停止。


神经网络核心流程梳理(dbai总结版)

一、数据预处理:给模型"备齐能用的料"

  • 核心目的:把原始数据(图、文等)变成模型能"消化"且训练效果好的形式

  • Dataset:干"数据加工"的活

  • 先优化数据:做旋转、裁切、调对比度,让模型见多识广(提升泛化能力)

  • 再统一格式:把加工好的数据转成张量(Tensor),比NumPy的Array多了GPU加速功能

  • DataLoader:干"按需上菜"的活

  • 分批拆数据:按设好的Batch Size拆分,解决"数据太多装不下内存"的问题

  • 按次给数据:训练时每次只送一批,贴合神经网络的训练节奏

二、核心训练循环:模型"慢慢学"的关键步骤

  1. 前向传播:把DataLoader给的一批数据喂进模型,经过卷积、全连接这些层计算后,得出预测结果

  2. 算损失:用交叉熵、MSE这类损失函数,比一比预测结果和真实答案差多少,得出误差(损失值)

  3. 反向传播:根据损失值,用链式求导法则从后往前算,找出每个参数(权重、偏置)对误差的影响(梯度)

  4. 更参数:让SGD、Adam这些优化器照着梯度,用梯度下降法调整参数,争取下一轮误差能变小

三、训练停止:判断模型"学好了"的标准

  • 看损失:损失值不怎么降了,稳定在一个区间里

  • 看梯度:参数的梯度快接近0了,再调参数也没多大提升空间

  • 看轮次:训练到了提前设好的Epoch数,就停下


为什么要收敛,如何收敛,如何快速收敛

要将梯度值控制在0-1的范围内防止梯度消失和梯度爆炸等问题

通过反向传播进行循环计算损失函数的权重和偏置来得到梯度,再用梯度下降来解决

使用优秀的优化器比如adam自适应距估计和sgd随机梯度下降,通常使用adam

相关推荐
Oflycomm21 分钟前
物理AI时代的“连接底座”:Wi-Fi 7模组如何撑起具身智能的神经网络
人工智能·深度学习·神经网络·物联网·具身智能·wifi7
许彰午29 分钟前
100_Python面试常见问题汇总
java·python·面试
皓悦编程记32 分钟前
【YOLO26 系列】基于YOLO26的垃圾分类检测系统【python源码+Pyqt5界面/WEB+数据集+训练代码】
python·qt·分类
滴滴滴嘟嘟嘟.41 分钟前
强化学习消融实验-batch_size / clip_range / gae_lambda / lr
python·机器学习
2601_963932981 小时前
怀孕四个月能做流产吗?中期妊娠终止方式与子宫修护科普指南
python
zhr_math_king1 小时前
LangGraph-快速入门-第一个例子
python·langchain
LaughingZhu1 小时前
Product Hunt 每日热榜 | 2026-07-16
人工智能·经验分享·深度学习·神经网络·产品运营
爱吃苹果的梨叔2 小时前
2026年指挥中心分布式坐席怎么选?清虹创智让多系统、多坐席和大屏真正协同
python
就是一顿骚操作2 小时前
神经网络可解释性积木:从特征可视化到归因地图
人工智能·深度学习·神经网络
起予者汝也2 小时前
Python 数据结构
开发语言·数据结构·python