跳到主要内容

宽度剪枝——给 MLP 瘦身,顺便改性格

这一章讲三件事: 删 GLU 里的神经元为什么必须「成对删」;只看权重幅度剪 40% 会发生什么——一半能力崩塌、另一半反而变强;以及怎么用你的数据当裁判,让剪枝指向你想保住的能力。 第 03 章说过「门路内容路成对工作」,本章从这句话出发;第 04 章的「重要性相对于数据」,本章把它推到神经元粒度。

1. 这一章讲什么

深度剪枝是把一整块端走,粗暴但有效;宽度剪枝是给 MLP 换小一号的零件,精细得多。它的适用对象是宽模型——本章主角 Llama-3.2-1B,扩张四倍。本书给它的定位有句话值得先记住:这技术不只用来提性能,还能改模型的性格1

它在全书链条里的位置: 深度剪枝管「块够不够」,宽度剪枝管「每块里的知识加工厂开多大」;两把刀可以叠加(第六章末尾会验证),而「性格会变」这个现象会在第七章的特化任务里被正面利用。

2. 顶层全景

目标:把 MLP 的中间维从 8192 砍到 6554、4915……(改宽度,不动块数)

├─ 选谁:峰峰值幅度(gate/up 权重范围相加,小的先走) ← 5.1
├─ 约束:内容路与门路成对删;收缩层挑列,扩张层挑行 ← 5.1
├─ 重建:建三个新 Linear 层,搬走留任者的权重,改 config ← 5.1
├─ 进阶:重要性 = 结构分(三层幅度,归一化后相加)
│ × 激活分(down_proj 入口的 L2 范数,钩子截获) ← 5.2
└─ 后果:能力二象性(推理崩/守纪升)+ 域特化 + 提速看比率 ← 5.1-5.2

3. 核心原理

3.1 约束先行:为什么必须成对删

第 03 章讲过 GLU 的分工:内容路(up_proj)生成「这个词可能有什么含义」,门路(gate_proj)生成「此刻该放行哪份」。门路的第 i 个门只管内容路的第 i 份内容——它们是锁定成对的搭档。只删一边,门就对着空位过滤、内容没了看门的,逐元素相乘直接错位2

所以重要性必须按「对」算。本书用的尺子叫峰峰值幅度:一个神经元的全部权重里,最大值加最小值的绝对值,就是这个神经元的「摆动范围」。范围大=制造显著激活的潜力大。把门路、内容路的范围相加,得到这一对的合计变换潜力,潜力最低的对子先走3

代码就几行:两张权重矩阵(每张 8192 行×2048 列,行=神经元,列=它对 2048 个输入的权重),逐行取 max+|min|,两张相加。书里的教学例子:神经元 X 权重在 [-0.2, 0.1],范围 0.3;Y 在 [-0.5, 0.4],范围 0.9;Z 在 [0.0, 0.4],范围 0.4——X 先出局4

3.2 重建与账本

选出要留的对子之后是「换零件」:新建三个尺寸缩小的小 Linear 层,把留任神经元的权重搬进去——门路、内容路挑行,收缩层挑列(它接收的正是前两者的输出);最后更新配置里的中间维,否则下游代码还按旧尺寸找东西5

一个易漏的细节:留任者的索引(第几号的编号清单)是按挑选顺序排出来的,直接存下会让权重的排列顺序偏离原模型。

所以要重排(放回原顺序)——这是给下一章的蒸馏铺路6

本书的演示配置:剪 40%,8192→4915(扩张从四倍变约 2.4 倍);全模型参数从 1,235,814,400 降到 913,770,496,减了 3.22 亿、-26.06%。给个体感:每块约 6000 万参数,这相当于抽走五个块的全部内容——但 16 个块一个没少,深度完好7。这套方法与激活函数无关(SwiGLU/GeGLU/ReGLU 通吃),在 LLaMA、Gemma、Qwen 家族上都验证过8

3.3 主走查:剪 40% 之后,一半崩、一半升

走查对象:静态幅度法剪 40% 的 Llama-3.2-1B,不做任何恢复,直接考试。 全部数字出自原书与其依据的论文,逐项列出:

崩掉的一半(知识与推理)
GSM8K(多步算术): 0.0660 → 0.0205 -68.9% ← 崩得最狠
HellaSwag(常识续写): 0.6363 → 0.3737 -41.3%
ARC-Challenge(科学题): 0.3626 → 0.2509 -30.8%
MMLU(57 科目知识): 0.3111 → 0.2689 -13.6%
困惑度:WikiText 11.57 → 56.33(+387%)
LAMBADA 5.75 → 90.38(+1472%)

