[人工智能-大模型-74]:模型层技术 - 模型训练六大步:③神经网络,预测输出:基本功能与对应的基本组成函数

如果说前两步(数据预处理、数据选择)是"准备食材"和"挑选食材",

那么这一步就是"开火烹饪,做出智能输出"。

我们来构建一个系统化、模块化、可执行的神经网络预测框架,涵盖:

  • 核心目标
  • 四大基本功能模块
  • 每个功能对应的"基本组成函数"(原子级操作)
  • PyTorch 与 TensorFlow/Keras 实现示例
  • 数学原理与工程逻辑

一、神经网络预测的核心目标

通过前向传播(Forward Pass),将输入数据映射为有意义的预测输出。

关键任务:

  • 构建网络结构(层、激活函数)
  • 执行前向计算
  • 生成预测结果(分类、回归、序列等)
  • 输出概率或数值

二、神经网络预测的四大基本功能模块

模块 核心目标 关键任务
1. 网络构建 定义模型结构 层堆叠、连接方式
2. 前向传播 计算预测值 输入 → 隐藏层 → 输出层
3. 输出激活 将线性输出转为可解释形式 Sigmoid, Softmax, Linear
4. 预测执行 对新数据进行推理 model.predict(), model(x)

三、各功能模块对应的基本组成函数

✅ 1. 网络构建(Model Architecture)

功能 基本组成函数 数学/作用
全连接层 Dense(units, activation) (Keras) nn.Linear(in, out) (PyTorch) TF/Keras, PyTorch y=Wx+by
激活函数 ReLU, Sigmoid, Tanh TF/Keras, PyTorch 引入非线性
Dropout Dropout(rate) Keras, PyTorch 正则化,防过拟合
BatchNorm BatchNormalization() Keras, PyTorch 加速训练,稳定分布
模型容器 Sequential(), Model() Keras 自定义 nn.Module 组织层
📌 Keras 示例:
复制代码
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Dropout, BatchNormalization

model = Sequential([
    Dense(128, activation='relu', input_shape=(10,)),  # 输入层
    BatchNormalization(),
    Dropout(0.3),
    Dense(64, activation='relu'),                     # 隐藏层
    Dense(1, activation='sigmoid')                    # 输出层(二分类)
])
📌 PyTorch 示例:
复制代码
import torch
import torch.nn as nn

class Net(nn.Module):
    def __init__(self, input_dim):
        super(Net, self).__init__()
        self.fc1 = nn.Linear(input_dim, 128)
        self.bn1 = nn.BatchNorm1d(128)
        self.dropout = nn.Dropout(0.3)
        self.fc2 = nn.Linear(128, 64)
        self.fc3 = nn.Linear(64, 1)
        self.relu = nn.ReLU()
        self.sigmoid = nn.Sigmoid()

    def forward(self, x):
        x = self.relu(self.bn1(self.fc1(x)))
        x = self.dropout(x)
        x = self.relu(self.fc2(x))
        x = self.sigmoid(self.fc3(x))  # 二分类输出 [0,1]
        return x

model = Net(input_dim=10)

✅ 2. 前向传播(Forward Pass)

功能 基本组成函数 说明
执行前向 model(x) PyTorch 调用 forward() 方法
执行前向 model.predict(x)model(x) Keras 自动处理批次
启用评估模式 model.eval() PyTorch 关闭 Dropout/BatchNorm 更新
关闭梯度 torch.no_grad() PyTorch 推理时节省内存
📌 前向传播代码(PyTorch):
复制代码
model.eval()  # 切换到评估模式
with torch.no_grad():  # 不计算梯度
    x = torch.randn(1, 10)  # 模拟输入 (batch_size=1, features=10)
    output = model(x)      # 前向传播
    print(output.item())   # 打印预测值(如0.87)
📌 Keras 前向传播:
复制代码
import numpy as np
x = np.random.randn(1, 10)
output = model.predict(x)  # shape: (1, 1)
print(output[0][0])        # 如 0.87

