Vince Jiang

CSCI3230 / 课程伴读 · 本站更新

CSCI3230 L08 · Part 3/4 Variants of Transformers

课程:CSCI3230 (ESTR3108) Fundamentals of Artificial Intelligence · 2025T1 本讲:L08,第 3 部分 / 共 4 部分 · 原件 L08-Transformers-2025T1.pdf(本地课件) p.43–66 定位:在可训练参数、序列成本和模态之间做不同改造。 前后:上一份 Vision Transformers · 下一份 Summary

本文依据 2025T1 旧版材料重写,供基础学习与预习;不是 2026T1 新增要求或考试范围。补充数值例均另行标注。

三种不同方向的扩展

预训练、微调与任务差异(p.43–45)【回顾 L06 p.74–91】

前面已知道Transformer怎样算,这里换成实际使用问题:已有一个大模型,能否少花成本把它用于新任务?又能否处理更高分辨率或同时理解图文?这些是三种不同目标,不要把所有新名字当一种“更强Transformer”。

p.43分隔,p.44先大规模预训练,再用下游数据微调。预训练学习可复用表示;微调在新任务数据上继续更新部分或全部参数。课件此处举无标签预训练,不代表所有预训练都没有任何标签或监督信号。

p.45从ImageNet到CT肿瘤分割:输入外观变了,输出也从整图类别变为位置级标记。会认自然图片并不自动会医学分割。全量微调可调整很多参数,却需要更多训练资源,小数据上也可能过拟合。接下来的adapter就是限制调整自由度的一种办法。

Adapter怎样节省参数(p.46–48)【新】

想象已经有一台大机器,不重新改造全部内部零件,而是在特定接口加入小的可调整模块。这个比喻只说明“少量可调参数”,不是说所有新任务都只需小修。

p.46右侧adapter图先降维,再非线性,再升维,并与原输入残差相加。用行向量表示(补充明确维度):

z=g(xWdown+bdown),h=x+zWup+bup. z=g(xW_{\rm down}+b_{\rm down}),\qquad h=x+zW_{\rm up}+b_{\rm up}.

x,hx,h 长 dd;WdownW_{\rm down} 为 d×rd\times r,zz 长 rr;WupW_{\rm up} 为 r×dr\times d。rr 是瓶颈宽度,通常比 dd 小;升回 dd 是为了能与原输入相加。gg 为ReLU等非线性。

补充自取 d=8,r=2d=8,r=2:两矩阵各16个权重,共32;偏置分别2与8个,共10,所以这个小模块共42个参数,未算图中其他可训练LayerNorm。只报 2dr=322dr=32 必须说明忽略偏置。若 rr 翻倍,矩阵参数也翻倍,但适应能力与过拟合风险不能只按参数数机械预测。

图中绿色包括adapter内部层和LayerNorm,主体attention/FFN冻结。冻结只是“不更新这些参数”,不是“不运行这些计算”。p.47“通常少于2%”属于所述设置经验,并非adapter的数学定义。

p.48比较17个任务。下表保留四种方法的结果及原图所列±波动值(原页没有定义波动统计量,不能擅自称为置信区间);没有用这张历史表推断2026任务表现。