升起来的一半(忠实与精确)
IFEval(指令遵循): 0.1035 → 0.1516 +46.5%
MUSR(长文约束推理): 0.3399 → 0.4286 +26.1%
TruthfulQA-MC2(抗误区):0.3772 → 0.4298 +13.9%

图说:这些全是原书实测。规律一句话——
要「多想」的崩,要「照办」的升[^9]。

怎么读这张表?崩的一边,死因指向思考链路:多步推理(链式思考)被砍伤了,而靠背诵的知识(MMLU)伤得轻——剪枝伤的是「怎么想」,不是「知道什么」;贴近语言基本功的阅读理解几乎无损(BoolQ -1.9%、WinoGrande -4.8%)9

升的一边,共同点是惩罚跑题:原模型爱给回答添不属于任务的内容,剪过之后表达力下降、输出更短更贴题,反而在「只许输出 JSON(一种机器可查的键值格式)」「只许说证据里有的」这类考试上得分10

书里给的总结值得原样记:它失去了精致,获得了纪律——不是一个更差的模型,是一个能力画像不同的模型11。画像的用途:发票转 JSON 时不许「好心纠正」错字;agent 发转账请求时不许夹带「friendly preamble」;做内容审核时只许输出单个标签,省 token 也防止自我辩论12

这条二象性规律在更大模型上更夸张:同是 40% 剪枝,Llama-3.2-3B 的 IFEval 从 0.0943 升到 0.1645(+74.4%);而且 IFEval 随剪枝率不是单调的——10% 时 0.1423、30% 时冲到 0.1811、50% 回落13

3.4 数据驱动版:结构分 × 激活分

静态法「一视同仁」的短板立刻显形:它不知道哪些神经元对你的任务才重要。数据驱动版把重要性改成乘法:

最终重要性 = 结构分 × 激活分

结构分:三层的峰峰值幅度各自归一化到 [0,1] 后相加
(这次把收缩层也算进来;不归一化,数值大的层会淹没其他层)
激活分:钩子在收缩层入口截获的 L2 范数,按批次累加

图说:乘法是关键——两个因子有一个接近零,乘积就接近零[^15]。

为什么在收缩层入口量? 那是信号刚过完门、还没被压缩的位置:再往下游走,8192 个神经元已被混成 2048 维,分不清谁贡献了什么;在这里,你能看见「门控+激活」过滤之后每个神经元的真实输出14

为什么是 L2 范数? 书里给了最直观的对比:一个神经元输出 [+5, -5, +5, -5]——

度量数值问题
简单求和0正负抵消,明明在干活却被判死亡
L1(绝对值求和)20不抵消,但大小不分
L2(平方和开根)10不抵消,且奖励尖峰

再对照一组:[10,0,0,0] 与 [5,5,0,0] 的 L1 都是 10,L2 却是 10 对 7.07——L2 偏袒「平时安静、一击致命」的专家神经元,压制恒定的背景噪声(无意义的持续小动静)15。这正是特化想要的口味。

工程上还有一笔账:激活不能原样攒在显存里(会爆),所以钩子里就地算成范数,把小小的累加结果放 CPU16

3.5 主走查(下半场):两个同名模型,两种性格

走查对象:同一个 Llama-3.2-1B,同样的 20% 剪枝,只换校准数据。 一份用 WikiText(正式百科文),一份用 SMS 垃圾短信数据(口语、缩写、短句);剪完参数完全相同(都从 1.24B 到 1.07B,-13.03%),外部看不出任何区别17

行为却分岔了。同一个填空「Paris is the capital of」:wiki 模型答得规矩(人口 210 万、位于东北部);sms 模型冒出事实错(「比纽约洛杉矶芝加哥加起来还大」)、句子更直白18。用困惑度验收(低=模型对这类文本「不意外」):

模型(参数相同)WikiText 困惑度SMS 困惑度
原模型25.69122.91
wiki 校准模型36.28182.54
SMS 校准模型48.65165.54
静态 20% 剪枝52217

每个模型都在自己校准过的域里最从容,而静态法两头不讨好19。注意诚实的那半句:特化成立,但两个剪后模型在自己领域里仍不如原模型——砍掉 20% 容量的代价是真的;数据驱动剪枝的价值是「在我关心的域里少受伤」,让后续恢复更快更省20

