第 02 次课:神经网络与 Transformer
一、上节课回顾
- 上节课三个要点:
- AI 发展七阶段:判断依据从「人写规则」走向「从数据学规律」,今天的 Transformer 与大模型是这条线的最后一站。
- 三种学习方式与三要素:监督学习靠带答案的数据,无监督学习自己找结构,强化学习靠奖惩反馈;数据、算法、算力缺一不可。
- 文字接龙与三个旋钮:大模型逐 Token 预测下一个词;温度管「选词的胆子」,上下文窗口管「一次能看见多少」,概率采样造成同题不同答。
- 已经留下的基础:你会用 AI 对话工具完成一次提问,知道它在逐词生成、不是查资料,也见过「看起来完成了」和「真能交付」之间的差距。
- 今天要接上的问题:上一课咱们一直把大模型当「黑盒」,只看输入和输出。可文字接龙到底是谁在算?它为什么能记住开头的要求,又为什么会忘?为什么同一个词它能分清不同含义?要回答这些,就得打开盒子看零件——从最小的人工神经元,走到分层网络、循环网络,最后走到注意力。
- 开场检查:请你用一句话回答「上次课说的文字接龙,为什么可能忘记前文?」(预期答案落在上下文窗口被占满或中间丢失;答「它记性不好」的,正好留到 M3、M4 纠偏)。再追问一句「接龙的时候,是谁在算下一个词?」把两三种典型回答写在黑板上,M1 讲完回来对答案。
二、本节课主要内容和目标
这 80 分钟讲完,你该拿到的东西很具体:别人说「神经网络」「注意力」时你能听懂在说什么,而且能自己画出每个零件的工作原理。
本节课结束时,你能:
- 在纸上画出一个简化人工神经元,标出输入、权重、加权求和、激活、输出五个环节,并说出权重代表什么、从哪来。
- 拿「识别举手的学生」这张任务卡,按输入层→隐藏层→输出层说出每层在加工什么,并解释「深」指的是什么。
- 通过传话游戏演示,说明传统 RNN 处理长句时开头信息为什么会衰减,并指出问题出在「逐站传递」而不是「模型太小」。
- 用「开会」类比向别人解释注意力机制:所有位置同时可见、按相关度加权,并说出它与 RNN 的关键区别。
- 给出 bank 的两个例句,能圈出决定词义的上下文线索词,并说明「同一个词在不同上下文得到不同表示」。
| 顺序 | 知识点 | 你能做到 | 课堂练习 | 时间 |
|---|---|---|---|---|
| M1 | 人工神经元 | 画出并解释信息处理过程 | 【M1-01】【M1-02】【M1-03】 | 18分钟 |
| M2 | 神经网络分层 | 说明每层如何逐级提取特征 | 【M2-01】【M2-02】【M2-03】 | 14分钟 |
| M3 | RNN 的局限 | 用传话游戏解释信息衰减 | 【M3-01】【M3-02】【M3-03】 | 12分钟 |
| M4 | Transformer 注意力 | 用全局视角解释重要信息 | 【M4-01】【M4-02】【M4-03】 | 20分钟 |
| M5 | 一词多义处理 | 根据上下文判断词义 | 【M5-01】【M5-02】【M5-03】 | 16分钟 |
课堂总时长 80 分钟,另留 10 分钟机动。你需要纸笔或平板绘图工具;本页每张机制图可直接投影使用。
延伸视频
3Blue1Brown 官方动画演示神经网络如何通过调整连接强度学会识别手写数字,与 M1、M2 直接对应;课前看建立画面感,课后看巩固分层思想。
三、本节课知识内容
M1:人工神经元(18分钟)
咱们现在来判开场留在黑板上的那道题:文字接龙时,是谁在算下一个词?答案的最小零件叫人工神经元——而它干的活,说白了就是评审打分:你交三份材料,它给每份配个比重,加权算总分,过线才放行。
想象你在判断要不要推荐某位同学参加技能竞赛:手里有平时成绩、项目作品、出勤三样信息。你心里其实在给三样信息分配不同的重要程度——竞赛更看重作品,出勤只是底线。人工神经元把这个掂量过程写成了数学:每条输入乘上一个权重(表示这条信息多重要),加权求和、加个偏置,送进激活函数判断够不够格,最后输出结果。这套路子 1943 年 McCulloch 和 Pitts 就提出了,八十年来骨架没变,变的是权重不再由人拍脑袋写,而是用大量样本训练出来的——正接上一课那条主线:从数据学规律。
最容易搞混的是输入和权重:输入是原始信息,权重是训练学出来的重要程度,两者相乘才进入求和。激活函数也不是「把输入加一遍」——加权和只是它的原料,它决定信号要不要触发、以多大强度输出;没有它,再多层网络也只能画直线边界。也别高估单个神经元:它只能做一道「加权过线」的小判断,真正的能力来自大量神经元连成网络——这正是下一站。
一句心法:神经元只做一件事——按权重掂量输入,过线才放行。
课堂练习:现在去学习通完成【M1-01】【M1-02】【M1-03】。
M2:神经网络分层(14分钟)
一个神经元能掂量「推不推荐参赛」这种小判断。现在把任务换成从一张教室照片里认出「举手的学生」——你可能觉得多堆几千个神经元就够了。这么想有道理:一个不够就多加几个,跟人手不够就多招人一样。恰恰相反:如果它们并排站着、每个都直接看同样的原始像素,一千个只认识笔画的人站在一起也读不出一句诗。要让数量起作用,得先解决「怎么组织」。
神经网络的答案,说白了是流水线:整鸡整菜进来,第一站粗加工,第二站拼部件,最后一站装盘出成品。输入层收下原始数据;隐藏层逐级组合特征——第一层认边缘、明暗、色块,第二层把它们拼成手臂、头部、躯干,更深的层再判断「手臂抬过头顶、长在一个学生身上」;输出层给出结论。所谓「深」,指的就是这条逐级加工的路径长。1986 年 Rumelhart、Hinton 和 Williams 在《Nature》发表反向传播算法,证明隐藏层能学出人没有明确教过的中间表示——「每一层负责什么」不是人指定的,是训练中自己长出来的。
三个提醒:「隐藏层」不神秘,抓住职责主线就够;「越深越好」不成立,层数要和数据量、任务复杂度匹配,数据不够时更深的网络反而更难训练;「神经网络像人脑思考」是误导,它只是受神经元启发的数学结构,内部没有意识和意图。
一句心法:分层就是接力加工——上一层看细节,下一层拼关系,层层变抽象。
课堂练习:现在去学习通完成【M2-01】【M2-02】【M2-03】。
M3:RNN 的局限(12分钟)
咱们现场做个传话游戏:把「周三下午三点,机房,前端小组带电脑参加部署测试」耳语给第一位同学,逐个传下去,传到第五位再复述——时间、地点、任务十有八九走了样。你可能觉得是传话的人记性差——这个归因不冤枉人,短链条确实常是记性问题;可把模型加大也救不了,因为毛病不在容量,在「逐站传」这个方式本身。
循环神经网络(RNN)说白了就是这条传话链:逐个时间步读文字,每一步把当前输入和上一步传来的隐藏状态合并计算,算出的新状态既产生本步输出,也传给下一步。信息只能一站站流,不能跳站、不能回头——句头的信息传到第 50 步,中间被改写了 49 次,早被冲淡了。训练时误差从后往前一站站回传,连乘之下指数级缩小(梯度消失),远处的信息几乎得不到修正。1997 年 Hochreiter 和 Schmidhuber 提出 LSTM 门控,给关键信息开了条「笔谈通道」,只是改良传话,没有取消传话。
别把 RNN 一棍子打死:短序列、流式处理、资源受限场景里它仍然可用,LSTM、GRU 至今还在工业界服役。它的软肋是远距离依赖:序列一长,早期信息逐步衰减。而语言里的远距离关系偏偏到处都是——这正是下一站要解决的。
一句心法:按站传话的记忆,传得越远,开头越淡。
课堂练习:现在去学习通完成【M3-01】【M3-02】【M3-03】。
M4:Transformer 注意力(20分钟)
「小猫追着皮球跑,因为它很轻」——读到「它」,要往回找到「皮球」才能确定指代,中间隔着好几个词。靠一站站传话,等「它」收到消息,「皮球」的痕迹早被冲淡了。有没有办法让每个词不用传话,直接看到句子里所有别的词?
2017 年 Google 团队给的答案,说白了就是四个字:别传话了,开会。把句中所有词同时摊在桌上,处理任何一个词时,两两计算相关度,按相关度给每个词分配注意力权重,再把这些词的信息加权汇总成当前词的新表示。以处理「它」为例:每个词先带上向量表示和位置信息;「它」发出查询,句中每个词亮出自己的「名片」和「行李」;用查询和名片算相关度,「皮球」「很轻」分数高、权重就大;按权重把所有词的行李加权求和,得到「它」的新表示。任意两词之间距离都是一步,「传话衰减」从结构上就不存在了;所有位置一起算,训练还能大规模并行。这篇论文叫《Attention Is All You Need》,在翻译任务上成绩和效率双双领先,BERT、GPT 都建在这个结构上。
四个边界:注意力不是「平均看所有内容」,权重按上下文和任务分配;Transformer 没有抛弃顺序——位置编码专门把词序补回来;注意力权重是相关度度量,不等于因果解释,说「模型因为 X 才输出 Y」要谨慎;自注意力两两看词的计算量随长度平方增长,超长文本要靠截断、滑窗等工程手段处理。
一句心法:别传话了,开会——所有词一步直达,谁相关听谁的。
课堂练习:现在去学习通完成【M4-01】【M4-02】【M4-03】。
M5:一词多义处理(16分钟)
接着 M4 的例句看 bank:I sat on the bank of the river 是河岸,go to the bank to deposit money 是银行。你可能以为模型里存着一本词典、一个词一条释义——词典就是这么组织的,翻页即查,天经地义。可如果真是这样,两句的翻译就该一个样,而实际翻译系统给出了两个不同译法。词义不是查出来的,是上下文算出来的。
现代语言模型处理一词多义,说白了就是「语境拉扯」:同一个「小李」,在公司语境里大家先想到程序员,在球场语境里先想到前锋。每个词先有一个基础向量,进入注意力层后,模型按上下文把周围词的信息加权融合进来,得到随语境变化的表示——bank 在 river 旁边被拉向「河岸」,在 deposit 旁边被拉向「银行」;中文同理,「苹果手机」里「手机」把「苹果」拉向品牌,「吃苹果」里「吃」把它拉向水果。BERT 把这条路做成了训练任务:随机遮住句中约 15% 的词,让模型只看左右两侧猜回来,逼着每个词的表示都带上上下文信息,发布时在 11 项任务上刷新当时最佳成绩。
两个提醒:判断词义先训练自己找线索词——拿到 bank 例句,先圈出 river、deposit 这类决定性线索再下结论;让 AI 翻译时可以追问「你依据哪些词判断的」。低频词、新造词、行业术语的上下文样本少,被拉扯的依据不足,表示质量差,恰恰是最需要人工核对的地方。
一句心法:词义不在词典里,在上下文里——谁在旁边,就把你拉向哪边。
课堂练习:现在去学习通完成【M5-01】【M5-02】【M5-03】。
课后作业
- 【作业-01】给家人解释 Transformer 注意力:用不超过 300 字和一个生活类比解释注意力机制,截止下节课前一天 22:00。
- 类比抓手(任选其一即可):先选一个生活场景(开会圈重点、点菜看大家口味、群聊@人),再回答两个问题——场景里「谁被重点关注」对应句子里「哪个词权重高」,「依据什么决定重点」对应「什么算相关度」。
- 最小示例——原始类比:「注意力就是开会。」展开后:「开会时所有材料同时摊在桌上,主持人按议题决定重点听谁的;模型读句子时所有词同时摆开,按相关度决定重点看哪个词——读到『它』,就重点看前文提到的那件事。」