人工智能是怎么造出来的呢?
不懂代码也没关系。输入数据,就能亲眼看到人工智能经过 分词 → 向量化 → 训练 → 生成 被造出来的过程。如果愿意,也可以用真正的 Python 代码来做。
这是只看前一个词的教学用二元模型,不学习嵌入、注意力或事实。词语分割也是教学示例,不是 LLM 分词器。
- 数据准备
- ① 分词
- ② ID 与独热向量
- ③ 训练(学习)
- ④ 生成
数据准备
收集几句简短例句。重复会改变计数,但文本需要符合目的才有用。每句都有独立的结束位置。
① 分词
这里把句子切成接近词的片段。真实 LLM 分词器可使用词、子词、字符或字节。分词是文本表示方法,不是因为文本太长而无法理解。
② ID 与独热向量
ID 是标签编号,独热向量把对应位置标为 1。两者都不告诉我们哪些词意思相近。学习得到的嵌入是另一种向量,本实验不训练嵌入。
③ 训练(学习)
统计每种转移,包括句子结束。候选概率等于其次数除以所选词后所有转移的总次数。神经语言模型学习权重,而不只是存储这张小表。
④ 生成
比较贪心选择最高概率候选与按概率采样。选到句子结束就停止。采样也可能重复相同结果,生成文本未经事实核查。
| 词 | 编号 | 数字向量(one-hot) |
|---|---|---|
选择一个词,就能看到AI学到的下一个词最可能是什么:
百分比经过四舍五入,显示总和可能略偏离 100%。
这个词只出现在句子末尾,所以没有下一个词。请换一个词试试。
表格显示温度为 1 时的观测频率。温度改变采样概率,不改变计数,也不是事实准确性的控制器。
你的AI生成的句子
正在准备 Python 运行环境…
0 XP
我的代码
运行结果
按[运行],结果就会显示在这里。