e· Explain3DAI 原理课堂 / 02

AN ADDRESS BECOMES A VECTOR

编号,怎样变成向量?

一个索引,取出一整行;两个数,定位一个向量。

固定教学表 · 只改变输入 ID

手写二维教学表 · 静态词元向量 · 非真实模型
六个步骤 · 从编号到向量00:00 / 00:44

ONE ROW, TWO COORDINATES

查表不是“把编号算成词义”。

输入是整数索引;输出是 Embedding 参数矩阵中对应的整行。这里从 0 开始编号,E 的形状为 4 × 2。固定表下,同一个 ID 每次得到同一向量。后续的位置处理、Attention 和网络层会进一步改变表示,本页不演示它们。

0 · cat → [ 2.0, 1.0]
1 · car → [-2.0, 1.0]
2 · dog → [ 1.8, 1.2]
3 · book → [-1.0, -2.0]

这些 Token、ID 和数值全部手写,只为看清查表和几何关系;没有训练或调用真实模型。真实模型通常从训练中学习这些参数,维度也通常更高。本页的 x₁、x₂ 没有“动物”“速度”等预设语义;距离和余弦也不能保证真实世界中的词义关系。

e = E[id]
距离 = √((a₁ − b₁)² + (a₂ − b₂)²)
方向余弦 = (a₁b₁ + a₂b₂) / (‖a‖ ‖b‖)

图中坐标轴同尺度,范围均为 −3…3;箭头指向真实坐标。颜色只标识同一个 Token;表格单元格、输入卡片的宽度不表示数值大小。查表没有混合其他 Token,也没有根据上下文消除歧义。

PyTorch Embedding 官方说明 ↗ · 词向量与相似度官方教程 ↗

PREDICT · TRY · EXPLAIN

ID 变成 2,会取出什么?

保持同一张表。已知 E 的第 2 行是 [1.8, 1.2]。选择 dog(ID 2),静态 Embedding 输出是什么?