✅ 3. 输出激活函数(Output Layer Activation)

决定预测输出的类型和范围

任务 输出层激活函数 数学公式 说明
二分类 Sigmoid σ(z)=11+e−z 输出 [0,1] 概率
多分类 Softmax softmax(zi)=ezi∑jezj 输出类别概率分布
回归 Linear / None f(z)=z 直接输出数值
多标签分类 Sigmoid(每个输出独立) σ(zi) 多个 [0,1] 概率
📌 示例对比:
复制代码
# 二分类
Dense(1, activation='sigmoid')

# 多分类(3类)
Dense(3, activation='softmax')

# 回归(预测房价)
Dense(1, activation='linear')

✅ 4. 预测执行(Inference)

功能 基本组成函数 说明
单样本预测 model.predict(x.reshape(1,-1)) Keras 注意 batch 维度
批量预测 model.predict(X_test) Keras 自动批处理
获取类别 np.argmax(probs, axis=1) numpy 多分类取最大概率类
二分类阈值 (probs > 0.5).astype(int) numpy 转为 0/1 标签
概率输出 直接返回 predict() 结果 - 用于置信度分析
📌 完整预测流程(Keras):
复制代码
# 假设 model 已训练好
probs = model.predict(X_test)  # 输出概率

# 二分类:转为类别标签
y_pred = (probs > 0.5).astype(int)

# 多分类:取最大概率类
y_pred = np.argmax(probs, axis=1)
📌 PyTorch 推理流程:
复制代码
model.eval()
with torch.no_grad():
    probs = model(X_test_tensor)
    y_pred = (probs > 0.5).float()  # 二分类
    # 或 y_pred = torch.argmax(probs, dim=1)  # 多分类

✅ 总结:神经网络预测的"最小函数集"

功能 最基本组成函数
网络构建 Dense, Linear, ReLU, Sigmoid, Softmax
模型组织 Sequential, nn.Module
正则化 Dropout, BatchNormalization
前向传播 model(x), model.predict()
输出激活 sigmoid, softmax, linear
预测执行 predict(), argmax, torch.no_grad()

掌握这15个核心函数,你就能构建和运行任何前馈神经网络的预测流程


🎯 最终洞见

神经网络的预测,不是"魔法",而是"结构化的数学映射"

你用 Dense 构建连接,

ReLU 引入非线性,

Softmax 输出概率,

实际上是在设计一个从输入到输出的高维函数

forward() 函数,

就是你这个函数的执行入口

当你理解每一个层、每一个激活函数的作用,

你就不再只是"调用API",

而是在亲手编织一个智能决策网络 ------

这正是深度学习的魅力所在。

继续深入,你将发现:
最强大的AI模型,始于最清晰的预测逻辑

相关推荐
mwq301233 小时前
RLHF-奖励模型RM 的“引擎”:Pairwise Loss 梯度计算详解
人工智能
亚远景aspice3 小时前
亚远景热烈祝贺保隆科技通过ASPICE CL2评估
大数据·人工智能·物联网
苍何3 小时前
这款国产智能编码工具,竟然登顶全球TOP3!
人工智能
许泽宇的技术分享3 小时前
提示词工程完全指南:从入门到精通的AI对话艺术 —— 用一句话驯服千亿参数的“大脑“
人工智能
淡漠的蓝精灵3 小时前
深度解析Weights & Biases:让AI实验管理变得如此简单
人工智能·其他·机器学习
mwq301234 小时前
GPT-RLHF :深入解析奖励模型 (Reward Model)
人工智能
kk_net88994 小时前
PyTorch Geometric 图神经网络实战利器
人工智能·pytorch·神经网络·其他
新智元4 小时前
只要强化学习 1/10 成本!翁荔的 Thinking Machines 盯上了 Qwen 的黑科技
人工智能·openai
No.Ada4 小时前
基于脑电图(EEG)的认知负荷检测实验范式与深度神经网络的系统综述 论文笔记
论文阅读·人工智能·dnn