性能账是另一套逻辑。 速度只跟剪枝率挂钩、与删谁无关:两模型速度都是 18.31→21.9 token/秒(+19.6%,T4 实测);能耗从 1.322 降到 1.236 焦/词(-6.5%)。顺带一个反直觉观察:剪枝模型会生成更多 token(行为变了),每 token 的能耗却不因行为改变——省在架构,行为的事交给后续训练21

最后一层效率细节:GPU 对齐。 中间维最好能被 64、128 整除——现代 GPU 把矩阵切块(tile)并行处理,尺寸不对齐就要补零。本书 6554 这种「随缘尺寸」在 T4(受限于内存带宽——每秒能搬多少数据)上无所谓,在 A100/H100 的高负载推理里才吃得出差别;作者的 OptiPFair 库有现成参数自动取整22

4. 作者的判断与证据

给了证据的: 二象性表格来自作者 2025 年的论文《Fragile Knowledge, Robust Instruction-Following: The Width Pruning Dichotomy in Llama-3.2》——对 1B/3B 系统性测过 10%-60% 六档剪枝率;激活引导的思路来自 CFSP 论文(Wang 等,2024),但公式是作者自己简化的混合分23

作者的判断(而且示范了一种态度): 「学术论文不是要逐字遵守的圣经,是基本思想的来源」——从第一篇拿幅度公式,从第二篇拿「在收缩层入口测激活」的直觉,中间的混合分是自己的东西,用实验验证过比替代方案强24。这是全书方法论上最「可复制」的一页:拆论文、取核心、适配自己的算力。

边界内的坦白: TruthfulQA 上升的机制书里没有定论(表达力下降?输出熵(输出的随机度、发散程度)降低?真的更少不懂装懂?),只有现象成立——「剪过的模型更少输出自信的胡说」25

5. 边界与局限

  • 提速有天花板。 真正的瓶颈常在注意力模块的内存搬运;宽度剪枝只在「GPU 算力吃紧」的场景对速度有明显收益,否则只是边际改善26
  • 剪后必然不如原模型。 就算是自己最擅长的域,困惑度也高于原模型;「特化赢原模型」只在特定任务指标上发生过,不是普遍承诺。
  • 能耗数字的环境敏感。 实测在共享的 Colab 上做,作者自己提醒只能当对比基线,不能当绝对值27
  • 校准数据决定一切,也限制一切。 若校准域选窄了,被删掉的可能是别处救命的神经元;书里给的方法没有「校准集代表性」的检验程序。
  • GPU 对齐的效果依赖硬件。 T4 上做对齐基本白做,这是书里明说的硬件事实,别拿着结论乱套。

6. 可带走的

  1. GLU 神经元是成对工作的:门路内容路一起删,收缩层挑列、扩张层挑行;
  2. 峰峰值幅度是零成本的选神经元尺子:max+|min|,两路相加,小的先走;
  3. 能力会二象性分化:推理与多步思考最脆,知识与阅读最抗剪,指令遵循与诚实度反而涨;
  4. 「换个能力画像」是产品语言:要把 LLM 塞进严格 schema 的场景,纪律比精致值钱;
  5. 数据驱动版公式:结构分 × L2 激活分;L2 抵消正负、奖励尖峰,天然偏袒专家神经元;
  6. 同样的参数量(数值总数),不同的性格:校准数据就是机器的成长环境;
  7. 速度看剪枝率,能力看删谁——两本账分开记;
  8. 中间维对齐 64/128:高负载推理与训练时才吃得到,老卡上别指望;
  9. 拆论文的态度:拿公式、拿直觉、自己简化、用实验兜底。

7. 原文地图

