跳到主要内容

阅读笔记 — When NLP Meets LLM(通读记录)

2026-08-27 通读完毕。原书 20 个文件,导航章(half-title/copyright/dedication/contents/figures/tables/index)跳过,正文章 14 个文件全读。 本文件是写作期的记忆外置:要点、关键数字、可引段落的行号。

版本与作者(书卡素材)

  • 第一版 2026,CRC Press(Taylor & Francis),© 2026 四位作者;ISBN 978-1-032-97084-4 (hbk);DOI 10.1201/9781003592068;191 页;「camera-ready copy provided by the authors」= 作者自排版(text/02-fm-copyright-page.txt:1)。
  • 作者:Munazza Zaib(Macquarie 博士,Monash 博士后;研究方向 IR/NLP/ConvQA)、Quan Z. Sheng(Macquarie 计算机学院院长)、Wei Emma Zhang(Adelaide 高级讲师,AIML)、Adnan Mahmood(Macquarie 讲师,方向 IoT/网络)(text/07-fm-authors.txt)。
  • 成书方式:Zaib 的博士课题为主线,第 3/4/5 章分别是已发表论文的扩写(CONVSR@IJCNN 2023、survey@KAIS 2022、DPR-ConvQA@WISE 2024 under review——第 5 章投稿时还在审!)。
  • 关键观察:书名有 LLM,正文全是 BERT 时代的编码器模型(BERT/RoBERTa/BART/GPT-2 只当改写器)。LLM 只在第 6 章未来方向出现一次(Generate-then-Retrieve, ICLR 2023)。这是今天读要修正的最大一处。

Ch1 Introduction(text/08-ch01-...txt,28k)

  • ConvAI 三分类:task-oriented / chat-oriented / QA dialog(L13);QA dialog 系统最新、最缺研究(L30)。
  • ConvQA = 简化但具体的对话式搜索:返回一个答案而非文档列表(L36);层级:对话式搜索 ⊃ ConvQA ⊃ {Sequential KB-QA, CMRC},本书聚焦 CMRC(L71);脚注:全书 ConvQA 与 CMRC 互换使用(L83)。
  • Table 1.1(QuAC 例子):Malayali/Kerala 对话;Q4=CANNOTANSWER(L131),Q6=To be answered(L137);Q2 话题转移、Q5 话题回归(L139-142)。
  • 三大挑战:1.1.1 不完整/歧义问题(unclear intent/contextual dependencies/retrieval 困难/需要澄清提问,L157-178);1.1.2 相关历史选择(「加全部历史带噪声」L197;「答 Q5 只需要 Q1」L200);1.1.3 开放域 ConvQA(「假设文章总是给定」L207;DPR 稠密检索 L219)。
  • ConvQA 定义(Reddy/Choi):给定 passage+当前问题+历史,预测答案 span(L202)。
  • RQ1-4 对应 Ch2-5(L232-294)。
  • 注意:Ch1 说 ELIZA「in the last decade」——ELIZA 是 1966 年的,这是原书的疏漏。

2.1 Overview(09,4.5k)

  • 综述章,100+ 篇顶会论文;2016 起论文数上升,2019 峰值=预训练语言模型年(L60-63);>35% 论文来自典型会场之外(L69)。

2.2 Foundations(10,16.7k)

  • QA 起源 1960s(规则方法+数据集太小)(L26);2015 复兴两个驱动:深度学习 + 大数据集(SQuAD/Freebase/MS MARCO/DBpedia/CNN&DM)(L31-40)。
  • ConvQA「system ask, user respond」设定(L46)。
  • 分类四维:数据域(open/closed,L81)、问题类型(L97-154:factoid/confirmation/simple/complex/casual/listing/unanswerable;SQuADRUn 5 万不可答问题 L154)、数据源(structured/semi/unstructured,L162-183)、系统类型(Sequential KB-QA / CMRC,L192-200)。
  • CMRC 例:找餐厅,搜索引擎给多页列表,CMRC 问几个追问收敛到一个答案(L205)。
  • ConvQA vs QA 任务差异:问题互相关(L217);轮次性质:drill-down/topic shift/topic return/clarification(L226-229);CoQA Staten Island 例子 Table 2.1(L250-281):Q2「In what city?」、Q5「Where is it?」的 it 需要共指消解(L239)。
  • 架构差异:encoder 多了 history modeling 模块;reasoning 模块要能做 pragmatic reasoning(答案不直接在文章里)(L247-287)。