任务 No BERT baseline Fine-tune Variable FT Adapters
20 newsgroups 91.1 92.8 ± 0.1 92.8 ± 0.1 91.7 ± 0.2
Crowdflower airline 84.5 83.6 ± 0.3 84.0 ± 0.1 84.5 ± 0.2
Corporate messaging 91.9 92.5 ± 0.5 92.4 ± 0.6 92.9 ± 0.3
Disasters 84.9 85.3 ± 0.4 85.3 ± 0.4 84.1 ± 0.2
Economic news relevance 81.1 82.1 ± 0.0 78.9 ± 2.8 82.5 ± 0.3
Emotion 36.3 38.4 ± 0.1 37.6 ± 0.2 38.7 ± 0.1
Global warming 82.7 84.2 ± 0.4 81.9 ± 0.2 82.7 ± 0.3
Political audience 81.0 80.9 ± 0.3 80.7 ± 0.8 79.0 ± 0.5
Political bias 76.8 75.2 ± 0.9 76.5 ± 0.4 75.9 ± 0.3
Political message 43.8 38.9 ± 0.6 44.9 ± 0.6 44.1 ± 0.2
Primary emotions 33.5 36.9 ± 1.6 38.2 ± 1.0 33.9 ± 1.4
Progressive opinion 70.6 71.6 ± 0.5 75.9 ± 1.3 71.7 ± 1.1
Progressive stance 54.3 63.8 ± 1.0 61.5 ± 1.3 60.6 ± 1.4
US economic performance 75.6 75.3 ± 0.1 76.5 ± 0.4 77.3 ± 0.1
Customer complaint 54.5 55.9 ± 0.1 56.4 ± 0.1 55.4 ± 0.1
News aggregator 95.2 96.3 ± 0.0 96.5 ± 0.0 96.2 ± 0.0
SMS spam collection 98.5 99.3 ± 0.2 99.3 ± 0.2 95.1 ± 2.2
平均 72.7 73.7 74.0 73.3
每任务可训练参数比例 — 100% 52.9% 1.14%
全部任务总参数量 — 17× 9.9× 1.19×

最后两行不是准确率。全量微调要为各任务保存一份主体,故多任务总参数开销高;adapter可共享冻结主体,各任务另存较小适配部分,所以“每任务训练1.14%”与“全部任务总计1.19×”回答不同成本问题。原图的比例属于这17任务设置,不是所有adapter的固定常数。

读表先看Average与训练参数比例,再查具体任务是否退步。平均73.3接近73.7,不等于所有17项都相同;SMS一行就明显不同。少参数是资源上的优势,性能取舍仍需按目标任务验证。

Dense prediction为何昂贵(p.49–51)

分类只交一个整图标签;dense prediction要在很多空间位置预测。p.49同一群鸡分别展示分类、检测、语义分割、实例分割、姿态与跟踪:输出越精细,越难只靠一个压缩过的向量完成。

p.50–51的瓶颈是全局attention两两比较。图像切成 h×wh\times w 块,共 n=hwn=hw 个token,模型宽度记 CC。标准全局注意力的主要乘加成本在课件写成

4nC2+2n2C. 4nC^2+2n^2C.

先拆来源:Q、K、V三个投影加最后输出投影,每个大约 nC2nC^2,共四份;算 QKTQK^T 和算 AVAV 各约 n2Cn^2C,共两份。这里是主要矩阵计算量表达,不是每台设备精确耗时公式,忽略了softmax等较小项。

补充自取 n=4,C=2n=4,C=2:投影项 4⋅4⋅4=644\cdot4\cdot4=64,配对项 2⋅16⋅2=642\cdot16\cdot2=64。若token数翻倍为8,前项128、后项256;前项仅2倍,后项4倍。若图像高宽各翻倍且patch不变,token数是4倍,配对项就16倍。不要把“对token数二次”误读成“对图像边长二次”。

p.49六类输出的具体区别:classification给“5 hens”的整图描述;detection给各鸡的框;semantic segmentation把所有鸡归入同一个Hen前景类别;instance segmentation给每只鸡不同区域;pose estimation标头(绿)、颈(黄)、中部(紫)、右翼侧(粉)、左翼侧(蓝)、尾(红);tracking把T、T+1、T+2的同一只鸡连起来,右侧画Hen 1–5活动轨迹。图例颜色只服务于这幅示意,不是所有姿态数据集的统一编码。

结合律的诱惑(p.52–54)

p.52提醒切成大patch还会损失细空间分辨率,恢复逐像素输出并非自动发生。p.53则盯住那张 n×nn\times n 的配对表:如果能不把它完整算出来和存下来,是否能省资源?

暂时忽略softmax,只有 (QKT)V(QK^T)V。设三者特征宽度均为 dd:先算 QKTQK^T 得 n×nn\times n,再乘V;利用矩阵乘法结合律可改成先算 KTVK^TV,得 d×dd\times d,再左乘Q。只换括号,不换矩阵顺序。