主题原书章原文位置
改性格的定位与对象5 Shaping model architectures via width pruningtext/14-ch05-5-shaping-model-architectures-via-width-pruning.txt:38(搜「change the model's personality」)
内部手术与成对约束5.1 Selecting static neuronstext/15-ch05-01-5-1-selecting-static-neurons.txt:35(搜「internal surgery」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:47(搜「coordinated pair」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:63(搜「very high range」)
峰峰值与教学例5.1 Selecting static neuronstext/15-ch05-01-5-1-selecting-static-neurons.txt:41(搜「peak-to-peak」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:124(搜「8192, 2048」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:159(搜「range = 0.4 + 0.5 = 0.9」)
重建、排序与账本5.1 Selecting static neuronstext/15-ch05-01-5-1-selecting-static-neurons.txt:254(搜「internal structure of the weights」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:316(搜「intermediate_size」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:248(搜「2.4x」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:380(搜「26.06%」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:386(搜「five complete blocks」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:399(搜「architecture-agnostic」)
二象性:崩的一半5.1 Selecting static neuronstext/15-ch05-01-5-1-selecting-static-neurons.txt:598(搜「-68.9%」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:616(搜「procedural reasoning」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:619(搜「-4.8%」)
二象性:升的一半与用途5.1 Selecting static neuronstext/15-ch05-01-5-1-selecting-static-neurons.txt:634(搜「+46.5%」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:646(搜「unsolicited context」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:657(搜「lost sophistication」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:663(搜「hallucinated」) · text/15-ch05-01-5-1-selecting-static-neurons.txt:677(搜「capabilities profile」)
混合分与归一化5.2 Data-driven neuron selectiontext/16-ch05-02-5-2-data-driven-neuron-selection.txt:46(搜「coverage is limited」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:83(搜「static and dynamic components」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:146(搜「orders of magnitude」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:158(搜「totally different score」)
在收缩层入口量、L2 的理由5.2 Data-driven neuron selectiontext/16-ch05-02-5-2-data-driven-neuron-selection.txt:77(搜「lose traceability」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:310(搜「L2 norm」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:335(搜「cancel out」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:346(搜「7.07」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:352(搜「specialist」)
CPU 累加与校准循环5.2 Data-driven neuron selectiontext/16-ch05-02-5-2-data-driven-neuron-selection.txt:218(搜「overflow」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:535(搜「Wiki Calibration」)
两个特化模型与困惑度表5.2 Data-driven neuron selectiontext/16-ch05-02-5-2-data-driven-neuron-selection.txt:711(搜「6554」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:750(搜「French region of Paris」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:764(搜「physically specialize」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:863(搜「25.69」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:916(搜「performs the worst」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:934(搜「minimize damage」)
速度与能耗只看比率5.2 Data-driven neuron selectiontext/16-ch05-02-5-2-data-driven-neuron-selection.txt:946(搜「depend only on the percentage」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1006(搜「18.31」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1083(搜「1.322」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1128(搜「expansion reduction」)
瓶颈与 GPU 对齐5.2 Data-driven neuron selectiontext/16-ch05-02-5-2-data-driven-neuron-selection.txt:1140(搜「memory movements」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1165(搜「divisible by 32, 64, 128」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1171(搜「tiles」) · text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1210(搜「memory bandwidth」)
论文来源与态度5.3 From paper to practicetext/17-ch05-03-5-3-from-paper-to-practice.txt:7(搜「Width Pruning Dichotomy」) · text/17-ch05-03-5-3-from-paper-to-practice.txt:77(搜「74.4%」) · text/17-ch05-03-5-3-from-paper-to-practice.txt:90(搜「0.1811」) · text/17-ch05-03-5-3-from-paper-to-practice.txt:120(搜「bibles」)
动手练习(无新机制):GPU 对齐改写与行为微调5.4 Hands-on labtext/18-ch05-04-5-4-hands-on-lab.txt:13(搜「Hardware alignment」)

Footnotes

  1. 出处:「5 Shaping model architectures via width pruning」第 38 段(text/14-ch05-5-shaping-model-architectures-via-width-pruning.txt:38,搜「change the model's personality」)。

  2. 出处:「5.1 Selecting static neurons」第 47 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:47,搜「coordinated pair」)与第 53 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:53,搜「combined contribution」)。

  3. 出处:「5.1 Selecting static neurons」第 63-69 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:63,搜「very high range」;text/15-ch05-01-5-1-selecting-static-neurons.txt:69,搜「lowest potential」)。

  4. 出处:「5.1 Selecting static neurons」第 124 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:124,搜「8192, 2048」)与第 156-167 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:159,搜「range = 0.4 + 0.5 = 0.9」)。

  5. 出处:「5.1 Selecting static neurons」第 260 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:260,搜「indices_to_keep」)与第 316 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:316,搜「intermediate_size」)。

  6. 出处:「5.1 Selecting static neurons」第 254 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:254,搜「internal structure of the weights」)。

  7. 出处:「5.1 Selecting static neurons」第 248 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:248,搜「4915」)、第 380 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:380,搜「26.06%」)与第 386 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:386,搜「five complete blocks」)。

  8. 出处:「5.1 Selecting static neurons」第 399 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:399,搜「architecture-agnostic」)。

  9. 出处:「5.1 Selecting static neurons」第 604 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:604,搜「asymmetric impact」)与第 616-622 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:616,搜「procedural reasoning」;text/15-ch05-01-5-1-selecting-static-neurons.txt:619,搜「-4.8%」)。

  10. 出处:「5.1 Selecting static neurons」第 627 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:627,搜「counterintuitive phenomenon」)、第 640 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:640,搜「fidelity and precision」)与第 646 行(text/15-ch05-01-5-1-selecting-static-neurons.txt:646,搜「unsolicited context」)。

  11. 出处:「5.1 Selecting static neurons」第 657 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:657,搜「lost sophistication」)与第 677 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:677,搜「capabilities profile」)。

  12. 出处:「5.1 Selecting static neurons」第 663-672 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:663,搜「hallucinated」;text/15-ch05-01-5-1-selecting-static-neurons.txt:666,搜「friendly preamble」;text/15-ch05-01-5-1-selecting-static-neurons.txt:672,搜「debating its own labels」)。

  13. 出处:「5.3 From paper to practice」第 77 段(text/17-ch05-03-5-3-from-paper-to-practice.txt:77,搜「74.4%」)、第 90 段(text/17-ch05-03-5-3-from-paper-to-practice.txt:90,搜「0.1811」)与第 84 行(text/17-ch05-03-5-3-from-paper-to-practice.txt:84,搜「174%」)。

  14. 出处:「5.2 Data-driven neuron selection」第 77 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:77,搜「lose traceability」)与第 206 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:206,搜「gating mechanism」)。

  15. 出处:「5.2 Data-driven neuron selection」第 329-352 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:335,搜「cancel out」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:346,搜「7.07」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:352,搜「specialist」)。

  16. 出处:「5.2 Data-driven neuron selection」第 218 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:218,搜「overflow」)。

  17. 出处:「5.2 Data-driven neuron selection」第 691-711 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:691,搜「20% pruning instead」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:725,搜「13.03%」)。

  18. 出处:「5.2 Data-driven neuron selection」第 739-764 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:750,搜「French region of Paris」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:764,搜「physically specialize」)。

  19. 出处:「5.2 Data-driven neuron selection」表 5.1 在第 834-910 行(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:863,搜「25.69」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:889,搜「165.54」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:901,搜「217」)与第 916 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:916,搜「performs the worst」)。

  20. 出处:「5.2 Data-driven neuron selection」第 928-934 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:928,搜「capacity to represent knowledge」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:934,搜「minimize damage」)。

  21. 出处:「5.2 Data-driven neuron selection」第 946 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:946,搜「depend only on the percentage」)、表 5.2 在第 979-1041 行(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1006,搜「18.31」)、表 5.3 在第 1053-1121 行(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1083,搜「1.322」)与第 1128 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1128,搜「expansion reduction」)。

  22. 出处:「5.2 Data-driven neuron selection」第 1140-1152 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1140,搜「memory movements」)、第 1165 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1165,搜「divisible by 32, 64, 128」)、第 1171 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1171,搜「tiles」)与第 1210 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1210,搜「memory bandwidth」)。

  23. 出处:「5.3 From paper to practice」第 7 段(text/17-ch05-03-5-3-from-paper-to-practice.txt:7,搜「Width Pruning Dichotomy」)、第 25 段(text/17-ch05-03-5-3-from-paper-to-practice.txt:25,搜「40%, 50%, and 60%」)与第 108 段(text/17-ch05-03-5-3-from-paper-to-practice.txt:108,搜「X_d_norm」)。

  24. 出处:「5.3 From paper to practice」第 120 段(text/17-ch05-03-5-3-from-paper-to-practice.txt:120,搜「bibles」)。

  25. 出处:「5.1 Selecting static neurons」第 652 段(text/15-ch05-01-5-1-selecting-static-neurons.txt:652,搜「underlying mechanism」)。

  26. 出处:「5.2 Data-driven neuron selection」第 1140-1152 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1140,搜「memory movements」;text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1216,搜「compute-bound」)。

  27. 出处:「5.2 Data-driven neuron selection」第 1122 段(text/16-ch05-02-5-2-data-driven-neuron-selection.txt:1122,搜「comparative baseline」)。