信息速览
INFOBOX — MedNLI 一屏速览
维度 内容 本质 临床域自然语言推理(NLI)基准:从 MIMIC-III 出院小结派生的 premise-hypothesis 句对,标注三分类推理关系——不是抽取集、不是问答集 团队 Maximilian Romanov(UMass Lowell)+ Amil Shivade(IBM Research Almaden),两作者;正式标注由 4 名临床医生完成 论文 EMNLP 2018 主会,Anthology ID D18-1187(doi:10.18653/v1/D18-1187, pp.1586-1596);预印本 arXiv:1808.06752 数据 14,049 句对 / 4,683 唯一 premise;train 11,232 / dev 1,395 / test 1,422;jsonl 三文件 来源 MIMIC-III NOTEEVENTS 出院小结的 Past Medical History 节单句(LingPipe 切分) 标签 entailment(出院史支持)/ contradiction(出院史矛盾)/ neutral(无法判定)——继承 SNLI 标签语义 标注 试点:100 premise × 2 名 board-certified 影像科医生 → 552 对、Cohen’s κ=0.78;正式集:单注释 规格数字 premise 平均 20.0 tokens(最长 202);hypothesis 平均 5.8 tokens(最长 20) 核心发现 通 SNLI 模型直接迁移全负增益;fastText[MIMIC-III] 嵌入全正;UMLS/SNOMED retrofitting 全负;知识引导注意力正增益且 60% 来自 neutral 基线 ESIM 73.1%(test acc)为论文最佳;premise-oblivious 伪基线 61.9 F1 量化数据偏置 BERT 时代 Clinical-Longformer 论文口径:ClinicalBERT 0.444 / Clinical-Longformer 0.484(F1)——与论文 acc 口径不可直接对表(坑 8) 后继 MEDIQA 2019(RQE 子任务 405 对)、RadNLI(2021)、RuMedNLI(2022)——均 PhysioNet 官方收录 获取 PhysioNet credentialed access:MIMIC-III 凭证 + CITI 培训 + 签署 DUA 即可,v1.0.0(2019-10-01 发布,DOI 10.13026/C2RS98) 库内互链 MIMIC-III(上游)、MIMIC-IV-Note、MIMIC-CXR、i2b2-n2c2、UMLS、CBLUE、CLICR 等 8 个条目
MedNLI 是一个"把通用 NLI 试金石搬进病历室"的数据集工程:它不发明新任务,而是把斯坦福 SNLI 建立的 premise-hypothesis 三分类范式原样移植到电子健康记录上——premise 取自 MIMIC-III 出院小结的病史陈述句,hypothesis 由临床医生人工撰写,标签回答一个问题:这段出院史能否支持那句临床断言。14,049 个句对规模不大,却成为临床 NLP 迁移学习研究中被引用最广的评测锚点之一:任何想在临床文本上做推理的模型,都绕不开"先在 SNLI/MultiNLI 学,再到 MedNLI 验"这条路线;也正因为它的存在,"通用语言推理能力迁移到临床域会衰减多少"第一次有了可测量的答案。
导语读法三则:
- 只想下数据:直奔 §6 获取与许可——凭证制但门槛低,MIMIC-III 凭证持有者加签一份 DUA 即可,无额外审批。
- 关心标注质量:直奔 §3 注释流水线——κ=0.78 只属于 552 对的试点,正式集是单注释,引用时别越界(坑 4)。
- 要在 MedNLI 上报分数:直奔 §4 与 §5——先弄清 acc 口径与 F1 口径不可互相对表(坑 8),再看伪基线 61.9 F1 校准你的预期。
§0 导读:这个数据集解决什么问题
自然语言推理(NLI)是语言理解的标准试金石:给一个前提(premise)和一个假设(hypothesis),判断前者是否蕴含、矛盾或无法推定后者。SNLI(2015)与 MultiNLI(2017)用数十万规模的众包标注把这一任务做成了通用模型的必修课,但它们的语料来自图文说明与电话对话——与临床语言的距离是双重的:临床文本充满缩写、数值、去标识化伪迹和高度专业的前提知识;临床推理的容错要求又远高于日常对话。模型在 MultiNLI 上拿到的 86% 准确率,不能自动兑换成"读懂出院小结"的能力——2018 年之前,这句话只是直觉,MedNLI 让它变成了可以画在坐标轴上的事实。
MedNLI 的回答分三层。第一层是数据:14,049 个句对、4,683 个唯一 premise,全部派生自 MIMIC-III 出院小结的 Past Medical History 节——这一节以陈述式病史列举为主,句子自包含、时间锚定清晰,是病历文本中最接近"命题"的原料。第二层是方法:先由两名 board-certified 影像科医生在 100 个 premise 的试点上双标,测得 Cohen’s κ=0.78,证明任务在临床域有可接受的标注一致性;再由 4 名临床医生分片完成正式集单注释。第三层是诊断:论文用五组基线把"迁移衰减"定量化——直接从 SNLI 迁移的模型全军覆没(无一超过域内 BOW),领域内词嵌入全面涨分,而把 UMLS/SNOMED-CT 术语知识直接"焊"进词向量反而全线下跌;唯一稳健的知识注入方式是注意力引导,且其收益的 60% 集中在最难的 neutral 类。这组发现至今仍是临床 NLP 方法选型的经典引证。
§0 读法三则:
- 这个条目是"数据集+基准论文+生态起点"三合一:本体是 14,049 个标注句对,论文贡献是迁移学习的定量诊断,生态遗产是 RadNLI/RuMedNLI/MEDIQA 一支临床 NLI 家族——三者价值不同,引用时先分清。
- 全文统计数字均出自论文正文与表格、PhysioNet 官方页面;正文与摘要之间的总量漂移(14,049 vs 14,042)已在坑 2 存照,BERT 时代的 F1 口径数字与论文 acc 口径不可对表已在坑 8 存照。
- 检索 ACL Anthology 时若拿 P18-1104 当 MedNLI 会拿到一篇无关论文(MojiTalk)——正确 ID 是 D18-1187(坑 1)。
相邻概念辨析(检索 MedNLI 时最常撞见的四个邻居):
| 名称 | 与 MedNLI 的关系 | 一句话区分 |
|---|---|---|
| SNLI / MultiNLI | 通用域范式亲代与迁移来源 | 语料是图像说明与电话对话,无临床内容 |
| RadNLI | 放射报告域子代 | premise 换成 MIMIC-CXR 报告句,规模更小 |
| RuMedNLI | 俄语临床子代 | 语言不同、范式相同 |
| MEDIQA RQE | 问题蕴含子任务 | 对象是问题对而非病历句对 |
§1 数据集速览:十问十答
全文导航地图(按读者意图分流,行号以本条目结构为准):
| 你是谁 | 最短路径 | 可跳过 |
|---|---|---|
| 只想下数据跑起来 | §6 → §5.4 代码 → §2.10 自查清单 | §3、§7、§8 |
| 要在 MedNLI 上报分数 | §5 全章 → §4.6 统计卫生 → 附录 K 模板 | §6.4、§7 |
| 评估标注质量/设计标注 | §3 全章 → §2.8 经济账 → §8.1 | §5 |
| 引用这篇文献 | §10 避坑清单 → 附录 F BibTeX | 其余全部 |
| 做数据集综述/生态研究 | §2.8 量级坐标 → §7 → §9 → 附录 H | §3、§5.5 |
| 排查引用事故 | §10 + 附录 G 对照表 | 其余全部 |
Q1:MedNLI 的"14,049"指什么?
标注完成的 premise-hypothesis 句对总数,不是患者数、也不是唯一句子数。其中唯一 premise 4,683 个——每个 premise 平均衍生约 3 条 hypothesis;唯一患者数论文未披露(premise 源自 MIMIC-III 出院小结,但论文未报告覆盖的患者规模)。
Q2:premise 句子从哪里来?
MIMIC-III(Medical Information Mart for Intensive Care III)NOTEEVENTS 表的出院小结(discharge summary),取 Past Medical History(既往史)节的句子,用 LingPipe 做句子切分。既往史节句子以"高血压、糖尿病、冠心病"式列举与"患者于某年确诊某病"式陈述为主,命题密度高、上下文依赖低。
Q3:hypothesis 是谁写的、怎么写的?
临床医生人工撰写。标注流程基于 SNLI 的"图文对"改造为"病历句对":注释员读一个 premise,按任务要求分别写出必然为真(entailment)、必然为假(contradiction)、真假无法判定(neutral)三类 hypothesis。写入 JSONL 时与 SNLI 字段结构对齐(gold_label、sentence1、sentence2 等),以便通用 NLI 训练代码零改动加载。
Q4:标注质量有保证吗?
分两层回答。试点阶段:2 名 board-certified 影像科医生对 100 个 premise 独立双标,产生 552 对,Cohen’s κ=0.78——这是论文里唯一的一致性数字,主分歧点在"确定属实"与"可能属实"的边界上。正式阶段:4 名临床医生分片单注释,约 6 周完成,没有逐对双标。所以 κ=0.78 不能外推为全库质量背书(坑 4)。
Q5:三个标签的语义是什么?
继承 SNLI 范式并临床化:entailment = 出院史明确支持 hypothesis(如既往史列"2 型糖尿病",hypothesis 为"患者有糖尿病史");contradiction = 出院史明确否定(如既往史无"糖尿病"且病历表述排除,hypothesis 为"患者有糖尿病史");neutral = 出院史无法判定(既往史只列主诉相关条目,hypothesis 关乎未记录的疾病)。neutral 是公认最难类。
Q6:数据怎么切分?
train 11,232 / dev 1,395 / test 1,422,按官方 jsonl 文件边界切分。注意同一 premise 的多条 hypothesis 可能跨 split 分布——句对级随机加载器会引入上下文泄漏;论文与后继工作默认按官方文件边界使用。
Q7:jsonl 文件里除了文本还有什么?
沿袭 SNLI/MultiNLI 的字段惯例:pairID、gold_label、sentence1/sentence2(premise/hypothesis)、sentence1_binary_parse/sentence2_binary_parse(Stanford parser 输出的二元句法树字符串)。句法树字段对纯文本任务无用,但用朴素 JSON 解析时别把树字符串误当文本列(坑 9 相关细节见 §2.4)。
Q8:论文的基线成绩是什么水平?
test acc:Random 33.3%;Feature-based 51.9%;BOW(词袋)70.2%;InferSent 73.5%;ESIM 73.1%(dev 上 76.0/74.4 反超 test)。另一条关键基线是 premise-oblivious 分类器(不看 premise 只看 hypothesis)拿到 61.9 F1——说明仅凭 hypothesis 的先验分布就能走很远,评测解读必须带这条伪基线。
Q9:BERT 时代 MedNLI 上的成绩怎么看?
后续论文(如 Clinical-Longformer, arXiv:2201.11838)以 F1 口径报告:BERT 0.293 / BioBERT 0.324 / ClinicalBERT 0.444 / Clinical-BigBird 0.480 / Clinical-Longformer 0.484。另一些综述转引过约 82% acc 的数字。F1 与 acc 两套口径不可互相对表,引用时必须注明出处与指标(坑 8)。
Q10:为什么它对 AI-Ready 重要?
MedNLI 是"凭证制但不设额外门槛"的样本:PhysioNet credentialed access 意味着签 DUA 即得、无需逐项审批,数据结构(jsonl)开箱即训;其局限在语义层——单注释、伪迹残留、单一章节来源。它示范了敏感临床文本"合规开放"的标准姿势,这个姿势后来被 RadNLI、RuMedNLI 直接沿用。
§2 数据构成与规格
2.1 规模、切分与来源构成
MedNLI 的总量是三层嵌套的数字结构,检索者最容易在这里混淆:
| 层级 | 数量 | 说明 |
|---|---|---|
| 句对总数 | 14,049 | 官方口径(arXiv 摘要与 PhysioNet 页面另有 14,042 漂移,坑 2) |
| 唯一 premise | 4,683 | 源自 MIMIC-III 出院小结 Past Medical History 节的单句 |
| 平均派生比 | ≈3.0 hypothesis/premise | 同一 premise 衍生多条不同标签的 hypothesis |
官方三切分(jsonl 文件边界即切分边界):
| split | 文件名 | 句对数 |
|---|---|---|
| train | mli_train_v1.jsonl | 11,232 |
| dev | mli_dev_v1.jsonl | 1,395 |
| test | mli_test_v1.jsonl | 1,422 |
三段合计 14,049。premise 与 split 的关系是使用中最容易被忽视的坑:一个 premise 衍生的多条 hypothesis 并不保证落在同一 split 内,逐对随机 shuffle 的训练代码会把同一病历句子的信息同时摊进训练与测试,制造上下文泄漏。论文与后继工作默认直接按官方文件加载(§5.4 有代码骨架),自行重切分前必须意识到这一点。
来源构成上,MedNLI 的语料池是单一章节:MIMIC-III NOTEEVENTS 表中类别为 discharge summary 的报告之 Past Medical History 节。选择这一节的理由在论文中有明确交代——既往史节以条目式病史列举为主,句子自包含、命题清晰,脱离上下文仍可判定真值,这恰好是 NLI 标注的前提条件。代价是文体覆盖窄:病程记录、影像报告、手术记录等其余临床文体不在语料池内,MedNLI 的结论向这些文体外推时需要谨慎。
MIMIC-III 具体小版本在论文与 PhysioNet 页面之间存在 v1.3/v1.4 的表述漂移(坑 6);MedNLI 本体自 v1.0.0 后未更新,而 MIMIC-III 主库持续演进——若需精确溯源到源句子,应以你申请 MIMIC-III 时实际获得的版本为准,并注意 NOTEEVENTS 在 MIMIC-IV 中已被拆分为 discharge 与 radiology 两模块(对应库内 mimic-iv-note 条目)。
2.2 句长与文本规格
论文 Table 2 给出的文本规格(token 口径):
| 维度 | 平均长度 | 最大长度 |
|---|---|---|
| premise | 20.0 tokens | 202 tokens |
| hypothesis | 5.8 tokens | 20 tokens |
这组数字决定了建模方式的两个现实约束。其一,premise 最长 202 tokens 意味着早期 CNN/LSTM 时代的截断策略(如截到 50 tokens)会切掉长尾病例句;而 hypothesis 极短(平均不到 6 个词),单独作为输入几乎不携带推理所需信息——这正是 premise-oblivious 伪基线仍有 61.9 F1 之外,模型真正进步必须依赖 premise 交互的原因。其二,与 SNLI 的图像描述句(平均约 14 tokens)相比,MedNLI premise 更长且含大量数字、缩写与去标识化占位符,通用域预训练词表对这类 token 的覆盖稀疏,这是词嵌入实验(§4.3)的直接动机。
2.3 标签体系与分布
三分类标签直接继承 SNLI 的语义框架,并在标注指南中做了临床化重述:
| 标签 | 语义(SNLI 原义) | 语义(MedNLI 临床化) | 示例 |
|---|---|---|---|
| entailment | premise 成立则 hypothesis 必真 | 出院史明确支持该临床断言 | 既往史列"2 型糖尿病" → “患者有糖尿病史” |
| contradiction | premise 成立则 hypothesis 必假 | 出院史与该断言直接冲突 | 既往史明示无恶性肿瘤断言为假 → “患者有转移性肿瘤” |
| neutral | premise 不提供足够证据 | 出院史无法判定(既不支持也不否定) | 既往史未提及手术史 → “患者做过阑尾切除术” |
三标签在训练集中均有足量样本,论文未以标签分布不平衡作为方法设计的主矛盾——真正的分布问题是难度分布:在误差分析(§3.5)与知识注入实验(§4.4)中,neutral 一致表现为最难类;knowledge-directed attention 的增益有 60% 来自 neutral 类。评估时若只看宏平均,会掩盖这一结构性困难。
另一个与分布相关的使用须知:MedNLI 标签判定的是"出院史文本是否支持",不是"临床事实是否为真"。一个 neutral 标签可能对应"病历未记录"而非"临床上不存在"——把 MedNLI 输出直接当临床事实校验器用,会犯语义层级的错误。
2.4 jsonl 文件与字段规格
三个 jsonl 文件沿袭 SNLI 工具链的字段命名,每行一个 JSON 对象。核心字段:
| 字段 | 含义 | 使用建议 |
|---|---|---|
| pairID | 句对唯一标识 | 主键 |
| gold_label | entailment / contradiction / neutral | 目标变量 |
| sentence1 | premise(出院史句子) | 输入 A |
| sentence2 | hypothesis(人工撰写) | 输入 B |
| sentence1_binary_parse / sentence2_binary_parse | Stanford parser 二元句法树字符串 | 一般不用 |
| caption / storyid / sentence1_annotation 等谱系字段 | SNLI 管线遗留元数据 | 忽略 |
两个工程注意点。第一,句法树字段是嵌套括号字符串,用 pandas.read_json 或逐行 json.loads 加载没有问题,但把"所有字符串列" indiscriminate 拼接成文本输入会把树结构噪声带进语料(坑 9 的工程面);建议加载后显式只保留 sentence1/sentence2/gold_label/pairID 四列。第二,文件名中的 _v1 后缀对应数据版本 v1.0.0,PhysioNet 自 2019-10-01 发布后未发布过 v2——若在其他镜像看到不同版本号的文件,先核对行数(11,232/1,395/1,422)再使用。
2.5 与 SNLI/MultiNLI 的结构对照
MedNLI 的设计声明之一就是"与 SNLI 字段级兼容",这是它成为迁移学习枢纽的工程基础:
| 维度 | SNLI | MultiNLI | MedNLI |
|---|---|---|---|
| 规模 | 570k 句对 | 393k 句对 | 14k 句对 |
| premise 来源 | 图像说明(众包) | 电话对话转录 | 出院小结病史节 |
| hypothesis 来源 | 众包(看图撰写) | 众包 | 临床医生 |
| 标签集 | 3 类(同左) | 3 类 + genre 标注 | 3 类 |
| 标注者资质 | 未要求医学背景 | 未要求 | 试点双标为 board-certified 医生 |
| 一致性度量 | κ=0.90(试点) | 88.4% 一致率 | κ=0.78(试点 552 对) |
| 文件格式 | jsonl(文本/树字段) | jsonl(同左) | jsonl(同左) |
对照可见两个结构性事实:规模上 MedNLI 比通用域小两个数量级,单独训不出强模型,天然定位为迁移目标而非预训练语料;一致性上 0.78 低于通用域的 0.88-0.90,差距的主要来源在 neutral 边界(试点主分歧即"Definitely true vs Maybe true"),这与其后所有误差分析的结论一致。
2.6 伪迹与去标识化残留
premise 继承了 MIMIC-III 的去标识化处理(HIPAA Safe Harbor 框架),检索者会在文本中遇到三类系统性伪迹:
- 占位符替换:人名、地名、机构名、电话等被
[* *]样式方括号占位符替换;句法上这些占位符仍占一个名词位置,模型需要学会"忽略但不破坏句法"。 - 日期偏移与舍入:真实日期被随机偏移、年龄被舍入(MIMIC-III 的著名口径是年龄统一偏移到 80+ 区间的三位数),因此 premise 中的"87 year old"等表述不是真实年龄,任何基于年龄的推理标签都建立在偏移后的数字上。
- 断句伪迹:LingPipe 切分偶有把列表项切开的情形,个别 premise 以不完整句法起始——试点标注时注释员已遇到并按"以文本表面为准"的规则处理。
这些伪迹是 MIMIC 家族数据集的共性(库内 mimiciii、mimic-iv-note 条目同源同坑),但 MedNLI 的特殊性在于:伪迹直接参与标签判定——一条 contradiction 标签可能就建立在偏移后的日期差之上。复现论文或做误差分析时,应把伪迹当作语料的正式组成部分而非待清洗噪声。
2.7 MIMIC 家族文本谱系:MedNLI 在文书生态中的位置
MedNLI 不是 MIMIC 文书利用的孤例,把它放回文书谱系才能看清选材逻辑:
| 文书资源 | 语料对象 | 任务形态 | 与 MedNLI 的关系 |
|---|---|---|---|
| MedNLI | 出院小结 Past Medical History 节单句 | 句对三分类推理 | 本体 |
| i2b2/n2c2 系列挑战赛 | 病程记录/出院小结全文 | NER、关系、断言检测 | 共享任务谱系;断言检测(assertion)与 NLI 的 neutral 判定同源 |
| MIMIC-CXR | 放射报告(findings/impression 节) | 报告生成、RadNLI 派生 | 文体平行:报告句与病史句的命题密度相近 |
| MIMIC-IV-Note | 出院小结 + 放射报告(模块拆分) | 现代版文书语料 | MedNLI 源表 NOTEEVENTS 的继任者 |
谱系视角的两个推论。其一,MedNLI 选 Past Medical History 节而非全文,是与 NLI 任务形态强耦合的选择:推理标注需要自包含命题,全文理解类任务(信息抽取、摘要)不能用 MedNLI 直接替代,反过来 MIMIC 全文语料也不能直接产生 MedNLI 式标签——句对推理的标注成本集中在 hypothesis 撰写与真值判定上,无法从现有文书标注平移过来。其二,MIMIC-IV 时代 NOTEEVENTS 拆分为 discharge 与 radiology 两模块后,"从文书派生 NLI 数据集"的配方已经完全公开(MedNLI 论文即配方),RadNLI 走过一遍放射版,社区理论上可以基于 mimic-iv-note 复刻任何文体版本——配方公开本身是 MedNLI 生态贡献的一部分。
2.8 规模定位:临床 NLP 句对级数据集中的量级坐标
把 MedNLI 放进同类数据集的量级坐标系(句对级、文本推理类):
| 数据集 | 域 | 规模 | 与 MedNLI 关系 |
|---|---|---|---|
| SNLI | 通用(图像说明) | 570k | 范式亲代 |
| MultiNLI | 通用(电话对话) | 393k | 迁移来源域 |
| MedNLI | 临床(出院小结) | 14k | 本体 |
| MEDIQA 2019 RQE | 临床(问题等价) | 405 对 | 子代,更小 |
| RadNLI | 临床(放射报告) | 2,866 句对级 | 子代,更小 |
| RuMedNLI | 俄语临床 | ~7k 对 | 子代,同量级偏小 |
量级坐标揭示一个结构性事实:临床 NLI 至今没有 10 万级数据集——瓶颈不在文本(MIMIC 文书以 TB 计)而在标注(临床医生时间)。MedNLI 的 14k 是"专家标注可负担规模"的实测值,这个数字本身就是临床标注经济学的公开数据点:4 名医生 6 周产 14k 对,约等于每医生每工作日 100 对出头。任何计划扩展临床 NLI 规模的团队,都可以用这个速率做产能预算的锚。
2.9 记录结构示意:一行 jsonl 长什么样
不引用真实句子(去标识文本不宜转载),仅示意记录的字段结构与取值形态:
{
"pairID": "整数递增的句对编号字符串",
"gold_label": "entailment | contradiction | neutral 三选一",
"sentence1": "出院小结 Past Medical History 节的单句原文(含去标识伪迹)",
"sentence2": "临床医生针对 sentence1 撰写的一句临床断言",
"sentence1_binary_parse": "(S (NP ...) (VP ...)) 形态的二元句法树字符串",
"sentence2_binary_parse": "同上,对应 hypothesis",
"sentence1_parse": "完整句法树字符串(部分行存在)",
"caption / storyid / lineid 等谱系字段": "SNLI 管线遗留,与临床语义无关"
}
读这段示意的三个要点。第一,sentence1/sentence2 的语义映射(premise/hypothesis)没有独立字段名——沿用 SNLI 的位置约定,新手容易把 sentence2 误当"第二句病历文本",实际它是人工撰写的假设句。第二,句法树字段值是括号嵌套字符串而非结构化对象,json.loads 后得到的是 str,做类型检查可以快速识别误用。第三,谱系字段(caption/storyid 等)是 SNLI 格式兼容的"压舱石"——它们没有临床意义,但正是这些冗余让通用 NLI 工具链零改动加载(§8.2 的设计智慧在字段层可见)。
2.10 数据完整性自查清单
拿到数据后、写训练代码前,建议过一遍这张五项自查表:
| 项 | 动作 | 通过标准 |
|---|---|---|
| 1 | 数三个文件的行数 | = 11,232 / 1,395 / 1,422 |
| 2 | 统计唯一 sentence1 数 | ≈ 4,683(premise 可跨 split 复现) |
| 3 | 检查 gold_label 取值域 | 仅 {entailment, contradiction, neutral},无空值 |
| 4 | 抽查 premise 伪迹形态 | 占位符/偏移日期存在且不影响句法完整性 |
| 5 | 核对字段清单 | §2.4 表内字段齐全,无第三方裁剪 |
任何一项不过即说明手里的不是完整官方版本——回到 PhysioNet 重新下载,不要在残缺副本上做任何实验。
§3 注释流水线:一次试点加一次单注释
3.1 两阶段设计:先证明可标,再放量标注
MedNLI 的标注策略是教科书式的"先试点后放量":
阶段一(试点) 100 个 premise → 2 名 board-certified 影像科医生独立双标
→ 552 对标注 → Cohen's κ = 0.78 → 任务可行性确认
↓
阶段二(正式) 4,683 个 premise → 4 名临床医生分片单注释
→ 14,049 对 → 约 6 周完成 → 无逐对一致性测量
这个结构决定了 MedNLI 全部质量声明的边界:一致性只在试点层测量过。论文对此是透明的,但二手引用经常把 κ=0.78 写成全库属性(坑 4)——本条目在 §3.2 单独存照。
3.2 试点:100 premise、2 名医生、κ=0.78
试点设计:从语料池抽 100 个 premise,两名 board-certified(委员会认证)影像科医生独立标注,两人对同一 premise 各自撰写并判定三类 hypothesis,形成 552 对可对照标注,计算 Cohen’s kappa=0.78。
论文对分歧的处理值得一读:两人最集中的分歧不是"标签错了",而是撰写阶段的主观度——一人倾向把"病历明确记载"的条目写成 entailment 的强断言,另一人则对"明确"的门槛更高,产出更多 neutral。这类"Definitely true vs Maybe true"分歧在 NLI 任务里有通用域前例(SNLI 众包同样如此),但临床语境把它放大了:病历书写本身有省略习惯,“未写"到底是"没有"还是"没记”,两位医生给出了系统性的不同答案。这个分歧画像直接预示了 neutral 是全库最难类(§3.5),也预示了后续知识注入实验把注意力押在 neutral 上的合理性(§4.4)。
κ=0.78 在 NLI 文献谱系里属于"可接受但明显低于通用域"的区间(SNLI 试点 κ=0.90)。论文以此论证任务可行——0.78 足够支撑一个有意义的三分类任务——但没有宣称达到专家间完全一致。
3.3 正式集:4 名临床医生、单注释、6 周
正式标注由 4 名临床医生(clinicians)完成,premise 分片承包,每人对自己分片内的 premise 撰写 hypothesis 并定标签,每对仅一人标注、无复核仲裁。论文报告总耗时约 6 周。
单注释是 MedNLI 与通用域数据集最大的质量结构差异。它是临床标注经济学下的现实选择—— board-certified 医生时间昂贵,双标全库意味着成本翻倍——但使用者在三个场景里必须显式考虑它:
| 场景 | 单注释的影响 |
|---|---|
| 把 test acc 当模型上限 | 标签噪声把可达到的分数天花板压在人类一致性水平之下(<100%),0.78 κ 意味着约两成对在"严格判定"下可争 |
| 做误差分析 | 模型"错误"可能是标注员个体偏好(尤其 neutral 边界),抽样人审再下结论 |
| 训练蒸馏或弱监督 | 标签噪声会被学生模型放大,建议对 neutral 类做置信加权 |
后继数据集对这一结构的不同选择本身就构成对照:RuMedNLI 做了俄语场景的双标一致性测量,RadNLI 面向放射报告保留了单注释框架——单注释不是缺陷而是临床域数据集的常见形态,引用时应如实描述。
3.4 hypothesis 撰写规范与标签语义的操作化
MedNLI 标注指南(论文附录与 PhysioNet 页面描述)对 hypothesis 撰写的关键操作化约束:
- 由 premise 出发双向撰写:注释员读 premise 后,按要求分别写出三类 hypothesis——这与 SNLI 的"看图写句"同构,保证三类在撰写源头就均衡产生,而非先定标签再补句子。
- 自包含:hypothesis 不依赖 premise 之外的世界状态即可理解;涉及医学常识的部分(如"糖尿病是慢性病")由世界知识承担,这后来成为误差分析里"world knowledge"错误类的来源(§3.5)。
- 临床语言:hypothesis 用临床惯用语而非日常转述,如 premise"患者有 NIDDM 病史"可写 hypothesis"患者患有 2 型糖尿病"(entailment,依赖缩写知识)——缩写消解因此成为四类困难之一。
- 否定与数值:contradiction 类大量依赖否定词与数值边界(用药列表、日期、器官左右侧),标注指南要求矛盾"由文本明确支持",不允许注释员靠临床推断把 neutral 升格为 contradiction。
这套规范的效果在句长数字里可见:hypothesis 平均仅 5.8 tokens,短于 premise 的四分之一——注释员被要求写"命题"而非"复述",这正是 NLI 任务保证难度的设计核心。
3.5 误差画像:四类系统性困难
论文 §5 的误差分析把模型错误归为四类,这四类至今仍是临床 NLI 系统的故障模式清单:
| 错误类型 | 机理 | 示例模式 |
|---|---|---|
| 数值推理 | 需对 premise 中的日期/年龄/剂量做比较或运算 | “2011 年确诊” vs hypothesis “十余年前确诊” |
| 世界知识 | 需调用临床常识链(疾病-症状-病程) | premise 列"充血性心衰" → “心脏泵血功能受损” |
| 缩写消解 | premise 含未展开的医学术语缩写 | NIDDM/CHF/CAD 直接决定标签方向 |
| 医学知识边界 | 需区分"病历未记"与"临床不存在" | neutral 类的核心困难,与试点主分歧同源 |
四类困难的分布高度偏向 neutral:知识引导注意力的消融实验显示其增益的 60% 来自 neutral 类(§4.4),与试点阶段发现的"Definitely true vs Maybe true"主分歧、以及所有后续工作把 neutral 当硬骨头的共识形成三点一线。对使用者的操作含义:在 MedNLI 上做错误分析时,先按这四类给错误分桶,再看 neutral 内部占比——只报总 acc 会把四类完全不同的失败机理压成一个数字。
3.6 标注设计对照:MedNLI 与三个子代的选择差异
把 MedNLI 与直系子代的标注结构并排,能看清"单注释"并非唯一解:
| 设计维度 | MedNLI (2018) | MEDIQA 2019 RQE | RadNLI (2021) | RuMedNLI (2022) |
|---|---|---|---|---|
| 标注者 | 4 clinicians 分片 | 临床信息专家 | 面向放射文本的标注员 | 医学背景双语标注员 |
| 一致性测量 | 仅试点 552 对 | 试点测量 | 未公布全库逐对 κ | 报告了更完整的一致性分析 |
| 规模 | 14,049 对 | 405 对 | 数千对 | ~7k 对 |
| 语言 | 英语 | 英语 | 英语 | 俄语 |
| premise 来源 | 出院小结史节 | 临床问题库 | 放射报告 | RuMedBBU 语料 |
三点评注。第一,RuMedNLI 吸收了 MedNLI 的教训,把一致性测量从"试点专属"升级为更系统的报告——标注设计在家族内代际进化。第二,规模没有任何子代超过亲代,反向确认 14k 就是这条流水线的实际产能天花板(§2.8)。第三,MEDIQA RQE 的 405 对把范式推到"问题-问题"对象上,说明 premise/hypothesis 的语义角色可以脱离"病历句-临床断言"框架泛化——范式的抽象度决定了它的可复制半径。
§4 基线与比较发现:迁移衰减的定量解剖
4.1 论文五基线全表(Table 3 完整转录)
论文在 14,049 句对上跑了五组基线,准确率口径(dev/test):
| 模型 | Dev acc (%) | Test acc (%) | 技术要点 |
|---|---|---|---|
| Random | 33.3 | — | 三分类均匀先验 |
| Feature-based | 51.9 | 51.9 | 手工特征 + 分类器 |
| BOW(词袋) | 71.9 | 70.2 | 句对词袋拼接 + MLP |
| InferSent | 76.0 | 73.5 | BiLSTM max-pooling 编码器,SNLI 训练权重复用 |
| ESIM | 74.4 | 73.1 | 交叉注意力增强型推理网络 |
三个读表要点。第一,InferSent 在 test 上反超结构更重的 ESIM(73.5 vs 73.1),dev 上差距更大(76.0 vs 74.4)——在小数据集上,简单编码器 + 好词向量可以打赢复杂交互结构,这与通用域上 ESIM 全面领先的格局相反,本身就是"临床域数据规模效应"的证据。第二,BOW 到 InferSent 的提升只有 3 个百分点出头,而通用域同等跨度通常是 8-10 个百分点——推理结构的边际收益在 MedNLI 上被压缩,压缩的原因要在 §4.2 的伪基线里找。第三,Random 33.3% 是三分类均匀先验的理论值,任何"超过 60% 就算学到东西"的民间口径都以伪基线(§4.2)而非 Random 为参照才靠谱。
4.2 premise-oblivious 伪基线:61.9 F1 的警示线
论文设计了一条刻意"作弊"的基线:只喂 hypothesis、完全不给 premise 的分类器,拿到 61.9 F1。
这条数字的价值在于校准一切后续解读。它证明 hypothesis 本身携带大量可学习信号:注释员在撰写三类 hypothesis 时留下了系统性文风差异(entailment 句倾向复用 premise 词汇、contradiction 高频使用否定词、neutral 多含"未提及"式保守表述)。仅凭这些先验,不看病历一个字,就能拿 61.9 F1——这解释了 §4.1 中 BOW 到 InferSent 的窄幅提升:模型的很多"进步"实际发生在利用 hypothesis 先验的层面,而非真正学会对 premise 做推理。
对使用者的操作含义:在 MedNLI 上报任何分数时,同时报告 premise-oblivious 参照(61.9 F1)能立刻暴露模型是在"读病历"还是"读文风"。后继工作(包括 BERT 时代论文)很少重跑这条基线,但对比时应心中有数——一个接近 62 F1 的"新模型"大概率在吃先验老本。
4.3 迁移学习实验:直接迁移全军覆没
论文的核心实验回答一个老问题:SNLI/MultiNLI 学到的推理能力,能搬到临床域吗?
第一组实验是 direct transfer(直接迁移):在 SNLI 或 MultiNLI 上训练,零调整直接在 MedNLI 测试。结论是全部负增益——所有直接迁移配置均劣于在 MedNLI 上从头训练的对应模型。通用域推理能力不能裸迁移,这是论文最常被引用的结论,也是"临床 NLP 需要域内数据"论点的定量证据。
第二组实验是 sequential 与 multi-task 微调(先通用域预训练,再 MedNLI 微调或联合训练),报告相对各自 base model 的最大增益:
| 架构 | 最大增益(sequential / multi-task) | 备注 |
|---|---|---|
| BOW | +2.4 | 增益最大——越简单的模型越受益 |
| InferSent | +0.9 | |
| ESIM | +0.3 | 结构越复杂,从迁移中获益越少 |
第三组发现是来源域选择:MultiNLI 的五个 genre(fiction/government/slate/telephone/travel)中,从 slate(网络评论体)子集迁移的效果最好——slate 语体的议论性与命题密度最接近临床陈述句。这个细节说明迁移效果不只由"域距离"粗颗粒决定,语体颗粒度同样重要。
三组实验合起来的方法学结论:迁移学习对临床 NLI 有效但增益有限(低个位数百分点),且架构越简单受益越大。这个结论在 BERT 时代需要重新审视——预训练语言模型把"迁移"从推理层下沉到了表示层,§5.2 的数字会说明增益量级如何被重写。
4.4 词嵌入实验:域内词向量的全面胜利
论文用三套词向量替换各模型的嵌入层,观察 test acc 变化:
| 嵌入 | 来源域 | 结果 |
|---|---|---|
| GloVe | 通用域(840B) | 各模型原始参照 |
| fastText | 通用域 | 与 GloVe 相当 |
| fastText[MIMIC-III] | MIMIC-III 全库语料训练 | 所有模型全线上涨 |
最具代表性的一格:InferSent 从 GloVe 换到 fastText[MIMIC-III] 提升 +3.1 个百分点——比任何推理结构升级(§4.1)或迁移策略(§4.3)的收益都大。机理直白:MIMIC-III 词向量见过大量缩写、药物名、去标识化伪迹的真实分布,而通用向量对这些 token 只能给随机初始化级别的表示。
这组实验确立了临床 NLP 的一个黄金法则(在预训练模型普及前):先用域内语料训词向量,再谈模型结构。它也解释了为什么 MIMIC-III 全库文本本身就是一种公共资产——即使任务标注再小,域内语料的表示红利可以通过词向量(后来是域内预训练)灌进任何下游任务。库内 mimiciii 条目的价值因此不止于结构化表格与文书原文,还包括它作为表示学习语料池的衍生价值。
4.5 知识整合实验:retrofitting 全负,attention 险胜
论文实验了两种把 UMLS/SNOMED-CT 术语知识注入模型的方式,结果一负一正,方向对比极有教学价值:
方式一:知识增强词向量(retrofitting)——全线失败。把词向量按 UMLS/SNOMED-CT 同义关系图做 retrofitting(让同义术语的向量靠近),三个模型全部下降:InferSent -1.7、BOW -2.0、ESIM -2.7。解释:词向量原本从 MIMIC-III 文本学到的上下文分布被术语图的强制对齐扭曲,丢掉了缩写的实际用法(病历里的 CHF 用法并不总与 UMLS 规范概念严格对应)。
方式二:knowledge-directed attention——小幅正增益。让模型在编码 premise 时对命中 UMLS 术语的 token 施加注意力偏置,InferSent +0.2、ESIM +0.3。更有信息量的拆解:增益的 60% 来自 neutral 类——术语知识主要帮模型识别"premise 提到的疾病与 hypothesis 断言的疾病不是一回事",从而正确地不敢下结论。
这组一负一正的对照给出的原则:术语知识直接改写表示容易破坏文本统计的完整性,作为归纳偏置引导注意力则温和得多。这条原则在后来的实体链接预训练、知识增强 BERT 一脉工作里被反复重演,MedNLI 是最早给出定量对照的场景之一。
4.6 统计卫生:读这组数字的五条守则
- 口径统一:§4.1-4.5 全部为论文 acc 口径(Table 3 及消融表);与 §5.2 的 BERT 时代 F1 口径不可互相对表(坑 8)。
- dev/test 倒挂:InferSent dev 76.0 / test 73.5、ESIM dev 74.4 / test 73.1——dev 上 ESIM 落后 1.6 分,test 上只差 0.4 分;1,395 的 dev 规模不足以分辨半个百分点,模型选型别过度依赖 dev 排名。
- 伪基线先行:任何低于 61.9 F1 等效水平的配置不值得讨论;任何恰好略高于它的结果先怀疑先验泄漏。
- 增益颗粒度:迁移、嵌入、知识三组实验的增益都在个位数百分点内,而 dev/test 差异本身就有约 2-3 个百分点的波动——单次运行的正负 1 分内不构成结论,论文自己也只做定性方向的宣称。
- 不要跨表求和:"fastText +3.1 再加 attention +0.2"式的外推没有实验支撑,三组消融各自独立于 base 配置,叠加效应未测。
4.7 表示学习三阶段:MedNLI 作为测量仪的三个时代
把 §4.3-§4.5 与 §5.2 的数字串成一条时间线,MedNLI 恰好量出了临床 NLP 表示学习的三个时代:
| 时代 | 域内资源形态 | MedNLI 上的典型增益 | 代表证据 |
|---|---|---|---|
| 一:词向量时代(~2018) | 域内词向量(fastText[MIMIC-III]) | 全基线 +1~+3 点 | fastText[MIMIC-III] 全面胜出(§4.4) |
| 二:域内预训练时代(2019-2021) | BioBERT/ClinicalBERT 式续训 | 从 0.293 跳到 0.444(F1 口径) | ClinicalBERT 跃升(§5.2) |
| 三:长文档/架构时代(2021-) | Longformer/BigBird 式长窗口 | 0.444 → 0.484 边际改进 | Clinical-Longformer(§5.2) |
三个时代的增益斜率递减:域内化(从零到有)贡献最大,架构升级贡献边际递减。这条曲线对资源分配的启示是普适的——临床 NLP 团队的第一优先投资永远是域内预训练/域内语料,而不是更花哨的架构。MedNLI 的独特价值在于它把这条曲线的第一个拐点(词向量时代)记录在了消融表里,而第三个拐点由社区用同一数据集补测完成——一个 14k 的数据集横跨三丈量时代而不失标定精度,这在小数据集里罕见。
4.8 MedNLI 分数时间轴:一条不可直读的"进步史"
把各时代代表数字排在一条轴上,但必须带着口径注记读:
| 年代 | 模型 | 数字 | 口径 | 出处 |
|---|---|---|---|---|
| 2018 | Random | 33.3 | acc | D18-1187 Table 3 |
| 2018 | Feature-based | 51.9 | acc | 同上 |
| 2018 | BOW | 70.2 | acc(test) | 同上 |
| 2018 | premise-oblivious | 61.9 | F1 | 同上(误差分析节) |
| 2018 | InferSent | 73.5 | acc(test) | 同上 |
| 2018 | ESIM | 73.1 | acc(test) | 同上 |
| ~2020- | BERT | 0.293 | F1 | arXiv:2201.11838 |
| ~2020- | BioBERT | 0.324 | F1 | 同上 |
| ~2020- | ClinicalBERT | 0.444 | F1 | 同上 |
| ~2020- | Clinical-BigBird | 0.480 | F1 | 同上 |
| ~2020- | Clinical-Longformer | 0.484 | F1 | 同上 |
| 综述转引 | “约 82%” | 82 | acc | 二手口径,需溯源(坑 3) |
这张表的正确读法是只做同口径内的纵比,不做跨口径的横比:2018 年内 acc 数字可比(BOW→InferSent +3.3);BERT 时代内 F1 数字可比(BERT→Clinical-Longformer +0.191);两段之间画不出有效的连线——0.444 的 F1 与 73.5 的 acc 谁高谁低,在数学上没有答案。二手材料里"从 73% 到 82% 的进步"或"BERT 反而不如 ESIM"式的叙事,全部源于把这张表读成了单列时间轴。本库立场:MedNLI 没有"进步史",只有两段口径分明的测量史。
4.9 基线配置的现代启示:论文五基线各留下了什么遗产
以今天的眼光回看五组基线,每一组都在后续方法谱系里留下了直接后代:
| 论文基线 | 它验证的问题 | 后代谱系 |
|---|---|---|
| Feature-based | 推理是否需要深度模型 | 已消亡,但它的 51.9 分至今是"特征工程天花板"的参照 |
| BOW | 词汇重叠能走多远 | 词重叠特征至今仍是无参考评估与快捷过滤的第一道闸 |
| InferSent | 句编码器 + 分类头的范式 | Sentence-BERT 及其临床变体的直系祖先 |
| ESIM | 交叉注意力交互建模 | 后来的 cross-encoder 思路,BERT 微调本质上是它的参数化升级 |
| premise-oblivious | 标签先验有多强 | 任何数据集论文都值得配一条"信息不对称伪基线"——MedNLI 是最早的示范之一 |
启示是:基线设计不只是"给个下限",而是在给问题分解——五组基线把"NLI 需要什么"拆成了词汇重叠、句子表示、交互建模、先验泄漏四个独立可测的组件。后来者的方法报告若能映射回这个分解(“我的方法在交互组件上加了 XX”),贡献声明会清晰得多。
§5 MedNLI 作为基准:从 2018 基线到 BERT 时代
5.1 它被怎么用:三种典型姿势
MedNLI 在后继文献中的用法高度模式化,可归为三种:
- 迁移学习评测锚:预训练模型(BioBERT/ClinicalBERT/各类 Longformer)在通用+生物医学语料上预训练后,用 MedNLI 微调验证"临床语言理解"能力。这是 Clinical-Longformer 一脉(arXiv:2201.11838)的标准动作。
- 多任务学习的临床组件:把 MedNLI 与 NER、关系抽取、问答等任务联合训练,验证推理监督对其他临床 NLP 任务的溢出效应(MEDIQA 系列与各类 multitask 论文的常见配置)。
- 数据集谱系的亲代:RadNLI(放射报告域)、RuMedNLI(俄语临床域)、MEDIQA 2019 RQE 子任务(问题-等价推理)都直接沿用 MedNLI 的任务定义与文件格式(§7.2)。
三种姿势共同指向一个定位:MedNLI 单独撑不起一个 SOTA 竞赛(规模只有 14k),但作为能力检验试剂,它是临床 NLP 论文实验表格里出场率最高的行名之一。
5.2 BERT 时代成绩单(F1 口径)
Clinical-Longformer 论文(arXiv:2201.11838)系统重跑了五个预训练模型在 MedNLI 上的成绩,以 F1 为口径:
| 模型 | 预训练语料 | MedNLI F1 |
|---|---|---|
| BERT | 通用域 | 0.293 |
| BioBERT | PubMed + MIMIC-III 摘要级语料 | 0.324 |
| ClinicalBERT | BioBERT + MIMIC-III 续训 | 0.444 |
| Clinical-BigBird | 稀疏注意力长文档版 | 0.480 |
| Clinical-Longformer | 长文档窗口 4,096 | 0.484 |
读表注意两点。第一,BERT 到 ClinicalBERT 的跃升(0.293→0.444)再次验证 §4.4 的域内红利法则——只不过红利从词向量层上移到预训练层。第二,这组 F1 数字与 §4.1 的 acc 数字没有可比性:F1(宏平均或加权平均,取决于实现)与 acc 在三分类非均衡分布下本就不同,且这批工作的微调配置、句长截断、模型选择策略各异。任何"BERT 时代模型比 ESIM 强多少"的直接对比都是口径错误。
5.3 双口径警示与二手引用的漂移
MedNLI 的二手引用生态里有两类高频口径漂移,本条目存照:
漂移一:F1 vs acc 互译。 Clinical-Longformer 论文的 0.444/0.484 是 F1;MedNLI 原论文的 73.5 是 acc。部分博客与中文综述把两套数字排进同一张"进步史"表格,制造出"从 73% 到 48% 的倒退"或"从 61.9 到 48.4 的跃升"式错觉。正确做法:任何对比先问口径,跨口径引用必须标注"不可直接比较"(坑 8)。
漂移二:~82% acc 的归属。部分综述与工具文档转引过"MedNLI 上约 82% 准确率"的说法,这一口径出自某综述对后续工作的汇总引用,不是 MedNLI 原论文的数字(原论文 test acc 上限 73.5)。转引 82% 时必须另行溯源其原始出处与实验配置,不能挂回 D18-1187 名下(坑 3)。
5.4 官方加载骨架
按官方 jsonl 边界加载的最小代码(规避 §2.1 的泄漏问题):
import json
def load_mednli(path):
rows = []
with open(path, encoding="utf-8") as f:
for line in f:
obj = json.loads(line)
rows.append({
"pairID": obj["pairID"],
"premise": obj["sentence1"], # 出院史句子
"hypothesis": obj["sentence2"], # 临床医生撰写
"label": obj["gold_label"], # entailment/contradiction/neutral
})
return rows
# 只按官方文件边界切分,勿自行 shuffle 重切
train = load_mednli("mli_train_v1.jsonl") # 11,232
dev = load_mednli("mli_dev_v1.jsonl") # 1,395
test = load_mednli("mli_test_v1.jsonl") # 1,422
assert (len(train), len(dev), len(test)) == (11232, 1395, 1422)
三个工程注记:显式白名单字段加载可同时规避句法树字符串混入(§2.4)与 SNLI 谱系字段噪声;文件行数断言是对抗镜像版本漂移的最简单手段;若使用 HuggingFace datasets 的第三方 MedNLI 加载脚本,核对其 split 配置是否等于官方文件边界——社区镜像中存在 dev/test 混合的非官方版本。
5.5 复现检查清单:在 MedNLI 上报分前的八项核对
文献里 MedNLI 分数的实现自由度过大,报分前建议逐项核对并在论文中声明:
| 项 | 核对内容 | 为什么重要 |
|---|---|---|
| 1 | split = 官方文件边界 | 自定义切分引入同 premise 泄漏(§2.1) |
| 2 | 指标口径 = acc 或 F1,宏/微平均注明 | 口径混淆是引用事故首因(坑 8) |
| 3 | premise 截断长度 ≥ 202 tokens | Table 2 最长 premise 是 202,截到 128 会丢长尾 |
| 4 | 是否过滤 jsonl 非文本字段 | 树字符串混入等于数据污染(坑 9) |
| 5 | neutral 类单独报 per-class F1 | neutral 最难,宏平均掩盖结构(§3.5) |
| 6 | 参照伪基线 61.9 F1 | 判断是否在吃文风先验(§4.2) |
| 7 | 与 base 模型的域内预训练声明 | ClinicalBERT vs BERT 的差距全部来自域内化(§4.7) |
| 8 | 随机种子与运行次数 | dev 只有 1,395 对,单次运行波动可达 1-2 点 |
八项中最常被漏报的是第 2 与第 6 项——大量论文只报一个总分,既不注明口径也不给伪基线参照,导致结果无法横向比较。本库建议的报分格式:“MedNLI test XX.X(acc,官方 split,伪基线 61.9 F1 参照)”。
5.6 跨任务对照:句对推理在临床 NLP 基准图谱中的坐标
MedNLI 所在的"句对语义"赛道在临床 NLP 里还有几个近邻任务,选型时容易混淆:
| 任务 | 代表数据/基准 | 与 NLI 的差异 | 何时选 NLI |
|---|---|---|---|
| 临床语义相似度 | i2b2 2010(句对相似度)、CTL 语义相似度 | 回归/二分类"是否同义",非方向性推理 | 需要方向性判定(谁蕴含谁)时选 NLI |
| 断言检测 | i2b2 2010 assertion 模块 | 判定单句内疾病陈述的肯定/否定/可能 | 需要跨句推理时选 NLI |
| 问题蕴含(RQE) | MEDIQA 2019 | 对象是问题对,等价关系 | 面向 FAQ/CDSS 场景 |
| 文本蕴含评测集 | 各类 NLI benchmark | —— | 本体 |
选型规则一句话:单句内判断用断言检测,两句比同义用相似度,两句定方向用 NLI。MedNLI 在图谱中的不可替代位就是"方向性 + 临床域 + 有训练集"三者的唯一交集——RQE 与 RadNLI 各缺一角(前者小而无训练纵深、后者域窄)。
5.7 LLM 时代的评测实践:从训练集到试金石
大语言模型普及后,MedNLI 的用法重心从"微调训练"滑向"零样本/少样本评测",实践形态随之更新:
- zero-shot 探针:直接让指令模型对句对做三分类,测临床推理的涌现能力。要点是给全三个标签的判定语义(尤其 neutral 的"证据不足"语义,LLM 极易默认偏 entailment)。
- few-shot 对照:在 prompt 中给每类 3-8 个示范对。抽样示范时避免只取 train 头部——jsonl 顺序非随机,头部 premise 聚集。
- 合成数据对照系:用 LLM 批量合成临床 NLI 句对时,以 MedNLI 的 neutral 边界分布为校准参照——合成数据普遍 neutral 偏易,这是检验合成质量的敏感指标。
- 评估器校准:用 MedNLI 人工标注做"LLM-as-judge"式评估器的校准集——评估模型在 552 对试点以外的真实标注上与 gold 的一致率,决定其能否当自动裁判。
LLM 时代的一个隐忧值得存照:模型可能见过 MedNLI 全文(论文与 jsonl 均广泛流传于网络),zero-shot 分数存在污染(contamination)嫌疑——解读大模型在 MedNLI 上的高分时,"见过题"与"会推理"两种解释无法仅凭分数区分,需配合改写扰动或时间截断分析。
§6 获取与许可:凭证制的标准入口
6.1 PhysioNet credentialed access 实操
MedNLI 托管于 PhysioNet(v1.0.0,Published Oct 1, 2019,DOI 10.13026/C2RS98),采用 credentialed access(凭证访问)模式。实操路径:
| 步骤 | 动作 | 说明 |
|---|---|---|
| 1 | 注册 PhysioNet 账号 | 邮箱验证即可 |
| 2 | 完成 CITI 培训 | Human Subjects Research 认证,上传证书 |
| 3 | 签署数据使用协议(DUA) | MedNLI 复用 MIMIC-III 的 DUA 框架,禁止身份重识别与再分发原始数据 |
| 4 | 持有有效 MIMIC-III 凭证 | 已通过 MIMIC-III 申请者可直接访问,无需重复审批 |
| 5 | 下载三个 jsonl | 页面直链,无配额限制 |
关键门槛事实:已有 MIMIC-III 凭证的用户零额外等待——MedNLI 的凭证要求与 MIMIC-III 同级,不复设审核。对已持有 MIMIC-III 访问权的团队(库内 mimiciii、mimic-iii 条目的目标用户),这是"顺手多签一份协议"的成本。论文本身(D18-1187)在 ACL Anthology 公开全文,无获取门槛。
6.2 许可口径:没有独立 license 段
与很多开源数据集不同,MedNLI 的 PhysioNet 页面没有独立的 license 条款段(如 CC BY 4.0 之类),其使用规则由 PhysioNet 平台的 credentialed access 机制与 DUA 事实上约定:可学术使用、禁止身份重识别、禁止原始数据再分发、衍生成果需遵循平台引用规范。这带来两个使用约束:
- 不要杜撰 CC 条款。第三方镜像或博客偶有"MedNLI 是 CC BY-4.0"的写法,属口径杜撰(坑 7)。引用许可时,正确表述是"经 PhysioNet credentialed access 发放、需签署 DUA、页面未声明开源 license 条款"。
- 衍生标注的边界模糊。在 MedNLI 上做的再标注(如对部分句对做第二遍标注做一致性研究)是否可独立发布,需依 DUA 与 PhysioNet 政策个案确认;直接再分发 jsonl 原文件在任何口径下都被禁止,下游工具应设计为"用户提供数据文件"模式。
6.3 库内可获取性光谱中的位置
按本库 AI-Ready 分级口径,MedNLI 属于**“凭证制但低门槛、格式开箱即用”**一档:
| 对比项 | MedNLI | 典型完全公开集 | 典型封闭申请集 |
|---|---|---|---|
| 获取方式 | 凭证 + DUA,即签即得 | 直接下载 | 逐项审批、等审核 |
| 额外门槛 | MIMIC-III 凭证(可复用) | 无 | 排队 + 用途陈述 |
| 格式 | jsonl 三文件,字段兼容 SNLI | 各种 | 各种 |
| 工程可用性 | 断言行数即可开训 | 高 | 低 |
它与 MIMIC 家族共享凭证体系(§9),因此对重症监护研究者的边际获取成本几乎为零——这一定位使它在临床 NLP 教学与入门场景中事实上扮演着"MIMIC 生态的 NLP 门牌"角色。
6.4 获取路径的常见卡点与绕行
按 §6.1 五步走,实践中最常见的四个卡点:
| 卡点 | 现象 | 处理 |
|---|---|---|
| CITI 证书过期/类型不符 | 上传的证书非 Human Subjects 模块 | 重修 CITI “Human Subjects Research” 课程,免费,数小时完成 |
| MIMIC-III 凭证状态异常 | PhysioNet 页面提示 credential required | 检查 MIMIC-III DUA 是否签署完成(凭证过期需重签) |
| 团队共享账号 | 多人共用一个 PhysioNet 账号下载 | 违反平台条款;每人独立注册并各自完成 CITI |
| 商用/产品化意图 | 想把 MedNLI 纳入商业训练管线 | DUA 默认研究导向,商用需单独向 PhysioNet/作者咨询,切勿默认可用 |
另一个常见问题是"镜像陷阱":GitHub 与网盘上存在大量 MedNLI 的转载副本,行数与字段可能被裁剪。核验方法只有一条——官方三文件的行数(11,232/1,395/1,422)与字段清单(§2.4)。镜像数据跑出的分数不建议进论文。
6.5 获取模式的生态意义:MedNLI 路径为何被反复复制
把 §6.1-§6.4 的机制抽象成模板,可以解释 PhysioNet 生态的扩散逻辑:
| 模板要素 | MedNLI 的实现 | 复制者 |
|---|---|---|
| 凭证锚定既有数据 | 复用 MIMIC-III 凭证 | RadNLI 复用 MIMIC-CXR 通道、RuMedNLI 复用同框架 |
| DUA 统一签署 | 一份协议覆盖源数据与派生数据 | 子代全部沿用 |
| 论文开放 + 数据凭证制 | ACL Anthology 免费 + PhysioNet 凭证 | 家族内一致 |
| 字段级格式兼容 | SNLI jsonl | 子代全部沿用(jsonl + 同名字段) |
这套"锚定既有凭证 + 论文开放 + 格式兼容"的组合拳,把新数据集的获取摩擦压到接近零,同时保住了合规底线。对想发布敏感临床数据集的团队,MedNLI 是最值得照抄的发布模板——它证明合规与低摩擦不是零和:门槛被转移到了一次性的 CITI 培训上,而培训成果在整个 MIMIC 生态内终身复用。
§7 生态与影响:临床 NLI 家族的起点
7.1 谱系:SNLI → MultiNLI → MedNLI
MedNLI 在 NLI 数据集谱系中的位置是一条清晰的移植链:
SNLI (2015, 570k, 图像说明) —— NLI 任务范式确立
↓
MultiNLI (2017, 393k, 电话对话) —— 跨genre泛化检验
↓
MedNLI (2018, 14k, 出院小结) —— 临床域移植 + 迁移诊断
↓ (移植范式复用)
RadNLI (2021, 放射报告) / RuMedNLI (2022, 俄语临床) / MEDIQA 2019 (问题等价)
这条链上 MedNLI 的独特贡献不是规模(链条中最小),而是第一次系统回答"移植的代价":直接迁移全负(§4.3)证明移植不是零成本的格式复制,域内标注、域内词向量、域内预训练各有其不可替代性。此后所有"XX 域 NLI 数据集"论文都要先引 MedNLI 的这组负结果作为立项理由。
7.2 直系后继:三个 PhysioNet 收录的子代
| 后继 | 发布 | 任务与来源 | 与 MedNLI 的关系 |
|---|---|---|---|
| MEDIQA 2019(RQE 子任务) | 2019 | 问题-问题蕴含等价推理,405 对 Question-Entailment 数据参与 | 沿用三分类范式到"临床问题"对象;PhysioNet 收录 |
| RadNLI | 2021-06-29 | 放射报告域 NLI,MIMIC-CXR 报告派生 | premise 来源从出院小结换为影像报告,jsonl 格式照搬;PhysioNet 收录 |
| RuMedNLI | 2022-04-01 | 俄语临床 NLI,RuMedBBU 语料派生 | 跨语言的范式复制,且补做了更细致的一致性测量;PhysioNet 收录 |
三者均为 PhysioNet 官方收录,这一托管选择本身就是 MedNLI 路径的复刻——凭证制 + DUA + 免费全文论文。检索这些子代时,PhysioNet 内容页(physionet.org/content/)是权威入口;它们的库内收录状态见 §9。
除直系子代外,MedNLI 还作为多任务组件渗入 MEDIQA 系列后续年份、BioNLP 共享任务与各类 clinical question answering 系统——出场形态多为"附带 MedNLI 微调以增强推理"的实验行,本条目不逐一追溯。
7.3 引文生态定位
MedNLI 的引用呈三种典型动机:一是方法论文的域内评测行(凡做临床句对理解的工作几乎必列);二是迁移学习叙事的定量支点("直接迁移会失败"的原始证据);三是临床数据集方法论的教学案例(先试点后放量、伪基线设计、负结果消融)。三种动机共同把这篇 14k 规模的数据集论文推成了临床 NLP 的高引用文献——规模与影响力在此明显脱钩,脱钩的原因值得数据集工程研究者专门琢磨(§8)。
7.4 非直系生态:MedNLI 作为组件与试金石
除 §7.2 的直系子代外,MedNLI 在三个非直接派生的生态位持续出场:
- 多任务学习的推理组件。临床 NLP 系统普遍把 MedNLI 与 NER、断言检测、关系抽取合并训练,利用推理监督改善句子级语义表示。其效果虽随预训练模型普及而稀释,但"MedNLI 作为辅助任务"仍是 multitask 临床模型的常见配置行。
- 数据增强与合成的对照系。凡是声称"用 LLM 合成临床 NLI 数据"的工作,都需要真实标注做质量对照——MedNLI 是最常被选中的对照集;合成数据与人工标注在 neutral 边界上的分歧分布,本身就是有趣的测量对象。
- 教学与基准套件的固定成员。各生物医学 NLP 综述与评测套件(含中文侧 CBLUE 的任务清单设计)在任务覆盖表里为 NLI 留的行,几乎都指向 MedNLI 或其子代——它已成为"临床语言理解"任务清单的默认占位符。
三个生态位共同的特点是低频但稳定:没有哪篇工作只靠 MedNLI 撑起,但少了它又不完整。这种"组件型影响力"与 MIMIC 那种"基建型影响力"是数据集价值的两个物种,评估数据集工程产出时应分别记账。
7.5 三类规范引用话术(按引用动机选用)
依 §7.3 的三种引用动机,给出可直接套用的话术模板(均内置防坑限定语):
- 方法评测引用:“我们在 MedNLI(D18-1187;官方 split 11,232/1,395/1,422)上评测,test acc XX.X(伪基线 61.9 F1 参照)。”
- 迁移叙事引用:“MedNLI 首次定量表明通用域 NLI 能力直接迁移至临床域为负增益(D18-1187 §5),后续域内预训练(如 ClinicalBERT)在该基准上的改进(F1 口径)与此一致。”
- 方法学引用:“MedNLI 的标注流程采用’试点双标(552 对,κ=0.78)+ 正式单注释’的两阶段结构,我们沿用其先试点后放量的设计。”
三段话术分别预设了口径声明、跨口径免责、一致性限定——照抄即可避开坑 2/4/8 的全部高频事故。反例话术(不应出现的形式):“MedNLI 是一个标注一致性 κ=0.78 的临床数据集,模型准确率已达 82%”——一句话踩三个坑。
§8 方法学启示:四条可迁移的经验
8.1 先试点后放量:用 552 对买全库的设计权
MedNLI 用 100 个 premise、两名医生的试点(552 对、κ=0.78)完成了三件事:证明任务在临床域可标、测出主分歧类型(“Definitely true vs Maybe true”)、为正式标注规范提供校准。试点成本约为全库的 4%,却在正式标注前暴露了 neutral 边界这一最大风险。任何计划做专家标注的团队都可复制这个比例:先花 3-5% 的预算测一致性,再决定标注规范与放量节奏。反面教训也存在:试点双标、正式单注的落差说明,若预算只够一档,一致性测量与标注放量会互相争夺——此时宁可缩小全库规模换双标覆盖率,也不要重演 MedNLI 的"质量声明断档"。
8.2 字段级兼容是一种迁移性设计
MedNLI 的 jsonl 完全照搬 SNLI 字段命名(gold_label/sentence1/sentence2/pairID),使 2018 年的任何 NLI 训练脚本零改动加载。这个决定的效果被严重低估:正是零改造成本,让 MedNLI 顺理成章地成为无数论文"顺手多跑一行"的评测项,评测行的密度反过来喂养了引用量。数据集工程的启示:与目标社区既有工具链的字段级兼容,本身就是一种获客策略——兼容成本以行数计,收益以引用计。
8.3 消融即宣言:负结果的数据集论文
论文最有生命力的部分不是基线分数,而是三组负结果:直接迁移全负(§4.3)、retrofitting 全负(§4.5)、以及伪基线揭示的先验泄漏(§4.2)。这组负结果把一篇数据集论文升维成了领域诊断报告——"临床 NLP 需要域内资源"从此有数字可引。启示:数据集论文的长期影响力与其说取决于规模,不如说取决于它让领域第一次能量化什么。设计实验时预留"预期失败"的消融位,往往比多跑三个 SOTA 更有引用寿命。
8.4 单注释的诚实处理与替代方案
MedNLI 的质量声明断档(试点 κ=0.78、正式单注)在论文中是透明的,但二手传播中反复被抹平。对标注工程的可操作替代:预算受限时可对 test 集做 100% 双标(保评测可信)、训练集抽样双标(估噪声率并做置信加权);或引入第三仲裁人处理 neutral 边界。MedNLI 之后,RadNLI 沿用单注框架,RuMedNLI 则补测一致性——两个子代的不同选择恰好构成一组自然实验,供标注设计者对照。
8.5 负结果要配机制解释,否则只是八卦
MedNLI 三组负结果(直接迁移、retrofitting、伪基线泄漏)之所以成为经典,是因为每组都配了机理假说:迁移失败归于域距离与伪迹分布、retrofitting 失败归于术语图与文本统计的冲突、伪基线归于撰写文风的系统差异。机制解释让负结果可以被下一代方法"针对性破解"——域内预训练破解了第一条,attention 注入破解了第二条。反例同样存在:若论文只报"方法 X 不 work"而不解释为什么,后来的读者既不能利用也不能规避,负结果就退化为一次性八卦。写实验报告时,每个意外数字至少给出一个可检验的机制假说,这是 MedNLI 论文写作层面最值得模仿的习惯。
§9 与库内条目的关系
9.1 家族图谱
上游(数据来源)
├─ mimiciii(rid 590) MIMIC-III 完整库:NOTEEVENTS 是 premise 直接来源
├─ mimic-iii(rid 106) MIMIC-III 英文条目(同库双条目)
└─ mimic-iv-note(rid 47) MIMIC-IV 文书模块:出院小结的现代后继文体
平行(同源不同任务/模态)
├─ mimic-cxr(rid 16) MIMIC-CXR:其报告文本派生了 RadNLI
└─ i2b2-n2c2-nlp(rid 14) i2b2/n2c2 临床 NLP 挑战赛系列:共享任务谱系
工具(知识资源)
└─ umls(rid 558) UMLS:retrofitting 与 knowledge-directed attention 的知识源
下游(评测与生态)
├─ cblue(rid 190) 中文医疗 NLP 基准:含类似的句对/推理任务集合
└─ clicr(rid 150) 临床 NLP 评测集家族
9.2 检索路径建议
- 要 premise 原文语境:先过 mimiciii(590)/mimic-iii(106)拿 NOTEEVENTS 结构与去标识化说明,再回 MedNLI——伪迹口径(§2.6)在 MIMIC 侧文档更完整。
- 要做文书理解而非句对推理:mimic-iv-note(47)的现代文书版式与 i2b2-n2c2-nlp(14)的共享任务集是更合适的原文料。
- 要做术语知识注入:umls(558)是知识源本体;先读 §4.5 再决定 retrofitting 还是 attention——别重复论文已证伪的路线。
- 要中文域同构任务:cblue(190)的句对类任务(诊断归一、语义相似度)是中文侧最近似物;临床语义范式差异见其条目。
- 要影像报告域 NLI:mimic-cxr(16)是 RadNLI 的直接上游,沿 MIMIC-CXR → RadNLI 路径检索。
9.3 检索矩阵:研究意图 → 库内路径
| 研究意图 | 首选路径 | 次选路径 | 不建议 |
|---|---|---|---|
| 复现论文基线 | 本条目 §4 数字 + §5.4 代码 | mimiciii(590) 溯源 | 用社区镜像数据(坑 9) |
| 训练临床推理模型 | MedNLI + umls(558) 知识 | MedNLI + MultiNLI 多任务 | retrofitting 路线(§4.5 已证伪) |
| 扩展到放射域 | mimic-cxr(16) → RadNLI | 直接申请 RadNLI | 拿 MedNLI 硬迁移(§4.3 全负) |
| 中文域句对任务 | cblue(190) | clicr(150) | 直译 MedNLI(许可+伪迹双重障碍) |
| 病历文书理解 | mimic-iv-note(47) | i2b2-n2c2-nlp(14) | 拿 MedNLI 当语料池(仅 14k 句对) |
| 标注方法论研究 | 本条目 §3 + §8 | RuMedNLI 对照 | 只读二手综述(坑 3/坑 4 源头) |
矩阵的底层逻辑:MedNLI 的四个身份(标注数据/评测锚/方法论文/生态起点)对应四条不同的库内检索路径,先用意图定位身份,再进对应章节——把它当万能数据集用,是所有误用的总根源。
9.4 三重身份声明:本条目如何定位 MedNLI
综合全篇,MedNLI 在本库中的定位可压缩为三句互不覆盖的陈述:
- 作为数据:一个小而精的句对标注集(14k 对、单注释、单一章节来源),价值在标签语义的临床化与格式的通用性,不在规模与文体覆盖。
- 作为论文:一篇方法学贡献大于数据贡献的基准论文——三组消融(迁移/嵌入/知识)给出的域内化定量证据,比数据本身被引用得更久。
- 作为生态节点:临床 NLI 家族的范式起点与 PhysioNet 发布模板的原型,向下派生子代、向侧翼输出设计模式。
三重身份对应三种价值衰减曲线:数据价值随标注技术陈旧缓慢衰减(伪迹、单注释都是长期折旧项);论文价值已被证明跨三个技术时代稳定;生态价值随子代数量单调递增。AI-Ready 视角下第三条最值得记录——发布模式本身就是可被引用的基础设施,这是大多数数据集条目没有的维度。
§10 避坑清单:九个已踩过或必踩的坑
坑 1:P18-1104 不是 MedNLI。ACL Anthology 的 P18-1104 是 MojiTalk(情感对话论文);MedNLI 的正确 Anthology ID 是 D18-1187(EMNLP 2018 主会,doi:10.18653/v1/D18-1187)。按"P18"前缀搜 MedNLI 会一无所获或误引;arXiv 预印本为 1808.06752,引用以 D18-1187 为准。
坑 2:总量双口径 14,049 vs 14,042。摘要与多数转引写 14,049;arXiv 版本与 PhysioNet 页面描述存在 14,042 的漂移口径。三文件行数合计 14,049(11,232+1,395+1,422)是可验证事实;引用时建议以文件行数为准并注明口径,自动化统计脚本要声明版本。
坑 3:~82% acc 不是原论文数字。该口径出自后续综述/工具文档对 BERT 时代工作的汇总转引,D18-1187 的 test acc 上限是 73.5(ESIM 之外 InferSent 73.5)。把 82% 挂回原论文是二手漂移;转引前必须溯源到具体原始工作与配置。
坑 4:κ=0.78 只覆盖试点 552 对。一致性仅由 100 premise × 2 名医生的试点测得;正式集 14,049 对为 4 名临床医生单注释,无逐对一致性。任何"MedNLI 标注 κ=0.78"的全称表述都是越界引用,正确写法是"试点子集 κ=0.78"。
坑 5:去标识伪迹参与标签判定。premise 继承 MIMIC-III 去标识化:人名/机构替换为占位符、日期偏移、年龄舍入("87 year old"非真实年龄)。contradiction/entailment 标签可能建立在偏移后的数值上;清洗伪迹会破坏部分标签的成立前提,伪迹应视为语料正式组成部分。
坑 6:MIMIC-III 版本 v1.3 vs v1.4 漂移。论文与 PhysioNet 页面对 MedNLI 所基于的 MIMIC-III 具体小版本表述存在漂移。溯源源句子时以你申请到的 MIMIC-III 版本为准,并注意 NOTEEVENTS 在 MIMIC-IV 中已拆分(mimic-iv-note),跨版本对句不可行。
坑 7:PhysioNet 页面无独立 license 段,别杜撰 CC 条款。MedNLI 的使用规则由 credentialed access + DUA 事实上约定;"CC BY-4.0"式的 license 标注属于口径杜撰。正确表述见 §6.2;衍生工具应设计为"用户提供数据"模式以规避再分发限制。
坑 8:F1 与 acc 两套口径不可对表。原论文基线是 acc(ESIM 73.1/InferSent 73.5 test);Clinical-Longformer 论文一脉是 F1(ClinicalBERT 0.444/Clinical-Longformer 0.484)。跨口径排"进步史"表格是高频引用事故;同时引用时必须双注指标与出处。
坑 9:jsonl 里的句法树字段与同 premise 跨 split 泄漏。文件含 sentence1_binary_parse 等树字符串字段,朴素全列拼接会把语法噪声带进语料;同一 premise 的多条 hypothesis 不保证同 split,自行 shuffle 重切分制造上下文泄漏。按 §5.4 骨架:白名单字段 + 官方文件边界 + 行数断言。
坑点自查动作总表
| 坑 | 30 秒自查动作 |
|---|---|
| 坑 1 | 在 ACL Anthology 搜 D18-1187,确认标题含 “MedNLI” |
| 坑 2 | 数三个 jsonl 行数,声明"文件行数口径" |
| 坑 3 | 见 82% 先问出处,不挂回 D18-1187 |
| 坑 4 | 引 κ 必带"试点 552 对"限定语 |
| 坑 5 | 清洗伪迹前先查标签是否依赖该伪迹 |
| 坑 6 | 溯源句子用自己申请的 MIMIC 版本 |
| 坑 7 | 引用许可写"credentialed + DUA",不写 CC |
| 坑 8 | 每个分数后缀括号注明 acc 或 F1 |
| 坑 9 | 加载脚本只留四个白名单字段 |
§11 总结
11.1 三句话总结
- MedNLI 用 14,049 个临床句对把通用 NLI 范式移植进电子病历域,并用一组基线实验定量证明了"直接迁移全负、域内资源不可替代"——这组负结果至今是临床 NLP 方法选型的原始引证。
- 它的质量结构是"试点双标 κ=0.78 + 正式集单注释"的断档形态,引用时必须把 κ 限定在试点 552 对范围内。
- 它以凭证制低门槛(MIMIC-III 凭证复用 + DUA)和 SNLI 字段级兼容格式,成为临床 NLI 家族(MEDIQA 2019/RadNLI/RuMedNLI)的设计模板与 PhysioNet 生态的 NLP 门牌。
11.2 适合谁
- 临床 NLP 研究者:需要句对推理任务的域内评测锚与迁移学习基线全套数字。
- 医学问答/对话系统团队:需要推理监督组件做多任务训练。
- 数据集工程研究者:先试点后放量、伪基线设计、负结果消融都是可直接复用的方法学模板。
- MIMIC 生态用户:已持有 MIMIC-III 凭证者边际成本为零,值得顺手签一份 DUA 入场。
- 合成数据研究者:需要一份真实人工标注做质量对照与 neutral 边界校准(§5.7)。
11.3 不适合谁
- 需要大规模预训练语料的团队:14k 句对只是评测试剂,不是语料池。
- 需要病程记录、影像报告等多元文体的项目:语料限定出院小结单一章节;放射域走 RadNLI。
- 需要高置信 gold label 的临床决策类应用:单注释 + neutral 边界分歧使标签只能当弱参照。
- 需要患者级元数据的项目:发放物不含患者映射,句级溯源需另行持有 MIMIC-III(附录 M)。
11.4 30 秒决策卡
| 你的情况 | 行动 |
|---|---|
| 已有 MIMIC-III 凭证 | PhysioNet 直接签 DUA 下载三个 jsonl(§6.1 五步) |
| 没有 MIMIC-III 凭证 | 先走 MIMIC-III 申请(CITI 培训),或改用 RadNLI/公开替代 |
| 要报 MedNLI 分数 | 用 §5.4 骨架加载;同时报伪基线参照;口径标注 acc 或 F1(坑 8) |
| 要引标注质量 | 只能写"试点 552 对 κ=0.78"(坑 4),别写全库一致性 |
| 要注入术语知识 | 先读 §4.5——retrofitting 已证伪,走 attention 路线 |
| 要做放射/俄语/中文域 NLI | §7.2 子代清单 + §9.2 检索路径(mimic-cxr/cblue 等) |
11.5 高频误引速纠卡(一句话版)
| 误引说法 | 一句话纠正 |
|---|---|
| “MedNLI 论文是 P18-1104” | 那是 MojiTalk;MedNLI 是 D18-1187(坑 1) |
| “MedNLI 有 14,042 个句对” | 官方文件行数合计 14,049;14,042 是漂移口径(坑 2) |
| “MedNLI 上模型已达 82% 准确率” | 82% 是二手汇总口径,原论文 test acc 上限 73.5(坑 3) |
| “MedNLI 标注一致性 κ=0.78” | κ=0.78 仅试点 552 对;正式集单注释(坑 4) |
| “先清洗占位符再用 MedNLI” | 伪迹参与标签判定,清洗即破坏数据(坑 5) |
| “MedNLI 是 CC BY-4.0 许可” | 页面无 license 段,规则是凭证制 + DUA(坑 7) |
| “从 73.5 涨到 0.484” | acc 与 F1 两套口径,不可连成一条曲线(坑 8) |
FAQ(高频问答 32 问)
使用说明:本 FAQ 与正文按坑点编号交叉索引——任何一问答不上来时,按答案中的节号回正文即可;A-E 组面向使用决策,F 组面向复现工程。
A. 基础认知
Q1:MedNLI 是什么任务的数据集?
自然语言推理(NLI):给定 premise(出院小结病史节句子)与 hypothesis(临床医生撰写的断言),三分类判断蕴含(entailment)、矛盾(contradiction)或中立(neutral)。
Q2:它和 SNLI 什么关系?
任务范式与文件格式的直系移植:标签集相同、jsonl 字段命名相同;差异在 premise 来源(图像说明→出院小结)与标注者资质(众包→临床医生)。
Q3:14,049 是句子数还是句对数?
句对数。唯一 premise 4,683 个,平均每个派生约 3 条 hypothesis。
Q4:数据里有患者信息吗?
premise 继承 MIMIC-III 去标识化处理:人名等替换为占位符、日期偏移、年龄舍入——文本不含可直接识别的患者身份信息,但每个 premise 溯源到唯一病历文档(患者级映射不在发放范围内)。
Q5:论文发在哪?
EMNLP 2018 主会,Anthology ID D18-1187(doi:10.18653/v1/D18-1187, pp.1586-1596),预印本 arXiv:1808.06752。注意 P18-1104 是另一篇论文(坑 1)。
B. 数据与获取
Q6:怎么下载?
PhysioNet 内容页(v1.0.0,DOI 10.13026/C2RS98):注册 → CITI 培训 → 签 DUA → 需持有有效 MIMIC-III 凭证 → 下载三个 jsonl。
Q7:需要单独申请或审批吗?
不需要额外审批:凭证要求与 MIMIC-III 同级,已有 MIMIC-III 访问权的账号签一份 DUA 即得。
Q8:license 是什么?
页面无独立 license 段:使用规则由 credentialed access 机制与 DUA 约定(学术使用、禁止重识别、禁止再分发原始文件)。任何"CC BY-4.0"标注均属杜撰(坑 7)。
Q9:能再分发或做衍生发布吗?
原始 jsonl 禁止再分发;工具与代码应以"用户提供数据"模式发布;再标注数据集的发布需个案咨询 PhysioNet 政策。
Q10:文件有哪些、多大?
mli_train_v1.jsonl(11,232 行)、mli_dev_v1.jsonl(1,395 行)、mli_test_v1.jsonl(1,422 行),每行一个 JSON 对象;文件总量在数十 MB 量级,普通笔记本即可全量加载。
C. 统计与发现
Q11:三切分是多少?
train 11,232 / dev 1,395 / test 1,422,合计 14,049(官方文件行数口径;另有 14,042 漂移口径见坑 2)。
Q12:premise 和 hypothesis 各有多长?
premise 平均 20.0 tokens、最长 202;hypothesis 平均 5.8 tokens、最长 20(论文 Table 2)。
Q13:标注一致性是多少?
试点阶段 100 premise 双标 552 对测得 Cohen’s κ=0.78;正式集单注释、无逐对一致性数据(坑 4)。
Q14:哪个标签最难?
neutral。试点主分歧(“Definitely true vs Maybe true”)、误差分析四类困难、知识注意力增益的 60% 归属三点一致指向 neutral。
Q15:直接用 SNLI 模型行不行?
不行:direct transfer 全部负增益,劣于 MedNLI 域内从头训练;sequential/multi-task 微调才有低个位数百分点增益(§4.3)。
D. 基准与模型
Q16:论文最好成绩是多少?
test acc 73.5%(InferSent)与 73.1%(ESIM);dev 上 76.0/74.4。口径是 accuracy(坑 8)。
Q17:BERT 类模型成绩怎么看?
F1 口径(Clinical-Longformer 论文):BERT 0.293 / BioBERT 0.324 / ClinicalBERT 0.444 / Clinical-BigBird 0.480 / Clinical-Longformer 0.484——与论文 acc 不可对表。
Q18:什么是 premise-oblivious 基线?
只看 hypothesis 不看 premise 的分类器,61.9 F1——量化了标注文风留下的先验泄漏,是解读一切 MedNLI 分数的参照线(§4.2)。
Q19:域内词向量有多大作用?
fastText[MIMIC-III] 替换嵌入使所有基线全线上涨,InferSent +3.1 个百分点——比换推理结构或加迁移策略的收益都大(§4.4)。
Q20:UMLS/SNOMED 知识有用吗?
分方式:retrofitting 进词向量全线下跌(-1.7/-2.0/-2.7);knowledge-directed attention 小幅正增益(+0.2/+0.3)且 60% 来自 neutral(§4.5)。
E. 生产与库内
Q21:RadNLI、RuMedNLI、MEDIQA 和它什么关系?
直系子代:RadNLI(2021-06-29,放射报告域)、RuMedNLI(2022-04-01,俄语临床域)、MEDIQA 2019 RQE(405 对,问题蕴含)——均沿用三分类范式并被 PhysioNet 收录(§7.2)。
Q22:库内哪些条目相关?
上游 mimiciii(590)/mimic-iii(106)/mimic-iv-note(47),平行 mimic-cxr(16)/i2b2-n2c2-nlp(14),知识源 umls(558),下游评测 cblue(190)/clicr(150)(§9.1)。
Q23:MIMIC-IV 出来后 MedNLI 过时了吗?
没有:MedNLI 绑定的是 MIMIC-III 文本快照,标注资产不随主库演进失效;但源句子级溯源需注意 NOTEEVENTS 在 MIMIC-IV 已拆分(坑 6),新句对标注应基于 mimic-iv-note。
Q24:引用时最要注意什么?
三件事:Anthology ID 写 D18-1187;总量声明口径(14,049 文件行数);一致性限定试点范围(κ=0.78 only pilot)。口径混乱是这篇文献二手传播的最大事故源。
F. 复现与工程细节
Q25:训练需要什么规模的算力?
14k 句对是笔记本级数据集:BERT-base 微调单卡数小时,早期基线(BOW/InferSent)CPU 即可。瓶颈永远不在算力而在配置正确性(§5.5 八项核对)。
Q26:LLM 时代它还有用吗?
有,且用法变了:作为 zero-shot/few-shot 临床推理的评测集,检验大模型对"病历未记不等于不存在"这类临床判定语义的把握;小样本下 neutral 类仍是分水岭。它从"训练+评测"双职退为纯评测试剂。
Q27:规范报分的完整格式是什么?
“数据集:MedNLI v1.0.0(官方 split);指标:test acc XX.X%(或宏 F1 X.XXX,注明口径);参照:伪基线 61.9 F1、ESIM 73.1 acc / Clinical-Longformer 0.484 F1(跨口径不可比)”。三要素:split、口径、参照系。
Q28:能在 MedNLI 上做数据增强吗?
技术上可以(回译、LLM 改写),但要清楚:增强只扩 train 不许碰 dev/test(官方边界);同 premise 派生的增强样本必须在 split 内闭合;增强后的分数与原版分数不可混报。
Q29:sentence1_binary_parse 字段到底要不要?
纯文本任务一律丢弃。只有复现"句法特征进模型"的古早路线才需要;加载时白名单过滤是防污染的最低成本方案(坑 9)。
Q30:同一 premise 的多条 hypothesis 要 group 处理吗?
训练时无所谓(梯度层面独立);但评估与分析时要意识到 group 结构:同 premise 的对数会放大该 premise 特性的权重,做显著性检验时按 premise 聚类 bootstrap 更稳。
Q31:想对部分标注做人审复核怎么抽样?
优先抽 neutral 判定的对(最难类)、contradiction 中含数值/日期的对(伪迹敏感)、以及模型高置信反对 gold 的对(主动学习式抽样)——三类合计 300-500 对即可对噪声率给出有意义的估计。
Q32:怎么和中文临床 NLP 对接?
没有官方中文版。可行路径:cblue(190) 的句对任务做功能对标;研究性翻译需注意翻译破坏缩写与去标识伪迹的原生性,仅适合做方法实验、不适合建基准(坑 5)。
事实清单(硬事实 30 条)
- MedNLI 由 Maximilian Romanov(UMass Lowell)与 Amil Shivade(IBM Research Almaden)发表。
- 论文标题:MedNLI - A Natural Language Inference Dataset for Electronic Medical Records。
- 会议:EMNLP 2018(布鲁塞尔),Anthology ID D18-1187,pp.1586-1596。
- DOI:10.18653/v1/D18-1187;arXiv 预印本 1808.06752。
- ACL Anthology 的 P18-1104 是 MojiTalk,与 MedNLI 无关。
- PhysioNet 版本 v1.0.0,发布日期 Oct 1, 2019,DOI 10.13026/C2RS98。
- 句对总数 14,049(文件行数口径);存在 14,042 漂移口径。
- 唯一 premise 4,683 个;平均派生约 3 hypothesis/premise。
- train 11,232 / dev 1,395 / test 1,422。
- premise 来源:MIMIC-III NOTEEVENTS 出院小结 Past Medical History 节。
- 句子切分工具:LingPipe。
- premise 平均 20.0 tokens,最长 202。
- hypothesis 平均 5.8 tokens,最长 20。
- 标签集:entailment / contradiction / neutral 三分类。
- 试点:100 premise × 2 名 board-certified 影像科医生 → 552 对。
- 试点一致性:Cohen’s κ=0.78。
- 试点主分歧:“Definitely true” vs “Maybe true”。
- 正式标注:4 名临床医生单注释,约 6 周完成。
- premise-oblivious 伪基线:61.9 F1。
- 论文 Table 3(dev/test acc):Random 33.3/—;Feature-based 51.9/51.9;BOW 71.9/70.2;InferSent 76.0/73.5;ESIM 74.4/73.1。
- direct transfer(SNLI/MultiNLI → MedNLI)全部负增益。
- sequential/multi-task 最大增益:BOW +2.4 / InferSent +0.9 / ESIM +0.3。
- MultiNLI 五 genre 中 slate 域迁移效果最好。
- fastText[MIMIC-III] 嵌入使全基线提升;InferSent 换嵌入 +3.1。
- UMLS/SNOMED retrofitting 全负:InferSent -1.7 / BOW -2.0 / ESIM -2.7。
- knowledge-directed attention:InferSent +0.2 / ESIM +0.3;60% 增益来自 neutral。
- 误差四类:数值推理、世界知识、缩写消解、医学知识边界。
- Clinical-Longformer 论文(arXiv:2201.11838)F1 口径:BERT 0.293 / BioBERT 0.324 / ClinicalBERT 0.444 / Clinical-BigBird 0.480 / Clinical-Longformer 0.484。
- 直系后继:MEDIQA 2019 RQE(405 对)、RadNLI(2021-06-29)、RuMedNLI(2022-04-01),均 PhysioNet 收录。
- jsonl 含 Stanford parser 二元句法树字段(sentence1_binary_parse 等)。
- 语料池限定为出院小结单一章节(Past Medical History),不含病程记录与影像报告文体。
- 平均派生率约 3.0 hypothesis/premise(14,049 ÷ 4,683)。
- 数据为一次性标注快照,v1.0.0(2019-10-01)后无版本更新。
- 凭证要求与 MIMIC-III 同级:已有凭证者签 DUA 即得,无重复审批。
- 论文测试了 sequential 与 multi-task 两种微调时序,增益均有限(最大 +2.4,BOW)。
- PhysioNet credentialed access 的前置条件含 CITI “Human Subjects Research” 培训认证。
术语表(24 条)
| 术语 | 释义 |
|---|---|
| NLI(Natural Language Inference) | 自然语言推理:判定 premise 与 hypothesis 间的蕴含/矛盾/中立关系 |
| premise | 前提句;MedNLI 中指出院小结病史节的单句 |
| hypothesis | 假设句;MedNLI 中由临床医生人工撰写 |
| entailment | 蕴含:premise 成立则 hypothesis 必真 |
| contradiction | 矛盾:premise 成立则 hypothesis 必假 |
| neutral | 中立:premise 证据不足以判定 |
| MIMIC-III | 贝斯以色列女执事医疗中心重症监护数据库,MedNLI 的文本来源 |
| NOTEEVENTS | MIMIC-III 文书表,含出院小结 |
| discharge summary | 出院小结:住院结束时的总结文书 |
| Past Medical History | 既往史节:出院小结中列举既有疾病的章节,MedNLI 语料池 |
| LingPipe | 文本处理工具包,用于句子切分 |
| Cohen’s kappa | 观察者间一致性系数,校正随机一致 |
| board-certified | 通过专业委员会认证的执业资质(美制) |
| premise-oblivious classifier | 刻意不给 premise 的伪基线,量化先验泄漏 |
| InferSent | BiLSTM max-pooling 句编码器 + SNLI 预训练的 NLI 模型 |
| ESIM | Enhanced Sequential Inference Model:交叉注意力增强的 NLI 架构 |
| BOW | 词袋模型:不计语序的基线表示 |
| retrofitting | 用同义词/关系图约束微调词向量的方法 |
| knowledge-directed attention | 以术语命中引导注意力权重的知识注入方式 |
| UMLS | 统一医学语言系统:医学术语标准本体 |
| SNOMED-CT | 临床医学术语系统标准 |
| credentialed access | PhysioNet 的凭证访问机制:培训+协议后开放 |
| DUA | Data Use Agreement,数据使用协议 |
| CITI | 伦理与人体受试者研究培训认证体系 |
| SNLI | Stanford Natural Language Inference:570k 通用域 NLI 数据集,任务范式确立者 |
| MultiNLI | 393k 多 genre 通用域 NLI 数据集,MedNLI 的主要迁移来源 |
| RadNLI | 放射报告域 NLI(2021,PhysioNet 收录),MedNLI 子代 |
| RuMedNLI | 俄语临床 NLI(2022,PhysioNet 收录),MedNLI 子代 |
| MEDIQA | 医学文本推理与摘要系列评测,2019 年含 RQE 问题蕴含子任务 |
| pairID | jsonl 行内句对唯一标识字段 |
附录
附录 A:条目信息速查卡
| 项目 | 内容 |
|---|---|
| 条目 slug | mednli |
| 任务 | 临床自然语言推理(三分类) |
| 规模 | 14,049 句对 / 4,683 唯一 premise |
| 切分 | 11,232 / 1,395 / 1,422 |
| 格式 | jsonl × 3(SNLI 字段兼容) |
| 来源 | MIMIC-III 出院小结 Past Medical History 节 |
| 标注 | 试点双标 κ=0.78(552 对)+ 正式单注释(4 clinicians) |
| 论文 | D18-1187(EMNLP 2018);arXiv:1808.06752 |
| 发布 | PhysioNet v1.0.0(2019-10-01),DOI 10.13026/C2RS98 |
| 获取 | 凭证制:MIMIC-III 凭证 + CITI + DUA |
| 许可 | 无独立 license 段,DUA 约定 |
| 本库占位 URL | https://www.qianfanghub.com/ai-ready-dataset/mednli/648 |
| 正式集标注者 | 4 名临床医生(clinicians),单注释 |
| 试点标注者 | 2 名 board-certified 影像科医生,双标 552 对 |
| BERT 时代口径 | F1(arXiv:2201.11838 五模型表) |
附录 B:DAIMS 评估全表
DAIMS 五维评估(D 数据/A 获取/I 互操作/M 维护/S 可持续性),每维 1-10 分:
| 维度 | 分数 | 依据 |
|---|---|---|
| D(Data quality) | 8 | 标注有试点一致性背书(κ=0.78);句长规格透明(Table 2);扣分项:正式集单注释无逐对复核、伪迹参与标签判定、单一章节来源 |
| A(Accessibility) | 7 | 凭证制但低门槛(MIMIC-III 凭证复用、无逐项审批);扣分项:非 MIMIC 用户需先过 CITI+MIMIC 通道;页面无独立 license 段,衍生发布需个案确认 |
| I(Interoperability) | 9 | SNLI 字段级兼容,任何 NLI 训练代码零改动加载;jsonl 通用格式;行数可断言校验;扣分项:句法树字段需显式过滤 |
| M(Maintenance) | 5 | v1.0.0(2019-10-01)后零更新;标签判例无修订机制;MIMIC-III 主库演进与本集脱钩;总分口径漂移(14,049/14,042)未官方澄清 |
| S(Sustainability) | 7 | PhysioNet 长期托管稳定;论文 ACL Anthology 永久可访问;生态后继(RadNLI/RuMedNLI)延续范式生命力;扣分项:无官方 leaderboard,版本停滞 |
| 综合评级 | 7.2/10 | 评测试剂型数据集的优等生:获取与互操作接近满档,维护性是唯一短板;适合作为基准长期引用,不适合当语料池 |
附录 C:逐项证据链自证
| 声明 | 证据位置 | 性质 |
|---|---|---|
| 14,049 句对与三切分 | 论文 Table 2/正文 + 三 jsonl 行数可验证 | 一手 |
| 4,683 唯一 premise | 论文正文 | 一手 |
| κ=0.78 与试点设计 | 论文 §3 标注章节 | 一手 |
| Table 3 五基线数字 | 论文 Table 3(dev/test acc) | 一手 |
| 迁移/嵌入/知识三组消融 | 论文 §5 实验节 | 一手 |
| 61.9 F1 伪基线 | 论文误差分析节 | 一手 |
| F1 口径五模型成绩 | arXiv:2201.11838 实验表 | 一手(第三方论文) |
| ~82% acc 口径 | 后续综述转引 | 二手,需溯源(坑 3) |
| PhysioNet 发布信息 | physionet.org/content/mednli/1.0.0/ | 一手 |
| D18-1187 vs P18-1104 | ACL Anthology 检索 | 一手 |
| 14,042 漂移口径 | arXiv 版与 PhysioNet 页面描述比对 | 一手间漂移,已存照 |
| MIMIC 版本 v1.3/v1.4 漂移 | 论文与 PhysioNet 页面表述比对 | 待核存照 |
| 标注速率(4 医生 × 6 周) | 论文标注章节 | 一手 |
| CITI 培训前置要求 | PhysioNet credentialed access 页面 | 一手 |
| 镜像裁剪风险 | 社区转载副本与官方行数比对 | 本库使用建议 |
证据链使用规则:一手 = 可直接溯源到论文/官方平台;二手 = 已注明转引链并标记需溯源;待核存照 = 官方渠道间存在漂移、本条目如实记录两种口径而不裁决。引用本条目数字时,建议连同"证据位置"列一并带到你的引用链里。
附录 D:数据获取决策树
需要 MedNLI
├─ 已持有 MIMIC-III 凭证?
│ ├─ 是 → PhysioNet 登录 → MedNLI 页签 DUA → 下载三 jsonl → 附录加载骨架
│ └─ 否 → 走 MIMIC-III 申请(CITI 培训 → 提交 DUA → 等待核准)
│ ├─ 不想等? → 改用公开替代:无完全同构物;句对任务看 cblue(中文)
│ └── 放射域推理需求 → RadNLI(同为凭证制,MIMIC-CXR 生态)
└─ 只要论文不看数据? → ACL Anthology D18-1187 直下 PDF,零门槛
附录 E:标签判定边界案例规范(依标注指南归纳)
| 情形 | 判定 | 依据 |
|---|---|---|
| premise 列"2 型糖尿病",hypothesis"患者有糖尿病史" | entailment | 明确支持 |
| premise 列"NIDDM",hypothesis"患者有 2 型糖尿病" | entailment | 缩写消解后支持 |
| premise 未提及手术史,hypothesis"患者做过阑尾切除术" | neutral | 未记录不等于不存在 |
| premise 明示日期 A,hypothesis 断言日期 B 与 A 矛盾 | contradiction | 数值边界明确冲突 |
| premise 年龄被舍入/日期被偏移,判定依赖该数值 | 按文本表面判定 | 伪迹是语料正式组成(坑 5) |
| 需要病历外临床常识链接才能成立 | neutral(默认保守) | "Definitely true vs Maybe true"分歧的规范解 |
附录 F:BibTeX 引用模板
@inproceedings{romanov-shivade-2018-mednli,
title = {MedNLI - A Natural Language Inference Dataset for Electronic Medical Records},
author = {Romanov, Maximilian and Shivade, Amil},
booktitle = {Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing},
month = {October-November},
year = {2018},
address = {Brussels, Belgium},
publisher = {Association for Computational Linguistics},
url = {https://aclanthology.org/D18-1187},
doi = {10.18653/v1/D18-1187},
pages = {1586--1596},
}
数据引用(PhysioNet 惯例):Romanov M, Shivade A. MedNLI - A Natural Language Inference Dataset for Electronic Medical Records (version 1.0.0). PhysioNet, 2019. DOI 10.13026/C2RS98。论文与数据双引是该数据集的规范引用姿势。
附录 G:坑点档案(与 §10 对照)
| 坑 | 一句话版 | 展开位置 |
|---|---|---|
| 坑 1 | P18-1104 是 MojiTalk,MedNLI 是 D18-1187 | §10 / §1 Q5 |
| 坑 2 | 14,049 vs 14,042 双口径 | §10 / §2.1 / FAQ Q11 |
| 坑 3 | ~82% acc 是二手转引,非原论文数字 | §10 / §5.3 |
| 坑 4 | κ=0.78 只属于试点 552 对 | §10 / §3.2-3.3 / FAQ Q13 |
| 坑 5 | 去标识伪迹参与标签判定,不可清洗 | §10 / §2.6 |
| 坑 6 | MIMIC-III v1.3/v1.4 版本表述漂移 | §10 / §2.1 / FAQ Q23 |
| 坑 7 | 无独立 license 段,别杜撰 CC 条款 | §10 / §6.2 / FAQ Q8 |
| 坑 8 | F1 与 acc 口径不可对表 | §10 / §5.2-5.3 / FAQ Q16-17 |
| 坑 9 | 句法树字段噪声 + 同 premise 跨 split 泄漏 | §10 / §2.1 / §5.4 |
附录 H:库内互链清单(含 record_id)
| 目标条目 | record_id | 关系方向 | 互链话术 |
|---|---|---|---|
| mimiciii | 590 | 上游 | premise 直接来源(NOTEEVENTS) |
| mimic-iii | 106 | 上游 | 同上(英文条目) |
| mimic-iv-note | 47 | 上游演进 | 出院小结的现代继任文体 |
| mimic-cxr | 16 | 平行 | 其报告文本派生 RadNLI |
| i2b2-n2c2-nlp | 14 | 平行 | 临床 NLP 共享任务谱系 |
| umls | 558 | 知识源 | retrofitting/attention 的术语本体 |
| cblue | 190 | 下游 | 中文医疗 NLP 基准(句对任务最近似物) |
| clicr | 150 | 下游 | 临床 NLP 评测集家族 |
附录 I:训练与评测复现骨架(PyTorch)
import json, torch
from torch.utils.data import Dataset, DataLoader
LABELS = {"entailment": 0, "contradiction": 1, "neutral": 2}
EXPECTED = {"mli_train_v1.jsonl": 11232, "mli_dev_v1.jsonl": 1395, "mli_test_v1.jsonl": 1422}
class MedNLIDataset(Dataset):
"""白名单字段加载:只取 sentence1/sentence2/gold_label(坑 9 防护)"""
def __init__(self, path, tokenizer, max_len=256):
self.rows = []
with open(path, encoding="utf-8") as f:
for line in f:
o = json.loads(line)
self.rows.append((o["sentence1"], o["sentence2"], LABELS[o["gold_label"]]))
assert len(self.rows) == EXPECTED[path.split("/")[-1]], "文件行数与官方口径不符"
self.tok, self.max_len = tokenizer, max_len
def __len__(self):
return len(self.rows)
def __getitem__(self, i):
s1, s2, y = self.rows[i]
enc = self.tok(s1, s2, truncation=True, max_length=self.max_len,
padding="max_length", return_tensors="pt")
return {k: v.squeeze(0) for k, v in enc.items()}, y
# 要点(对应 §5.5 八项核对):
# 1. max_len=256 ≥ 最长 premise 202 tokens(核对项 3)
# 2. 断言文件行数 = 11,232/1,395/1,422(核对项 1/官方 split)
# 3. 评测额外输出 per-class F1,单独报告 neutral(核对项 5)
# 4. 固定 seed 并跑 3-5 次报均值±std(核对项 8)
def evaluate(model, loader, device):
model.eval()
correct, total = 0, 0
with torch.no_grad():
for enc, y in loader:
logits = model(enc["input_ids"].to(device),
enc["attention_mask"].to(device),
enc["token_type_ids"].to(device))
correct += (logits.argmax(-1).cpu() == y).sum().item()
total += y.size(0)
return correct / total
附录 J:误差分析四类分桶 SOP(操作表)
依论文 §5 误差框架扩展的可操作分桶流程:
| 步骤 | 动作 | 判据 |
|---|---|---|
| 1 | 收集模型在 test 上全部错误对 | 只用官方 test,勿混 dev |
| 2 | 先按 gold 标签分三堆 | neutral 堆单列分析 |
| 3 | neutral 错误细分:pred=entailment(过度推断)/ pred=contradiction(过度否定) | 两亚型机理不同 |
| 4 | entailment/contradiction 错误按四类归因:数值推理/世界知识/缩写/医学边界 | 逐对标注触发词 |
| 5 | 伪迹敏感复核:错误对中含占位符、偏移日期、舍入年龄的比例 | 高占比说明模型在读伪迹 |
| 6 | 与 61.9 F1 伪基线的错误集求交 | 交集大 = 模型在重复文风先验错误 |
| 7 | 输出分桶占比表 + 每桶 5 条定性示例 | 论文可复用的报告粒度 |
附录 K:评测报告规范模板(可直接复制)
数据与切分:MedNLI v1.0.0(PhysioNet,DOI 10.13026/C2RS98),官方 train/dev/test = 11,232/1,395/1,422,
未做自定义重切分;加载时白名单字段(sentence1/sentence2/gold_label)。
模型与配置:[模型名]([预训练来源]),max_len=256(≥ 最长 premise 202),随机种子 [n] 次运行。
结果(test):acc XX.X ± X.X;宏 F1 0.XXX;per-class F1:entailment 0.XXX / contradiction 0.XXX / neutral 0.XXX。
参照系:伪基线(premise-oblivious)61.9 F1;论文基线 ESIM 73.1 acc(D18-1187);
后续工作 Clinical-Longformer 0.484 F1(arXiv:2201.11838)——acc 与 F1 口径互不可比。
声明:标注一致性仅试点子集(552 对,κ=0.78);正式集为单注释;premise 含 MIMIC-III 去标识伪迹。
模板的三处强制位(参照系/口径/声明)分别封堵坑 8、坑 4、坑 5 三类高频引用事故——报告不带这三处,等于把解释权让给下游的口径杜撰。
附录 L:premise 高频医学缩写的背景表
MedNLI 误差分析把"缩写消解"列为四类困难之一。以下为既往史文本中高频出现、且与标签判定直接相关的缩写背景(通用医学常识,非数据集内句子转录):
| 缩写 | 全称 | 中文 | 推理角色 |
|---|---|---|---|
| DM / NIDDM / IDDM | Diabetes Mellitus / Non-Insulin-Dependent / Insulin-Dependent | 糖尿病/非胰岛素依赖型/胰岛素依赖型 | 旧式分型与现行"1/2 型"术语的映射是典型世界知识陷阱 |
| CAD | Coronary Artery Disease | 冠状动脉疾病 | 与"心脏病"的上下位关系决定 entailment 方向 |
| CHF | Congestive Heart Failure | 充血性心力衰竭 | 疾病-机制推理(泵血功能)链的常用节点 |
| COPD | Chronic Obstructive Pulmonary Disease | 慢性阻塞性肺疾病 | 与吸烟史假设的关联推理 |
| CVA | Cerebrovascular Accident | 脑血管意外(卒中) | 同义展开类考点的代表 |
| MI | Myocardial Infarction | 心肌梗死 | 缩写歧义(二尖瓣关闭不全)是干扰源 |
| HTN | Hypertension | 高血压 | 既往史列举中最高频条目之一 |
使用说明:这张表用于误差分析时归因"缩写类错误",或构建缩写敏感的评估子集;不要把它当"标准答案表"——premise 中的实际用法以文本表面为准(坑 5 原则同样适用于缩写)。
附录 M:与库内 MIMIC 条目的边界声明
MedNLI 与 mimiciii(590)/mimic-iii(106) 的关系需要一条清晰的边界声明,避免互链时互相"吞并":
| 问题 | 答案 |
|---|---|
| MedNLI 包含 MIMIC-III 的表格数据吗? | 不包含。仅有出院小结史节句子(文本),无结构化数据 |
| 拿到 MedNLI 能还原完整病历吗? | 不能。发放物不含 patient_id/row_id 映射,句级溯源需另行持有 MIMIC-III 并自行对齐 |
| MedNLI 能替代 MIMIC-III 申请吗? | 不能。凭证体系绑定 MIMIC-III,且多数研究需要两者的组合 |
| 在 MIMIC-III 上训练、MedNLI 上评测合规吗? | 合规且常见(同凭证体系内),这正是 §4.4 域内红利的标准用法 |
| MedNLI 的标签能回写进 MIMIC 库吗? | 标签属于句对而非病历,回写无意义;再标注衍生品的发布走 §6.2 个案确认 |
一句话边界:MedNLI 是 MIMIC-III 文本层的一次语义化切片,两者共享凭证体系但互不包含。互链话术应写"上游文本来源",不应写"同一数据的两种形态"。
附录 N:同 premise 派生结构核查 SOP
利用 4,683 个唯一 premise 的 group 结构可以做两件低成本的质量核查:
from collections import defaultdict
groups = defaultdict(list)
for split in ["mli_train_v1.jsonl", "mli_dev_v1.jsonl", "mli_test_v1.jsonl"]:
with open(split, encoding="utf-8") as f:
for line in f:
o = json.loads(line)
groups[o["sentence1"]].append((split, o["gold_label"]))
# 核查一:跨 split premise 占比(泄漏风险定量)
cross = sum(1 for v in groups.values() if len({s for s, _ in v}) > 1)
print(f"跨 split 的 premise 数: {cross} / {len(groups)}")
# 核查二:同一 premise 内的标签共现(标注一致性旁证)
from collections import Counter
co = Counter(frozenset(l for _, l in v) for v in groups.values())
print("标签共现分布 Top5:", co.most_common(5))
两件核查的意义:核查一给出你所用版本的精确泄漏面(§2.1 存照的定量版);核查二中"同 premise 内三标签齐全"的比例过高时,说明 hypothesis 撰写高度模板化,此时伪基线(§4.2)效应也会放大——两个数字都建议进你的实验附录。
附录 O:年度大事记时间线
| 时间 | 事件 | 存照要点 |
|---|---|---|
| 2016 | MIMIC-III 正式发布(Johnson et al., Sci Data) | MedNLI 的文本母体就位 |
| 2017 | MultiNLI 发布(393k 对) | MedNLI 的主要迁移来源域就位 |
| 2018-08 | arXiv 预印本 1808.06752 提交 | 摘要口径含 14,042 漂移(坑 2) |
| 2018-10/11 | EMNLP 2018(布鲁塞尔)发表,Anthology ID D18-1187, pp.1586-1596 | 五基线 + 三组消融首次公开 |
| 2019 | MEDIQA 2019 含 RQE 子任务(405 对) | 范式首次向"问题对"扩展 |
| 2019-10-01 | PhysioNet 收录 MedNLI v1.0.0,DOI 10.13026/C2RS98 | credentialed access 模板成型 |
| 2021-06-29 | RadNLI 上线(PhysioNet) | 范式复制到放射报告域 |
| 2022-01 | Clinical-Longformer 论文(arXiv:2201.11838) | BERT 时代 F1 口径五模型数字定型 |
| 2022-04-01 | RuMedNLI 上线(PhysioNet) | 范式跨语言复制,一致性测量升级 |
| 2026-09 | 本库收录研究(本条目) | 库内 8 条互链见附录 H |
时间线的读法:从母体就位(2016)到数据集发表(2018)仅隔两年,说明"范式+母体"齐备后临床 NLI 数据集的生产周期可以很短;而从发表到 PhysioNet 收录隔了约一年(2018-10 → 2019-10),这段滞后期是凭证制发布的固定成本,做发布计划时应预留。
附录 P:常见错误用法 Top 清单(反模式对照)
| 反模式 | 后果 | 纠正 |
|---|---|---|
| 把 MedNLI 当预训练语料 | 14k 句对喂不出表示,还烧掉评测集独立性 | 预训练用 MIMIC 全文,MedNLI 只做评测/微调 |
| 自行 shuffle 重切 train/test | 同 premise 泄漏,分数虚高不可复现 | 永远用官方三文件(§5.4) |
| 把 neutral 标签读成"临床上为假" | 语义层级错误,下游决策被污染 | neutral = 证据不足,非否定(§2.3) |
| 清洗占位符与偏移日期后再训练 | 破坏部分标签的成立前提,分布漂移 | 伪迹保留原样(坑 5) |
| 用 dev 反复选模型后报 dev 成绩 | 1,395 对的 dev 被选穿,过拟合选型 | dev 只选型、test 只报一次(§4.6) |
| 跨口径对比 73.5 与 0.484 | 引用事故 | acc 与 F1 分轨(坑 8) |
| 在论文里写"标注 κ=0.78"无限定语 | 越界引用质量声明 | 限定试点 552 对(坑 4) |
| 拿镜像 jsonl 跑分 | 行数/字段残缺,结果不可信 | §2.10 五项自查(附录 N 脚本可复用) |
附录 Q:三类读者的 10 分钟最小了解路径
工程读者(只想接上数据):
§6.1 五步获取 → §2.4 字段表 → §5.4 加载代码 → §2.10 自查清单。10 分钟内可完成从注册到 assert 通过的全流程。若被凭证卡住,转 §6.4 卡点表。
科研读者(要写论文报分):
§4.1 基线表 → §4.2 伪基线 → §4.6 统计卫生 → §5.5 八项核对 → 附录 K 报分模板。重点是把"口径三要素"写进实验节;引用话术直接取 §7.5。
评审/编辑读者(要判断一篇 MedNLI 论文的成色):
直接查四件事:split 是否官方、口径是否注明、伪基线是否参照、κ 引用是否限定试点。四项全过的 MedNLI 论文,实验部分基本可信;任何一项缺失,先要求补声明再谈数字。交叉验证用 §11.5 速纠卡。
附录 R:发布方复刻清单(发布敏感临床标注数据集的操作顺序)
MedNLI 路径被 RadNLI/RuMedNLI 验证过两次。依 §6.5 模板归纳的可复刻操作顺序:
| 步骤 | 动作 | 关键控制点 |
|---|---|---|
| 1 | 锚定既有凭证体系 | 复用源数据集(如 MIMIC)的凭证与 DUA 框架,不新建审批通道 |
| 2 | 先试点测一致性 | 3-5% 预算做双标试点,产出可引用的 κ 数字与分歧画像(§8.1) |
| 3 | 正式标注留质量存照 | 如只能单注,明确写出;一致性与规模二选一时缩小规模 |
| 4 | 格式兼容主流工具链 | 字段命名照搬目标社区惯例(MedNLI 照搬 SNLI 的决策复刻) |
| 5 | 配伪基线 | 设计至少一条"信息不对称基线"量化先验泄漏(§4.2 模式) |
| 6 | 论文开放、数据凭证制 | 全文免费可读 + 数据走凭证,两者不冲突 |
| 7 | 发布口径一次钉死 | 总量、切分、版本在摘要与平台页对齐,杜绝 14,049/14,042 式漂移(坑 2 教训) |
| 8 | 声明伪迹政策 | 去标识伪迹"保留原样"写进文档,禁止下游清洗(坑 5 教训) |
八步中第 2、7、8 是 MedNLI 用自身教训补齐的三项——复刻者从第一步就带上它们,可以省掉一轮社区纠错成本。
附录使用说明
- 附录 A-H 为事实与关系类(速查、评估、证据、获取、边界、引用、坑点、互链),按需直取。
- 附录 I-N 为操作类(复现、分桶、报分、缩写、边界声明、核查脚本),动手前通读。
- 附录 O-R 为元层(时间线、反模式、读者路径、复刻清单),写综述或做发布时用。
- 全部附录与正文坑点编号(坑 1-坑 9)交叉索引,检索入口见 §1 导航地图。
收尾声明
本条目的数字边界:所有硬数字(14,049/4,683/11,232/1,395/1,422/κ=0.78/61.9 F1/五基线/三组消融/F1 五模型)均有附录 C 所列一手出处;凡属推断或类比(如 §2.8 的标注速率换算、§4.9 的谱系映射),正文均以"约/量级/推论"措辞标明,不与硬数字混排。两条官方渠道间的漂移(坑 2/坑 6)按存照处理,未做裁决。
条目写作遵循的三条原则:一,每个口径冲突都给出两个口径及出处,不代读者选边;二,每个负结果都附机理假说,不消费"失败八卦";三,每个使用建议都可回溯到论文原文或 PhysioNet 页面的具体章节。检索者发现任何一处无法回溯的表述,按事实清单逐条核对即可定位——这也是本条目自我修订的入口。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- blue-benchmark — 共享标签:医疗NLP / 临床文本 / 医学问答与基准 / 评测基准
- medcalc-bench — 共享标签:医疗NLP / 临床文本 / 医学问答与基准 / 评测基准
- lunguage — 共享标签:医疗NLP / 临床文本 / 医学问答与基准
- mediqa — 共享标签:医疗NLP / 临床文本 / 评测基准 / 电子健康记录
- ehrsql — 共享标签:医疗NLP / 临床文本 / 评测基准 / 电子健康记录
- ehrshot — 共享标签:医学问答与基准 / 评测基准 / 电子健康记录
- rexerr — 共享标签:医疗NLP / 临床文本 / 评测基准
- clinicaltrials-gov — 共享标签:医疗NLP / 临床文本 / 评测基准
- i2b2-n2c2-nlp — 共享标签:医疗NLP / 医学问答与基准 / 评测基准
- cblue — 共享标签:医疗NLP / 医学问答与基准 / 评测基准
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

