AI深度学习,神经网络处理流程

AI深度学习,神经网络处理流程:

输入 → 前向 → 损失 → 反向 → 更新 → 预测。​一、整体流程神经网络完整处理分为两大阶段: 1. 训练阶段(学参数 W, b)初始化 → 前向传播 → 算损失 → 反向传播 → 更新参数 → 循环​2. 推理阶段(用模型)只前向传播,输出结果 二、详细流程 全连接网络 + 回归任务 0. 准备:数据、网络、初始化 1)构造数据(回归任务:y = wx + b)​import torchimport torch.nn as nnimport torch.optim as optim# 造数据:y = 2x + 3 + 噪声x = torch.randn(1000, 1) # 输入y = 2 * x + 3 + 0.1 * torch.randn(1000, 1) # 真实标签​2)定义神经网络​class Net(nn.Module): def init (self): super().init() self.fc1 = nn.Linear(1, 1) # 一层线性:输入1,输出1 def forward(self, x): out = self.fc1(x) return outmodel = Net()​3)参数初始化(W, b) 神经网络训练前必须初始化: - W:随机(He / Xavier)​- b:通常0​# 手动初始化演示nn.init.kaiming_normal_(model.fc1.weight) # Wnn.init.constant_(model.fc1.bias, 0.0) # b​4)定义损失函数 + 优化器​criterion = nn.MSELoss() # 回归损失optimizer = optim.SGD(model.parameters(), lr=0.1)​1. 训练第一步:前向传播 Forward数据输入网络,用 W, b 计算预测值公式(单层线性):\hat{y} = x \cdot W + b​y_pred = model(x) # 前向传播​作用:- 用当前参数算出预测- 还没学习,只是瞎猜 2. 计算损失 Loss 衡量预测有多错:Loss = \frac{1}{N}\sum (y - \hat{y})^2​loss = criterion(y_pred, y)​3. 反向传播 Backward 求所有 W, b 对 Loss 的梯度\frac{\partial Loss}{\partial W},\quad \frac{\partial Loss}{\partial b}梯度含义: - 每个参数怎么变,会让 Loss 变小​optimizer.zero_grad() # 清空旧梯度loss.backward() # 反向传播,计算梯度​4. 参数更新(优化器走一步) 沿梯度反方向更新 W, b:W = W - \eta \cdot \nabla Wb = b - \eta \cdot \nabla b​optimizer.step() # 更新参数​每执行一次,模型就更准一点点。 5. 循环迭代(完整训练) 把上面4步循环很多次:​epochs = 1000for epoch in range(epochs): # 1. 前向 y_pred = model(x) # 2. 损失 loss = criterion(y_pred, y) # 3. 反向 optimizer.zero_grad() loss.backward() # 4. 更新 optimizer.step() if epoch % 100 == 0: print(f'epoch {epoch}, loss: {loss.item():.4f}')​​训练过程本质:不断修正 W, b,让 loss 越来越小。 6. 训练结束:查看学到的参数 真实是 y=2x+3,模型学到的 W 和 b:​print('W:', model.fc1.weight.item())print('b:', model.fc1.bias.item())​会看到接近: - W ≈ 2​- b ≈ 3​7. 推理 / 预测阶段(真正使用) 只前向传播,不更新参数​# 测试新数据x_test = torch.tensor(\[5.0])model.eval() # 推理模式with torch.no_grad(): # 不计算梯度 y_test = model(x_test)print('预测结果:', y_test.item())​

相关推荐
饼干哥哥4 小时前
开源Skills|搭建亚马逊动态关键词库系统,每天抓SSS级机会词
人工智能·深度学习·数据分析
武子康2 天前
调查研究-191 SenseVoice 不只是 ASR:把语音从“转文字“升级成“理解状态“
人工智能·深度学习·openai
武子康3 天前
调查研究-189 Kronos 调研:金融 K 线基础模型,是真突破,还是量化圈的新玩具?
人工智能·深度学习·openai
xiao5kou4chang6kai49 天前
MATLAB机器学习、深度学习--从数据预处理到模型训练
深度学习·机器学习·matlab·数据预处理
renhongxia19 天前
世界模型作为AGI落地底层底座的作用
人工智能·深度学习·生成对抗网络·自然语言处理·知识图谱·agi
计算机科研狗@OUC9 天前
(cvpr26) AIMDepth: Asymmetric Image-Event Mamba for Monocular Depth Estimation
人工智能·深度学习·计算机视觉
β添砖java9 天前
深度学习(22)网络中的网络NiN
人工智能·深度学习
Kobebryant-Manba9 天前
深度学习时候d2l报错和使用问题
人工智能·深度学习
zhangfeng11339 天前
deepspeed zero3 结合 llamafactory 微调 ,save_only_model: true 导致保存时候出错
开发语言·python·深度学习
大模型最新论文速读9 天前
06-16 · LLM 最新论文速览
论文阅读·人工智能·深度学习·机器学习·自然语言处理