2.3 Sequential KB-QA(11,3.2k)

  • KB/KG:三元组 (s,r,t)(L5);Freebase/NELL/DBpedia/Wikidata(L2)。
  • 单轮 KB-QA 需要懂 KB 组织结构才能组复杂查询(L20-22)→ 顺序式让用户交互式查询(L23)。
  • 架构:语义解析器(输入+上文→逻辑形式)+ 对话管理器(记录 QA 对与 DB 状态、定 dialog policy)+ 响应生成器(L38-47);新方法在砍语义解析器(标注太贵)(L51)。

2.4 CMRC(12,23.2k)

  • MRC 三步:编码成 embeddings→推理出答案向量→解码(L24)。Choi et al. 加 history selection + history modeling 两模块=CMRC(L29)。
  • 正式定义:给定 C、历史 Q1A1...Qi-1Ai-1、Qi,预测 Ai;答案可为带证据的自由文本或文本 span(L33)。
  • History selection 三种:选 K 轮(SDNet/BiDAF++/ORConvQA/WS-ORConvQA)(L52);立即轮(BERT 2-ctx:2 轮好;BERT-HAE:5-6 轮好;都随轮数增加性能陡降 L66-70);动态(HAM 按贡献加权 L76;Env-ConvQA 把选历史当序贯决策+奖励回溯 L82-85)。
  • Encoder:传统词向量(GloVe/Word2Vec,一词一向量,不分上下文)(L102-107)→上下文化(CoVe/ELMo/Transformer/BERT)(L110-144);BERT 修补 GPT 的单向性(L133);SpanBERT/ALBERT/RoBERTa/XLNet/Transformer-XL(L138-141)。
  • History modeling 三招:拼接历史(全部 QA 对/仅问题+轮号;「加轮号实测更好」L163);HAE 标记(上下文 token 是否在历史答案里)+POS-HAE(加相对位置)(L166-168);流式隐表示(L173)。
  • Reasoning 四类:传统(DrQA+PGNet:biLSTM 找证据+指针生成器写答案 L196;BiDAF++ 双向注意力流 L203;SDNet 双 RNN 自注意力+交互注意力 L206);PLM(BERT 输入只许两段、512 长度→塞越多截越多 L215;三招:HAE/每轮独立模型+BiGRU 聚合/强化回溯器 L222-242;答案=start/end 概率 L244);流式(FlowQA 集成流 L265;FlowDelta 用「相邻两层隐表示之差」=信息增益 L273;GraphFlow 动态上下文图+GNN L282);开放检索(OR-ConvQA 检索器+重排器+阅读器,检索器=双 ALBERT 编码器 L305-310;WS-ORConvQA 弱监督支持自由格式答案 L320;DPR 趋势:Jeong 短语检索去掉阅读器 L345;ConvADR-QA 历史答案入输入 L348)。
  • Output 预测(接 13:L1-11):span/自由格式/dialog act;QuAC 每段末尾加 UNANSWERED token(L4)。

2.5 Datasets(13,31k)

  • 数据集三类型:多选(RACE/MCTest/MCScript)、描述式(MS MARCO/NarrativeQA)、抽取式(SQuAD/TriviaQA/NewsQA)(L23-185)。
  • ConvQA 双子:CoQA、QuAC;OD 双子:OR-QuAC、TopiOCQA;ShARC 被排除(不合 CMRC 定义,L190-193)。
  • CoQA(Reddy):三目标=问题依赖历史(L204)、答案自然(自由格式+文中 rationale,L234)、跨七域(L242);AMT 双标注 L278;127K 轮/8K 对话/平均 15 轮(L282);「Who?」「Why?」单词问题(L289);macro-F1(L293)。
  • QuAC(Choi):师生设定——老师看全文,学生只看标题,靠提问获取信息(L307);dialog acts 反馈(L314);答案最长 15 token(L318);86% 问题高度上下文相关,其中 44% 指代历史实体、61% 指文章主题(L322-325);HEQ(HEQ-Q/HEQ-D)(L329)。
  • OR-QuAC:QuAC+CANARD(QuAC 问题的自包含改写)+2019-10-20 维基 dump(L336-344);590 万篇文章→BERT tokenizer 切 384 word pieces 的段(L351-352);<0.5% 已知答案被切断→训练时按不可答处理(L357);共 1100 万段(L363);问题均长 6.7 token、答案 12.5(L366);35526/3430/5571 train/val/test(L368);评测 F1+HEQ+MRR+Recall(top-5)(L379-386)。
  • TopiOCQA:主题切换;种子问题来自 Natural Questions(L393);提问者只看标题+节标题(L398);3920 对话/50466 轮(L406);至少 10 轮、<5 轮剔除(14:L3);均 13 轮、约 4 篇文档(14:L4);F1+EM(14:L9)。

2.6+2.7(14/15)

  • 三应用:单一信息源、对话式搜索(可能取代传统引擎)、客服(14:L19-32;15:L7)。
  • 总结:上下文建模是性能关键,但上下文常隐含不完整(15:L35);下一章做补全(15:L36)。