補充自取 n=100,d=4n=100,d=4:两种中间表分别10000与16个数。前一路主要乘法量约 2n2d=800002n^2d=80000,后一路约 2nd2=32002nd^2=3200。省不省取决于相对维度:若 dd 比 nn 大,不能简单说后者永远好。

但真实attention不只这三个矩阵乘法。下一节的softmax不能假装不存在,所以这里仅是寻找新机制的动机,还没有得出标准attention的快速等价算法。

Softmax挡住直接重排(p.55–57)

p.55明确说不能直接用结合律,因为真实过程是先把 QKTQK^T 每行做softmax,再乘V。softmax包含指数与行归一化,不是一个可以随意搬进括号的矩阵因子。

补充极小反例:只有一个query q=1q=1、两个标量key (0,1)(0,1)、value (2,4)(2,4),softmax加权输出是 0.2689⋅2+0.7311⋅4≈3.46220.2689\cdot2+0.7311\cdot4\approx3.4622;直接用 q(KTV)q(K^TV) 则是 1(0⋅2+1⋅4)=41(0\cdot2+1\cdot4)=4。数值不同,说明删掉softmax改变了函数。

p.56先换相似度机制,用ReLU等映射作用在Q/K上,p.57才重排矩阵乘法。为看清归一化,可以用以下常见非负特征形式讲解(补充完整写法,非声称逐字原公式)。分母是一个标量,以下先假设它大于0:

yi=ϕ(qi)TMϕ(qi)Tz,M=∑jϕ(kj)vjT,z=∑jϕ(kj). y_i=\frac{\phi(q_i)^T M}{\phi(q_i)^T z},\qquad M=\sum_j\phi(k_j)v_j^T,\qquad z=\sum_j\phi(k_j).

本式将 qi,kjq_i,k_j 看作 rr 维列向量,value vjv_j 为 dvd_v 维列向量。于是 MM 为 r×dvr\times d_v,zz 为 rr 维列向量;分子是长度 dvd_v 的行向量,分母是一个标量,以下先假设它大于0。ϕ\phi 如ReLU让特征非负,归一化把相似度变成比例。

为什么省?MM 和 zz 与query编号 ii 无关,可以先把所有key/value汇总一次,每条query只查这个汇总,而不逐一存整行 nn 个权重。

补充手算一维例:映射后两key为1、2,values为2、4;先累计 M=1⋅2+2⋅4=10M=1\cdot2+2\cdot4=10、z=1+2=3z=1+2=3。query映射为3时,输出 3⋅10/(3⋅3)=10/33\cdot10/(3\cdot3)=10/3。改成query为1仍得到同一值,是这个一维正数例过于简单导致,不表示高维线性attention永远与query无关。

分母为0时需有稳定处理;不要声称非负就一定严格正。它是另一种attention机制,而不是标准softmax的无损代数改写。

补充:一组数字证明不能把softmax随结合律搬走

取自编标量特征,两token:Q=K=(1,0)TQ=K=(1,0)^T,V=(1,0)TV=(1,0)^T,缩放因子为1。无softmax时,(QKT)V=(1,0)T(QK^T)V=(1,0)^T,而 Q(KTV)Q(K^TV) 也是 (1,0)T(1,0)^T,普通矩阵结合律成立。

标准注意力先得 QKT=(1000)QK^T=\begin{pmatrix}1&0\\0&0\end{pmatrix},按行softmax后为 (e/(e+1)1/(e+1)1/21/2)\begin{pmatrix}e/(e+1)&1/(e+1)\\1/2&1/2\end{pmatrix},再乘 VV 得 (e/(e+1),1/2)T≈(0.7311,0.5)T(e/(e+1),1/2)^T\approx(0.7311,0.5)^T,已经不同于无softmax的结果。

