Vercy · 可复现研究

结构没有胜过完整的笔记。而去掉它的任何一部分,都胜过了。

目的
确定对于一个人自己的记录,表示形式为读取它们的助手带来了什么,以及结构化表示中的哪一部分承载哪一项能力。
设计
一个合成的人:34 条带有效期区间与来源的事实、7 位联系人、8 次出行、5 组可靠性不等的来源之间的现存冲突、3 份已过期文件与 2 份仍有效的文件。六种表示,全部由同一张事实表生成。43 个题项分七个族,另有披露赛道与变更记录赛道。共 570 次模型调用。分析单位是题项。
主要结果
结构有帮助这一主张没有得到确立。承载全部事实、日期与来源的时序笔记得到 93.4%,结构化维度为 100%,相差三个题项,精确符号检验 p = 0.25。
真正拉开差距的
对结构的每一次消融都是决定性的。去掉有效期区间,历史准确率从 100% 降到 0%,过期判断从 100% 降到 20%,而关于当前状态的问题仍然是 100%。去掉来源,冲突解决从 100% 降到 33%,当前状态问题同样毫发无损。只有带冲突政策的分支能说出自己应用了哪条规则:100% 对 0%。
对上一项研究的更正
可追溯并不是结构的属性。当笔记带有来源标识符时,它们在 96.4% 的回答中引用了这些标识符。上一项基准之所以给散文记为 0%,是因为那份散文没有可引用的标识符,而不是因为它是散文。
结论
对于这种规模的个人记录集合,维护良好的笔记已经接近够用,而结构的价值不在平均答案上。它在于这些字段是逐个承重的:每一个都是某项能力的唯一支撑,缺了它这项能力就会坍塌;而丢掉其中任何一个的表示,会以具体且可预测的方式失败,而不是平缓退化。
93%笔记,事实齐全
100%结构化维度
0.25配对符号检验,p

本页所用术语

术语本研究中的含义
维度描述一个人的那些记录:事实、事实所指向的人与出行、它们的来源,以及解决分歧的规则。
有效期区间某条事实为真的起止日期。区间开放表示至今仍然为真。
来源级别对某类来源的信任程度:文档扫描 1、设备同步 2、邮件 3、本人自述 4。
冲突政策CP-01:当两条记录覆盖同一日期且互相矛盾时,来源级别较低者胜出;同一级别内,记录较晚者胜出。
朴素时新没有来源信息的摘要实际能实现的规则:最近记录下来的值胜出,不论其来源为何。
越界断言用今天生效的值去回答关于过去某个日期的问题。
消融有意去掉某一类字段的分支,用来查明哪一类字段承载哪一项能力。

设计

研究对象是一个合成的人,其记录看起来就像个人助手的记忆:住址、雇主、电话、薪资、身份证件、设备与保修、订阅、健康数据、银行信息和饮食。每条事实都带有它为真的起止日期,以及它的来源,并按该类来源受信任的程度排序。有五个属性各带两条覆盖今天且互相矛盾的记录;三份文件已过期,两份没有。

上一项基准曾被正当地批评:它的散文条件悄悄缺少了结构化条件所拥有的事实。这里每一种表示都由同一张事实表生成,并且每次运行前都会执行一项检查——只要任何一个完整表示缺少了另一个表示所带的某个取值、日期或来源,研究就会失败。这项检查在搭建工具期间就发现了笔记中的七处遗漏,并在第一次调用之前修正。A、B、D 三个分支是完整的;C、E、F 三个分支是各去掉一类字段的消融,并如实标注。

主表

表示形式完整回答准确率95% 置信区间引用了记录越界断言编造上下文
A 笔记93.4%86-10096.4%2.6%5.3%4,664
B 笔记 + 档案摘要93.4%86-10092.9%4.0%5.3%5,242
C 扁平记录消融47.4%31-63-6.6%1.3%2,097
D 维度100.0%100-100100.0%0.0%0.0%10,038
E 去掉来源的维度消融86.8%76-98-5.3%5.3%4,903
F 去掉有效期的维度消融55.3%39-7193.3%0.0%1.3%6,744

