封面

  • 日期:2026-10-26
  • 适合读者:研究生、科研新人、工程型研究者
  • 实验范围:100 条已观察开发查询;固定 50 候选;300 条确认查询继续留出。

摘要

把旧排名与交叉编码器排名相加,平均分确实上升了。但相关证据前移没有改善四条探针,融合也损害了部分原本排对的查询。此时最容易写出的故事是“总体有效,少数例外”;最值得完成的工作却是给出不确定性、反例和下一次检验的边界。本文重新运行真实模型,完整保存五千对评分,按共享证据文档分组计算配对区间,并冻结最终确认分析。已有局部增益,因此标题不再强说“新方法没有赢”;但开发集增益也不能提前兑现成确认集成功。

复现价值:从一个均值回到一个问题

SciFact 原论文研究科学声明与证据摘要的关系,并提供支持、反驳及证据句标注。[1] 本项目使用 BEIR 导出的检索数据,只评价相关文档是否靠前,不能把 nDCG 上升说成科学事实判断变准确。nDCG 是归一化折损累积增益:相关文档越靠前,奖励越高,再除以理想排序的奖励。[2]

前篇完成了“证据前移×排名融合”的四格对照。本篇新增的问题是:同一固定方法的增益,对重采样单位和个别证据组有多敏感?改变的是统计单位,冻结的是查询、语料、候选、模型、文本拼接和融合常数。我们仍在已经反复观察的开发数据上工作;这既不是新测试集,也不是对全 SciFact 基准的重新排名。

核心思想与公式:先配对,再保持相关结构

交叉编码器把查询和文档一起送入模型,输出一个相关性分数,简称 CE。本次沿用 MS MARCO 训练的 MiniLM 六层模型;模型卡描述训练任务及调用方式,其榜单成绩和 GPU 吞吐量均不是本次测量。[3] 候选的原始顺序来自既有倒数排名融合 RRF。固定融合给两个排名等权投票:[4]

s(q,d)=160+r0(q,d)+160+r1(q,d).s(q,d)=\frac{1}{60+r_0(q,d)}+\frac{1}{60+r_1(q,d)}.

这里 qq 是查询,dd 是其五十个候选之一,r0r_0 和 r1r_1 分别是原 RRF 与 CE 内从一开始的名次。两个名次来自同一候选集;没有扩大召回,也没有增加第二次 CE 推理。分数相同时按文档字符串编号降序排列,保留实际浮点求和规则。

我们关心的是同一查询的配对差,而非两个无关均值的差:

Δq=Mblend(q)−MCE(q),Δˉ=1n∑q=1nΔq.\Delta_q=M_{\mathrm{blend}}(q)-M_{\mathrm{CE}}(q),\qquad \bar\Delta=\frac{1}{n}\sum_{q=1}^{n}\Delta_q.

MM 表示该查询的 nDCG@10,n=100n=100。一条查询无论有多少候选,仍只贡献一个差值。把五千个文档对当五千个独立样本,会把模型计算量误当成统计证据量。

共享同一相关文档的声明可能相互依赖。我们用正相关性标注建立查询图:两条查询共享至少一篇相关文档就连接,沿连接取完整连通分量,得到九十四组,其中六组各两条、八十八组各一条。即使相关文档没进候选,也参与分组。这一规则只用标注编号,不看方法得分;它仍只是依赖结构的代理,无法保证不同组之间完全独立。

Δˉ∗(b)=∑g∈Sb∑q∈gΔq∑g∈Sb∣g∣.\bar\Delta^{*(b)}=\frac{\sum_{g\in S_b}\sum_{q\in g}\Delta_q}{\sum_{g\in S_b}|g|}.

SbS_b 是第 bb 次从九十四组中有放回抽取九十四次得到的组列表,重复抽中的组按次数计入;∣g∣|g| 是组内查询数。分母随抽样变化,保证估计对象仍是查询加权均值,不能改成“每组均值再平均”。执行一万次,取百分之二点五和九十七点五分位数,采用线性插值。另做逐查询重采样作为敏感性对照。SciPy 文档说明配对与百分位方法;本篇分组算法是独立教学实现,没有照搬其默认 BCa 方法。[5]

配对区间与失败审计流程

图为概念流程,未画测量数值;确认集与当前计算断开。实际抽样索引、六万条差值复本和区间保存在源码结果文件中。