Ch3 CONVSR(16,38k)

  • 现象:anaphora(指代)+ellipsis(省略)(L10)。
  • QR(改写)三宗罪:冗长(L14)、把问题拉出对话「negates the whole idea of ConvQA」(L143)、数据集小(CANARD 40K,L190)。
  • Table 3.1 FRIENDS 例子(L46-53):Q2「What was she obsessed about?」要 CE(FRIENDS)+QE(Monica Geller);Q4「Release date of the first season?」只要 CE(L80-84)。
  • CONVSR=用中间结构化表示(CE+QE)代替改写(L65);四阶段:问题理解→动态历史选择(hard,soft-cosine 阈值)→实体生成→答案预测(L86-91)。
  • Pipeline 法:GPT-2 在 CANARD 上训 QR→传统 QA 模型;公式 3.1(L205);两毛病:QA 模型永远见不到真实问题(L217)、误差从 QR 传到 QA(L227)。
  • BART:seq2seq,encoder+decoder,「信息从输入复制但被操纵着输出」时最好(L262-283)。
  • Soft cosine:普通 cosine 对无重叠词的向量为 0,soft cosine 考虑词相似(L287-289);阈值 0.75(L302)。
  • 训练:远距监督标注——「如果加上这个实体能抽到答案 span,实体就算相关」(L344-354);Adam lr 3e-5(L361)。
  • 结果:Table 3.2(L419-427):BERT 61.4→62.7,BERT-HAE 61.5→63.6,RoBERTa 66.1→67.9 F1;prepend 变体中 prepend prev 最好 64.4,prepend init 最差(会话流在变)(L492);Table 3.5(L502):QR 问题均长 9 vs 5.5、专有名词 2.5 vs 1、F1 66.1 vs 67.9。
  • 定位自白:SR 的想法来自符号 AI,QR/QA 来自 IR 社区(L530)。

Ch4 DHS-ConvQA(17,36k)

  • Jal 乐队例子(L79-88):Q4「What was their first album?」→A4 Aadat;Q5「When was it released?」;Q4 的 CE=band、QE=album,补全 Q5=「When was the band's album released?」(L224-226)。Q2 话题移到歌手,塞进来就是噪声(L58)。
  • 历史选择谱系:静态(前拼 k 轮)vs 动态{hard(选子集)/soft(问题感知的上下文化表示)};本书=hard+soft 组合(L130-139)。
  • 四步:①BART 生成每轮 CE/QE(远距监督)②剪枝(不共享实体的轮)③注意力重排(单层前馈网络+softmax,公式 4.2/4.3;权重最高的轮紧挨当前问题排)(L235-252)④二分类词标注(RoBERTa 顶层 linear+sigmoid+dropout;1=相关词,0=无关)(L255-259)。
  • 配置:bart-base,batch 4,Adam lr 5e-5,wd 0.01;RoBERTa lr {2e-5,3e-5,3e-6},dropout {0.1-0.4};答案最长 40、问题最长 64(L291-301);QR pipeline 用 31K 训练对(L283)。
  • 对手:BERT-HAE/BERT-HAM/BERT-CoQAC(作者自己的,余弦相似选轮)/CONVSR(L345-354)。
  • 结果 Table 4.2:CONVSR 66.1→67.5,BERT-HAM 63.4→65.4,BERT-CoQAC 63.1→64.4,BERT-HAE 62.3→63.1(L344-358)。
  • 消融 Table 4.3(L381-390):去掉剪枝 64.3(掉最多);去掉重排 67.3(掉最少);去掉词标注 65.7;完整 67.5。
  • 负样本实验(L411-417):0 个 F1 67.5 → 11 个 52.4;clarification 最扛噪(90.9→83.8)、topic shift(85.4→63.0)、topic return(82.2→62.1)。负样本=同主题不同文章的问题(L420)。
  • 剪枝准确率→下游 Table 4.5(L444):100%→重排100%/词标注92%/答案90%;70%→95/86/80;50%→89/70/65。「误差传播,前一级输出是后一级输入」(L448)。

