bAbI:用 20 个"玩具任务"给文本理解能力做单元测试
- 关联论文:1502.05698
- 作者:flyP
- 更新:2026-11-03
一句话结论
这篇论文没有提出新模型,而是提出了一套基准测试方法论:把"机器是否真的理解自然语言"这个模糊命题,拆成 20 个各自只考察一项能力的合成 QA 任务(即 bAbI),用统一的世界模拟器自动生成标注,使模型在每个任务上的成败都能无歧义地映射回一条具体能力;作者同时改进了 Memory Networks,实地演示了"任务反过来驱动算法设计"的反馈回路。
它解决的真问题
2015 年前后,QA 评测的困境是:数据集越做越大,分数越做越高,但没人说得清"模型到底学会了什么"。论文点名了当时的三条主线及其问题:
- aristo(Allen Institute):按 4/8/12 年级科学考试难度分层的 QA 集合。
- MCTest:660 个故事及其配套问题。
- Winograd Schema Challenge:形如 "Joan made sure to thank Susan for all the help she had received. Who had received the help? Joan or Susan?" 的二选一。
作者的批评相当锋利:这些任务"结果难以解读"。因为一个问题的作答依赖多个子能力(coreference、deduction、common sense……)的叠加,某个系统做错了,你无法定位是哪一环断了;于是"总结结论"也就模糊不清。此外,这些系统最好成绩往往建立在手工构造的 pattern 和 feature、或大规模语料统计之上,作者反问:这些系统真的"理解"语言了吗,还是"传统 information extraction 的轻量升级版"(a light upgrade of traditional information extraction methods)?
所以本文的核心诉求不是刷榜,而是建立可诊断性。论文的类比很贴切:像软件工程里的单元测试,每个任务都是一个"leaf"测试用例,尽可能互相独立,且用最简单的方式测一个方面。"因此,设计这批任务的主要目标是:一个系统在任何任务上的失败或成功,都能毫不含糊地提供关于其能力的反馈。"
核心方法
1. 设计原则:把理解能力拆成可归因的最小单元
论文在 §3 开头立了几条硬约束:
- 每个任务只考一件事,且彼此尽量独立;后续可以有"非叶子"测试来考组合能力。
- 答案格式受控:正确答案是单个词(
Q: Where is Mark? A: bathroom)或一组词(Q: What is Mark holding?),评测退化为简单的对/错判定。 - 无噪声:"All of the tasks are noiseless and a human able to read that language can potentially achieve 100% accuracy."
- 不要求背景知识:任务建立在日常情境上,"no background in areas such as formal semantics, machine learning, logic or knowledge representation is required for an adult to solve them"。
- 自带训练集:与 aristo / Winograd 只有评测集不同,bAbI 同时提供 train 和 test,"commonsense knowledge and reasoning required for the test set should be contained in the training set"。
2. 20 个任务:一条完整的语言能力清单
论文正文用两张表(Table 1 / Table 2)给出每类任务的样例句与问答。完整清单如下(任务名与仓库中的类名对应):
| # | 任务名(类名) | 考察点 | 样例问题 → 答案 |
|---|---|---|---|
| 1 | Single Supporting Fact(WhereIsActor) |
单一事实检索,干扰项干扰 | Where is Mary? → office |
| 2 | Two Supporting Facts(WhereIsObject) |
事实链式组合(2 跳) | Where is the football? → playground |
| 3 | Three Supporting Facts(WhereWasObject) |
3 跳链式推理 | Where was the apple before the kitchen? → office |
| 4 | Two Argument Relations(IsDir) |
主客体角色区分 | What is north of the bedroom? → office |
| 5 | Three Argument Relations(WhoWhatGave) |
三元论元角色 | Who gave the cake to Fred? → Mary |
| 6 | Yes/No Questions(IsActorThere) |
真假判断 | Is John in the playground? → no |
| 7 | Counting(Counting) |
计数(类数据库聚合) | How many objects is Daniel holding? → two |
| 8 | Lists/Sets(Listing) |
集合列举 | What is Daniel holding? → milk, football |
| 9 | Simple Negation(Negation) |
否定事实 | Is Fred in the office? → no |
| 10 | Indefinite Knowledge(Indefinite) |
可能/未知三值 | Is John in the classroom? → maybe |
| 11 | Basic Coreference(BasicCoreference) |
最近先行词消解 | Where is Daniel? → studio |
| 12 | Conjunction(Conjunction) |
并列主语 | Where is Jeff? → park |
| 13 | Compound Coreference(CompoundCoreference) |
复数先行词(they) | Where is Daniel? → garden |
| 14 | Time Reasoning(Time) |
显式时间表达式与事件序 | Where was Julie before the park? → school |
| 15 | Basic Deduction(Deduction) |
属性继承(演绎) | What is Gertrude afraid of? → wolves |
| 16 | Basic Induction(Induction) |
属性泛化(归纳) | What color is Greg? → white |
| 17 | Positional Reasoning(PositionalReasoning) |
二维空间关系 | Is the red square to the left of the triangle? → yes |
| 18 | Size Reasoning(Size) |
尺寸/容纳传递 | Will the cupboard fit in the box? → no |
| 19 | Path Finding(PathFinding) |
图上寻路 | How do you go from den to kitchen? → west, north |
| 20 | Agent's Motivations(Motivations) |
因果/意图推断 | Why did John go to the kitchen? → hungry |
其中任务 4 的设计意图值得单说:"What is north of the bedroom?" 与 "What is the bedroom north of?" 词完全相同、语序不同、答案不同——这是专门用来杀死 bag-of-words 模型的。任务 9 明确声明依赖任务 6(否定蕴含建立在真假判断之上)。任务 8、9 的灵感来自 lambda dependency-based compositional semantics(Liang et al. 2013;Liang 2013)。
3. 统一的世界模拟器:标注从哪里来
这是本文最被低估的工程贡献。整套数据不是人工标注,而是由一个类文字冒险游戏的物理世界模拟器自动生成(论文类比 classic text adventure game,Montfort 2005):角色在地点间移动、拿取/丢弃/交换物品、互相交互;模拟跑的同时,同步产出接地文本和 QA 对,真值由 grounding 到模拟器状态直接给出。
开源仓库 facebook/bAbI-tasks(现已归档至 facebookarchive/bAbI-tasks,GitHub 显示 903 stars)的 README 完整披露了实现骨架,机制可还原为如下伪代码:
world = load_world() # 地点、物品、人物的集合
knowledge = Knowledge() # "读者"当前已知的世界状态
story = []
for step in range(num_steps):
action = sample_valid_action(world) # 只采样合法动作
if not action.is_valid(): continue
action.perform(world) # 改变世界状态
action.update_knowledge(knowledge) # 更新读者认知
story.append(action.as_clause()) # (truth, actor, action, args...)
if should_ask():
q, support = make_question(knowledge)
story.append((q, support))
text = stringify(story) # 模板化自然语言生成
几个关键设计:
- Clause 是统一中间表示。事实一律表示成
(truth value, actor, action, arguments),例如(true, john, teleport, kitchen);注意论文特别说明,由于一切信息都必须经由 action 表达,"John is in the garden" 实际被表示为(true, god, set_property, is_in, garden)——状态由"上帝"角色施加的动作来记录。问题则是(question type, clause, support)三元组,support正好就是supporting facts(哪些句子是解题所必需的),这让"多跳推理需要几步"有了天然定义。 - Knowledge 维护排他性逻辑。README 写明:某些属性是 exclusive 的——John 不可能同时在厨房和花园,因此若已知 John 在花园,读者同时知道他不在厨房。这类"闭世界"推断是把任务 2/3 变成真正多跳的关键。
- 可复用推理被抽出成一层。README 提到"person and the object they are holding are in the same place"这类推断在多个任务中被复用,故被抽到 Knowledge 层统一处理。
- 模板化 NLG + 可调参数。
stringify反复从匹配的模板中随机采样;命令行 flag 可控制难度:--path-length/--decoys(寻路长度与诱饵地点数)、--steps(尺寸比较步数)、--coreference/--conjunction(0 到 1 的使用比例)、--symbolic true(输出符号化形式,如1 H teleport N)。README 同时给出一条约束:路径长度加诱饵数不得超过 5,尺寸比较不得超过 5 步。
4. 反馈回路:任务设计的终极目的
作者在 §1 把整套工作的定位讲得非常清楚:"our hope is that the analysis of performance on these tasks will help expose weaknesses of current models and help motivate new algorithm designs that alleviate these weaknesses." 更进一步:"We further envision this as a feedback loop where new tasks can then be designed in response, perhaps in an adversarial fashion, in order to break the new models." 附录 A 的 MemNN 扩展,正是这一回路的一次实地演示。
关键实验与数据
五条基线,三个赛道
论文在英文数据集上比较了五种方法(§5 原文列举):
- N-gram classifier(弱监督)
- LSTM(Hochreiter & Schmidhuber, 1997;弱监督)
- Memory Networks (MemNNs)(Weston et al. 2014;弱监督)
- MemNN 的若干扩展(本文提出)
- Structured SVM,引入外部标注数据(COREF+SRL features;强监督)
论文明确说明这些方法"belong to three separate tracks":弱监督、使用外部资源、以及强监督(使用 supporting facts 标注)——这个赛道划分本身就是一种诚实声明:不同轨道的数字不能直接横比。
Table 3:20 个任务上的测试准确率(%)
论文 Table 3 的 caption 原文:"Test accuracy (%) on our 20 Tasks for various methods (1000 training examples each)... Bold numbers indicate tasks where our extensions achieve ≥95% accuracy but the original MemNN model of Weston et al. (2014) did not. The last two columns (10-11) give extra analysis of the MemNN AM + ..."(最后两列为"达到 ≥95% 所需的最少训练样本数"与"多任务训练")
下表为 PDF 文本层还原。列序:N-gram / LSTM / Structured SVM / MemNN(2014) / MemNN-AM / AM+NG / AM+NL / AM+NG+NL / ≥95%所需样本 / 多任务训练。
| # | 任务 | N-gram | LSTM | Struct.SVM | MemNN14 | AM | AM+NG | AM+NL | AM+NG+NL | 样本 | 多任务 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | Single Supporting Fact | 36 | 50 | 99 | 100 | 100 | 100 | 100 | 100 | 250 ex. | 100 |
| 2 | Two Supporting Facts | 2 | 20 | 74 | 100 | 100 | 100 | 100 | 100 | 500 ex. | 100 |
| 3 | Three Supporting Facts | 7 | 20 | 17 | 100 | 99 | 100 | 100 | 100 | 500 ex. | 100 |
| 4 | Two Arg. Relations | 50 | 61 | 98 | 71 | 69 | 100 | 73 | 100 | 500 ex. | 80 |
| 5 | Three Arg. Relations | 20 | 70 | 83 | 83 | 86 | 86 | 98 | 98 | 1000 ex. | 99 |
| 6 | Yes/No Questions | 49 | 48 | 99 | 47 | 52 | 53 | 100 | 100 | 500 ex. | 100 |
| 7 | Counting | 52 | 49 | 69 | 68 | 78 | 86 | 83 | 85 | FAIL | 86 |
| 8 | Lists/Sets | 40 | 45 | 70 | 77 | 90 | 88 | 94 | 91 | FAIL | 93 |
| 9 | Simple Negation | 62 | 64 | 100 | 65 | 71 | 63 | 100 | 100 | 500 ex. | 100 |
| 10 | Indefinite Knowledge | 45 | 44 | 99 | 59 | 57 | 54 | 97 | 98 | 1000 ex. | 98 |
| 11 | Basic Coreference | 29 | 72 | 100 | 100 | 100 | 100 | 100 | 100 | 250 ex. | 100 |
| 12 | Conjunction | 9 | 74 | 96 | 100 | 100 | 100 | 100 | 100 | 250 ex. | 100 |
| 13 | Compound Coref. | 26 | 94 | 99 | 100 | 100 | 100 | 100 | 100 | 250 ex. | 100 |
| 14 | Time Reasoning | 19 | 27 | 99 | 99 | 100 | 99 | 100 | 99 | 500 ex. | 99 |
| 15 | Basic Deduction | 20 | 21 | 96 | 74 | 73 | 100 | 77 | 100 | 100 ex. | 100 |
| 16 | Basic Induction | 43 | 23 | 24 | 27 | 100 | 100 | 100 | 100 | 100 ex. | 100 |
| 17 | Positional Reasoning | 46 | 51 | 61 | 54 | 46 | 49 | 57 | 65 | FAIL | 72 |
| 18 | Size Reasoning | 52 | 52 | 62 | 57 | 50 | 74 | 54 | 95 | 1000 ex. | 72 |
| 19 | Path Finding | 0 | 8 | 49 | 0 | 9 | 3 | 15 | 36 | FAIL | 19 |
| 20 | Agent's Motivations | 76 | 91 | 95 | 100 | 100 | 100 | 100 | 100 | 250 ex. | 100 |
可信度说明与自洽校验:该表来自论文 PDF 镜像(
vkosuri.github.io/assets/pdfs/toy_tasks.pdf)的文本层还原,而非官方 HTML 表格,因此列映射是按 PDF 表头 + 正文叙述双向校验得出的。三处独立交叉验证全部吻合:(a) 正文称 structured SVM "still failing at 9 tasks",上表 SVM 列 <95 的恰为任务 2/3/5/7/8/16/17/18/19 共 9 个;(b) 正文称 "Task 8 requires 5000 examples and 7 requires 10000, hence they are labeled as FAIL",与表中的 FAIL 标注一致;(c) 正文称任务 17、19 "cannot be solved even with 10000 examples",与两行 FAIL 一致。未完全确认的单元格见文末专节。
三个关键发现
(1) MemNN 全面碾压 N-gram 与 LSTM,但并没有全赢。 论文原文:"Standard MemNNs generally outperform the N-gram and LSTM baselines, which is consistent with the results in Weston et al. (2014). However they still 'fail' at a number of tasks; that is, test accuracy is less than 95%." 注意作者对 "fail" 的定义是自定义阈值 95%,而不是某个 SOTA 数字。
(2) 外部资源并不自动转化为能力。 论文对 structured SVM 的评价值得单引:"The structured SVM, despite having access to external resources, does not perform better, still failing at 9 tasks. It does perform better than vanilla MemNNs (without extensions) on tasks 6, 9 and 10 where the hand-built feature conjunctions capture the necessary nonlinearities. However, compared to MemNN (AM+NG+NL) it seems to do significantly worse on tasks requiring three (and sometimes, two) supporting facts (e.g. tasks 3, 16 and 2) presumably as ranking over so many possibilities is harder." —— 手工 feature 在逻辑型任务(真假、否定、不定)上有优势,却在多跳任务上被 MemNN 反超。
(3) 失败任务的三种成因,指向不同的解法。 作者的归因非常具体:
- 建模能力不足(可修):任务 3、4、5、7、8、18 之所以失败,是因为"k = 2 facts, single word answers and bag-of-words do not succeed"——MemNN 默认只取 k=2 条 supporting facts、答案限定单词、文本用 bag-of-words 表示。这是架构层面的容量约束,可通过 §A 的扩展缓解。
- 需要计数/状态累加(论文自己给了算法):任务 7(Counting)和 8(Lists/Sets)即便给 10000 样本也标 FAIL。作者写道:"The latter task can presumably be solved by adding all the times an object is picked up, and subtracting the times it is dropped, which seems possible for an MemNN, but it does not do perfectly." —— 也就是说,模型缺的不是知识,而是状态变量。
- 模型架构本身不够(难修):任务 17、19 "cannot be solved even with 10000 examples, it seems those (and indeed more advanced forms of induction and deduction, which we plan to build) require..."(原文在此处被截断,语义指向"需要超出当前 MemNN 的表达能力")。作者把这两类归入开放问题。
此外还有一个容易被忽略的数据点:样本效率。论文说 "Most succeeding tasks require 100-500 examples",而多任务训练(MultiTask Training 那一列)在多数任务上与单任务相当或更好——说明这批任务的能力高度可迁移。
Appendix A:MemNN 的三处扩展
论文用附录 A 完整兑现了"任务驱动算法"这条反馈回路,把 MemNN 拆成三个正交开关(论文称扩展在 Table 3 的 columns 5-9):
- AM(Adaptive Memory):自适应地决定读多少条记忆,而非固定 k=2。这直接针对任务 3/15/16 这类需要 3 跳、或需要跨类别泛化(归纳)的任务。
- NG(N-grams):原文 "We tried using a bag of 3-grams rather than a bag-of-words to represent the text. In both cases the first step of the MemNN is to convert these into vectorial embeddings."——用 3-gram 替代 BoW 表示文本,保留局部语序信息,正对任务 4(词相同、语序不同、答案不同)。脚注还留了一条负面发现:"Constructing N-grams from all sentences rather than using the filtered set gave worse results."
- NL(Nonlinearity):原文 "We apply a classical 2-layer neural network with tanh nonlinearity in the matching function."——把匹配函数从线性换成分段非线性,正对任务 6/9/10 这类需要逻辑非线性(and/or、否定、maybe)的题型。
从表里能清楚读出三个开关各自的"主治科目":AM 治多跳(任务 15:74→73→100,任务 16:27→100);NG 治语序(任务 4:71→100,任务 19 部分改善);NL 治逻辑(任务 6:47→100,任务 9:65→100,任务 8:77→94)。三者组合(AM+NG+NL)把 20 个任务中的 16 个推到 ≥95%,剩下的 4 个(7、8、17、19)正是上面归因为"需要状态变量"和"需要更强架构"的那些。
亮点与局限
亮点
- 可诊断性优先于分数。这是一篇评测方法论论文,其贡献不在 SOTA,而在"让失败变得可归因"。任务拆解的思路(一个任务 = 一个 leaf 测试)至今仍是评测设计的通用范式。
- 标注零成本且真值精确。用模拟器 grounding 生成标注,既没有人工噪声,也没有标注一致性争议,且难度可参数化调节(路径长度、诱饵数、coreference 比例)。
- 诚实的赛道隔离。明确区分弱监督 / 用外部资源 / 强监督三条赛道,避免了跨轨道比较的常见误导。
- 负面发现写得具体。不是"效果有待提升"这类空话,而是点名到任务号与机制:"k = 2 facts, single word answers and bag-of-words do not succeed on tasks 3, 4, 5, 7, 8 and 18"。
局限(明文负面发现)
- 合成世界 ≠ 真实语言。这是本文最根本的边界:所有任务都在一个受限的物理模拟器里,词汇是 Mary/John/Daniel/ball/apple/office 这一档,没有任何歧义、噪声、多义性、长尾实体、真实语用。"noiseless"既是优点也是天花板。
- bAbI 已被现代模型"刷穿",诊断价值需要重新校准。本文以 95% 为失败阈值、结论建立在 2015 年的模型能力上。今天用 LLM 做 prompt-based 零样本推理,这些任务的分数已不代表 2015 年的语义——用今天的模型跑 bAbI 得到的分数,不能与论文表格横比,因为评测协议(zero-shot / few-shot / 是否有 CoT)完全不同。论文数值只在其自身协议内有效。
- "人类可达 100%" 是设计意图声明,不是实测。"a human able to read that language can potentially achieve 100% accuracy" 用了 "potentially",论文并未给出人类被试的实测准确率。
- 开源代码与原始数据集不等价。仓库 README 自己写明:"This code is a rewrite of the original code that was used to generate the publicly available dataset at fb.ai/babi. As such, it is not possible to produce exactly the same dataset. However, we have verified that numbers obtained are very similar." —— 仓库生成的复现版与官方原始数据集不完全一致,复现实验的数字不应与原论文表格做逐位对齐。
- 任务 20 的"动机"是标签而非推理。答案
hungry来自模拟器的状态字段,模型只需把状态映射成词;这更接近检索而非因果推断。作者自己在 §3 结尾也承认归纳与演绎的分析"clearly beyond the scope of this work"。 - 论文状态本身仍为 preprint。PDF 页眉标注 "Under review as a conference paper at ICLR 2016";DBLP 条目为
journals/corr/WestonBCM15,arXiv 最后一个版本为 v10(2015-12-31)。arXiv 页面本身未标注任何正式录用 venue。
对工程落地的启发
- 可诊断性设计 > 单一总分。这是本文对工程最直接的启示:一个 QA/RAG 系统的评测集,应当按能力维度正交切分,每个子集只考一件事,并明确声明子集间的依赖关系(bAbI 里任务 9 显式依赖任务 6)。上线前用这套切分跑一遍,失败模式会直接指向要补的是检索、排序、还是推理。
- 合成环境做"冒烟测试",真实数据做"验收"。bAbI 的正确用法是前置门禁而非最终指标:它便宜、可无限生成、失败信号干净,适合放进 CI 流水线做回归测试。真正的能力验收仍需真实语料。
- 难度可参数化 = 抗过拟合评测。bAbI 生成器支持
--path-length、--decoys、--steps、--coreference等旋钮。同一个评测集可以随模型进步不断加难,这是"benchmark 不被一次性刷穿"的关键工程设计——评测集的生命周期应当长于模型的一代。 - "答案 = 单个词或词列表"这个约束值得抄。它把评测从模糊的语义相似度判定,降到确定的对/错,从而让自动化 CI 可用。今天做 RAG/Agent 评测时,同样应当优先设计可自动判定的短答案,把模糊判断留给人工抽检。
- 从失败模式直接反推架构缺口。本文示范的方法是:不要问"我的模型为什么不行",要问"任务 7 需要的是状态累加,而我的架构没有状态变量"。bAbI 中三个正交开关(AM / NG / NL)分别对应三类典型缺口(容量、表示、函数),这个"按缺口分类再逐一补"的框架可以直接迁移到 RAG(检索充分性 / 证据压缩 / 推理链深度)与 Agent(记忆容量 / 状态表示 / 动作选择)的架构评审上。
- 警惕"人工特化特征"陷阱。structured SVM 的教训很实际:手工 feature 在逻辑型判定上确实有效,但会拖累多跳能力。任何以规则/正则/prompt 模板硬编码的领域逻辑,都应被单独隔离并做 A/B,避免它悄悄成为长板掩盖短板。
与同方向工作的关系
- MemNN / End-to-End Memory Networks:本文是 Weston et al. (2014) Memory Networks 的直接后续,附录 A 的三个扩展(AM/NG/NL)在半年后被 Sukhbaatar et al. (2015) 的 MemN2N 发展为端到端可训练的 soft attention 版本——MemN2N 论文明确把本文列为主要对比基准,并在其 Table 1 上报告 bAbI 20 任务的错误率。
- MCTest / aristo / Winograd Schema Challenge:本文将其视为"难解读"的前作,并明确表态接近 Winograd Schema 的"结果易于解读"理念,但强调自己更 self-contained(自带训练集)且更多样。
- 知识库 QA(Fader et al. 2014;Berant et al. 2014;Yao et al. 2014):本文的批评对象——依赖手工 pattern / 大语料统计的浅层 IE 路线,以及高度领域特定的结构化表示方法。
- Neural Turing Machine(Graves et al. 2014)与 bAbI 本身:论文明确把合成数据视为推动 memory-augmented 模型发展的历史手段之一(XOR → 神经网络;circle/ring → 聚类与半监督;合成数据 → NTM 与 MemNN)。
- 下游演进:bAbI 成为 NLP 与 LLM 时代引用最广的合成 QA 基准之一,衍生出 bAbI 的 NLI 变体(
tasksource/babi_nli)、长上下文变体 bAbILong(RMT-team)、以及 GPT-2 在 bAbI 上的微调系列(HF 上多个gpt2-*-babi模型)。也有后续工作(如 AAAI 的 Getting Closer to AI Complete Question Answering)继续沿"合成世界 + 可解释评测"的路线扩展,并指出 bAbI 之后的 QA 数据集普遍缺失问题类型标注这一特性——而这恰恰是 bAbI 自带的。
适合谁读
- 做 NLP 评测 / benchmark 设计的 researcher:本文是"能力分解式评测"这一范式的原型论文,方法论部分(leaf 测试、赛道隔离、负面对比)可直接复用。
- 正在搭建 QA / RAG / Agent 评测体系的工程师:把 bAbI 当作回归测试套件的做法值得抄,生成器的参数化难度设计尤其值得借鉴。
- 做 memory-augmented / attention 架构的研究者:附录 A 的三处改动虽小,但"AM 治多跳、NG 治语序、NL 治逻辑"这个按失败类型归因到架构改动的思路是通用的。
- 关心"合成 benchmark 会不会被刷穿"的人:本文提供了正反两面的样本——设计上的可参数化延长了 benchmark 寿命,但 2015 年的 bAbI 分数在今天已不能横向比较。
- 不推荐:想找 SOTA 数字或新模型技巧的人,本文没有提出新模型,主体是一套数据集与基线。
未完全确认项(集中收纳)
以下条目在本次核查中未能达到可发布的确定性,如实列出而非猜测填补:
- Table 3 的完整单元格数字:来自 PDF 文本层还原,已通过三条独立交叉验证(见上文可信度说明),但未逐格回查官方渲染表格。少数单元格(如任务 5 的 AM/AM+NG 均为 86、任务 14 的 AM+NG+NL 为 99、任务 18 的 AM+NG+NL 为 95)建议以原 PDF 表格为准。
- Table 3 的列序:PDF 表头在文本提取时与正文交错,列映射依据表头语义 + 正文数值反推得出,非官方标注。"MultiTask Training" 列的确切含义(是否为独立多任务训练实验)原文未明确。
- §5 关于任务 17/19 的结论句被截断:原文止于 "it seems those (and indeed more advanced forms of induction and deduction, which we plan to build) require",后续论证未能取得。
- AM(Adaptive Memory)的具体机制:论文正文对该扩展的技术细节描述最为简略,本文关于"自适应决定读多少条记忆"的解释系由其命名与实验效果推断,原文未明确给出完整算法。
- 人类准确率:论文只声明 "potentially 100%",未给出人类被试实测数据。
- 正式 venue:arXiv abs 页无正式录用标注;PDF 页眉为 "Under review as a conference paper at ICLR 2016";Semantic Scholar 的 publicationVenue 字段为 ICLR、year 为 2015。本文按"arXiv preprint,投稿 ICLR 2016"表述。
- 引用数:OpenAlex 记录 669(paper card,OpenAlex 更新 2026-11-03),Semantic Scholar API 记录 1318(2026-11-03 拉取)。两者口径与去重规则不同,跨源不可直接比较,且随时间增长。
- 训练数据规模与评测协议细节:论文表格统一为 "1000 training examples each",但每个任务 train/test 的样本总量、训练轮数、embedding 维度等超参,原文未逐项明确。
- §A.1(建模能力不足的完整论述)与 Table 1/2 中样例的完整呈现:本次抓取受工具级 20,000 字符提取上限与 PDF 二进制不可读的限制,未能逐行核对 §4 Simulation 全文与 §A.1 全文;相关机制描述以 GitHub 官方 README(已 fetch)为主要依据。
来源清单
- 论文卡:
/shared/research-kb/organized/paper_cards/1825-1502-05698.md - arXiv abs 页(v10):https://arxiv.org/abs/1502.05698 (已 fetch,标题/作者/摘要/提交历史 v1–v10)
- arXiv HTML 全文(实验版):https://arxiv.org/html/1502.05698v10 (已 fetch,§1–§3 全文 + Table 1/2 样例)
- 论文 PDF 镜像(ICLR 2016 投稿版全文):https://vkosuri.github.io/assets/pdfs/toy_tasks.pdf (§5 与 Table 3 数值经搜索索引 verbatim 抽取)
- 官方生成器仓库(已 fetch README):https://github.com/facebook/bAbI-tasks → 现 https://github.com/facebookarchive/bAbI-tasks
- Semantic Scholar API(已 fetch):arXiv:1502.05698 → venue/citationCount/authors/abstract
- 交叉参考:Sukhbaatar et al. (2015) End-To-End Memory Networks(NIPS 2015)Table 1、AAAI Getting Closer to AI Complete Question Answering(问题类型标注溯源)
- 写作指引:
knowledge/lessons/lessons-2026-W41.md、lessons-2026-W42.md