Chapter 06

批(一次性计算)

将多个样本一起成批计算的单位。

按章节的深度学习图示

每完成一章,下方图示会逐步填满。这是目前的结构。

所以 输出 Y 也以一张表一次得出。

输入表 X
X1
X2
X3
样本 1
样本 2
样本 3
一列 = 一样本
相同 W, b一次计算
输出 Y
样本 1
样本 2
样本 3
Y1
Y2
Y3
← 由相同 W、b 一次得到的结果

所以把输入合并成一张表,输出 Y 也会以一张表一次得出。

深度学习中的批

是指把多个输入(样本)组成一张表(矩阵),用同一组权重一次算完。表中每一列 = 一个样本

想象一下老师批改试卷:一张一张地改 vs. 把 30 张试卷同时送进批改机——机器快得多。批处理也一样:GPU 同时处理多个输入,速度成倍提升

关键点:对所有样本使用的 W(权重)和 b(偏置)完全相同,唯一不同的是每个样本的输入 X。正因如此,一次矩阵乘法就能同时算出所有样本的结果。

速度:GPU 擅长同时处理成千上万个数,而不是逐个计算。批处理能发挥 GPU 的全部性能,速度比逐样本计算快几十到几百倍

训练稳定性:只看 1 个样本就更新权重,噪声很大。用小批量(mini-batch)(如 32 或 64 个样本)来平均梯度,学习更加稳定。批大小是训练的关键参数。

内存管理:假设有 100 万条数据,一次全部装入 GPU 显存会爆。所以分成小批(如每次 64 条),处理完一批、更新权重后再处理下一批。

Netflix 和 YouTube 推荐:不再逐用户计算,而是把数千用户的数据打包同时打分。这样才能实现实时推荐服务。

ChatGPT 与翻译器:当多个用户同时提问时,多条查询会被打包成一个批送入 GPU 一次处理。这就是数百万用户都能快速得到回复的秘密。

图像训练:用 10 万张图片训练时,分成每批 32 张,共 3,125 次迭代。每一批都做 Z = W·X + b、算误差(损失)、微调权重。

X 有多列:每一列是一个样本。对每列使用同样的 W 和 b。找到空白所在的行和列,只用那一列的数来计算即可。

加减乘和求均值操作:这些运算作用于相同位置(同行同列)。求均值(如零中心化)时,按每列计算平均值。填空白只需用该列的数。

验算技巧:每列之间相互独立,一列的结果不会影响另一列。逐列检查能轻松发现错误。

将多个样本按列排成矩阵即为批。用同一组 W、b 一次计算 Y=WX+bY = W \cdot X + b

Batch X
{1}
{2}
{3}
X1
3
1
-1
X2
1
-2
3
·
W
1
0
0
1
+
b
1
0
=
Z
{1}
{2}
{3}
Z1
4
2
0
Z2
1
-2
3

一列 = 一个样本。同一组 W、b 对所有列一次计算。

例:一列(样本)的计算过程(열 1: X₁=3, X₂=1)

Z1 = (W 第1行·该列)+b[0] = (1×3+0×1)+(1) = 4
Z2 = (W 第2行·该列)+b[1] = (0×3+1×1)+(0) = 1

题目

在批运算(权重乘加偏置、加、减、乘、减均值、求和、平均等)中填入空格(?)处。

从每行减去该行均值后填入空白。

{1}
{2}
{3}
Y1
3
-1
-1
Y2
-1
-3
-2
μ
0
-2
=
{1}
{2}
{3}
Y1
3
-1
Y2
1
-1
0
(行均值→0)
1 / 20