官方代码阅读路线

先读固定版本 BEIR 的 Rerank.rerank:它如何选择候选、拼接标题和摘要、构造模型输入,再把分数写回原文档编号。随后读 Sentence Transformers 的 smart_batching_collate_text_only 与 predict,核对联合截断、批次和激活函数。最后看 BEIR 的评测入口,确认指标计算与排序约定。[6]

本地 official_rerank.py 与官方文件字节一致,安装的 CrossEncoder 与固定源码经换行规范化后一致。输入张量抽查为 [2,512][2,512],最后隐状态为 [2,512,384][2,512,384],输出为 [2,1][2,1];三个维度分别对应批次、序列位置与隐藏宽度,最后一个一表示每对一个标量。逐对原始 logit、词元数量和对应编号都保留,不能只检查最终均值“看起来相近”。

最小实验与评测协议

使用五千一百八十三篇完整语料、既有一百条开发查询及每条五十个冻结候选。模型和分词器固定到 233902d25c440f23af6f7d6e94d2946bac0bee0a,联合长度五百一十二,批量十六,CPU 四线程、单精度、随机种子一百一十。数据下载包没有虚构 Git 版本,以下载地址、文件版本信息及 SHA-256 标识;全部身份见锁文件。

先做五条查询乘十候选试跑,再执行正式五千对推理。正式模型推理实测 131.878 秒,基础流水线 136.153 秒,基础进程峰值驻留内存约 892 MiB;统计报告另耗时约 0.961 秒。峰值记录在统计阶段之前,因此不冒称整个统计阶段峰值。四对辅助形状检查输入的前向计算另记,不混入五千对预算。缓存哈希校验通过,下载时间和原始召回成本本次未重测。

所有五千个新 CE 分数与前次保存结果完全一致。三种方法共用候选,CE 与融合共用一次模型评分;纯 RRF 不承担新增 CE 成本,不能把三者说成总成本相等。分组规则在本次推理及区间计算前写入协议,但此前已经见过开发结果,仍属于探索性分析。

结果:区间不能替代确认评测

三种方法平均 nDCG@10 为 RRF 0.670906、CE 0.669133、融合 0.702521。下面是本次实际复算,区间只描述当前开发样本的重采样敏感性。

配对比较 平均差 证据组百分位 95% 区间 逐查询敏感性区间
融合减 CE 0.033388 [0.000883, 0.066319] [0.001312, 0.068048]
融合减 RRF 0.031614 [0.002692, 0.062390] [0.004802, 0.059444]
CE 减 RRF -0.001774 [-0.049319, 0.044971] [-0.049320, 0.043383]

主比较有二十胜、六十六平、十四负。删除任意一个证据组后,其均值落在 0.027500 至 0.037854,这个范围是影响诊断,不是另一条置信区间。两种重采样区间接近,不代表相关性已经解决;这里绝大多数组本来就是单条查询。

融合区间下界略高于零,却仍覆盖预先登记的 0.01 实用门槛。更关键的是,这些查询曾用于错误分析和提出方案:重采样只重新组合已见样本,不会清除方法选择偏差。不能把“开发区间不跨零”写成“已证明泛化有效”,也不能从接近零的下界推出稳定胜利。原登记要求在确认集检验平均增益门槛,本文不擅自把它改成新的显著性规则。

还要区分两种重复:固定模型重新推理,主要检查运行是否可重复;抽样重算区间,主要检查当前样本组成怎样影响均值。本次没有重新训练模型,也没有独立的新数据重复,因此不能估计训练随机性或跨领域变化。表中三个比较使用同一批抽样索引,保持方法之间的配对关系;它们不是三次独立证据。我们没有从中挑最有利的一列作为主结论。

全部实验账本与失败排查

诊断阶段发现十八条 CE 退步中十七条没有相关候选截断,削弱了“退步主要因为相关文本被截掉”的简单解释。四条证据移位探针中,前移减后移的长组均值为 -0.184535,短组为 -0.100127;身份对照分数完全相同。四格实验又显示,前移在无融合和有融合背景下均为负,正交互 0.050063 不能解释为联合方案最好。原有材料审核已完成,旧结果文件中的待审字样属于历史快照,确认记录单独保留。

