是的,在最简单的线性模型 y = wx + b 中,参数确实只有两个:权重 w 和偏置 b。这是深度学习中最基础的参数概念示例。我们可以通过 PyTorch 代码来验证这一点:
import torch
import torch.nn as nn
输出结果:
模型参数:
linear.weight: 0.5443234141197205
linear.bias: -0.4414911637424469
参数总数: 2
在 y = wx + b 中:
w 对应 nn.Linear(1, 1) 中的权重(weight)
b 对应偏置(bias)
- 由于输入和输出维度均为 1,因此权重
w 是一个标量(1×1 矩阵),偏置 b 也是一个标量。
当我们说 GPT-3 有 1750 亿参数时,其参数规模的增长来自于:
- 高维度:输入 / 输出维度通常为数千(如 768、1024)
- 多层结构:堆叠数十到上百个 Transformer 层
- 多头注意力:每个注意力层包含多个 “头”(如 12 头、16 头)
- 复杂架构:除了基础线性层,还包含残差连接、LayerNorm 等额外参数
例如,一个简单的 2 层神经网络,输入维度 = 10,隐藏层维度 = 20,输出维度 = 1,其参数数量为:
- 第一层:
10×20(权重) + 20(偏置) = 220
- 第二层:
20×1(权重) + 1(偏置) = 21
- 总计:241 个参数,远多于
y = wx + b 的 2 个参数。
- 简单模型(如
y = wx + b)参数少,结构直观
- 大模型通过增加维度、层数和复杂度,参数规模呈指数级增长
- 参数数量直接影响模型的表达能力和计算成本