AI解剖课堂 · Part 6 组装 Transformer
第 60 章 从向量到词
Q. 经过 96 层出来的,是一个有 12,288 个数字的向量。怎样把它变成“学校”这个词?
- 走完 96 层,每个词都会得到一个向量。决定下一个词的,是最后一个词“去”的向量。
- 把这个向量和词表里的每个词元逐一比较,打出分数。方向越接近,分数越高(第 9 章 点积)。
- 词表里约有 5 万个词元,准确地说是 50,257 个。所以分数也有 50,257 个。这些分数叫作 logit。
- 学校 3.0 分,图书馆 2.1 分,公园 1.5 分,披萨 −1.0 分。其余 5 万多个大多在 −9 分左右。
- 现在用上第 14 章的 Softmax!先取 e 的乘方,再除以全部 5 万个的总和。加起来约是 38.72。
- 学校 52%,图书馆 21%,公园 12%。其余 5 万多个词元一点一点凑起来,拿走了 14%。
- 然后按概率抽出一个,接到句子末尾(第 1、2 章)。设计图上的“输出 + Softmax”填好了!
本章小结
- 用最后一层出来的、最后一个词的向量来决定下一个词。
- 和约 5 万个(50,257 个)词元逐一比较,打出分数(logit)。就是一次 12,288 × 50,257 的矩阵乘法(第 11 章)。
- 用 Softmax(第 14 章)变成概率,抽一个接上去。学校 52%,图书馆 21%,公园 12%。