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())​

相关推荐
小程故事多_8017 小时前
Agent+Milvus,告别静态知识库,打造具备动态记忆的智能AI助手
人工智能·深度学习·ai编程·milvus
生命是有光的21 小时前
【深度学习】卷积神经网络CNN
人工智能·深度学习·cnn
泰恒1 天前
国内外大模型的区别与差距
人工智能·深度学习·yolo·机器学习·计算机视觉
沅_Yuan1 天前
基于LSTM神经网络的锂电池SOH估算模型(NASA数据集)【MATLAB】
神经网络·机器学习·matlab·锂电池·nasa·soh
加勒比海带661 天前
目标检测算法——低空智能实验室开放数据集汇总附下载链接【点赞+收藏】
大数据·图像处理·人工智能·python·深度学习·目标检测·计算机视觉
带娃的IT创业者1 天前
调参工具箱——Optuna、Ray Tune 入门
深度学习·automl·调参·超参数调优·optuna·自动机器学习·ray tune
沅_Yuan1 天前
基于KAN神经网络的锂电池SOH估算模型(NASA数据集)【MATLAB】
神经网络·机器学习·matlab·锂电池·nasa·soh
AI自动化工坊1 天前
Caveman技能实战:优化AI对话风格实现65%的token成本节省
人工智能·深度学习·机器学习·ai·token·caveman
tyler_download1 天前
揉扁搓圆transformer架构:KL散度损失函数的说明
人工智能·深度学习·transformer
蔡俊锋1 天前
AI前沿动态高效追踪指南
人工智能·深度学习·ai·ai学习