信息速览
医生读一位老病人的出院小结,从来不是从第一份读到第五份就完事。真正的读法是追问:这一回住院处理的是哪个诊断,用了什么药,上一次为什么换方案,这次有没有复发,出院交代比上次改了什么。这五问不是五道互不相干的单选题,后一问往往以前一问的答案为前提;而且每一问的答案都要能指回某一张小结的某一段,否则它就只是一句听起来合理的推测。文本层面的难处有三层:五份小结可能出自五位医师之手,格式与缩写习惯各不相同;关键信息随时间累加,早年的处置与后来的转归散落在不同文档里;一件事确曾发生与一件事只是被提及,在字面上常常只差一个否定词或一个时间状语。
公开的医学问答基准几乎都不考这件事。考医学知识的题库没有患者上下文;带患者上下文的题库大多只问一轮,答完就散;少数配了证据标注的资源又只在单份文书内部打转,不要求模型在一位患者的多份小结之间来回求证。评测于是留下一个空档:模型可以单轮答得漂亮,却在连续追问里越答越偏,还能把答案说得头头是道却指不出半句原文。
EHRNote-ChatQA 基准就是冲着这个空档来的。它把 967 位患者的 2,852 份去标识 MIMIC-IV 出院小结组织成一问一追的多轮对话:每一道内容题后面紧跟一道溯源题,要求模型说明刚才那个答案是由哪一份小结的哪几个小节支撑的。8,036 对这样的配对,合计 16,072 道五选一题,全部经医学专家逐样本审阅。它的稀缺性不在题量,而在"答完还要交代出处"这件事被做成了可批量评分的结构。一屏速览见下表。
| 维度 | 内容 |
|---|---|
| 全名 | EHRNote-ChatQA: A Benchmark for Evidence-Grounded Multi-Turn Clinical Question Answering over Longitudinal Discharge Summaries |
| 发布方 | PhysioNet;数据由 KAIST 与韩国多家医疗机构组成的团队构建并捐赠 |
| 首次发布 | 2026 年 10 月 19 日,版本 1.0.0(官方标注为初始版本) |
| 最近改动 | 无修订版本,官方 Release Notes 只有一行 |
| 原始来源 | MIMIC-IV-Note v2.2 的去标识出院小结(官方标注的父项目) |
| 患者级样本 | 967 个(一个样本对应一位患者、一段完整对话) |
| 出院小结数 | 2,852 份,每位患者 1 至 5 份 |
| 题目总数 | 16,072 道(内容题 8,036 道加溯源题 8,036 道) |
| 题型 | 五选一(A 至 E),内容题之后必有且仅有一道溯源题 |
| 问题类别 | 8 类:诊断、症状、操作、用药、微生物、临床评估、临床结局、出院计划 |
| 轮次结构 | 内容轮与溯源轮交替,两者共享同一个轮次编号 |
| 出题方式 | 模型依专家定义的结构化方案与提问模板生成,再由医学专家逐样本审阅修订 |
| 文件格式 | 两个 CSV 文件:笔记表与问题表 |
| 许可与访问 | PhysioNet Credentialed Health Data License 1.5.0,须签数据使用协议并完成指定培训 |
| 典型用途 | 临床大模型评测、检索增强与智能体管线评估、多轮一致性分析、证据归因研究 |
§1 它要解决的具体麻烦
1.1 病历追问天然是连着来的
临床上去核对一位患者的既往住院经过,是典型的迭代动作。医生手上有这个人的五份出院小结,要看的往往是:第一次住院因为什么来,那次处理了什么,再入院时情况有没有变,方案为什么换,最后这一次离院时交代了什么。这五问不是五道独立的选择题,后面每一问都以前面几问的答案作为前提。
这件事在文本层面有三个难处。第一是写法不同:五份小结可能由五位不同医师书写,格式、详略、缩写习惯都不一样,同一件事在上份里写成全称、下份里写成缩写甚至换了说法。第二是累加性:信息随时间叠加,早期的自理方式与后来的转归分别散在不同文档里,只看一份就答不完整。第三是可核验性:一个听起来很可能对的答案在临床语境里并不值钱,医生需要知道这句话的原文在哪一段,而不是被一段自信的表述说服。
因此自动化系统有两项能力缺一不可:在一串相关提问里保持准确,而不是把每一题都当成孤立查询从头答一遍;把每个答案落到确切可追的证据上,而不是给出流畅但无法核实的说法。语言模型在自由生成时可能给出读起来通顺却不受原文支撑的答复,这一点在临床语境里尤其危险。
1.2 三条常见的错误期待
第一条,期待它是"更大的多选题库"。它的 16,072 道题看起来比很多执照题库还多,但题目的目的不是覆盖医学知识面,而是测试"在给定这个患者的文本里能不能找出并守住答案"。拿它训练知识储备,方向就反了。
第二条,期待它能当训练集。它是评测基准,不是语料池:题目由模型生成、专家修订,没有独立的标注中间层,也没有训练与验证的划分口径。用它做监督微调,等于把评测卷子喂给模型。
第三条,期待它的"出处"是原文摘录。溯源题的选项给出的是由小结编号、文书日期与小节标题标识的来源位置,并不要模型写出一段引用原文。把它当引文生成任务来评,会评错东西。
1.3 它能给到的与给不到的
| 你的需求 | 它给的 | 够不够 |
|---|---|---|
| 多轮连续追问下的稳定性评测 | 每位患者一段完整对话,轮次字段可重排 | 够,这是它最主要的设计目标 |
| 证据归因与溯源能力评测 | 每道内容题配一道追问出处的题 | 够,且配对粒度是轮级而不是整段一个标签 |
| 跨文档长文本阅读评测 | 每位患者 1 至 5 份小结,五档长度 | 够做档位间对照,不足以做超长文本压力测试 |
| 八个临床领域的分层分析 | 段级的类别字段,八个取值 | 够做分层报告 |
| 沿时间维度核对 | 有小结序号与两个日期列可回到时序 | 够,但只有小结级时序,没有住院内的小时级过程 |
| 开放式生成作答的评测 | 无 | 不够,全部为五选一 |
| 训练一个读病历的模型 | 无 | 不够,无训练划分、无标注中间层 |
| 结构化表与文书联合推理 | 无 | 不够,只收出院小结,不含病程记录、护理记录、检验表 |
| 多中心泛化验证 | 无 | 不够,单一医疗系统来源 |
1.4 你的处境与它能帮到的事
| 你的处境 | 它能帮你什么 | 下一步该做什么 |
|---|---|---|
| 你训了一个临床问答模型,想知道它对连续追问有多稳 | 提供同一样本内一串相关的提问,可统计错误是否沿轮次累积 | 固定同一批患者编号,按轮次逐题打分,画出随轮次的输出变化 |
| 你在做检索增强,纠结该召回几个小节 | 溯源题的正确答案被要求最小化且充分,可作上限参照 | 把召回片数与溯源题的正确情况对齐分析,别只看端到端结果 |
| 你在做智能体管线,担心每步都丢一点上下文 | 提供必须回溯前轮才能答对的题目集合 | 对比带历史与不带历史两种输入的输出差异 |
| 你要向审稿人解释为什么单轮分数不代表临床可用 | 论文侧给出单轮成绩不能稳定迁移到多轮的发现 | 同时报单轮与多轮两个数,别只报一个 |
| 你要一个经专家逐份批阅的评测集 | 每个样本都由医学专家审阅,必要时修订后才保留 | 引用时须写明单人审阅这一限制 |
| 你想测开放式生成的医学准确性 | 不适用,全部为五选一 | 换用提供开放题口径的其他资源 |
1.5 一句话判断
它不适合用来让模型变得更懂医学,而适合用来让模型的答案能被追问到出处:把严谨性拆成两个可自动评分的动作——答对这道题,以及说清是哪一小节让这个答案成立。
1.6 不适合谁:四条边界
**不适合做知识训练。**题目里的干扰项有一类专门取临床上说得通、但未记在这位患者文书中的内容,这类干扰项如果被当作学习目标,会把模型推向凭先验猜测而非依据文本作答。
**不适合做开放生成评测。**全部为五选一,评测信号是选项字母。想测生成能力得自己改造口径,改造后的数字与官方口径不可比。
**不适合做类别之外的横向结论。**每位患者一个样本、一个主类别,人群分层与时间分层都没有;讨论哪一类更难必须限定在八个大类内部的归档分配上。
**不适合做机构间泛化结论。**来源只有 MIMIC-IV 一家医疗系统,官方把不能完整反映不同机构与不同电子病历系统之间的差异写进了使用说明。
§2 数据构成与规格
2.1 两个文件各管一段
数据集只有两个 CSV 文件,notes.csv 与 questions.csv,分工非常干净:笔记表是给定什么文本,问题表是要回答什么,两者靠患者编号关联。要看某道题对应的原文,必须先靠患者编号从笔记表取出这个人的全部小结,再按日期或小结序号排成时间顺序。
| 文件 | 一行是什么 | 官方口径的行数 | 关键列 | 用途 |
|---|---|---|---|---|
| 笔记表 | 一份出院小结 | 2,852 行 | 患者编号、小结序号、小结标识、正文 | 提供上下文与证据池 |
| 问题表 | 一道题 | 16,072 行 | 患者编号、类别、轮次位置、轮次编号、轮次类型、题面、五个选项、答案键 | 提供评测题目与答案键 |
官方没有给出两个文件的字节大小,也没有提供打包压缩包。至于文件目录里是否还有说明文档或清单文件,本页无法确认——该项目的文件目录在本区域返回 403,属凭证访问限制(§5.1)。因此下文两节的字段字典逐条来自官方数据描述节的表格,不是从文件里读出来的。
核对外键时的一个实用判断:笔记表里同一个患者编号会出现一到五行,问题表里同一个患者编号出现的行数等于该患者这轮对话的题数乘以二,因为每道内容题后面都跟着一道溯源题。
2.2 笔记表的字段字典
| 列 | 类型 | 含义 | 使用注意 |
|---|---|---|---|
subject_id |
整数 | MIMIC-IV 患者标识,指向问题表的外键 | 一人对应一段对话,也是划分评测子集时的分组键 |
note_num |
整数 | 该小结在这位患者按时序排列的小结集合中的位置,取值 1 至 5 | 溯源题选项里标注的小结编号就是它 |
note_id |
字符串 | MIMIC-IV-Note 的出院小结标识,由患者编号等三段拼接而成 | 可用它回到父项目取对应的原始笔记 |
hadm_id |
整数 | MIMIC-IV 住院标识,指向该小结记录的那次住院 | 想接结构化表靠它 |
note_seq |
整数 | 该出院小结在这位患者下的 MIMIC-IV-Note 序号 | 与小结序号不是一回事:前者是全库序号,后者是本次抽取集内的位置 |
chartdate |
日期 | 小结的开具日期,照抄父项目原值 | 溯源题选项里的日期来源 |
storetime |
时间戳 | 小结的存档时刻,照抄父项目原值 | 与开具日期可能相差很多天,别混用 |
text |
字符串 | 送进出题管线的小结正文 | 原文头部被加上入院号与日期两行抬头,空白字符被规范化;去标识替换符沿用父项目 |
小结序号与全库序号的区别值得一提。全库序号是父项目里的原始流水号,一个人如果有八份小结,序号会一直往上排;而这里的小结序号只对被抽进这个基准的那些小结重新编号,从 1 排到最多 5。溯源题选项里给出的是后者,因为它才和模型看到的上下文一致,你给模型看的就是五份重排过的材料。
2.3 问题表的字段字典
| 列 | 类型 | 含义 | 使用注意 |
|---|---|---|---|
subject_id |
整数 | 患者标识,外键;每个取值对应一段完整对话 | 同一个人不会被拆给两段对话 |
qa_category |
字符串 | 整段对话所属的临床域,八个取值 | 是段级属性,同一段对话内所有行的取值相同 |
turn_order |
整数 | 轮次在对话中的位置,从 1 开始 | 重建对话顺序必须按它排序 |
turn_index |
整数 | 所属内容题的编号;内容轮与它配对的溯源轮取值相同 | 配对靠它,不是靠轮次位置 |
turn_type |
字符串 | 内容题为临床内容问,溯源题为追问上文依据 | 每道内容题后紧跟且仅跟一道溯源题 |
question |
字符串 | 喂给模型的题面 | 溯源题的题面通常回指上一问 |
option_a 至 option_e |
字符串 | A 至 E 五个选项 | 溯源题的选项是编号、日期与小节标题的组合 |
correct_answer |
字符串 | A 至 E 中的正确选项字母 | 官方说明答案位置事后被打乱,使正解在 A 至 E 上近似均匀 |
这里真正容易踩错的是两个编号的关系。若一段对话有六道内容题、每道配一道溯源题,那么这段对话共十二行:轮次位置从 1 排到 12,而轮次编号只有六个取值、每个出现两次。想取第 k 个内容问的答案,应按轮次编号等于 k 去取,而不是按轮次位置等于 k。最后一个细节同样重要:官方明确写过,正确答案的位置在修订完成后被重新打乱,目的是让正解在 A 到 E 上近似均匀——所以它既不能用来研究位置偏好,也不需要你去纠正位置偏好。
2.4 一段对话的完整解剖
把两个表拼起来,一个样本的结构如下(下表是示意,取值用于说明结构而非摘自文件):
| 轮次位置 | 轮次编号 | 轮次类型 | 问的是什么 | 答案依赖什么 |
|---|---|---|---|---|
| 1 | 1 | 内容题 | 这次住院处理的是哪个诊断 | 由本次小结支持的诊断实体 |
| 2 | 1 | 溯源题 | 上一问的答案由哪些出处支撑 | 小结编号、日期与小节标题的组合 |
| 3 | 2 | 内容题 | 针对该诊断用了哪些药物或操作 | 药物或操作实体,含剂量与途径 |
| 4 | 2 | 溯源题 | 上一问的答案由哪些出处支撑 | 同上 |
| 5 | 3 | 内容题 | 治疗后是好转、恶化还是无变化 | 结局实体与随时间的状态 |
| 6 | 3 | 溯源题 | 上一问的答案由哪些出处支撑 | 同上 |
| 后续偶数行 | 依此类推 | 溯源题 | 继续追问上一问的依据 | 同上 |
三点结构含义。第一,配对粒度是轮级:不是每份小结配一个出处标注,而是每一问答完立刻交代出处,这让模型没法先猜完一轮再统一补理由。第二,对话长度不固定:轮数取决于样本所属类别与所用的是单篇还是多篇模板(§4.5),因此按轮次做分析时必须先对齐轮次编号而不是行号。第三,不存在官方的训练划分:全部 967 段对话都是评测对象,官方没有给出任何区分训练与测试的列或文件,也不存在标杆榜单。
2.5 八个类别的取值与归档
| 中文类别名 | 取值 | 官方数据描述中的样本数 | 这类题追问的核心 |
|---|---|---|---|
| 诊断 | diagnosis |
117 | 主诊断是什么、何时确立、状态如何 |
| 症状 | symptom |
122 | 临床表现的出现与演变 |
| 操作 | procedure |
120 | 做了什么处置、为什么做、结果怎样 |
| 用药 | medication |
124 | 给了什么药、剂量途径、因何而给 |
| 微生物 | microbiology |
121 | 培养与敏试结果所指的病原与解读 |
| 临床评估 | clinical_assessment |
120 | 医师对病情的判断与推理依据 |
| 临床结局 | clinical_outcome |
122 | 出院时的状态与结论 |
| 出院计划 | disch_plan |
121 | 出院带药、随访安排与注意事项 |
上表八个数字合计正好是 967,它们来自官方数据描述节的类别表,说明的是这一段对话被归入哪一类,由抽样设计直接决定(§3.3),不是后期对题目内容的清点。类别是段级属性:同一位患者的整段对话只属于一类,因此想做同一个人既考诊断又考用药的混合剖析,这套数据里没有。
2.6 与同类资源的字段差异
| 对比项 | EHRNote-ChatQA | EHRNoteQA | ArchEHR-QA | emrQA |
|---|---|---|---|---|
| 轮次形态 | 多轮,内容题后必配溯源题 | 单轮 | 单轮为主 | 单轮 |
| 每题配证据 | 有,且是必答的第二问 | 无独立的证据问 | 有证据标注,非必答第二问 | 有标注 |
| 文档范围 | 一位患者 1 至 5 份小结 | 一位患者多份小结 | 单份临床文档 | 单份临床文档 |
| 题型 | 五选一 | 五选一与开放题两套口径 | 抽取式证据加自由生成 | 抽取式为主 |
| 类别编码 | 段级类别字段,八个取值 | 主题标签 | 未见同样的段级类别字段 | 模板类型 |
| 主键 | 患者编号加轮次编号 | 患者编号 | 患者编号加问题编号 | 患者编号加问题编号 |
这张表想说明的只有一件事:它把轮次和证据两个维度都做成了字段,而不是把其中一个做成文字说明。这决定了后面所有用法——比如按轮次位置画稳定性曲线、把溯源题单独抽出来当一个子任务跑、或者用轮次编号把内容题与溯源题拼成严格整链口径。
§3 它是谁的数据
3.1 贡献者与机构
作者列表共 17 人,跨九个机构,主体在韩国。署名的第一位是 Jiyoun Kim(KAIST),末位是 Edward Choi(KAIST)。
| 机构 | 作者 | 侧重点 |
|---|---|---|
| KAIST | Jiyoun Kim、Jeewon Yang、Hangyul Yoon、Sunjun Kweon、Jong Hak Moon、Edward Choi | 方法设计与数据构建 |
| 首尔大学医院、首尔大学盆唐医院 | Muhan Yeo、Jun Young Lee、Minjae Cho | 床旁审阅与题意修订 |
| 成均馆大学 SAIHST | Eunhye Jang | 数据治理与流程设计 |
| 延世大学医学院(含 Severance 医院神经科) | Su Ji Lee、Heejo Han | 临床审阅与题意修订 |
| 首尔市立医院神经科 | Heejae Jung | 临床审阅 |
| 江南 Severance 医院 | Doyun Kwon | 临床审阅 |
| 国立癌症中心麻醉与疼痛医学科 | Jaehun Lee | 临床审阅 |
| 西奈山伊坎医学院 | Jung Oh Lee | 临床审阅 |
| 三星医疗中心 | Daseul Kim | 临床审阅 |
这份名单本身就是一份说明书:接近一半的作者来自临床科室而不是自然语言处理实验室。这与它把出题方案交给医学专家定义、把每个样本都由专家通读并在必要时改写写进流程的做法一致。名单里还有 Sunjun Kweon——他同时也是另一份出院小结基准的第一作者,这一点在 §6.2 会展开讲。
3.2 时间线
| 时间 | 事件 | 意义 |
|---|---|---|
| 2026 年 6 月 14 日 | 预印本首版上线 | 数据与评测结果先以论文形式公开 |
| 2026 年 6 月 16 日 | 预印本第二版 | 修订表述 |
| 2026 年 10 月 19 日 | PhysioNet 上线,版本 1.0.0,分配该版本 DOI | 数据本体开放,须凭证访问 |
| 2026 年 10 月 21 日 | 预印本第三版 | 与资源上线对齐,评测对象数量有改动(§10) |
从论文到数据落地隔了约四个月。这期间做了什么,可以从官方方法节看出轮廓:把构成方式与审阅流程讲清楚,并把生成环节的合规口径补齐(§4.4)。它没有漫长的版本迭代史——一个初版加三版预印本,这在基准类资源里属正常,因为它的价值在于一次性把口径定义清楚,而不是年年扩版。
3.3 队列是设计出来的
抽样不是随便挑的,而是按格铺开的,这一点决定了它后面能做哪种分层分析。
| 设计环节 | 官方口径 | 含义 |
|---|---|---|
| 初始队列 | 1,000 名患者 | 生成阶段的规模 |
| 按小结数量分组 | 五组,每组 200 人 | 分别持有 1、2、3、4、5 份出院小结 |
| 类别与数量的交叉 | 每个类别乘数量的格 25 人 | 八个类别乘五组共四十格,每格 25 人,合计 1,000 |
| 审阅后的剔除 | 33 个样本 | 题意无法修订成临床真实追问,或去标识缺失导致溯源题无解 |
| 最终规模 | 967 个样本 | 发布口径 |
最终各档为:持一份小结 200 个、两份 200 个、三份 198 个、四份 187 个、五份 182 个。从 1,000 收缩到 967 不是均匀发生的,而是集中在文档数偏多的两组——文档越多,两件事越容易出错:一是整串题难以修订成临床上合理的追问序列,二是原文的替换符一旦落在小节标题上,溯源题的选项就失去意义。
这套设计带来直接的好处:可以按文档数量做分层报告。想说明模型在需要跨五份小结作答时掉在哪里,不必再做额外处理,只需按小结序号的最大值把样本分成五组分别打分。代价是这几个档位的配比是人为铺平的,不代表真实住院人群里持有五份小结的患者有多少,因此任何把五档结果加权平均成一个总分的做法都要先说明权重来源。
3.4 来源的三个层次
理解这份数据要分清三层。第一层是 MIMIC-IV(含去标识处理,已过同一份伦理审查);第二层是 MIMIC-IV-Note v2.2,即官方标注的父项目,本身是一份去标识自由文本语料;第三层是笔记表里的正文列,它在原文之前加上了两行抬头(入院号与日期),并对空白字符做了规范化。
第三层这个加抬头的动作值得留意,它不是无害的格式整理。模型读上下文时第一眼看到的就是入院号与日期,这等于明着告诉模型这份小结属于哪一次住院、什么时候写的。换句话说,官方把溯源所需的一部分线索直接摆进了上下文,溯源题真正要考的因此不是记住日期,而是知道这句话写在简短住院病程里还是写在出院医嘱里。
官方也把伦理口径写死了:数据派生自 MIMIC-IV,沿用同一份伦理审查批准;本数据集没有引入任何新的患者数据。这句话有两层意思——你不能用它绕过 MIMIC-IV 的访问控制;同时也说明使用方不需要为它单独走一遍伦理审查,但不代表不需要走 MIMIC-IV 的那一份。
§4 它最独特的东西
4.1 内容题与溯源题的成对结构
多数基准做的选择题,评分只看选对没有。EHRNote-ChatQA 把一道题拆成两问:第一问问临床内容,第二问问刚才那个答案的依据在哪。这一设计的锋利之处在于它压掉了很大一块蒙对的空间——模型可能凭先验挑出临床上正确的答案,但要同时命中由小结编号、日期与小节标题精确组成的选项组合,就必须真的回到文本里定位过。
官方对溯源题的正确项规定了最小化且充分两条同时成立的标准:所选小节必须足以支撑上一问答案里的全部临床细节;同时,若某个小节的信息已被包含在另一个所选小节里,它就不得重复入选。这一条很关键——它把溯源题从能不能找到相关内容升级成能不能界定内容的边界,也让追求多召回的检索系统在这类题上直接失分。
4.2 八类问题的名称与判定口径
| 类别 | 判定的是 | 题链里关注的东西 |
|---|---|---|
| 诊断 | 这一次处理了什么诊断 | 是否为主诊断、断言是否肯定、累及部位与侧别、时间 |
| 症状 | 出现了什么临床表现 | 药物与操作对症状是改善还是加重 |
| 操作 | 做了什么处置 | 操作的适应关系、与诊断之间的因果链 |
| 用药 | 给了什么药 | 剂量、途径、频次、剂型、发药量与医嘱 |
| 微生物 | 病原学结果怎样 | 培养所见与临床判断之间的呼应 |
| 临床评估 | 医师怎么判断 | 简短住院病程里把发现与决策连起来的那段推理 |
| 临床结局 | 出院时什么状态 | 由诊断引出的结局与出院时的状态描述 |
| 出院计划 | 回去要注意什么 | 出院带药、随访安排与注意事项的改动 |
这八类的划分直接来自小结本身的写作结构——出院小结的常规小节(入院诊断、主要诊断、简短住院病程、出院带药、出院医嘱)几乎与上表的类目一一对应。换句话说,它的类别不是外部硬贴的标签体系,而是从文种内部的章节逻辑倒推出来的,这也意味着它考的东西恰好是这份文书写得最全的那几件事。
4.3 十九种实体类型与二十三种关系
为了让生成环节有章可循,四位医学专家(三位临床医师与一位护士)先定义了一套出院小结结构化方案:
| 方案组成部分 | 数量 | 作用 |
|---|---|---|
| 临床实体类型 | 19 | 把小结里的事实落成有类型的节点,如诊断、用药、检验、结局 |
| 每类实体的属性 | 3 至 10 | 限定每个节点能带哪些信息 |
| 关系类型 | 23 | 把节点连起来,构成可被追问的路径 |
官方公布了四类实体的属性清单,能从中看出粒度:
| 实体类型 | 属性 |
|---|---|
| 诊断 | 是否主诊断、状态、发现部位、侧别、断言、时间 |
| 用药 | 规格、剂量、剂型描述、剂型、途径、医嘱说明、发药量、续方次数、断言、时间 |
| 检验 | 数值、异常标志、状态、断言、时间 |
| 结局 | 状态、断言、时间 |
关系类型则把这些节点连成可被追问的路径,官方给出的四个例子是:用药指向诊断的用于关系;用药指向症状的改善关系;检验指向所见的揭示关系;诊断指向结局的导致关系。
断言与时间出现在几乎每一个实体类型里,这两个属性是整套方案的核心。断言区分确有其事、被否认、既往史或家族史等状态;时间区分这次住院与上一次住院。病历语言里最容易骗过模型的正是这两件事——把否认胸痛读成有胸痛,把三年前的既往史读成这次入院的处理对象。把它们列为必填属性,等于在出题阶段就把区分度埋进去了。
4.4 干扰项的两条来源与生成侧的合规
题目的错误选项被明确分成两类,这个设计也有讲究:
| 干扰项类型 | 依据 | 考察的能力 |
|---|---|---|
| 文书支撑型 | 基于对该患者记录的错误解读 | 能否准确解释文书,避免把邻近句、否定句、既往史误读成当前事实 |
| 临床知识型 | 临床上说得通但未记在这位患者文书中 | 能否把对的医学知识与这个患者的实际记载区分开 |
第二类干扰项是这份数据最狠的一处设计。它专门惩罚那种不用读文书也能答对的模型:若四个错误选项在医学上都荒谬,模型靠先验就能排除;而当错误选项本身临床上完全合理、只是没写在这位患者的文书里时,只有真的读过原文才能排除。这两类混在一起,模型既没有靠排除荒谬项的捷径,也没有纯靠临床医学知识推理的空间。
生成环节的合规也写在方法节里:在处理 MIMIC-IV 衍生文本时使用 Gemini 2.5 Pro,走的是符合 HIPAA 要求的 Google Cloud Vertex AI 部署,与 MIMIC-IV 数据使用协议一致。这一点对想复现管线的人很重要——它说明用商业接口处理 MIMIC 文本这件事,作者团队当成需要专门解决合规的动作来处理,而不是顺带一提。
4.5 一个样板的六个台阶
官方给出了诊断类单小结模板的六个步骤,可以把它当成理解整套题链的最小例子:
| 步 | 问什么 | 答案依赖哪些要素 |
|---|---|---|
| 1 | 这次住院处理的是哪个诊断 | 诊断的是否主诊断与断言两个属性 |
| 2 | 针对该诊断给了哪些药物或操作 | 操作或用药指向诊断的适应关系,以及剂量、途径与时间 |
| 3 | 选择这种方案而非其他方案的临床理由是什么 | 简短住院病程里把发现与治疗决策连起来的那段推理 |
| 4 | 治疗后病情是好转、恶化还是无变化 | 操作或用药对诊断的改善或加重关系,以及诊断随时间的状态 |
| 5 | 有没有影响该诊断的副作用或并发症 | 操作或用药导致诊断、症状、所见或事件的关系 |
| 6 | 出院时与该诊断相关的最终结局是什么 | 诊断导致结局的关系,以及出院时的结局状态 |
八个类别各有五套模板,单小结与多小结两种设置各五套,合计 80 套。官方特别说明:这些模板是给生成模型看的提问范例,不是拿来填槽位的规则。这一句划清了它与早期模板化数据集的界线——早期那一类是模板加逻辑式批量产出成千上万道题,而这里是让语言模型照着专家的提问习惯去读具体患者的文本,题目随患者而变。第三步尤其值得留意:它问的是记录在案的推理依据,而不是某个客观字段,这类题只能靠读懂那段病程叙述才答得上来。
4.6 边界条件:什么时候它不再适用
| 条件 | 是否适用 | 判断依据 |
|---|---|---|
| 评估能否顺着病史连续追问 | 适用,且是当下少数可选 | 内容题与溯源题成对,轮次可重排 |
| 评估能否指出依据 | 适用 | 溯源题的选项是编号、日期与小节标题的组合 |
| 做超长上下文压力测试 | 有限 | 每位患者至多五份小结,不是病案全量文书 |
| 训练读病历的模型 | 不适用 | 无训练划分,题目本身就是评测物 |
| 评测中文 | 不适用 | 全部为英文题面与英文小结文本 |
| 做住院内的小时级进程推理 | 不适用 | 只收出院小结,不含病程记录、护理记录、检验时间序列 |
| 做跨机构泛化结论 | 不适用 | 单一医疗系统来源 |
| 要求多人独立标注的信度指标 | 不适用 | 每个样本只由一位专家审阅 |
§5 怎么拿到:从凭证到可跑的评测
5.1 下载面的真实情况
这个项目不是公开下载。官方的访问策略写得很直白:只有签署了数据使用协议的认证用户能访问文件。许可与培训要求如下:
| 项 | 官方口径 |
|---|---|
| 访问策略 | 仅认证用户,须签数据使用协议 |
| 许可 | PhysioNet Credentialed Health Data License 1.5.0 |
| 数据使用协议 | PhysioNet Credentialed Health Data Use Agreement 1.5.0 |
| 指定培训 | CITI 的仅数据与标本研究课程 |
| 版本 DOI | 10.13026/x533-f455(1.0.0) |
| 全版本 DOI | 10.13026/vr39-ra78 |
| 文件目录 | 未带凭证访问返回 403,本页未取得目录内容 |
未带凭证访问文件目录会直接拿到 403。也就是说,任何关于文件树、文件大小、有无说明文档的说法,本页都不能给出——这不是省略,而是这套资源的访问控制本就如此设计。好在官方把两个表的字段写在页面上了,足够把下游代码写对。
5.2 拿到凭证的五个步骤
| 步 | 做什么 | 代价 |
|---|---|---|
| 1 | 注册 PhysioNet 账号并完成身份验证 | 一次性,几分钟 |
| 2 | 完成指定培训并提交证书 | 数小时,有效期需留意 |
| 3 | 签署同版本的数据使用协议 | 需要机构签署人信息 |
| 4 | 等待平台的认证审批 | 通常数个工作日 |
| 5 | 认证通过后登录下载两个 CSV 文件 | 文件大小官方未给 |
这里有个常被忽略的前提:这份数据派生自 MIMIC-IV,访问它通常需要先得到 MIMIC-IV 的访问授权。两份资源在同一套许可体系下,但它们在账户里的授权状态是分开显示的,别只看其中一个就以为万事大吉。
5.3 用 pandas 把对话重排出来
拿到两个 CSV 之后的第一个动作,通常不是评测而是看懂结构。下面这段代码做的就是把一段对话按轮次顺序摊平:
import pandas as pd
notes = pd.read_csv('notes.csv')
qs = pd.read_csv('questions.csv')
#-- 取一位患者的全部小结,按时序排好(note_num 已是本次抽取集内的位置)
sub = 10006402
note = notes[notes.subject_id == sub].sort_values('note_num')
#-- 同一位患者的全部题目,必须按 turn_order 重排才是真实对话顺序
conv = qs[qs.subject_id == sub].sort_values('turn_order')
#-- content 与 source 靠 turn_index 配对
for _, r in conv.iterrows():
kind = '问' if r.turn_type == 'content' else ' 出处'
print(f"[{r.turn_order:02d}] pair {r.turn_index} {kind}: {r.question}")
print(f" 正确答案 -> {r.correct_answer}")
print(f" 选项A -> {r.option_a}")
这段代码有几个关键点。第一,小结序号已经是本次抽取集内的位置,直接按它排就是模型看到的顺序;若要回到父项目,得用小结标识或住院标识。第二,题目必须按轮次位置排,不能依赖 CSV 里原有的行顺序。第三,两个字段里,轮次编号才是配对的锚,轮次位置只是展示顺序。
5.4 把多轮上下文拼成模型输入
真正的多轮评测必须让模型看见前面的对话,否则测的就是一堆孤立单选题:
def build_messages(sub, notes_df, qs_df, upto=None):
#-- 给模型的上下文:该患者的全部小结,抬头与日期一并附上
ctx = []
for _, n in notes_df[notes_df.subject_id == sub].sort_values('note_num').iterrows():
ctx.append(f"[Note #{n.note_num}] charted {n.chartdate}\n{n.text}")
msgs = [{'role': 'system', 'content': '\n\n'.join(ctx)}]
conv = qs_df[qs_df.subject_id == sub].sort_values('turn_order')
for _, r in conv.iterrows():
if r.turn_type == 'content' and upto is not None and r.turn_index > upto:
break
opts = '\n'.join(f"{k}. {r['option_' + k.lower()]}"
for k in ['A', 'B', 'C', 'D', 'E'])
msgs.append({'role': 'user', 'content': f"{r.question}\n{opts}"})
return msgs
#-- upto=3 表示只把前三个内容问喂进去,用于做按轮次深度的对照
m = build_messages(10006402, notes, qs, upto=3)
print(len(m))
可用参数控制喂到第几个内容问。把它从 1 递增到该对话的最大轮次编号,就得到一组同一批样本、不同上下文深度的评测结果。这也是这套数据最值得跑的实验之一——官方在论文侧报告的错误沿轮次累积,指的就是这一类对照。注意上面的循环在内容题超限时提前跳出,而不是在中途截断某一对,否则会出现内容题已给出、配对溯源题缺失的半截对话。
5.5 评分口径:内容、溯源与严格整链
由于内容题与溯源题成对,评分有三种口径,写作时必须写明用的是哪一种:
def score(pred_df, qs):
#-- pred_df: subject_id, turn_index, turn_type, pred
m = pred_df.merge(qs[['subject_id', 'turn_index', 'turn_type', 'correct_answer']],
on=['subject_id', 'turn_index', 'turn_type'])
m['ok'] = m.pred == m.correct_answer
content = m[m.turn_type == 'content']
source = m[m.turn_type == 'source']
#-- 口径一与口径二:两类题各自的正确情况
#-- 口径三:同一对必须两问都答对才算过,即严格整链口径
joint = content.merge(source, on=['subject_id', 'turn_index'],
suffixes=('_c', '_s'))
joint['both'] = joint.ok_c & joint.ok_s
return {'content': content.ok.mean(),
'source': source.ok.mean(),
'joint': joint.both.mean()}
三种口径会给出三个差距不小的数字。若只报严格整链口径,大概率会很低,容易被误读为模型很差;若只报内容题口径,又会掩盖答对但说不清出处这一问题。合理的做法是三个都报,并说明它们分别量的是哪一件事:第一个量读懂了吗,第二个量指得出处吗,第三个量两者是否同时对。
5.6 五个最容易出错的地方
| 位置 | 错误写法 | 后果 | 正确做法 |
|---|---|---|---|
| 重建对话 | 按 CSV 原行序或按轮次编号排序 | 溯源题跑到内容题前面 | 按轮次位置排序 |
| 配对 | 用轮次位置配对内容与溯源 | 所有配对错位 | 用轮次编号配对 |
| 划分 | 按行随机切训练与测试 | 同一段对话被拆到两侧 | 它本来就没有训练划分,全量当评测集 |
| 喂上下文 | 只喂被问到的那一份小结 | 把多小结样本降级成单文档任务 | 该患者的全部小结都要进上下文 |
| 报数 | 只报一个总分 | 掩盖答对但溯源失败的情况 | 三个口径都报并写明定义 |
§6 与库内条目的关系
6.1 关系图谱
| 相关资源 | 与本数据的关系 | 分工 |
|---|---|---|
| MIMIC-IV-Note | 唯一的文本来源,官方标注的父项目 | 提供原始小结,靠小结标识回链 |
| MIMIC-IV 临床数据库 | MIMIC-IV-Note 的上游 | 提供住院标识等可关联的结构化上下文 |
| EHRNoteQA | 同一批作者的更早成果,同为出院小结基准 | 单轮对多轮,见 §6.2 |
| ArchEHR-QA 共享任务 | 同属带证据的病历问答,但只在单份文档内 | 单文档溯源对跨多份小结的多轮溯源 |
| DiSCQ 提问集 | 同为出院小结上的提问资源 | 提问风格取证对答题评测 |
| DrugEHRQA 类双模问答 | 同为电子病历问答,走结构化加自由文本两路 | 不考多轮与溯源 |
| CliniQ 检索基准 | 同为电子病历上的文本任务 | 检索召回对答案与依据 |
6.2 与 EHRNoteQA 的区别:不是同一份数据
库内已有一条出院小结上的大模型评测基准,它出自同一批作者的更早工作(论文发表于 NeurIPS 2024 数据集与基准专题)。二者确实同源:文本都取自 MIMIC-IV 的出院小结,作者团队有重叠,都由同一所学校的团队主导,也因此极易被当成同一份资源的两个版本。但它们是两个独立的数据资源,判据如下:
| 判据 | EHRNoteQA | EHRNote-ChatQA |
|---|---|---|
| 论文 | Kweon 等,NeurIPS 2024 数据集与基准专题 | Kim 等,预印本 2026(arXiv:2606.15735) |
| 平台托管 | 独立的 PhysioNet 资源页与独立 slug | 独立的 PhysioNet 资源页,本项目slug |
| 版本与 DOI | v1.0.1,2024 年上线,另一套 DOI | v1.0.0,2026 年 10 月 19 日上线,本版本 DOI 独立 |
| 轮次 | 单轮:一题一答,答完即止 | 多轮:每位患者一段连续追问,内容题后必配溯源题 |
| 题量与口径 | 962 道题对应 962 位患者,覆盖 1,659 份小结 | 8,036 道内容题加 8,036 道溯源题,覆盖 2,852 份小结 |
| 作答格式 | 富文本开放题与五选一两套口径 | 只有五选一,且每问都要指出依据 |
| 证据 | 不设独立的指认依据环节 | 每个回答都必须答出依据位置 |
| 生成与审阅 | 由当时的强模型草拟,三位临床医生逐题删改 | 依专家结构化方案与八十套模板生成,专家逐样本批阅 |
一句话的区别:前者考能不能答对这道题,后者考能不能一连串答下去,并且每句都交代出处。官方在背景节里也把这一点写成原话:既有的几份病例问答资源限于单轮,也没有为每一道内容题配一个指出依据的问题。
这个区别带来三条实用建议。第一,不要把二者的分数放在一起比大小,题型、轮次与评分口径都不同,数值不可比。第二,想说明多轮相比单轮难在哪,应该用同一批模型在两份数据上分别跑,而不是宣称其中一个继承了另一个的成绩。第三,引用时要分别给出各自的引用条目与 DOI,官方为本项目给出了资源引用与原始论文两处引用对象。
检索层面上还有一个容易混淆的点:两份数据的名字里都有 EHRNote 这个词,且第一作者群体交叉。核对时最省事的办法是看有没有轮次与溯源两类字段——有就是这一份。
6.3 检索路径
| 你要找的东西 | 检索词 | 会落到哪里 |
|---|---|---|
| 原始小结本身 | MIMIC-IV-Note、去标识自由文本 | §3.4 的第一、二层,以及小结标识回链 |
| 单轮病历问答对照 | 出院小结、单轮问答、评测基准 | §6.2 的对照表 |
| 单文档内的证据落地 | 共享任务、证据落地问答 | §6.1 与 §2.6 |
| 结构化加文本双模问答 | 用药问答、双模态 | §6.1 |
| 中文评测口径 | 中文医疗基准 | 不适用,本资源为英文 |
6.4 分工判据
| 任务 | 该用什么 | 它的位置 | 原因 |
|---|---|---|---|
| 多轮一致性评测 | 它 | 主力 | 少见的内容与溯源成对结构 |
| 证据归因能力评测 | 它 | 主力 | 溯源题是必答第二问,且有最小化充分性约束 |
| 检索增强的召回上限校准 | 它 | 可作参照 | 正确选项本身定义了足够且不多的边界 |
| 单轮读病历评测 | 更合适的单轮资源 | 辅助 | 它能做,但把多轮硬拆成单轮会丢掉设计意图 |
| 开放式生成的医学评测 | 提供开放题口径的资源 | 不适用 | 全为五选一 |
| 训练读病历的模型 | 大规模原始语料 | 不适用 | 无训练划分 |
§7 质量评估与局限性
7.0 阅读本节前的一个前置校正
先纠正一个常见误判:把题目由模型生成当成质量不可控。这里的关键不在题目由谁起草,而在有没有逐份被专家读过。官方写得很清楚:全部 1,000 个初始样本在三周内由 11 名医学专家(九名专科医师、一名住院医师、一名护士)批阅,逐份检查多轮提问序列是否自然、题干与正确项是否正确、错误项是否成立、依据项的充分性与最小化是否达标。被判定无法修订的 33 个样本直接剔除,其余的就一处一处改。
因此这份数据的质量瓶颈不在生成侧,而在批阅口径的人力上限——官方自己把这一点写进了使用说明(§7.3)。把这条读懂之后,再看它的五维评分,结论会很不一样:它不是一堆自动生成的题目,而是一份人工成本很高的卷子。
7.1 五维评分
按下表维度打分,每项 1 至 5 分,针对作为多轮证据归因评测工具这个用途:
| 维度 | 分数 | 理由 |
|---|---|---|
| 规模 | 4 | 967 位患者、16,072 道题、五档文档数量,做分层分析够用 |
| 标注质量 | 4 | 逐份专家批阅并修订,但单人审阅,无双标注一致性指标 |
| 任务适配 | 5 | 多轮与取证两个维度同时被做成字段,公开的同类资源稀少 |
| 文档完整 | 5 | 字段字典、采样设计、剔除理由、局限四条都写在页面上 |
| 可获取性 | 2 | 须认证、须签协议、须培训,文件目录不可匿名访问 |
五项合计 20 分(满分 25)。这个分数结构说明它不是随手能拿到的资源:获取成本高,但一旦拿到,文档与结构的完整度省下的时间远多于申请流程消耗的时间。规模、适配、文档三项撑起主要价值,可获取性与标注的多人复核两项拖后腿。
7.2 核验质量的两层
第一层是生成层。依据专家定义的结构化方案与八十套模板逐患者生成,使用的是当时能力较强的商业模型,并通过符合合规要求的云端部署处理文本。它的目的是让题量从几十道人工手写扩展到八千问量级,并保证题面贴合具体患者的文本。
第二层是批阅层。专家在三周内分批批阅,官方记录的修订量如下:
| 修订对象 | 修订条数 | 官方给出的参照基数 |
|---|---|---|
| 内容题题干 | 125 | 保留下来的 8,036 道内容题 |
| 内容题的正确选项 | 101 | 同上 |
| 内容题的错误选项 | 156 | 32,144 个错误选项(每道题四个) |
| 溯源题的正确选项 | 425 | 8,036 道溯源题 |
| 溯源题的错误选项 | 1,676 | 32,144 个错误选项 |
上表最值得注意的一行是最后一行:溯源题的正确与错误选项修订量明显高于内容题。这与论文侧给出的一致发现吻合——指认依据比回答问题本身难,对模型如此,对出题管线也是如此。弦外的含义是:用这套数据跑分的时候,溯源题的成绩低不一定代表模型差,也可能是这类题本身口径更严。
7.3 已知的、可枚举的偏差
| 偏差 | 表现 | 影响 |
|---|---|---|
| 单中心 | 全部文本来自 MIMIC-IV 一家医疗系统 | 结论不能推到其他机构或病历系统 |
| 文种单一 | 只收出院小结 | 病程记录、护理记录、影像报告、结构化表一概没有 |
| 单人审阅 | 每个样本只由一位专家批阅 | 无双标注一致性指标,个别题的主观性无从度量 |
| 语言 | 全部英文 | 不能用于中文评测,也不代表非英语国家的文书风格 |
| 文档数量配比 | 五档人为铺平,各 200 人起步 | 不能用于推断真实住院人群的再入院分布 |
| 生成侧残留 | 题干由模型生成,虽经批阅但改写痕迹无法识别 | 个别题面可能带有生成模型的表达习惯 |
| 去标识依赖 | 替换符缺失会让溯源题失去意义并导致样本剔除 | 证据定位在小节级别,无法定位到具体句子 |
最后一行值得展开:小节标题级别的证据粒度既是它的好处(可评分、可复现),也是它的天花板。它评的是模型知不知道该去哪个小节找,而不是模型能不能引用准确的原句。想做句子级引用评测的人,这套数据给不了,得回父项目自己做标注。
7.4 外部验证矩阵
| 验证角色 | 做法 | 讲得通的地方 | 风险 |
|---|---|---|---|
| 多轮对单轮 | 同一批模型在单轮资源与它上面分别跑 | 轮次效应能被隔离出来 | 两份数据的得分不可直接比绝对值 |
| 内容对溯源 | 两类题分别统计 | 能定位答对但说不清出处的那部分 | 溯源题本身口径更严,低分需谨慎解读 |
| 上下文深度递增 | 按轮次编号逐步放开历史 | 直接量化错误的沿轮累积 | 须在同一批样本上做,换样本不可比 |
| 长文档档位 | 按小结数量分五组 | 文档越多越难的梯度可验证 | 各档是设计出来的,不是自然分布 |
公开侧能支撑的只有论文摘要给出的三条结论:证据归因比内容作答更难;多轮错误会沿轮次累积;单轮临床问答的成绩不能稳定迁移到这个设置。这三条都属结构上更难的性质判断,而不是某个模型得了几分的成绩单——写作时不要把前者说成后者,也不要把第一句话当成对所有模型普遍成立的定量结论。
7.5 它为何可能长期被引用
它占住的是一个别人很难替代的交叉位置:纵向多文档、连续追问、强制溯源。三件事里挑任何两件,都能在别处找到资源;三件一起做到位,而且要付得起逐样本专家批阅的成本,门槛就上去了。只要评测界还在关心模型的答案能不能被核实,这个位置就不会空出来。
§8 生态位与历史
8.1 沿革:从考知识到考依据
临床问答资源的演化大致走了三步。第一步是考医学知识:执照考试式的题库,答案是客观知识点,与具体患者无关。第二步是考读文书:把真实病历文本搬进来出题,模型必须读资料才能答,但通常只问一层。第三步是考依据:在答案之外要求证据的位置,让答案可被核实。
EHRNote-ChatQA 属于第三步,并且把第三步与多轮捆绑在了一起。官方在背景节里把它们与此前的代表性资源逐个对照过,点名说这些先行者在同时评测多轮与证据落地这一点上不够——第一阶段的三份知名题库没有患者记录作为依托,第二阶段的三份病历问答资源限于单轮,也不随每题配一个指出依据的问题。
8.2 与共享任务的关系
这条路线上有明确的共享任务传统:把一个带证据的病历问答任务做成年度评测,由社区提交系统。它的不同之处在于不依附于某一年份的比赛:数据、字段与评分口径都在资源页上一并交付,任何时间可以复现。
这样做的好处是口径稳定,代价是没有比赛带来的年度热度。对使用者而言,这意味着它的成绩更可能是自己跑出来的,而不是跟着某个榜单走出来的,写论文时也就更站得住。
8.3 生态位
| 角色 | 主力训练语料 | 评测基准 | 比赛榜单 |
|---|---|---|---|
| 典型用法 | 预训练、微调 | 固定划分、可复现比较 | 年度最优成绩 |
| 需要的前提 | 量大、标注细 | 口径清楚、有专家背书 | 有主办方与时间安排 |
| 代表资源 | MIMIC-IV 系列原始语料 | 本数据集 | 各类年度共享任务 |
| 失败模式 | 噪声累积 | 样本过少导致结论不稳 | 榜单优化而非能力提升 |
本数据集坐在第二列。把它当第一列用会遇到量的天花板;把它当第三列用会发现没有榜单可刷——它没有划分,也不公布官方排行榜。
8.4 谁在用它,用来做什么
预期的首批使用者基本由三类构成:做临床大模型评测的团队(拿它报多轮与归因两项能力)、做检索增强的团队(用它校准召回粒度,因为正确选项自带足够且不多的边界)、做智能体管线的团队(拿它测试连串调用中的上下文保持)。第三类目前最少,但它是这套结构最能发挥作用的地方——一个会丢上下文的智能体,往往要到第五六轮才开始明显偏离,而这正是单轮资源发现不了的行为。
§9 使用指引
9.1 三种角色的路径
| 角色 | 第一天 | 第一周 | 注意事项 |
|---|---|---|---|
| 评测研究者 | 读完字段字典,把一段对话完整重排输出一遍 | 定好三个评分口径,跑一批小模型做基线 | 别把内容与溯源混在一起报总分 |
| 检索增强工程师 | 单看溯源题,先不碰内容题 | 把召回片数与溯源正确情况对照分析 | 记住正确选项的最小化要求 |
| 智能体开发者 | 按 §5.4 拼上下文,跑不同深度的对照 | 统计错误沿轮次累积的形态 | 上下文必须随轮次增长,不能每题重置 |
9.2 一条最短的可用流程
#-- 1. 认证登录后在官方页面下载两个 CSV(未认证会拿到 403)
#-- 文件名与版本号写在官方的 Data Description 节
ls -l notes.csv questions.csv
#-- 2. 先看结构:每位患者的小结份数分布
python3.11 - <<'PY'
import pandas as pd
notes = pd.read_csv('notes.csv')
print(notes.subject_id.nunique(), notes.groupby('subject_id').size().describe())
PY
#-- 3. 核对轮次:每个类别下内容题与溯源题数量应当相等
python3.11 - <<'PY'
import pandas as pd
qs = pd.read_csv('questions.csv')
print(qs.groupby(['qa_category', 'turn_type']).size())
PY
第二段 Bash 的用意核对官方口径:每个类别下的内容题与溯源题应该一样多。要注意的是,§2.5 的八个数字是样本数(一段对话算一个),而不是某一类下的题目数——一个样本里有若干道内容题。别把两张张表的计数混着用。
9.3 引用方式
官方给出了三条引用对象,一起引用是惯例:
| 引用对象 | 内容 |
|---|---|
| 数据集 | Kim 等,EHRNote-ChatQA,版本 1.0.0,PhysioNet,2026,版本 DOI 10.13026/x533-f455 |
| 原始论文 | Kim 等,同题名预印本,arXiv:2606.15735 |
| 平台 | PhysioNet 平台综述(2026 年发表于 Nature Health),按官方引用按钮生成 |
写论文时建议同时注明三件事:使用的版本号(1.0.0)、评测用的是哪一种评分口径(内容、溯源还是严格整链)、以及是否把完整多轮历史喂给了模型。这三件不定清楚,数字就无法复现。
§10 AI 使用声明
| 项目 | 声明 |
|---|---|
| 文本生成 | 本文由 AI 辅助撰写,编辑把关结构与事实 |
| 数字来源 | 规模、结构、边界三类数字来自 PhysioNet 官方资源页的数据描述、方法节与使用说明 |
| 文件核验 | 未取得文件级核验:该项目文件目录在本区域返回 403,两个 CSV 未被直接下载 |
| 不一致说明 | 预印本第三版摘要在参与评测的模型数与专家人数两处写法与官方资源页不同,本文一律以资源页为准,并在 §7.0 与 §7.4 提示该差异 |
| 论文信息 | 仅参考预印本摘要与官方背景节,未读论文全文;部分结论来自摘要所述发现 |
| 未核验内容 | 两个 CSV 的精确行数与字节大小、文件目录中是否含说明文档、每段对话的实际轮数、以及正文中替换符的具体形态 |
| 图像 | 无配图;封面为生成式提示词,不含真实病历内容 |
| 免责 | 本文不构成临床建议;数据使用须遵守凭证访问许可与数据使用协议 |
常见误读(避坑清单)
| 说法 | 实际 | 证据 |
|---|---|---|
| 它就是那个旧的出院小结问答基准 | 两者是独立资源:不同论文、不同版本、不同题型 | 各自独立资源页与各自 DOI,轮次结构不同 |
| 有 16,072 道独立的医学题 | 其中一半是追问出处的题,依附于前一道内容题 | 内容题与溯源题按轮次编号配对 |
| 可以拿它微调模型 | 没有训练划分,全部为评测对象 | 官方只描述评测用途与使用注意 |
| 答案与依据在同一道题里给出 | 分成两道必答的题,答案分别记录 | 每道内容题后紧跟且仅跟一道溯源题 |
| 小结序号等于父项目里的流水号 | 前者是本次抽取集内重排的位置,后者是全库序号 | 两个字段在字典里分别定义 |
| 它是随机抽的患者 | 按五个文档数量组与八个类别铺平抽样 | 官方方法节写明一千人的构成 |
| 每个样本有多位专家同时审 | 每位专家负责自己那一份,没有交叉复评 | 官方把这一取舍写进使用说明 |
| 可以匿名下载 | 须认证、签协议、完成指定培训 | 官方访问策略三项并列 |
| 它覆盖全院所有文书类型 | 只有出院小结 | 使用说明点明不含病程、护理、影像与结构化表 |
| 一段对话可以分属多个类别 | 类别是段级属性,一段对话只属于一类 | 类别字段在同一段对话的所有行上取值相同 |
| 溯源题答错说明模型不懂医学 | 也可能是不满足最小化且充分的要求 | 官方对正确依据项规定了两条同时成立的标准 |
FAQ
Q1:它和我听说过的那个出院小结基准是一回事吗?
不是。二者确实同源——文本都来自 MIMIC-IV 的出院小结,作者团队也有重叠——但它们是不同年份发布的不同资源:前者是单轮作答,后者把每位患者的提问串成一段连续追问,并在每一问后加了一道指出依据的必答题。判断最省事的办法是看有没有轮次与溯源两类字段,有就是后者。
Q2:16,072 道题是不是都是独立样本?
不能这么算。它是 8,036 道内容题与 8,036 道溯源题的和,两者按轮次编号两两配对,且同一位患者的多道题共享同一段病史上下文。把它们当独立样本做统计,会把同一段对话里的多次回答当成多个独立观测,结论会被高估。
Q3:答案位置被打乱过,会不会冤枉有位置偏好的模型?
官方说明在修订之后把正解位置重新打乱,使 A 至 E 上的分布近似均匀。这件事对使用者的意义是:不要期待某个字母更容易命中,也不要用模型偏好某字母来解释成绩差异——真要查位置偏好,得自己在同样的数据上做对照。
Q4:溯源题太难了,能不能只跑内容题?
可以,但要写清楚。只跑内容题得到的是读病历答题的成绩,是有意义的一个数;官方真正想测的是答完还能指出依据的那一项。写作时最稳妥的做法是三个口径都报:内容、溯源、以及一对都答对的严格整链口径。
Q5:为什么看不到文件大小和目录?
因为它是凭证访问资源。未认证访问文件目录会直接拿到 403,这是许可设计的一部分,不是页面故障。要拿到准确的行数与文件大小,得先完成培训、签署协议并通过认证。
Q6:它能用来评测中文模型吗?
不能直接用于中文评测:题面与小结文本都是英文,来源是美国一家医疗系统的文书。它可以作为同一批模型在英文环境下的对照点,但不能用来证明中文场景下的能力。
Q7:为什么不作训练与测试划分?
它的定位就是评测基准,全部 967 段对话都是评测对象。如果确实需要开发集,合理的做法是自己按患者编号留出一部分做调试,并在论文里写明这部分被排除在最终数字之外。
Q8:单人审阅这件事该怎么在论文里提?
官方把这一点作为已知限制写进了使用说明:出于规模与专家可用性的权衡,每个样本只由一位专家审阅。写作时的稳妥做法是把它作为限制陈述出来,而不是当成质量无问题的证明。
术语表
| 术语 | 解释 |
|---|---|
| 出院小结 | 患者离院时写给接诊方的文书,通常包括入院情况、主要诊断、住院经过、出院带药与医嘱 |
| 纵向 | 同一位患者跨多次住院、随时间累积的病历记录 |
| 多轮问答 | 一连串以先前回答为前提的提问,而非孤立的单题 |
| 内容题 | 本数据里直接问临床事实的问题轮次 |
| 溯源题 | 紧跟内容题、追问答案依据位置的问题轮次 |
| 最小化且充分 | 官方对正确依据选项的两条同时成立的要求 |
| 断言 | 病历语义属性,区分肯定、否认、既往或家族史等状态 |
| 实体类型 | 结构化方案中定义的临床事实节点类别 |
| 关系类型 | 连接两个临床实体、表示作用或结果的边 |
| 干扰项 | 选择题中的错误选项 |
| 干扰项-文书支撑型 | 基于对该患者记录的错误解读生成的错误选项 |
| 干扰项-临床知识型 | 临床上合理但未记在这位患者文书中的内容 |
| 替换符 | 去标识过程中用来遮蔽敏感信息的符号 |
| 父项目 | 本数据派生的上游资源,此处为 MIMIC-IV-Note v2.2 |
| 凭证访问 | 须完成指定培训并签署数据使用协议后才能下载 |
| 数据使用协议 | 规定数据可用于何种研究、不得用于何处的合同性文件 |
| 五选一 | 五个选项中单选的题型 |
| 严格整链口径 | 内容与溯源两道题都答对才算过的评分口径 |
| 轮次编号 | 内容题与其配对溯源题共用的编号,用于配对 |
| 轮次位置 | 轮次在对话中的先后序号,用于重建对话顺序 |
附录 A:核心数字核对表
| 项 | 值 | 出处 |
|---|---|---|
| 全名 | EHRNote-ChatQA: A Benchmark for Evidence-Grounded Multi-Turn Clinical Question Answering over Longitudinal Discharge Summaries | 官方资源页标题 |
| 版本 | 1.0.0 | 官方资源页版本栏 |
| 发布日期 | 2026 年 10 月 19 日 | 官方资源页 |
| 版本 DOI | 10.13026/x533-f455 | 官方资源页 DOI 栏 |
| 全版本 DOI | 10.13026/vr39-ra78 | 官方资源页 DOI 栏 |
| 作者数 | 17 | 官方资源页作者列表 |
| 父项目 | MIMIC-IV-Note v2.2 | 官方父项目栏 |
| 患者级样本 | 967 | 摘要与数据描述 |
| 出院小结 | 2,852 份 | 数据描述 |
| 每位患者小结数 | 1 至 5 份 | 数据描述 |
| 内容题 | 8,036 | 摘要与数据描述 |
| 溯源题 | 8,036 | 摘要与数据描述 |
| 题目合计 | 16,072 | 摘要与数据描述 |
| 初始队列 | 1,000 名患者,五组各 200 | 方法节 |
| 剔除样本 | 33 | 方法节 |
| 实体类型 | 19 | 方法节 |
| 每类属性数 | 3 至 10 | 方法节 |
| 关系类型 | 23 | 方法节 |
| 提问模板 | 80 套(8 类、每类 5 套、两种设置) | 方法节 |
| 批阅专家 | 11 名,历时三周 | 方法节 |
| 修订量 | 题干 125、内容正确项 101、内容错误项 156、溯源正确项 425、溯源错误项 1,676 | 方法节 |
| 错误选项基数 | 32,144 | 方法节(每道题四个) |
| 八类样本数 | 117、122、120、124、121、120、122、121 | 数据描述节 |
| 五档样本数 | 200、200、198、187、182 | 数据描述节 |
| 文件数 | 两个 CSV | 数据描述节 |
| 许可 | PhysioNet Credentialed Health Data License 1.5.0 | 许可栏 |
| 指定培训 | CITI 的仅数据与标本研究课程 | 访问策略栏 |
附录 B:数字的来源分层
**第一层:官方资源页。**包括摘要、背景、方法、数据描述、使用说明、伦理、许可、访问策略,以及页面上公布的两组样本计数。本页所有规模、结构与边界数字都出自这一层。
**第二层:预印本摘要。**涉及评测发现的三条结论(归因难于内容、错误沿轮次累积、单轮成绩不能稳定迁移),以及参与评测的模型数量,来自预印本摘要。摘要级别的结论只能支撑性质判断,不能支撑具体分数。
**第三层:未核实。**两个 CSV 的实际行数与字节大小、文件目录中是否含说明文档、每段对话的具体轮数、正文中替换符的具体形态。这些都需取得凭证后落在文件上才知道,本页不给出猜测值。
附录 C:完整参考文献
| 编号 | 文献 | 用途 |
|---|---|---|
| 1 | EHRNote-ChatQA 资源页,PhysioNet,版本 1.0.0 | 全部规模、结构、边界数字的来源 |
| 2 | Kim 等,同题名预印本,arXiv:2606.15735 | 评测发现与作者构成 |
| 3 | MIMIC-IV-Note v2.2(父项目) | 原始出处的口径 |
| 4 | Johnson 等,MIMIC-IV 论文(Sci Data 2023) | 上游数据的来源说明 |
| 5 | Kweon 等,EHRNoteQA(NeurIPS 2024 数据集与基准专题) | §6.2 的对照对象 |
| 6 | Soni 与 Demner-Fushman,ArchEHR-QA 2025 共享任务综述 | §2.6 与 §6.1 的对照 |
| 7 | Pampari 等,emrQA(EMNLP 2018) | §2.6 的对照 |
| 8 | Lehman 等,Learning to ask like a physician(2022) | §6.1 的对照 |
| 9 | Pollard 等,PhysioNet 平台综述(Nature Health 2026) | 引用规范 |
附录 D:任务代码
任务一:把一个患者的对话与所用的小结拼成一份可读材料
import pandas as pd
notes = pd.read_csv('notes.csv')
qs = pd.read_csv('questions.csv')
def dump_conversation(sub):
ns = notes[notes.subject_id == sub].sort_values('note_num')
cv = qs[qs.subject_id == sub].sort_values('turn_order')
print(f"== subject {sub} · 小结 {len(ns)} 份 · 类别 {cv.qa_category.iloc[0]}")
for _, n in ns.iterrows():
print(f"-- Note #{n.note_num} charted {n.chartdate} storetime {n.storetime}")
print(f" {n.text[:200]}...")
for _, r in cv.iterrows():
tag = '内容' if r.turn_type == 'content' else '溯源'
print(f"[{r.turn_order:02d}] pair {r.turn_index} {tag}: {r.question}")
for k in ['A', 'B', 'C', 'D', 'E']:
print(f" {k}. {r['option_' + k.lower()]}")
print(f" => {r.correct_answer}")
dump_conversation(qs.subject_id.iloc[0])
任务二:按小结数量分五组,比较同一批模型的成绩
import pandas as pd
notes = pd.read_csv('notes.csv')
qs = pd.read_csv('questions.csv')
pred = pd.read_csv('pred.csv') #-- 列为 subject_id, turn_index, turn_type, pred
depth = notes.groupby('subject_id').note_num.max().rename('depth')
m = (pred.merge(qs[['subject_id', 'turn_index', 'turn_type', 'correct_answer']],
on=['subject_id', 'turn_index', 'turn_type'])
.merge(depth, on='subject_id'))
m['ok'] = m.pred == m.correct_answer
for d, g in m.groupby('depth'):
c = g[g.turn_type == 'content'].ok.mean()
s = g[g.turn_type == 'source'].ok.mean()
print(f"小结数 {d}: 内容 {c:.3f} · 溯源 {s:.3f} · 样本 {g.subject_id.nunique()}")
第二段给的是最直接的分层实验:文档越多,需要跨小结融合的信息越多,成绩下降是正常的。要注意的是五档人数并不相等(200、200、198、187、182),把各档的均值直接算术平均成总分并不合适。
附录 E:如果只记五件事
| 序号 | 记住什么 | 为什么 |
|---|---|---|
| 1 | 967 位患者、2,852 份小结、16,072 道题 | 这三个数定义了它的体量与可支撑的分析粒度 |
| 2 | 8,036 道内容题各配一道溯源题 | 成对结构是它最独特的资产 |
| 3 | 内容、溯源、严格整链三种评分口径 | 只报一个分会掩盖答对但说不清出处的情况 |
| 4 | 单人批阅、单中心、仅出院小结 | 四条限制写在使用说明里,引用时要主动说明 |
| 5 | 它不是名字相近的那份出院小结基准 | 同名相近的两份资源极易混引 |
需要更高工程化程度或合规出域的商业版本?
当前展示的公开版本适用于学术研究与原型验证。千方医数集依托三甲医院直采网络,提供经专家标注、符合伦理合规的专病数据集交易服务。
前往商城查看可交易产品 →