若有人把运算改成“先对 KTVK^TV 做softmax,再左乘Q”,此处 KTVK^TV 只是单个数1,单元素softmax等于1,结果又变成 (1,0)T(1,0)^T。分布归一化依赖原来的整行key分数,结合律只能移动相邻矩阵乘法,不能跨过非线性算子。这也是线性注意力通常需要重新定义特征映射与分母的原因;它不是把标准式里的括号随意换个位置。

效率与局部选择性的权衡(p.58–60)

计算更省以后,还要问表示能力改变了什么。p.58分别在手机CPU、边缘GPU、云GPU上报告5.8×、2.8×、1.7×的比较;三张图横轴单位与硬件不同,不能把一个图的秒数和另一个图的毫秒直接排名。

p.59上排softmax热图较集中,下排linear较分散,说明课件所述设置中,聚焦局部位置的能力可能有代价。可以用概率分配的直觉理解:(0.95,0.025,0.025)(0.95,0.025,0.025) 很尖,(0.4,0.3,0.3)(0.4,0.3,0.3) 较分散。两者都和为1,但前者主要读一个位置,后者混入更多位置。这两个分布是补充示意,不是热图测量值。

课件“linear attention不能产生尖锐分布”应读为该方法的经验性局限,不作为所有可能线性attention的数学不可能定理。p.60显示分割结果与12 images/s、1009 images/s,是图中模型和实验设置,未经本机复现,不能写成本次跑分。

p.58比较模型为EfficientViT、SegNeXt、SegFormer,纵轴统一为Cityscapes mIoU;横轴依次为Snapdragon 8 Gen 1手机CPU(秒)、Jetson AGX Orin边缘GPU(毫秒)、A100云GPU(毫秒)。p.60上排ViT-Huge为12 images/s,下排EfficientViT-L0为1009 images/s,显示车辆、运动人物、猫与杯子、街景的分割掩码。该组图引用Cai等《EfficientViT: Multi-Scale Linear Attention for High-Resolution Dense Prediction》(ICCV 2023);吞吐量不能离开相应硬件与设置推广。

多模态与双编码器(p.61–63)【新】

模态指不同形式的数据,如图像与文字。p.61–63的CLIP不用先把所有图像塞进固定标签表,而是利用“这张图与这段描述配对”作为训练信号。

图像编码器把图像变成向量 uiu_i,文本编码器把描述变成向量 tjt_j,二者最终宽度相同才好比较。常见做法先归一化向量,再用点积衡量相似度;模型学习的是共享表示空间,不是把图像文件字节与文字直接点积。

图(p.62):图像沿纵向、文本沿横向,形成配对表。 元素:第 ii 行第 jj 列是图像 ii 与文本 jj 的匹配分数;本批正确配对在对角线。 看什么:训练既要拉高正确配对的相对分数,也要与同批错误配对区分。

补充两对例:猫图/猫描述、狗图/狗描述组成2×2矩阵,猫图对猫描述应比对狗描述高,狗图反之。“高”是相对候选而言,不要求向量各分量都为正。p.62展示ViT视觉分支的配置,不能因此把CLIP定义限定为视觉分支只能Transformer。

p.61的多模态应用图有三个具体例子:鸭兔错觉图在追问后从duck改答bunny并用耳朵解释;利用三趾啄木鸟与绒啄木鸟的文字特征辨认照片为downy;三行图形规律题中每行内部图案依次外无框、圆框、方框,第三行缺“方框内加号”,对应A。它们分别示意图文对话、根据描述辨认和图形推理,展示内容不等于本笔记已实测某模型可靠性。

p.63六组图文数据的文字分别描述摩托车前轮、带版本日期的建筑缩略图、法兰克福机场文件名、伦敦驳船比赛文件名、胡须无缝壁纸图案,以及St Oswalds Way街道商店。文字并非全部是干净类别标签,这说明配对监督可来自描述性网页文本。p.65原分类候选包括plane、car、dog、bird,统一套“A photo of a {object}”,狗图与dog文本得分最高。

对比训练、零样本分类、效果边界(p.64–66)