主要比较是 A 组对 D 组,也就是两种完整表示。笔记答对了 93.4% 的题项,维度答对 100%。在 38 个可回答题项中,两者在三题上不同,全部对维度有利;精确符号检验给出 p = 0.25。在这组题项上,并没有证明结构化表示比完整笔记更准确;对这一结果的诚实表述是:该主张没有被确立,而不是被推翻。

有三处差异确实经受住了小样本。维度是唯一没有越界断言的分支,也就是它从未用今天的值去回答关于过去日期的问题;它也是唯一从未给出记录中不存在的值的分支。同时它的上下文最长:10,038 字符,而笔记是 4,664 字符——因此无论它换来了什么,代价大约是两倍的上下文。

按问题族

表示形式当前历史冲突过期同名跨多条记录不可回答
A 笔记100.0%100.0%75.0%100.0%100.0%83.3%100.0%
B 笔记 + 档案摘要100.0%100.0%75.0%100.0%100.0%83.3%100.0%
C 扁平记录100.0%0.0%33.3%20.0%100.0%33.3%100.0%
D 维度100.0%100.0%100.0%100.0%100.0%100.0%100.0%
E 去掉来源的维度100.0%100.0%33.3%100.0%100.0%83.3%100.0%
F 去掉有效期的维度100.0%0.0%83.3%20.0%100.0%33.3%100.0%

平均值掩盖了结果的形状。每一种表示在关于当前状态的问题上都完美作答,包括那个只保存当前状态的表示。差异完全集中在需要消融分支所没有的那些字段的族上:历史、冲突与过期。只保存今天为真内容的扁平记录,一道历史问题都答不出来,过期问题五题中只答对一题,并且拒答了 44.7% 的题项。

哪个字段承载哪项能力

每一次消融都配有一个对照族:在那里,被去掉的字段按预测不应造成任何差别。正是这一点,把关于某个字段的主张与关于体量或关于结构本身的主张区分开来。

被去掉的字段类别消融后完整维度p
有效期区间历史问题0.0%100.0%0.00781
有效期区间当前状态问题100.0%100.0%1.0
来源与政策冲突问题33.3%100.0%0.125
来源与政策当前状态问题100.0%100.0%1.0

两项预测都成立,两个对照也都成立。有效期区间是让历史问题变得可回答的前提;没有它,该族的准确率为零,而当前状态的准确率不变。来源是让冲突解决得以运作的前提;没有它,冲突上的准确率下降三分之二,当前状态的准确率同样不变。冲突这一对比只有六个题项,单独看达不到常规阈值,但它的方向与它的对照都如预测所料。

过期、误报与拒答

三份文件已过期,两份没有。这两份仍有效的充当对照:一种让过期变得可见的表示,不应该开始把仍然有效的记录也标为过期。

表示形式过期判断正确误报拒答了本可回答的问题
A 笔记70.0%3.0%0.0%
B 笔记 + 档案摘要60.0%0.0%0.0%
C 扁平记录50.0%0.0%44.7%
D 维度90.0%0.0%0.0%
E 去掉来源的维度90.0%0.0%5.3%
F 去掉有效期的维度60.0%9.1%39.5%

维度在 90% 的试验中正确判断了过期,且没有误报;笔记为 70%,档案摘要为 60%。消融分支在这项指标上看着还行,只是因为它们经常拒答:扁平记录拒答了 44.7% 的可回答题项,去掉有效期区间的分支拒答了 39.5%,而两种完整表示都是 0%。面对自己没有的信息,拒答是正确反应;也正因如此,这些分支的准确率应当读作衡量其表示形式无法表达什么,而不是衡量模型如何推理。

判断什么可以给出

十二项信息与三个请求方:作为最近亲属的当事人姐妹、雇主的人事部门,以及一个未经验证的网页表单。散文形式的制度与分类记录陈述的是同样的规则,仅表示形式不同。