Ch5 DPR-ConvQA(18,46k)

  • 设定:OD-ConvQA,retriever-reader 流水线;检索错→阅读器全完「error propagated from the retriever module can make the reader vulnerable」(L13);真实场景 gold passage 不给(L35)。
  • 现有方法都把整个对话上下文塞给检索器→检回无关段(L57)。本书=第一个把精选上下文放进检索器的(L203)。
  • 对比学习:最早用于人脸识别(L167);xMoCo(OD-QA)/PRALINE(KG 路径排序)/PRO-ConvQA(短语检索,去阅读器)(L172-175)。
  • 检索器:BART 生成 CE/QE→剪枝→DPR 双编码器(dual-encoder)把问题和段映到同一向量空间→点积相似度(L219-273);训练=负对数似然(公式 5.4),正样本=含答案的段;in-batch negatives:batch 内 B 个问题互用对方的 gold 段当负样本,每题 B-1 个负样本,省算力(L296-308)。
  • 阅读器:传统 BERT;每段取 start/end 最高分;最终分=检索分×阅读分(5.5)(L313-327)。
  • 超参(L333-347):检索器 问题128/段384/batch16/12epoch/lr5e-5/BART;阅读器 问题125/段512/batch2/3epoch/lr5e-5/BERT;2×Tesla P100 16GB(L360)。
  • 对手:DrQA(TF-IDF+RNN,OR-QuAC 上 F1 只 6.3)/OR-ConvQA/ConvADR-QA/PRO-ConvQA/Graph-guided(L393-426)。
  • 结果 Table 5.2(L435-446) OR-QuAC:DPR-ConvQA Recall 80.1/MRR 68.4/F1 39.9/HEQ-Q 34.2/HEQ-D 1.9 vs ConvADR-QA 77.9/66.8/38.4;TopiOCQA:77.2/65.3/35.9 vs 75.6/63.4/35.2。
  • OR-QuAC 分数比 TopiOCQA 高:主题切换太频繁(L478-483)。
  • 可视化:Politkovskaya 谋杀主题的 Q7,DrQA 检索落在无关段中间(L517)。
  • 轮数越长分数越降(L549);TopiOCQA 波动更大。
  • 定性 Table 5.3(L588-625):Gene Clark 例子 Q4「Did he have any songs released in films?」——he=Clark,ConvADR-QA 答 American Dreamer(错),DPR-ConvQA 答 The Farmer(对);台风 Zola 例子:ConvADR-QA 只答 Hiroshima,DPR-ConvQA 答 Kochi+Hiroshima。
  • 消融逻辑:阅读器与 PRO-ConvQA 相同→优势来自检索器(L473-477)。

Ch6 Conclusion(19,20k)

  • 总结三章一脉相承:补线索(CONVSR)→选历史(DHS)→进检索(DPR)。
  • 六个未来方向:
    1. 上下文动态(个人/社交/任务上下文;KG 够不够)(6.2.1);
    2. 误差传播:LLM 先生成段落再检索(Generate-then-Retrieve, ICLR 2023)(L116)+短语检索(L119);
    3. 用户意图识别(L123);
    4. 信息寻求行为/澄清问题(冷启动、zero-shot 模板)(L140);
    5. 推理缺失:「机上五人+地面两人死亡」答不出 7(L166);CoQA 是唯一带 reasoning 的数据集(L173);Cos-E;EXPLAIGNN;
    6. 常识推理:CMRC 上无成功尝试(L197);BlenderBot3(Meta,基于 OPT≈开源 GPT-3)(L200);ConceptNet/ATOMIC/CoMET(L208)。

今天读要修正的三处(总纲素材)

  1. LLM 时代整个范式换了:本书检索器/阅读器都是 BERT 级编码器;2023 起 LLM 直接当阅读器/生成答案(RAG),「retriever-reader」变成「retriever-generator」;书中自己引的 Generate-then-Retrieve 就是转折点。②类锚:ragas(frontier, RAG 定义)、dsrag(agent 架构, embedding+reranker 插槽)。
  2. 「问题改写」在产品里活着:nlweb 协议的 FastTrack 里就有「去上下文化」步骤(把「那再便宜点的呢」补全成完整问题)——书中 CONVSR 反对整句改写,但现代系统仍走改写路线(多为 LLM 完成)。②类锚:nlweb#01-pipeline.md。
  3. 评测升级:F1/EM/HEQ 之外,RAG 时代用 LLM 当裁判的忠实度等指标(ragas)。②类锚:ragas#01-metrics-engine.md。

可连书架锚(②类)

  • shelf=ai-protocol-reference/nlweb#01-pipeline.md — 去上下文化(问题改写)在生产协议里的位置;事实=NLWeb 流水线含「去上下文化」步骤,LLM 判定是否要改写。
  • shelf=ai-frontier-reference/ragas#01-metrics-engine.md — RAG 评测的 LLM 裁判指标(faithfulness);事实=ragas 用「拆句→NLI 判定→聚合」算忠实度。
  • shelf=ai-agent-reference/dsrag#04-pluggable-components.md — 现代 RAG 引擎的 embedding+reranker 插槽;事实=dsrag 默认组合含 embedding 与 reranker 组件。
  • 同库书(非②,随文提及):essential-graphrag(RAG 实操)、what-is-chatgpt-doing(生成机制)。