p.64用交叉熵训练正确配对。继续两对补充例,猫图对猫/狗文本的分数为2与0。行softmax中正确概率为

pcorrect=e2e2+e0≈0.8808,ℓ=−ln⁡pcorrect≈0.1269. p_{\rm correct}=\frac{e^2}{e^2+e^0}\approx0.8808,\qquad \ell=-\ln p_{\rm correct}\approx0.1269.

ℓ\ell 是这一行的损失;正确配对概率越接近1,负对数越接近0。若两个分数相等,概率为0.5,损失约0.6931。还可以沿列让每段文本找对应图像,结合两个方向训练。不能只把所有相似度一起抬高,因为softmax对同一行加常数不变,关键是正确相对错误的差距。

p.65推理时给候选类别写描述,例如“A photo of a cat”和“A photo of a dog”,分别编码,再与新图向量比较,选最高者。zero-shot指不必为这次类别集合再训练专用分类头;不代表模型从未训练,也不保证预训练没有接触相关概念。

p.66与监督ResNet50线性探针比较,27数据集16项正、11项负,StanfordCars+28.9、EuroSAT−37.1。正负并存,不能写成CLIP全面获胜。提示词、领域差异、数据分布都会影响结果。

p.66所有条形的差值如下,数值为原图Δ Score(%)标注,即两种方法分数之差,不是各自绝对准确率:

数据集 差值 数据集 差值
StanfordCars +28.9 Country211 +23.2
Food101 +22.5 Kinetics700 +14.5
SST2 +12.4 SUN397 +7.8
UCF101 +7.7 HatefulMemes +6.7
CIFAR10 +3.9 CIFAR100 +3.0
STL10 +3.0 FER2013 +2.8
Caltech101 +2.0 ImageNet +1.9
OxfordPets +1.1 PascalVOC2007 +0.5
Birdsnap −3.2 MNIST −10.0
FGVCAircraft −11.3 RESISC45 −11.9
Flowers102 −12.5 DTD −16.6
CLEVRCounts −18.2 GTSRB −18.4
PatchCamelyon −19.5 KITTI Distance −34.0
EuroSAT −37.1 — —

小检查:用文字写了一个新类别名,能否保证模型认识这个概念?

参考答案

不能。文字接口使候选类别容易更换,但识别仍受预训练学到的表示与图像分布限制。“可输入这个类别”不等于“能可靠辨认它”。

补充 · 零样本分类的类别列表也属于实验条件(通识讲解;演示数据不属于原题)。

图像向量固定时,候选文本描述改变,文本向量以及比较对象就会改变。因此“零样本”不是完全不需要指定任务;你仍要给出候选类别及描述方式。演示图像与两个候选的分数为2和1,第一类 softmax 概率约0.731;加入第三类且分数也为2后,第一类概率变为 e2/(2e2+e)≈0.422e^2/(2e^2+e)\approx0.422。原先两项分数没变,归一化概率却变了。

所以不同候选集合下的概率不宜直接当作相同的绝对置信度比较。若根据测试结果反复挑提示语,也已经使用测试反馈进行选择。报告时交代类别集合、文本模板、数据划分及选择方式,比只写“没有训练新分类头”更能说明实验边界。

本讲核心考点

  • adapter减少可训练参数而保留预训练主体(p.45–48,C 级)。
  • 全局attention的n²来自位置两两交互(p.51–57,A 级:HW03 Q1复杂度辨析)。
  • softmax不能仅靠结合律消掉,线性attention改变机制(p.55,C 级)。
  • CLIP配对训练与文本提示零样本推理(p.62–66,C 级)。

附录

本部分没有需要另展的推导或题目演练。

来源与证据

  • 原件:L08-Transformers-2025T1.pdf(本地课件),p.43–66;均为当前 PDF 页号。
  • 本次重写核对本篇所列讲义页码;旧版作业/试题题面如保留,属于历史练习,不代表 2026T1 考核要求。未以未公开试题推断考试内容。
  • 往年卷仅证明相应年份考过;2024 卷及 2025 节选未公开的选择题不作推断。