🌟第12.4节 从字符到故事:大语言模型的文字炼金术 🌟
1. 文字编码:给字母穿上数字马甲
(1) 基础编码法
- 字母 → 数字映射:
→ 示例:a=1, b=2, ..., z=26 空格=0, 标点=27+
“humpy_dumpt” → [8, 21, 13, 16, 20, 25, 0, 4, 21, 13, 16, 20]
(2) 输入限制
- 固定窗口长度:
→ 输入层只有12个神经元 → 只能处理12个字符
→ 超出部分截断:“Humpty Dumpt” → 只保留最后12字符
(3) 编码缺陷
- 语义丢失:
→ “h”=8 和 “i”=9 无内在关联
→ 改进方案:后续引入词向量(Word2Vec)
2. 神经网络架构:文字的流水线工厂
(1) 输入层 → 字符信箱
- 每个神经元对应一个字符位置
→ 示例:输入序列:"umpty_dumpt" 神经元分配: [u(21), m(13), p(16), t(20), y(25), _(0), d(4), u(21), m(13), p(16), t(20), ?(待预测)]
(2) 隐藏层 → 语义搅拌机
- 多层级特征提取:
→ 初级层:捕捉字母组合规律(如"th"常连用)
→ 深层:理解短语结构(如"on a wall"的介词搭配)
(3) 输出层 → 概率投票箱
- 26+神经元设计:
→ 每个神经元代表一个字母的得分
→ 使用Softmax转换成概率:P(y)=e^25/(e^8+e^21+...+e^25) ≈ 98%
3. 文字生成:AI的接龙游戏
(1) 单步预测示范
输入:"humpy_dumpt" → 预测下一个字符是"y