制度的表示形式披露精确率披露召回率决策正确率严重错误
没有制度95.2%58.8%79.2%72 中 1
散文形式的制度100.0%79.4%90.3%72 中 0
分类记录100.0%88.2%94.4%72 中 0

结构化分类会减少严重错误这一预测没有得到支持。两种制度形式都是零:一份简短、写得清楚的散文制度就足够了。结构化形式带来的是另一件事——它更少地作出不必要的拒绝,交付了请求方有权获得内容的 88.2%,而散文为 79.4%,两者精确率都是 100%。整条赛道上唯一一次严重错误来自完全没有制度的条件,它把一项健康细节交给了雇主。这与上一项研究不同,那里散文制度泄露了两次;这里的制度更短、覆盖的情形更少,这是最可能的原因。

记录一次变更

有六条新信息到来:一次搬家、一本换发的护照、一项已取消的订阅、一个新号码、一次实验室更正,以及一份续保的保单。智能体必须在不破坏此前为真内容的前提下把每一条记录下来。

表示形式新值正确起始日期正确关闭了正确的记录结束日期正确保留了历史四项全对
A 笔记100.0%83.3%0.0%100.0%100.0%0.0%
C 扁平记录100.0%100.0%0.0%75.0%100.0%0.0%
D 维度100.0%100.0%75.0%75.0%100.0%66.7%

每个分支都给出了正确的新值,也都声称保留了历史。只有维度能说出自己所替代的那条记录,占 75% 的场景;也只有它把更新的四个部分全部做对,占 66.7%。笔记与扁平记录在那一列得零分,是因为它们的记录没有可指名的标识符——这是表示形式的属性,而不是模型推理的属性:当没有东西可以按名称去替代时,更新就无法表达为替代。即使是维度,也只有三分之二的情况把整次更新做对,因此这是一项表示形式使其成为可能、但并不保证的能力。

结论

现在有两项研究在同一个令人不适的点上取得一致:就平均准确率而言,一份完整且维护良好的非结构化记录很难被超越。这项研究补充的是:差异究竟落在哪里。结构中的每一类字段都是某项能力的唯一支撑,而当它缺失时,失败不是平缓下滑,而是在该字段所服务的那些问题上直接归零。一个只保存当前状态的个人助手,能回答关于今天的任何问题,却答不出一个关于去年的问题。这才是数据支持的主张。

运行过程中发现并修正的两个缺陷

来源度量最初只接受来源标识符。在那些同时带有事实标识符的分支中,模型引用的是事实——这同样毫不含糊地回答了所提的问题,于是该度量反而惩罚了标识符更多的分支;它给维度记为 71.4%,而修正后的度量给出 100%。另外,拒答会在记录过期判断之前就从评分器返回,于是消融分支只在它们碰巧没有拒答的两三个题项上被评分。这两处都是通过阅读原始回答而非汇总发现的,都已修正,并且都在保存下来的回答上重新计算,没有重复任何一次调用。原始文件未经修改地公开,工具中所用的就是修正后的评分器。

这项研究没有说明什么

一个人工撰写的对象、一个模型、工具全程关闭、34 条事实。这种规模的维度是个人助手记忆的量级,而不是文档语料的量级,这里的任何结论都不能迁移到大型集合。基准答案来自结构化分支所展示的同一张事实表,因此本研究衡量的是对所给记录的检索与正确应用,而不是对一个人何为真实的发现。维度同时也是最长的上下文,扁平记录是最短的;这里没有把长度与内容分开的填充对照,而上一项研究是有的。归给摘要分支与扁平分支的那条规则——最近记录的值胜出——是关于这类表示如何构建的建模假设。

打开 result.json阅读方法(EN)维度模型六个渲染器原始运行

材料

整套工具完整公开。dimension.py 保存研究对象、每条带区间与来源的事实,以及基准答案引擎。views.py 由这一张表生成全部六种表示,并包含完整性检查。items.py 保存 43 个题项与两条赛道,run.py 是运行器与评分器,analyze.py 在题项层面完成统计。每一次原始运行都未经编辑地公开:主表披露变更记录