等预算比较留下了正结果,也留下代价:原十八条 CE 退步中十七条被融合改善,但原二十条 CE 改善中十三条被融合削弱。按预定“融合减 CE 最低三条”规则,查询 242 的首篇相关文档从 CE 第一退到融合第七,nDCG 下降 0.408765;1263、481 都从第一退到第二,各下降 0.369070。242 有多篇相关文档,首个相关名次不能替代完整 nDCG。这里描述的是排名事实,不据此编造模型理解了或误解了哪句医学语义。

排查依次检查输入哈希、查询文档映射、同分规则和词元审计,再核对统计分组。独立标准库脚本重算指标、全部复本和区间端点;七类排名损坏与五类统计损坏均被拒绝。首次匿名资料下载受网络沙箱限制,随后授权只读重试成功,失败记录保留。没有为了更漂亮的区间删除查询、换种子或挑选另一种抽样方式。

可检验的研究问题与停止规则

现在仍开放的问题是:固定融合在未评分的三百条确认查询上能否达到平均增益至少 0.01,同时相对纯 RRF 有何代价?下一篇沿用模型、文本、候选预算、常数和排序规则;分组仍按共享正相关文档的连通关系,在合并模型分数前生成分组清单。一万次重采样,确认分析种子固定为一百一十一,同时报告查询敏感性区间。

若确认平均增益不足门槛,就报告不支持该实用假设;无论结果如何,均报告区间是否覆盖零及门槛,不回头调权重再测同一确认集。证据前移使用金标准证据位置,属于诊断性上界探针,不进入可部署候选。模型域差异、标注遗漏和未观察主题依赖仍可能影响结果,目前没有实验把这些原因逐一分离。

源码与复现入口

本篇完整源码已公开:固定提交目录、运行说明 README、源码地图 SOURCE_MAP。已匿名下载该版本,核对一百零一个文件与本地归档一致,并从公开副本通过真实模型试跑与独立复算。

环境安装与缓存准备见随包 README。准备后最小命令为 python run.py --cache ./cache --out fresh-smoke --smoke,会执行真实五十对模型评分并产出逐对结果、配对指标、分组及区间。去掉试跑参数则执行完整的一百条开发查询。SOURCE_MAP.md 对应公式、官方函数、固定提交、许可证和本地改动;独立审计入口不依赖模型权重。归档包含全部必要自写模块,外部大资源通过固定身份下载,不依赖作者机器路径。

总结

这组实验支持继续检验固定融合,也给出了清楚的反例:保护旧排名会牺牲部分新排序优势,证据前移也没有按直觉改善探针。可复查的负结果帮助我们缩小解释范围,而不会自动证明另一种机制。下一步最有价值的动作已经确定:冻结方案,完成一次确认评测,接受它可能推翻开发阶段的乐观判断。

参考资料

检索与实际访问日期:2026-10-26。官方源码提交及文件哈希见源码地图;论文与方法背景不代替本篇运行证据。

  1. David Wadden 等,2020,EMNLP:Fact or Fiction: Verifying Scientific Claims。
  2. Nandan Thakur、Nils Reimers、Andreas Rücklé、Abhishek Srivastava、Iryna Gurevych,2021,arXiv v4:BEIR: A Heterogenous Benchmark for Zero-shot Evaluation of Information Retrieval Models。
  3. Sentence Transformers:MiniLM-L6-v2 固定版本模型卡。
  4. Gordon V. Cormack、Charles L. A. Clarke、Stefan Büttcher,2009,SIGIR:Reciprocal Rank Fusion outperforms Condorcet and individual Rank Learning Methods。
  5. SciPy 开发者:1.13.1 bootstrap 配对与百分位方法文档。
  6. BEIR 作者:固定版本重排实现;Sentence Transformers 作者:固定版本 CrossEncoder。

作者作品推广

以下是作者自有产品推广。除了科研写作,我也独立开发让日常更有条理的小工具,欢迎按自己的需要了解:

  • 日常收支小记:记录日常收支,安排预算与储蓄目标,给每一笔钱留下一份清楚的记录。在 App Store 了解。
  • 一事微光:根据当下的时间和精力选择小行动,记录完成后的感受,给日常行动与复盘留一点空间。在 App Store 了解。

更多技术文章和个人作品,欢迎访问作者个人网站。这两款作品独立于本文科研实验,不代表论文作者或研究机构的推荐。