TREC-PM

TREC PM — 精准医学信息检索评测基准 AI-Ready Wikipedia | 千方病案医数集

来源 NIST (美国国家标准与技术研究院) https://trec.nist.gov/data/precmed.html发布时间: 2026-08-04最后更新: 2026-08-04 阅读 2

信息速览

数据集名称TREC-PM
数据类型约 29GB(含语料库), 155 个癌症案例 , 4 轮年度评测 , 免费获取
规模155 个合成癌症案例
接入方式NIST (美国国家标准与技术研究院) https://trec.nist.gov/data/precmed.html
AI 就绪度

INFOBOX

数据集名称 TREC Precision Medicine Track
英文全称 TREC Precision Medicine Track (TREC PM), 2017-2020
别名 / 简称 TREC PM、TREC-PM、TREC Precision Medicine
疾病分类 肿瘤学专用。核心映射:2A00–2F9Z 肿瘤 / 2C12 恶性肿瘤 / 各器官特异性肿瘤编码(乳腺、肺、前列腺、结直肠等)
SNOMED CT 108369006 Neoplasm (disorder) / 363346000 Malignant neoplastic disease (disorder) / 254837009 Malignant tumor of breast / 363354003 Malignant tumor of lung 等(详见 §2.2)
数据模态 文本(PubMed 摘要 / ClinicalTrials.gov 试验描述 / XML 主题文件 / TREC qrels 判定文件)
AI 任务类型 信息检索(ad-hoc retrieval)、临床试验匹配、治疗药物提取、证据质量评估、查询扩展
样本总数 155 个合成癌症患者案例(2017: 30 / 2018: 50 / 2019: 40 / 2020: 35),配套约 2,660 万 PubMed 摘要 + 约 24 万 ClinicalTrials.gov 试验
数据大小 ~29 GB(MEDLINE XML ~20.7GB + ASCO 摘要 ~8.8GB + AACR 摘要 ~58MB + ClinicalTrials.gov XML ~700MB + 主题+qrels ~50MB)
数据格式 XML(主题文件 / MEDLINE / ClinicalTrials.gov)/ TXT(摘要文本 / qrels)/ TREC qrels 格式
许可证 U.S. Government Public Domain(NIST TREC 数据,美国政府公共领域)
访问级别 开放(NIST 官网直接下载,无需注册)
DUO 标签 NRES
语言 英文
首发日期 2017-02(TREC 2017 Precision Medicine Track 启动)
最后更新 2020-11(TREC 2020 PM Track 结束,最终 qrels 发布)
发布机构 NIST(美国国家标准与技术研究院)/ UTHealth Houston(德州大学健康科学中心)/ NLM(美国国家医学图书馆)/ OHSU(俄勒冈健康科学大学)/ MD Anderson Cancer Center
官方主页 http://www.trec-cds.org/
下载地址 https://trec.nist.gov/data/precmed.html
DOI NIST SP.500-331 (2018) / NIST SP.1250 (2019) / NIST SP.1266 (2020)
引用次数 500+(Google Scholar,截至 2026-07,4 篇 Overview 论文合计)
AI 就绪度评分 ⭐⭐⭐⭐(4/5)— 标准化 TREC qrels + 官方评测工具 + ir_datasets 一键加载;扣分项:语料库体积大需分卷下载、主题数少统计功效有限、单评估者无 inter-rater
页面状态 published

§0 E-E-A-T 信任声明与免责声明

字段编号 字段名 内容
0.1 medical_reviewer 医学审核者:[千方病案医学编辑部]交叉审核:§2 医学背景(ICD-11 映射、精准肿瘤学临床任务定义、MD Anderson 案例创建方法)、§7 偏倚分析。
0.2 data_engineering_reviewer 数据工程审核者:[千方病案医学编辑部交叉审核] 医疗 AI 数据工程师,审核范围:§4 DAIMS 数据字典、§5 数据划分策略、§6 预处理 Pipeline 和坑点。
0.3 review_date 2026-08-04
0.4 verification_method 交叉审核
0.5 disclaimer 见下方强制免责声明
0.6 conflict_of_interest 本页面与 NIST、MD Anderson、OHSU 及 TREC 组织方无利益关联。

医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。

技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。

数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。TREC PM 数据为美国政府公共领域数据,可自由使用。PubMed 摘要和 ClinicalTrials.gov 记录的版权分别属于各自出版商和 NLM。DUO 标签仅供参考,具体使用限制以数据集官方协议为准。

§1 数据集概览

§1.0 30 秒速览

TREC PM 是 NIST(美国国家标准与技术研究院)于 2017-2020 年举办的精准医学信息检索评测赛道,聚焦肿瘤精准医疗场景。4 轮评测共发布 155 个由 MD Anderson 癌症中心肿瘤学家创建的合成癌症患者案例,每个案例包含疾病类型、基因变异和人口统计信息。

它的独特价值在于将信息检索与精准医学深度融合——参赛系统需要同时完成两个真实临床任务:从约 2,660 万 PubMed 摘要中检索与患者基因突变匹配的靶向治疗文献,以及从约 24 万 ClinicalTrials.gov 试验中匹配患者可能符合条件的临床试验。这直接对应肿瘤学家在临床实践中面临的核心信息过载问题。TREC PM 延续了 NIST 长达 18 年的生物医学检索评测传统(TREC Genomics → Medical Records → Clinical Decision Support → Precision Medicine),是该领域持续时间最长、标准化程度最高的评测基准。

你可以用它来:训练和评估精准医学文献检索系统、开发临床试验自动匹配算法、或者评估查询扩展策略在医学领域的有效性(如 UMLS/NCIt 同义词扩展)。

§1.1 摘要

TREC Precision Medicine Track(TREC PM)是 NIST TREC(Text REtrieval Conference)会议的精准医学信息检索评测赛道,于 2017-2020 年连续举办 4 届。该赛道由 Kirk Roberts(UTHealth Houston)、Dina Demner-Fushman(NLM)、Ellen Voorhees(NIST)、William Hersh(OHSU)等人组织,聚焦肿瘤精准医疗这一精准医学应用最成熟的领域。

每轮评测提供由 University of Texas MD Anderson Cancer Center 肿瘤学家创建的合成癌症患者案例作为检索主题(topics)。每个案例包含三个核心维度:disease(疾病类型,如"急性淋巴细胞白血病")、gene(基因变异,如"ABL1, PTPN11")和 demographic(人口统计,如"12 岁男性")。参赛系统需完成两大检索任务:(1) Scientific Abstracts — 从 PubMed/MEDLINE 快照(约 2,660 万摘要 + AACR/ASCO 补充摘要)中检索与该患者精准治疗相关的科学文献;(2) Clinical Trials — 从 ClinicalTrials.gov 快照(约 24 万试验)中检索患者可能符合条件的临床试验。检索结果经 pooling 后由 OHSU 医学信息学医师进行三级相关性判定(Definitely Relevant / Partially Relevant / Not Relevant),采用 infNDCG、P@10、R-precision 等标准 IR 指标评估。

2019 年新增 Treatment Identification 子任务——不仅要求检索相关摘要,还须识别摘要中提及的具体治疗方案。2020 年进行了重大调整:主题中新增 treatment 字段以聚焦特定治疗的证据检索,取消临床试验任务,并引入证据质量评估(evidence quality)——评估者不仅判断相关性,还评估证据等级。

§1.2 战略价值分析

技术创新维度:TREC PM 是首个将精准医学多维度匹配(疾病+基因+人口统计)转化为标准化 IR 评测的任务。传统的医学 IR 评测(如 TREC Genomics)以单一维度(基因/疾病)检索为主,而 TREC PM 要求系统同时理解疾病本体、基因变异和患者人群特征三者的交集——这更接近精准医学的临床实际决策逻辑。其三级相关性判定标准(Definitely / Partially / Not Relevant)创新性地将"精准匹配"概念操作化:只有当疾病匹配(Exact 或 More Specific)且至少一个基因匹配(Exact)时才判定为 Definitely Relevant,这为精准医学 IR 系统设定了明确的质量标准。

应用影响维度:TREC PM 直接回应了精准医学面临的核心瓶颈——信息过载。癌症新药评估周期短至 9 个月,PubMed 中约 16% 的文献与癌症相关,ClinicalTrials.gov 有超过 24 万条试验记录。肿瘤学家几乎不可能人工筛选所有相关文献和试验来为个体患者制定最佳治疗方案。TREC PM 的评测框架(从患者特征到文献/试验检索)直接映射了临床决策支持系统的核心工作流,其 qrels 和评测协议已成为该领域的黄金标准。4 轮评测吸引了全球数十个团队参与,推动了医学查询扩展(UMLS/NCIt 同义词)、Learning-to-Rank、语义检索等技术在精准医学场景下的系统化比较。

生态推动维度:TREC PM 建立了从 TREC Genomics(2003-2007)→ TREC Medical Records(2011-2012)→ TREC Clinical Decision Support(2014-2016)→ TREC Precision Medicine(2017-2020)长达 18 年的生物医学检索评测谱系。其主题文件、qrels、语料库和评测脚本通过 NIST 官网和 ir_datasets 平台永久公开,成为可复现 IR 研究的基础设施。ir_datasets 和 PyTerrier 等工具原生支持 TREC PM 数据加载,使新研究者可以在数分钟内启动实验。

§1.3 横向对比

数据集 主题数 语料规模 任务类型 领域 评测年份 核心差异化
TREC PM 155 PubMed 2,660 万 + CT.gov 24 万 ad-hoc 检索 + 临床试验匹配 + 治疗提取 肿瘤精准医学 2017-2020 疾病+基因+人口统计三维匹配,三级相关性
TREC CDS 210(3 年) PubMed 1,234 万 ad-hoc 检索 通用临床决策 2014-2016 TREC PM 的前序赛道,无基因维度
TREC Genomics 160(5 年) TREC Genomics 语料 ad-hoc 检索 + GO 注释 基因组学 2003-2007 最早的生物医学 IR 评测,面向基因组研究者
BioASQ 4,234+ 问题 PubMed 全库 语义问答 + 摘要生成 生物医学 2013-2024 开放域 QA,非精准医学场景
ClinicalTrials.gov API ~40 万+ 试验 API 检索 全疾病 持续 非评测基准,是试验注册数据库

§1.4 版本演进时间轴

时间 事件
2014-2016 TREC Clinical Decision Support (CDS) Track 举办(TREC PM 前序赛道,3 年 210 个主题)
2017-02 TREC 2017 Precision Medicine Track 启动,30 个主题,PubMed + ClinicalTrials.gov 双语料检索
2017-11 TREC 2017 PM 会议在 NIST Gaithersburg 举办,22,642 条摘要判定 + 13,441 条试验判定
2018-04 TREC 2018 PM 文档集合发布,50 个主题,语料库更新(PubMed 2017 年 1 月快照 + AACR/ASCO 摘要)
2018-11 TREC 2018 PM 会议,22,429 条摘要 qrels,评测指标 infNDCG / P@10 / R-precision
2019-06 TREC 2019 PM 主题发布,40 个主题,新增 Treatment Identification 子任务
2019-11 TREC 2019 PM 会议,julie-mug 团队摘要任务 infNDCG=0.5783 成为顶级表现之一
2020-06 TREC 2020 PM 主题发布,重大调整:新增 treatment 字段,取消临床试验任务,引入证据质量评估
2020-11 TREC 2020 PM 最终评测结果发布,TREC PM 赛道正式结束(4 年 4 轮)
2021+ TREC PM 数据通过 ir_datasets 和 PyTerrier 永久公开,成为可复现 IR 研究基础设施

§1.5 典型 AI 应用场景

  1. 精准医学文献检索系统:基于患者疾病+基因变异+人口统计构建查询,从 PubMed 检索精准治疗相关文献,支持肿瘤学家快速获取最新治疗证据
  2. 临床试验自动匹配:将患者特征与 ClinicalTrials.gov 试验入组/排除标准自动匹配,帮助肿瘤学家发现适合患者的临床试验
  3. 医学查询扩展策略评估:系统化比较 UMLS 同义词扩展、NCIt 本体扩展、词嵌入相似度扩展等策略在精准医学检索场景的效果
  4. Learning-to-Rank 排序优化:利用历年 TREC PM qrels 作为训练信号,训练 LTR 模型优化精准医学文献检索排序
  5. 治疗药物自动提取:从科学摘要中自动识别治疗方案/药物名称,构建精准医学知识图谱(2019+ 子任务)

§2 医学背景

§2.1 ICD-11 疾病映射

TREC PM 聚焦肿瘤精准医学,所有主题均为癌症案例。以下是 TREC PM 主题中常见的癌症类型与 ICD-11 的映射:

ICD-11 编码 疾病名称(英文) 疾病名称(中文) TREC PM 典型主题示例
2A00 Malignant neoplasms of lip, oral cavity 唇/口腔恶性肿瘤 Oral cavity cancer
2A20 Malignant neoplasms of oesophagus 食管恶性肿瘤 Esophageal adenocarcinoma
2A70 Malignant neoplasms of stomach 胃恶性肿瘤 Gastric cancer
2A80 Malignant neoplasms of colon 结肠恶性肿瘤 Colon adenocarcinoma
2A90 Malignant neoplasms of rectum 直肠恶性肿瘤 Rectal cancer
2B70 Malignant neoplasms of breast 乳腺恶性肿瘤 Breast cancer, triple-negative
2C12 Malignant neoplasms of bronchus and lung 支气管和肺恶性肿瘤 Lung adenocarcinoma, NSCLC
2C30 Malignant neoplasms of cervix uteri 宫颈恶性肿瘤 Cervical squamous cell carcinoma
2C40 Malignant neoplasms of ovary 卵巢恶性肿瘤 Ovarian serous carcinoma
2C60 Malignant neoplasms of prostate 前列腺恶性肿瘤 Prostate adenocarcinoma
2C80 Malignant neoplasms of kidney 肾恶性肿瘤 Renal cell carcinoma, clear cell
2C90 Malignant neoplasms of bladder 膀胱恶性肿瘤 Urothelial carcinoma
2D00 Malignant neoplasms of brain 脑恶性肿瘤 Glioblastoma multiforme
2D40 Malignant neoplasms of thyroid 甲状腺恶性肿瘤 Papillary thyroid carcinoma
2B50 Malignant neoplasms of liver 肝恶性肿瘤 Hepatocellular carcinoma
2C73 Malignant neoplasms of pancreas 胰腺恶性肿瘤 Pancreatic adenocarcinoma
2A60 Malignant neoplasms of gallbladder 胆囊恶性肿瘤 Cholangiocarcinoma
2B00 Leukaemia 白血病 Acute lymphoblastic leukemia (ALL)
2B02 Lymphoma 淋巴瘤 Diffuse large B-cell lymphoma
2B0Y Malignant neoplasms of other haematopoietic tissues 其他造血组织恶性肿瘤 Multiple myeloma

§2.1b SNOMED CT 映射

数据集标签 ICD-11 SNOMED CT SNOMED CT 术语
Breast cancer 2B70 254837009 Malignant tumor of breast (disorder)
Lung adenocarcinoma 2C12.0 35917007 Adenocarcinoma of lung (disorder)
Prostate cancer 2C60 254900004 Malignant tumor of prostate (disorder)
Colorectal cancer 2A80/2A90 363406005 Malignant tumor of colon (disorder)
Pancreatic cancer 2C73 363418001 Malignant tumor of pancreas (disorder)
Glioblastoma 2D00 74364002 Glioblastoma multiforme (disorder)
Leukemia (ALL) 2B00 91861009 Acute lymphoblastic leukemia (disorder)
Melanoma 2C41.X 372244006 Malignant melanoma (disorder)
Ovarian cancer 2C40 363443007 Malignant tumor of ovary (disorder)
Renal cell carcinoma 2C80 254915002 Renal cell carcinoma (disorder)

§2.2 疾病简介与流行病学

TREC PM 聚焦的精准医学(precision medicine)范式强调根据个体患者的基因组、环境和生活方式特征选择最佳治疗方案。在肿瘤学领域,这一范式尤为重要——同一种癌症的不同患者可能对同一治疗有截然不同的反应,差异主要取决于肿瘤的基因突变谱。例如,EGFR 突变的非小细胞肺癌患者对 EGFR 酪氨酸激酶抑制剂(如厄洛替尼)响应良好,而 KRAS 突变患者则不响应。

精准医学的核心挑战是信息过载:截至 2017 年,PubMed 中约 16% 的文献与癌症相关,每年新增超过 50 万篇;ClinicalTrials.gov 注册了超过 24 万条临床试验。癌症新药评估周期短至 9 个月,肿瘤学家几乎不可能人工追踪所有相关进展。这一信息瓶颈正是 TREC PM 评测的出发点——通过 IR 技术帮助肿瘤学家快速定位与个体患者基因突变匹配的治疗证据和临床试验。

§2.3 临床任务定义

任务 定义 TREC PM 对应
精准治疗文献检索 根据患者疾病+基因变异,从科学文献中检索与治疗、预防、预后相关的摘要 Task 1: Scientific Abstracts
临床试验匹配 根据患者入组条件(疾病+基因+人口统计),从 ClinicalTrials.gov 检索患者可能符合条件的试验 Task 2: Clinical Trials
治疗方案提取 从检索到的摘要中识别具体提及的治疗药物/方案 2019 Treatment Identification 子任务
证据质量评估 不仅判断文献是否相关,还评估其证据等级(如 RCT vs 病例报告) 2020 Evidence Quality 评估

§2.4 患者人群特征

维度 特征
数据来源 MD Anderson Cancer Center 肿瘤学家创建的合成案例,非真实患者数据
主题数量 155 个(2017: 30 / 2018: 50 / 2019: 40 / 2020: 35)
年龄范围 儿童至老年(如 12 岁男性至 70+ 岁女性),覆盖全年龄段
性别分布 男女均有覆盖,具体比例取决于每年的主题设计
疾病覆盖 专注肿瘤学,覆盖 20+ 种癌症类型(乳腺癌、肺癌、前列腺癌、结直肠癌、白血病、淋巴瘤等)
基因覆盖 每个主题含 1-3 个基因变异(如 EGFR、KRAS、BRAF、ABL1、PTPN11、BRCA1/2 等),部分主题含融合基因
合成案例特点 半结构化格式,包含疾病、基因变异和人口统计三个字段,需要最少的自然语言处理

§2.5 临床意义

精准医学在肿瘤学中的应用是精准医学 Initiative(2015 年奥巴马发起,现为 All of Us Research Program)的核心实践领域。许多癌症治疗在一名患者中可能挽救生命,在另一名患者中却可能致命——差异主要取决于患者肿瘤的基因突变。不同治疗针对同一癌症类型的不同基因通路,因此快速定位与个体患者基因谱匹配的治疗证据和临床试验是精准医学的关键能力。TREC PM 评测直接回应了这一临床需求:评估 IR 系统在精准医学场景下的检索质量,推动技术从实验室走向临床决策支持。

§2.6 金标准

数据划分 标注方式 标注者 金标准性质
2017 Abstracts qrels pooling + 人工判定 OHSU 医学信息学医师 三级判定(Definitely=2 / Partially=1 / Not=0),22,642 条
2017 Trials qrels pooling + 人工判定 OHSU 医学信息学医师 三级判定,13,441 条
2018 Abstracts qrels pooling + 人工判定 OHSU 医学信息学医师 三级判定,22,429 条(0: 16,841 / 1: 2,146 / 2: 3,442)
2018 Trials qrels pooling + 人工判定 OHSU 医学信息学医师 三级判定
2019 Abstracts qrels pooling + 人工判定 OHSU 医学信息学医师 三级判定 + treatment 标注
2019 Trials qrels pooling + 人工判定 OHSU 医学信息学医师 三级判定
2020 Abstracts qrels pooling + 人工判定 OHSU 医学信息学医师 相关性 + 证据质量双维度评估

注意:TREC PM 所有相关性判定均为单评估者(single assessor per document),不提供 inter-rater agreement 数据。这是 TREC ad-hoc 评测的一贯做法——通过 pooling 多个系统的检索结果来覆盖潜在相关文档,由单个领域专家判定相关性。

§3 数据集规格

§3.0 版本抉择矩阵

你的需求 推荐版本 大小 理由
快速复现 IR 实验 / 资源有限 ir_datasets 在线加载 ~50MB(仅主题+qrels) ir_datasets 自动处理语料索引,无需下载 29GB 原始语料
完整 TREC 评测 / 需要原始语料 NIST 官方全量下载 ~29GB 含 PubMed XML + ClinicalTrials.gov XML + 额外摘要,可完全复现 TREC 评测
仅评估查询扩展策略 2018 主题+qrels ~50MB 50 个主题统计功效最佳,qrels 最完整(22,429 条),社区论文最多
临床试验匹配研究 2017-2019 主题+qrels ~700MB + qrels 3 年均有 Clinical Trials 任务,语料 ClinicalTrials.gov XML ~700MB
证据质量评估研究 2020 主题+qrels ~50MB + 语料 唯一含证据质量双维度评估的年份

§3.1 模态详细说明

TREC PM 是纯文本数据集,包含以下数据模态:

  1. 主题文件(Topics):XML 格式的合成癌症患者案例,每年一个文件(topics2017.xml ~ topics2020.xml)。每个 <topic> 元素包含 <disease><gene><demographic> 三个子元素(2020 年新增 <treatment>)。
  2. MEDLINE 摘要语料:PubMed/MEDLINE 2017 年 1 月快照的 XML 格式摘要,约 2,660 万条,分 5 个分卷(4×4.9GB + 1×1.2GB ≈ 20.7GB)。另含 AACR 会议摘要(~58MB TXT)和 ASCO 会议摘要(~8.8GB TXT)。
  3. ClinicalTrials.gov 语料:2017 年 4 月 ClinicalTrials.gov 快照的 XML 格式试验记录,约 24 万条,~700MB(XML)/ ~275MB(TXT)。
  4. Qrels 判定文件:TREC 标准格式(query_id iter doc_id relevance),每年每任务独立文件,适配 trec_evalsample_eval 工具。

§3.2 样本数统计

年份 主题数 摘要任务 qrels 试验任务 qrels 新增子任务
2017 30 22,642 13,441
2018 50 22,429
2019 40 Treatment Identification
2020 35 (取消) Evidence Quality Assessment
合计 155 ~65,000+ ~25,000+

§3.3 数据格式

文件类型 格式 说明
主题文件 XML <topics><topic number="1"><disease> / <gene> / <demographic> / <treatment>
MEDLINE 语料 XML NLM MEDLINE XML 格式,每条含 PMID、标题、摘要、MeSH 词等
ClinicalTrials.gov 语料 XML NCT ID、试验标题、入排标准、干预措施等结构化字段
AACR/ASCO 摘要 TXT 纯文本格式,文件名(不含扩展名)作为文档 ID
Qrels TXT TREC 标准格式:query_id iter doc_id relevance(relevance: 0/1/2)
提交文件 TXT TREC 标准格式:query_id Q0 doc_id rank score run_id(每主题最多 1000 条)

§3.4 存储大小

组件 压缩后大小 解压后大小 说明
MEDLINE XML(5 分卷) ~20.7GB ~60GB+ PubMed 2017 年 1 月快照
ASCO 摘要 ~8.8GB ~15GB ASCO 会议补充摘要
AACR 摘要 ~58MB ~120MB AACR 会议补充摘要
ClinicalTrials.gov XML ~700MB ~2GB 2017 年 4 月快照
ClinicalTrials.gov TXT ~275MB ~800MB 纯文本版本
主题文件 <1MB <1MB 4 年 XML 文件
Qrels 文件 <10MB <10MB 4 年所有任务的 qrels
合计 ~29GB ~80GB 含所有语料库

§3.5 标注方式

TREC PM 采用 NIST TREC 标准化评测流程:

合成癌症患者案例(MD Anderson 肿瘤学家创建)
        │
        ▼
参赛系统检索 PubMed 摘要 / ClinicalTrials.gov 试验
        │
        ▼
   Pooling:取各系统 Top-N 结果合并去重
        │
        ▼
OHSU 医学信息学医师进行三级相关性判定
  ├── Definitely Relevant (2):疾病 Exact/More Specific + 基因 Exact + 人口统计 Exact/Not Discussed
  ├── Partially Relevant (1):疾病可 More General + 基因可 Missing/Different Variant
  └── Not Relevant (0):不满足上述条件
        │
        ▼
   生成 Qrels → trec_eval 计算 infNDCG / P@10 / R-precision

§3.6 标注者资质

角色 机构 人数 资质 一致性检验
主题创建者 University of Texas MD Anderson Cancer Center 多名 精准肿瘤学家
相关性判定者 Oregon Health & Science University (OHSU) 多名 医学信息学培训的医师 单评估者,无 inter-rater agreement

§3.7 数据采集时间

  • 主题文件:每年 5-6 月发布,由 MD Anderson 肿瘤学家在当年创建
  • PubMed/MEDLINE 快照:2017 年 1 月(2017-2020 所有年份共用此快照)
  • ClinicalTrials.gov 快照:2017 年 4 月(2017-2019 年共用)
  • AACR 摘要:AACR 会议 proceedings
  • ASCO 摘要:ASCO 会议 proceedings

§3.8 地域覆盖

  • 组织方:NIST(Gaithersburg, MD)/ UTHealth Houston / NLM(Bethesda, MD)/ OHSU(Portland, OR)/ MD Anderson(Houston, TX)—— 均为美国机构
  • 语料覆盖:PubMed 摘要覆盖全球生物医学文献(但以英文为主);ClinicalTrials.gov 覆盖全球注册试验(但以美国为主)
  • 主题特征:合成案例基于美国肿瘤学临床实践,基因检测和靶向治疗选择反映美国医疗标准

§3.9 采集设备规格

不适用(纯文本数据集,无影像/信号采集设备)。

§3.10 深度溯源链

TREC PM 数据溯源链
│
├── 主题(Topics)
│   ├── 来源:MD Anderson Cancer Center 肿瘤学家
│   ├── 方式:基于精准肿瘤学临床实践创建合成案例
│   ├── 格式:XML(disease / gene / demographic / treatment)
│   └── 存储:trec.nist.gov/data/precmed/topics201X.xml
│
├── 科学摘要语料
│   ├── 来源:NLM PubMed/MEDLINE 数据库
│   ├── 快照:2017 年 1 月
│   ├── 规模:~26.6M 摘要(XML 5 分卷 ~20.7GB)
│   ├── 补充:AACR proceedings (~58MB) + ASCO proceedings (~8.8GB)
│   └── 存储:trec.nist.gov/data/precmed2017.html
│
├── 临床试验语料
│   ├── 来源:NLM ClinicalTrials.gov 数据库
│   ├── 快照:2017 年 4 月
│   ├── 规模:~240,000 试验(XML ~700MB / TXT ~275MB)
│   └── 存储:trec.nist.gov/data/precmed2017.html
│
├── 相关性判定(Qrels)
│   ├── 评估者:OHSU 医学信息学医师
│   ├── 方法:TREC pooling → 人工三级判定
│   ├── 判定标准:disease + gene + demographic 四维匹配
│   └── 存储:trec.nist.gov/data/precmed20XX.html
│
└── 评测工具
    ├── trec_eval:NIST 标准 IR 评测脚本
    ├── sample_eval:sampled inference 评测脚本
    └── ir_datasets:Python API 一键加载

§4 数据结构详解

§4.0 目录结构预览

trec-pm/
├── topics/
│   ├── topics2017.xml          # 30 个合成癌症案例
│   ├── topics2018.xml          # 50 个合成癌症案例
│   ├── topics2019.xml          # 40 个合成癌症案例
│   └── topics2020.xml          # 35 个合成癌症案例(含 treatment 字段)
├── qrels/
│   ├── qrels_2017_abstracts.txt  # 22,642 条摘要判定
│   ├── qrels_2017_trials.txt     # 13,441 条试验判定
│   ├── qrels_2018_abstracts.txt  # 22,429 条摘要判定
│   ├── qrels_2018_trials.txt
│   ├── qrels_2019_abstracts.txt
│   ├── qrels_2019_trials.txt
│   ├── qrels_2019_treatments.txt # 2019 治疗提取子任务
│   ├── qrels_2020_abstracts.txt
│   └── qrels_2020_evidence.txt   # 2020 证据质量评估
├── corpus/
│   ├── medline_xml/              # PubMed MEDLINE 快照
│   │   ├── medline_xml.part1.tar.gz  # 4.9GB
│   │   ├── medline_xml.part2.tar.gz  # 4.9GB
│   │   ├── medline_xml.part3.tar.gz  # 4.9GB
│   │   ├── medline_xml.part4.tar.gz  # 4.9GB
│   │   └── medline_xml.part5.tar.gz  # 1.2GB
│   ├── extra_abstracts/
│   │   ├── aacr_abstracts.tar.gz    # 58MB
│   │   └── asco_abstracts.tar.gz    # 8.8GB
│   └── clinicaltrials/
│       ├── clinicaltrials_xml.tar.gz  # 700MB
│       └── clinicaltrials_txt.tar.gz  # 275MB
└── tools/
    ├── trec_eval/               # NIST 标准评测工具
    └── sample_eval/             # 采样推断评测工具

§4.1 DAIMS 标准化字段描述表

主题文件字段(Topics XML)
字段名 数据类型 说明 示例值 AI 用途 观测误差 信息性缺失编码 取值范围
number string 主题编号 “1” 查询 ID 1-50
disease string 疾病类型(癌症名称) “Acute lymphoblastic leukemia” 查询构造 20+ 种癌症类型
gene string 基因变异(逗号分隔多个) “ABL1, PTPN11” 查询构造 + 基因匹配 1-3 个基因/主题
demographic string 人口统计(年龄+性别) “12-year-old male” 查询构造 + 过滤 年龄+性别
treatment string 治疗方案(仅 2020) “Trastuzumab” 查询构造(2020 年) 2017-2019 年无此字段 药物名/方案
Qrels 字段(TREC 标准格式)
字段名 数据类型 说明 示例值 AI 用途 观测误差 信息性缺失编码 取值范围
query_id string 主题编号 “1” 关联主题 1-50
iteration string 迭代号(通常 “Q0”) “Q0” TREC 格式占位 “Q0”
doc_id string 文档 ID “12345678” 关联文档 PMID(摘要)/ NCT ID(试验)
relevance integer 相关性等级 2 评估标签 单评估者 0=Not / 1=Partially / 2=Definitely
提交文件字段(TREC 标准格式)
字段名 数据类型 说明 示例值 AI 用途 观测误差 信息性缺失编码 取值范围
query_id string 主题编号 “1” 关联主题 1-50
Q0 string 固定占位 “Q0” TREC 格式 “Q0”
doc_id string 检索文档 ID “12345678” 检索结果 PMID / NCT ID
rank integer 排序位置 1 排序 1-1000
score float 系统打分 42.5 排序依据 任意浮点数
run_id string 运行标识 “myrun01” 结果标识 字符串

§4.2 标签分布统计

2018 年摘要任务 qrels 分布(最完整年份)
相关性等级 含义 数量 占比
2 Definitely Relevant 3,442 15.3%
1 Partially Relevant 2,146 9.6%
0 Not Relevant 16,841 75.1%
合计 22,429 100%

解读:约 25% 的 pooling 文档被判定为相关(Definitely + Partially),说明 TREC PM 的查询构建和 pooling 策略有效覆盖了相关文档空间。Definitely Relevant 仅占 15.3%,反映精准医学检索的高难度——严格匹配疾病+基因+人口统计三个维度的文献较少。

§4.3 关键统计

  • 主题维度统计(2017 年 30 主题):平均每主题 1.13 个基因(6 个主题含 2 个基因,1 个含 3 个基因)
  • 每主题平均 qrels 数:~754 条摘要判定 + ~448 条试验判定(2017 年)
  • 文档库规模:PubMed 摘要 ~26.6M 条 / ClinicalTrials.gov 试验 ~240K 条
  • 每主题提交上限:1000 条文档
  • 最大提交运行数:每任务 5 个运行(automatic 或 manual)

§4.4 数据层级关系

TREC PM 数据层级
├── 年份(2017 / 2018 / 2019 / 2020)
│   ├── 主题集(topics20XX.xml)
│   │   └── 主题(<topic number="N">)
│   │       ├── <disease>
│   │       ├── <gene>
│   │       ├── <demographic>
│   │       └── <treatment>(仅 2020)
│   ├── 语料库
│   │   ├── PubMed/MEDLINE 摘要(~26.6M)
│   │   │   └── 摘要(PMID → title + abstract + MeSH)
│   │   └── ClinicalTrials.gov 试验(~240K)
│   │       └── 试验(NCT ID → title + eligibility + intervention)
│   └── Qrels
│       ├── 摘要 qrels(query_id → doc_id → relevance)
│       ├── 试验 qrels(query_id → doc_id → relevance)
│       └── 治疗 qrels(2019+)/ 证据 qrels(2020)

§4.5 缺失值情况

字段 缺失情况 信息性缺失编码
treatment 2017-2019 年主题无此字段 年份差异,非缺失
gene 极少数主题可能无明确基因变异 以疾病维度为主检索
每主题 qrels 所有主题均有 qrels 无缺失
文档全文 仅提供摘要,无全文 PubMed 设计如此

§5 数据划分与使用建议

§5.1 官方划分

TREC PM 不采用传统的 train/valid/test 划分,而是每年作为独立的评测批次。每年的主题和 qrels 构成一个完整的评测集合。

年份 主题数 用途 特点
2017 30 独立评测 首轮评测,无前序数据可用于训练
2018 50 独立评测 主题数最多,可用 2017 qrels 做 LTR 训练
2019 40 独立评测 新增治疗提取子任务,可用 2017+2018 qrels 训练
2020 35 独立评测 重大调整(新增 treatment、取消试验、引入证据质量)

§5.2 数据划分策略

策略 方法 适用场景 风险
跨年 LTR 用 2017+2018 qrels 训练 LTR 模型,在 2019/2020 上测试 Learning-to-Rank 研究 年份间主题分布可能不同
年度内交叉验证 单年内主题 K-fold 交叉验证 超参数调优 主题数少(30-50),统计功效有限
多年份合并 合并 4 年所有主题和 qrels 作为大数据集 整体系统评估 2020 年任务结构不同,需谨慎合并
仅用最新年份 仅用 2020(含证据质量评估) 证据质量研究 主题数最少(35),且任务结构变化大

§5.3 数据泄漏风险

风险 描述 缓解措施
跨年语料相同 2017-2020 共用同一 PubMed/CT.gov 快照 避免在语料层面做任何训练-测试泄漏
主题相似性 不同年份可能有相似疾病/基因组合的主题 跨年 LTR 时检查主题相似度
qrels 共享 同一文档可能被不同年份的主题判定 检查文档 ID 跨年重叠
PubMed 持续更新 快照为 2017 年 1 月,PubMed 已持续更新 评测时使用官方快照,不可用当前 PubMed

§5.4 外部验证建议

  • 在非 TREC 数据上验证:在 BioASQ、CLEF eHealth 等其他医学 IR 评测上验证迁移性

  • 在真实临床场景验证:与 MD Anderson 或其他癌症中心的真实精准医学检索需求对比

  • 时效性验证:评估系统在 2017 快照 vs 当前 PubMed 上的性能差异

§6 AI 就绪指南

§6.0 云端快速启动

ir_datasets 一键加载:无需下载 29GB 原始语料,ir_datasets 自动处理主题和 qrels 加载。

§6.1 快速上手

# ========================================
# TREC PM 快速上手 — ir_datasets + PyTerrier
# 环境要求: pip install ir_datasets python-terrier
#
# ⚠️ 数据说明:
#   ir_datasets 自动下载 TREC PM 主题和 qrels(~50MB)
#   PubMed/ClinicalTrials.gov 语料需单独下载(见 §6.2)
#   以下代码仅加载主题和 qrels,可在普通笔记本上运行
# ========================================

import ir_datasets

# 加载 TREC 2018 PM 摘要任务
dataset = ir_datasets.load("medline/2017/trec-pm-2018")

# 查看主题
print(f"主题数: {dataset.queries_count()}")
for topic in dataset.queries_iter():
    print(f"  Topic {topic.query_id}: disease=''''''''''''''''{topic.disease}'''''''''''''''', gene=''''''''''''''''{topic.gene}'''''''''''''''', demographic=''''''''''''''''{topic.demographic}''''''''''''''''")
    if int(topic.query_id) >= 3:
        break

# 查看统计
print(f"\nQrels 总数: {dataset.qrels_count()}")

§6.2 数据获取

数据 下载地址 大小 获取方式
主题文件(2017-2020) https://trec.nist.gov/data/precmed.html <1MB 直接下载 XML
Qrels(2017-2020) https://trec.nist.gov/data/precmed.html <10MB 直接下载 TXT
MEDLINE XML(5 分卷) https://trec.nist.gov/data/precmed2017.html ~20.7GB 下载 5 个 tar.gz 分卷
ClinicalTrials.gov XML https://trec.nist.gov/data/precmed2017.html ~700MB 下载 tar.gz
AACR 摘要 https://trec.nist.gov/data/precmed2017.html ~58MB 下载 tar.gz
ASCO 摘要 http://www.trec-cds.org/2018.html ~8.8GB 下载 tar.gz
ir_datasets(推荐) pip install ir_datasets 自动管理 Python API 自动下载主题+qrels

§6.3 预处理 Pipeline

# ========================================
# TREC PM 预处理 — 从 XML 主题构建查询 + PyTerrier 检索
# 环境要求: pip install ir_datasets python-terrier
# ========================================

import ir_datasets
from pyterrier.measures import *

# 1. 加载数据
dataset = ir_datasets.load("medline/2017/trec-pm-2018")
topics = dataset.get_topics(''''''''''''''''text'''''''''''''''')  # 获取主题
qrels = dataset.get_qrels()          # 获取 qrels

# 2. 构建查询文本(disease + gene + demographic 拼接)
import pandas as pd
topics_df = pd.DataFrame([
    {
        ''''''''''''''''qid'''''''''''''''': t.query_id,
        ''''''''''''''''query'''''''''''''''': f"{t.disease} {t.gene} {t.demographic}"
    }
    for t in dataset.queries_iter()
])
print(f"查询构造完成: {len(topics_df)} 个查询")
print(topics_df.head())

# 3. 构建索引(需要预下载 MEDLINE 语料)
# 以下为示例 —— 实际需先下载并索引 PubMed 快照
# import pyterrier as pt
# pt.init()
# index_ref = pt.IndexRef.of(''''''''''''''''./indices/medline_2017'''''''''''''''')
# pipeline = pt.BatchRetrieve(index_ref, wmodel=''''''''''''''''BM25'''''''''''''''')
# results = pipeline.transform(topics_df)

# 4. 评估
# pt.Experiment(
#     [pipeline],
#     topics_df,
#     qrels,
#     [infNDCG, P@10, Rprec]
# )

§6.4 框架加载

<details>
<summary>ir_datasets 加载(推荐)</summary>

import ir_datasets

# TREC 2017 PM
dataset_2017 = ir_datasets.load("medline/2017/trec-pm-2017")

# TREC 2018 PM
dataset_2018 = ir_datasets.load("medline/2017/trec-pm-2018")

# TREC 2019 PM
dataset_2019 = ir_datasets.load("medline/2017/trec-pm-2019")

# 遍历所有主题和 qrels
for topic in dataset_2018.queries_iter():
    print(f"Topic {topic.query_id}: {topic.disease} / {topic.gene} / {topic.demographic}")

for qrel in dataset_2018.qrels_iter():
    print(f"Qrel: query={qrel.query_id}, doc={qrel.doc_id}, rel={qrel.relevance}")

</details>

<details>
<summary>PyTerrier 完整实验</summary>

import pyterrier as pt
from pyterrier.measures import *

pt.init()

# 加载数据
dataset = pt.get_dataset(''''''''''''''''irds:medline/2017/trec-pm-2018'''''''''''''''')

# 构建索引(需预下载语料)
# index_ref = pt.IndexRef.of(''''''''''''''''./indices/medline_2017'''''''''''''''')

# BM25 基线
bm25 = pt.BatchRetrieve(index_ref, wmodel=''''''''''''''''BM25'''''''''''''''')

# 查询扩展(UMLS/NCIt 同义词)
# ...(需要外部同义词资源)

# 评估
pt.Experiment(
    [bm25],
    dataset.get_topics(''''''''''''''''text''''''''''''''''),
    dataset.get_qrels(),
    [infNDCG, P@10, Rprec],
    names=[''''''''''''''''BM25 baseline'''''''''''''''']
)

</details>

<details>
<summary>原始 XML 解析</summary>

import xml.etree.ElementTree as ET

# 解析 TREC PM 主题 XML
def parse_topics(xml_path):
    tree = ET.parse(xml_path)
    root = tree.getroot()
    topics = []
    for topic in root:
        topics.append({
            ''''''''''''''''number'''''''''''''''': topic.get(''''''''''''''''number''''''''''''''''),
            ''''''''''''''''disease'''''''''''''''': topic.find(''''''''''''''''disease'''''''''''''''').text,
            ''''''''''''''''gene'''''''''''''''': topic.find(''''''''''''''''gene'''''''''''''''').text,
            ''''''''''''''''demographic'''''''''''''''': topic.find(''''''''''''''''demographic'''''''''''''''').text,
            # 2020 年有 treatment 字段
            ''''''''''''''''treatment'''''''''''''''': topic.find(''''''''''''''''treatment'''''''''''''''').text if topic.find(''''''''''''''''treatment'''''''''''''''') is not None else None
        })
    return topics

topics = parse_topics(''''''''''''''''topics2018.xml'''''''''''''''')
for t in topics[:5]:
    print(t)

</details>

§6.5 常见坑点

⚠️ 坑点 1:语料库快照版本固定(分类:数据泄漏)

问题:TREC PM 2017-2020 所有年份共用 2017 年 1 月的 PubMed 快照。如果用当前 PubMed 检索结果与 TREC qrels 对比,会因新文献缺失/旧文献更新而产生不一致。

症状:本地检索的 PMID 在 qrels 中找不到,或 qrels 中的文档在当前 PubMed 中已被撤回/更新。

解决:始终使用 NIST 提供的 2017 年 1 月快照进行评测。如需测试时效性,单独构建新快照但不与 TREC qrels 混用。

参考https://trec.nist.gov/data/precmed2017.html

⚠️ 坑点 2:主题数少导致统计功效不足(分类:评估误用)

问题:每年仅 30-50 个主题,某些主题的疾病/基因组合独特,个别主题的表现可能极大影响整体指标。统计显著性检验的功效低。

症状:不同系统的 infNDCG 差异 <0.02 但被解读为"显著提升";跨年比较时个别异常主题主导结论。

解决:(1) 报告 per-topic 分析而非仅均值;(2) 使用配对 t 检验或 Wilcoxon 符号秩检验评估显著性;(3) 合并多年 qrels 增大样本量(注意 2020 年任务结构不同)。

参考:TREC Overview 论文中的 per-topic 分析表格

⚠️ 坑点 3:单评估者无 inter-rater agreement(分类:偏倚陷阱)

问题:TREC PM 的每个文档仅由一名 OHSU 医师判定相关性,没有 inter-rater agreement 数据。判定标准的主观性可能影响 qrels 质量。

症状:某些 qrels 判定与直觉不符(如明显相关的文档被判定为 Not Relevant,反之亦然)。

解决:(1) 理解 TREC 的三级判定标准(disease + gene + demographic 四维匹配)—— 文档可能讨论相关疾病但基因变异不匹配;(2) 参考官方 Relevance Guidelines 理解判定逻辑;(3) 对关键实验手动审查有争议的 qrels。

参考http://www.trec-cds.org/relevance_guidelines.html

⚠️ 坑点 4:基因字段格式不统一(分类:预处理陷阱)

问题:基因字段的格式因主题而异——有时是纯基因名(“EGFR”),有时含变异信息(“ABL1, PTPN11”),有时含融合基因(“BCR-ABL1”)。直接拼接为查询文本可能丢失变异级精度。

症状:BM25 基线检索的 infNDCG 低于 TREC 中位数(0.2766 for 2017),因为基因变异匹配失败。

解决:(1) 用 NCIt/UMLS 对基因名和变异做同义词扩展;(2) 将基因字段拆分为基因名+变异类型分别 boost;(3) 参考社区高分团队的查询模板(如 UKNLP 的七组件加权查询)。

参考:UKNLP at TREC 2017 PM, trec.nist.gov/pubs/trec26/papers/UKNLP-PM.pdf

⚠️ 坑点 5:PubMed XML 分卷下载和解压(分类:工程陷阱)

问题:MEDLINE XML 语料分为 5 个 tar.gz 分卷(4×4.9GB + 1×1.2GB),解压后总量 ~60GB+。处理大型 XML 文件需要流式解析。

症状:内存溢出(OOM);索引构建耗时长(数小时到数天)。

解决:(1) 使用 lxml 的迭代解析(iterparse)而非 ET.parse;(2) 考虑使用 PyTerrier 或 Anserini 等现成索引工具;(3) 如果只需评估,用 ir_datasets 加载预建索引。

参考https://ir-datasets.com/medline.html

⚠️ 坑点 6:2019 年 treatment 子任务的评估差异(分类:评估误用)

问题:2019 年新增的 Treatment Identification 子任务有独立的评估协议,不能直接用标准 trec_eval 评估。需要单独的评估脚本。

症状:用 trec_eval 评估 treatment 子任务结果报错或数值异常。

解决:下载 NIST 提供的 2019 年专用评估脚本(sample_eval),或参考 ir_datasets 的 2019 评估说明。

参考https://trec.nist.gov/data/precmed2019.html

⚠️ 坑点 7:2020 年任务结构变化(分类:评估误用)

问题:2020 年取消了 Clinical Trials 任务,新增了 treatment 字段和证据质量评估。不能将 2020 年的结果直接与 2017-2019 年比较。

症状:2020 年的 qrels 格式与之前不同(含证据等级信息),混用会导致评估错误。

解决:(1) 2020 年使用 Phase 1(标准相关性)和 Phase 2(证据质量)双阶段评估;(2) 使用 NIST 提供的 2020 专用 qrels 和评估脚本;(3) 跨年比较时仅使用 2017-2019 年的摘要任务结果。

参考https://trec.nist.gov/data/precmed2020.html

⚠️ 坑点 8:AACR/ASCO 摘要的文档 ID 格式(分类:工程陷阱)

问题:AACR 和 ASCO 补充摘要仅提供 TXT 格式,文档 ID 为文件名(不含扩展名)。与 PubMed PMID 格式不同,提交时需使用正确的 ID 格式。

症状:提交文件中 AACR/ASCO 文档的 ID 格式错误导致评估时无法匹配 qrels。

解决:仔细阅读 trec-cds.org 的文档说明,确保 AACR/ASCO 文档 ID 使用文件名(不含 .txt 扩展名)。

参考http://www.trec-cds.org/2018.html

§6.6 数据增强策略

策略 方法 安全性 效果
UMLS 同义词扩展 用 UMLS Metathesaurus 获取疾病/基因同义词 ✅ 安全 显著提升 recall
NCIt 本体扩展 用 NCIt 获取疾病层级更广/更窄概念 ✅ 安全 提升疾病匹配覆盖
MeSH 词扩展 用 MeSH 层级扩展疾病和基因 MeSH 词 ✅ 安全 提升检索覆盖
词嵌入相似度扩展 用 BioWordVec 等生物医学词嵌入获取近义词 ⚠️ 需验证 可能引入噪声
人口统计过滤 用 demographic 信息过滤不匹配的文档 ✅ 安全 提升临床试验匹配精度
Learning-to-Rank 用历年 qrels 训练 LTR 模型 ✅ 安全 显著提升排序质量

§6.7 模型推荐

任务 推荐方法 预期 infNDCG 说明
基线检索 BM25 ~0.28 TREC 2017 中位数
查询扩展 BM25 + NCIt 同义词 ~0.31 TREC 2017 高分团队水平
加权查询 多字段加权(disease+gene+demographic) ~0.35-0.39 UKNLP 2017 方法
Learning-to-Rank LTR(用 2017 qrels 训练,2018 测试) ~0.40+ julie-mug 2019 水平
语义检索 BioBERT/Dense Retrieval ~0.40+ 前沿研究方向

§6.8 计算资源需求

配置 CPU RAM 磁盘 GPU 用途
最小可用 4 核 8GB 50GB ir_datasets 加载主题+qrels
索引构建 8 核 32GB 100GB PyTerrier/Anserini 索引 PubMed
语义检索 8 核 32GB 100GB 1×RTX 3090 BioBERT dense retrieval
完整实验 16 核 64GB 200GB 1×A100 LTR + 语义检索 + 消融实验

§6.9 评估指标

# ========================================
# TREC PM 评估指标计算
# 使用 trec_eval 或 ir_datasets 内置评估
# ========================================

# 方法 1: trec_eval 命令行
# trec_eval -m infNDCG -m P.10 -m Rprec qrels.txt run.txt

# 方法 2: ir_datasets Python API
import ir_datasets
from ir_datasets.measures import infNDCG, P_at_10, Rprec

dataset = ir_datasets.load("medline/2017/trec-pm-2018")
qrels = {q.query_id: q for q in dataset.qrels_iter()}

# 计算 infNDCG(需要 trec_eval 或 gdeval 工具)
# infNDCG 是 TREC PM 的主要指标
# P@10:前 10 名精确率
# R-precision:在 R 个结果处的精确率(R = 相关文档总数)

print("TREC PM 评估指标:")
print("  摘要任务: infNDCG (主) / P@10 / R-precision")
print("  试验任务: P@5 / P@10 / P@15")
print("  2019 治疗: 独立评估脚本")
print("  2020 证据: Phase 1 (标准) + Phase 2 (证据质量)")

§6.10 MLOps 笔记

  • 索引管理:PubMed 快照索引构建耗时 4-12 小时,建议持久化存储索引文件

  • 版本控制:ir_datasets 自动管理数据版本,确保可复现性

  • 评测流水线:使用 PyTerrier 的 Experiment API 一行代码完成多系统对比评测

  • 结果提交格式:严格遵循 TREC 格式(qid Q0 docid rank score runid),否则 trec_eval 报错

§7 质量评估与局限性

§7.1 已知偏倚

偏倚类型 描述 严重程度 缓解措施
机构偏倚 主题由 MD Anderson 单一机构肿瘤学家创建,疾病/基因选择可能反映机构偏好 扩大主题创建者来源(已结束的赛道无法缓解)
疾病偏倚 仅覆盖肿瘤学,不适用于非癌症精准医学 明确标注适用范围,不外推到其他疾病
合成案例偏倚 合成案例可能无法捕捉真实临床场景的复杂性和模糊性 与真实 EHR 数据交叉验证
语料时效偏倚 PubMed 快照为 2017 年 1 月,不反映后续文献进展 评测时使用官方快照;研究时效性时另建快照
英文偏倚 语料仅为英文,排除非英文精准医学文献 明确标注语言限制
单评估者偏倚 每个文档仅一名医师判定,无 inter-rater agreement 理解 TREC pooling 设计的统计补偿逻辑
主题数偏倚 每年 30-50 个主题,统计功效有限 合并多年数据增加样本量;报告 per-topic 分析

§7.2 标注质量评估

标注方式 评估者 质量指标 局限性
三级相关性判定 OHSU 医学信息学医师 四维匹配标准(disease/gene/demographic/other) 单评估者,无一致性数据
主题创建 MD Anderson 精准肿瘤学家 基于真实临床实践 合成案例,可能缺失真实场景噪声
Pooling 策略 NIST 标准 TREC pooling 覆盖多系统检索结果 可能遗漏未被任何系统检索到的相关文档

§7.3 泛化性讨论

场景 失效风险 证据
非肿瘤精准医学 主题均为癌症案例,疾病/基因组合反映肿瘤学实践
非英文文献检索 语料仅含英文 PubMed 摘要
当前文献检索 快照为 2017 年 1 月,不反映 2017 年后进展
真实患者场景 合成案例为半结构化,真实 EHR 数据更复杂
非 ad-hoc 检索 评测设计为 ad-hoc 检索,问答/摘要等任务需不同评估

§7.4 伦理考量

  1. 合成数据安全:所有主题为合成案例,无真实患者数据,无 PHI 泄漏风险
  2. 公平性:主题覆盖不同年龄和性别,但未系统评估系统在不同人口统计子群体上的性能差异
  3. 临床影响:TREC PM 系统可能被用于临床决策支持,但评测设计为离线检索评估,不直接评估临床影响
  4. 数据归属:PubMed 摘要版权归各出版商,ClinicalTrials.gov 记录为公共领域

§7.5 公平性评估

# ========================================
# TREC PM 公平性评估 — 按人口统计子群分析
# ========================================
import ir_datasets
from collections import defaultdict

dataset = ir_datasets.load("medline/2017/trec-pm-2018")

# 按性别/年龄分组统计主题
gender_groups = defaultdict(list)
for topic in dataset.queries_iter():
    demo = topic.demographic.lower()
    if ''''''''''''''''female'''''''''''''''' in demo or ''''''''''''''''woman'''''''''''''''' in demo or ''''''''''''''''girl'''''''''''''''' in demo:
        gender_groups[''''''''''''''''female''''''''''''''''].append(topic.query_id)
    elif ''''''''''''''''male'''''''''''''''' in demo or ''''''''''''''''man'''''''''''''''' in demo or ''''''''''''''''boy'''''''''''''''' in demo:
        gender_groups[''''''''''''''''male''''''''''''''''].append(topic.query_id)

print("性别分布:")
for g, topics in gender_groups.items():
    print(f"  {g}: {len(topics)} 个主题")

# 分析不同子群的系统表现差异
# (需要运行结果文件 + qrels 配对分析)

§7.6 数据漂移提示

  • PubMed 快照固定在 2017 年 1 月:2017 年后发表的精准医学文献(如 CAR-T 疗法、CRISPR 临床试验)不在语料中
  • ClinicalTrials.gov 快照固定在 2017 年 4 月:此后注册的大量新试验不在语料中
  • 基因检测面板演进:2017 年的基因面板与现代临床实践可能不同(如 NGS panel 覆盖更广)
  • 靶向药物更迭:2017 年后获批的新靶向药物不在文献语料中

§7.7 DAIMS 24 项数据就绪度评估表

# 检查项 状态 说明
1 数据集基本信息 名称、机构、许可证完整
2 数据组成与规模 155 主题 + ~26.6M 摘要 + ~240K 试验,详细统计
3 数据采集过程 MD Anderson 创建主题,NLM 提供语料,OHSU 判定相关性
4 标注者资质 肿瘤学家 + 医学信息学医师
5 标注一致性 ⚠️ 单评估者,无 inter-rater agreement
6 标注指南 官方 Relevance Guidelines 文档
7 数据格式规范 TREC 标准 XML/TXT/qrels 格式
8 数据字典 DAIMS 字段表(§4.1)
9 缺失值处理 2020 年 treatment 字段在早期不存在(年份差异)
10 数据划分 按年份独立评测,无传统 train/test 划分
11 评估指标 infNDCG / P@10 / R-precision(标准 IR 指标)
12 评估工具 trec_eval + sample_eval + ir_datasets
13 预处理脚本 ir_datasets + PyTerrier 原生支持
14 已知偏倚 7 项偏倚已文档化(§7.1)
15 伦理考量 合成数据,无 PHI
16 许可证 美国政府公共领域
17 数据访问 NIST 官网直接下载
18 元数据标准化 TREC qrels + XML 标准格式
19 可复现性 NIST 永久托管,ir_datasets 版本管理
20 版本历史 4 年 4 轮,时间轴完整
21 外部验证 ⚠️ 跨年验证可能,但无非 TREC 外部验证
22 数据漂移 ⚠️ 语料固定 2017 年快照,存在时效漂移
23 公平性 ⚠️ 覆盖年龄/性别,但未系统评估子群差异
24 社区生态 ir_datasets / PyTerrier / trec_eval 工具链完善

DAIMS 评分:21 / 24
评分解读优秀 — 标准化程度高,工具链完善,可直接用于 IR 研究。

对你意味着什么:TREC PM 是医疗 IR 领域标准化程度最高的评测基准之一。主要扣分项集中在:单评估者无一致性数据(TREC 传统设计)、语料时效固定在 2017 年、缺乏系统性的公平性子群评估。建议:(1) 使用 ir_datasets 一键加载,避免手动处理 29GB 语料;(2) 跨年 LTR 时注意合并 2017-2019 年 qrels(2020 年结构不同);(3) 报告 per-topic 分析以应对小样本统计功效问题;(4) 关注语料时效性,不将结果外推到 2017 年后的文献。

§7.8 外部验证矩阵

外部数据集/场景 来源机构 样本量 评估任务 性能指标 相对内部变化 关键发现
TREC CDS 2014-2016 NIST/OHSU 210 主题 通用临床决策文献检索 infNDCG TREC PM 前序赛道,无基因维度,检索难度较低
BioASQ CERTH-ITI 4,234+ 问题 生物医学语义问答 MAP/MRR 开放域 QA 任务,不直接可比
CLEF eHealth CLEF 电子健康记录信息提取 不同任务类型,验证 IR 系统跨任务迁移性
真实临床场景 MD Anderson 真实患者精准医学检索 合成案例与真实场景存在差距

§8 基准性能与生态

§8.1 排行榜

注意:TREC PM 每年独立评测,不同年份的主题集和语料库版本相同但主题不同,绝对数值不可直接跨年比较。同一年份内不同系统的数值可直接比较。以下收录各年高分系统表现。

年份 排名 系统/团队 infNDCG P@10 R-prec 关键技术 完整引用
2017 中位数 TREC Median 0.2766 0.3733 0.1761 Roberts et al., 2018, TREC
2017 高分 CSIRO (aCSIROmedNEG) 0.3092 0.3733 0.2000 否定检测 + GDS 排序 + 人口统计过滤 Gallego et al., 2018, TREC. DOI:10.6028/NIST.SP.500-331.pm-CSIRO
2017 高分 UKNLP (UKY_AGG) 0.3852 0.4933 0.2518 七组件加权查询 + COSMIC 代理训练 Wang et al., 2018, TREC. DOI:10.6028/NIST.SP.500-331.pm-UKNLP
2017 最佳 TREC Best Roberts et al., 2018, TREC Overview
2018 中位数 TREC Median ~0.28 ~0.38 ~0.18 Roberts et al., 2019, TREC
2018 高分 HPI-DHC 主题模型 + 监督分类 + 规则查询扩展 Oleynik et al., 2019, TREC. DOI:10.6028/NIST.SP.500-331.pm-hpi-dhc
2019 高分 JULIE-MUG (baseline) 0.5783 0.6525 0.3572 精心设计的加权查询 Faessler et al., 2020, TREC. DOI:10.6028/NIST.SP.1250.pm-julie-mug
2019 高分 JULIE-MUG (trials) 0.6451 0.5474 0.4814 基线检索策略 Faessler et al., 2020, TREC
2019 备注 LTR 实验 ↓ 低于基线 LTR 用内部参考标准训练反而降低性能 Faessler et al., 2020, TREC
2020 TREC 2020 PM 新增证据质量双阶段评估 Roberts et al., 2021, TREC. PMC8629152

趋势分析:2017→2019 年间,系统性能持续提升(infNDCG 从 ~0.28 提升到 ~0.58),主要得益于查询扩展策略的优化和 Learning-to-Rank 的引入。2019 年 julie-mug 团队发现 LTR 在使用内部参考标准训练时反而降低性能,提示小样本 LTR 的过拟合风险。

§8.2 SOTA 总结

指标 最佳系统 数值 年份 关键技术
infNDCG(摘要) JULIE-MUG baseline 0.5783 2019 精心设计的加权查询(disease + gene + treatment boost)
P@10(摘要) JULIE-MUG baseline 0.6525 2019 同上
R-precision(摘要) JULIE-MUG baseline 0.3572 2019 同上
infNDCG(试验) JULIE-MUG baseline 0.6451 2019 基线检索 + 精心调参
P@10(试验) JULIE-MUG baseline 0.5474 2019 同上

§8.3 评测协议

TREC 标准化 ad-hoc 评测流程

  1. 主题发布:每年 5-6 月在 trec.nist.gov 发布 XML 格式主题
  2. 系统检索:参赛系统对每个主题从语料库检索最多 1000 条文档
  3. 提交格式:TREC 标准(qid Q0 docid rank score runid),每任务最多 5 个运行
  4. Pooling:NIST 取各系统 Top-N 结果合并去重,形成评估池
  5. 人工判定:OHSU 医师对池中文档进行三级相关性判定
  6. 指标计算trec_eval 计算 infNDCG / P@10 / R-precision(摘要)/ P@5 / P@10 / P@15(试验)
  7. 结果发布:每年 10-11 月发布 qrels 和各系统评分

§8.4 相关数据集

数据集 关系 说明
TREC CDS (2014-2016) 前序 TREC PM 的前序赛道,通用临床决策支持,210 个主题
TREC Genomics (2003-2007) 前序 最早的生物医学 IR 评测,基因组学文献检索
TREC Medical Records (2011-2012) 前序 从 EHR 中检索患者队列
BioASQ 互补 生物医学语义问答,不同任务类型
ClinicalTrials.gov 语料来源 TREC PM 临床试验语料的原始数据库
PubMed/MEDLINE 语料来源 TREC PM 科学摘要语料的原始数据库

§8.5 关键论文

  1. Roberts, K., Demner-Fushman, D., Voorhees, E.M., Hersh, W.R., Bedrick, S., Lazar, A.J. (2018). “Overview of the TREC 2017 Precision Medicine Track.” TREC 2017 Proceedings. NIST SP.500-340.
    — TREC PM 首轮评测总览,定义任务结构、相关性判定标准和评测协议。

  2. Roberts, K., Demner-Fushman, D., Voorhees, E.M., Hersh, W.R., Bedrick, S., Lazar, A.J. (2019). “Overview of the TREC 2018 Precision Medicine Track.” TREC 2018 Proceedings. NIST SP.500-331.
    — 2018 年评测总览,50 个主题,22,429 条摘要 qrels。

  3. Roberts, K., Demner-Fushman, D., Voorhees, E.M., Hersh, W.R., Bedrick, S., Lazar, A.J. (2020). “Overview of the TREC 2019 Precision Medicine Track.” TREC 2019 Proceedings. NIST SP.1250.
    — 2019 年评测总览,新增 Treatment Identification 子任务。

  4. Roberts, K., Demner-Fushman, D., Voorhees, E.M., Hersh, W.R., Bedrick, S., Lazar, A.J., Simpson, M. (2021). “Overview of the TREC 2020 Precision Medicine Track.” TREC 2020 Proceedings. NIST SP.1266. PMC8629152.
    — 最终轮评测总览,新增 treatment 字段和证据质量评估,临床试验任务取消。

  5. Faessler, E., Hahn, U., Oleynik, M. (2020). “JULIE Lab & Med Uni Graz @ TREC 2019 Precision Medicine Track.” TREC 2019 Proceedings. NIST SP.1250.
    — 2019 年高分团队,infNDCG=0.5783,探索了 LTR 在小样本场景的有效性。

§8.6 社区活跃度

指标 数值 截止日期
参赛团队数(4 年合计) 50+ 2020-11
Google Scholar 引用(4 篇 Overview 合计) 500+ 2026-07
ir_datasets 支持的 TREC PM 子集 4 个(2017-2020) 2026-07
PyTerrier 原生支持 2026-07
活跃 GitHub 仓库 NIST trec_eval / ir_datasets / PyTerrier 2026-07

§8.7 生态快照

资源 类型 链接 Star/Fork(截至 2026-07) 为什么值得关注
ir_datasets 工具库 https://ir-datasets.com/ 500+/100+ 一行代码加载 TREC PM 主题+qrels,自动版本管理
PyTerrier 工具库 https://github.com/terrier-org/pyterrier 600+/100+ Python IR 实验框架,原生支持 TREC PM 评测
trec_eval 评测工具 https://github.com/usnistgov/trec_eval 300+/100+ NIST 官方 IR 评测工具,计算 infNDCG 等指标
NIST TREC PM 官网 官方资源 https://trec.nist.gov/data/precmed.html 所有主题、qrels、语料的官方下载页
TREC CDS 官网 官方资源 http://www.trec-cds.org/ TREC PM 赛道官网,含文档说明和 relevance guidelines
TREC PM 生态全景
│
├── NIST(评测组织方)
│   ├── trec.nist.gov — 数据下载 + 论文发表
│   └── trec_eval — 标准评测工具
│
├── MD Anderson Cancer Center(主题创建方)
│   └── 精准肿瘤学家 — 合成癌症患者案例
│
├── OHSU(相关性判定方)
│   └── 医学信息学医师 — 三级相关性判定
│
├── NLM(语料提供方)
│   ├── PubMed/MEDLINE — ~26.6M 摘要
│   └── ClinicalTrials.gov — ~240K 试验
│
├── ir_datasets(数据加载层)
│   ├── medline/2017/trec-pm-2017
│   ├── medline/2017/trec-pm-2018
│   ├── medline/2017/trec-pm-2019
│   └── medline/2017/trec-pm-2020
│
├── PyTerrier(实验框架层)
│   ├── irds:medline/2017/trec-pm-2018
│   └── Experiment API — 一行代码多系统对比
│
└── 参赛团队(技术贡献方)
    ├── CSIRO — 否定检测 + GDS 排序
    ├── UKNLP — 七组件加权查询
    ├── HPI-DHC — 主题模型 + 监督分类
    ├── JULIE-MUG — LTR 探索
    └── KlickLabs — NCIt 查询扩展

§9 相关资源与引用

§9.1 BibTeX

@inproceedings{roberts2018trecpm,
  title={Overview of the TREC 2017 Precision Medicine Track},
  author={Roberts, Kirk and Demner-Fushman, Dina and Voorhees, Ellen M. and Hersh, William R. and Bedrick, Steven and Lazar, Alexander J.},
  booktitle={Proceedings of the Twenty-Sixth Text REtrieval Conference (TREC 2017)},
  series={NIST Special Publication},
  volume={500-340},
  year={2018},
  publisher={NIST},
  url={https://trec.nist.gov/pubs/trec26/papers/Overview-PM.pdf}
}

@inproceedings{roberts2019trecpm,
  title={Overview of the TREC 2018 Precision Medicine Track},
  author={Roberts, Kirk and Demner-Fushman, Dina and Voorhees, Ellen M. and Hersh, William R. and Bedrick, Steven and Lazar, Alexander J.},
  booktitle={Proceedings of the Twenty-Seventh Text REtrieval Conference (TREC 2018)},
  series={NIST Special Publication},
  volume={500-331},
  year={2019},
  publisher={NIST},
  url={https://trec.nist.gov/pubs/trec27/papers/Overview-PM.pdf}
}

@inproceedings{roberts2020trecpm,
  title={Overview of the TREC 2019 Precision Medicine Track},
  author={Roberts, Kirk and Demner-Fushman, Dina and Voorhees, Ellen M. and Hersh, William R. and Bedrick, Steven and Lazar, Alexander J.},
  booktitle={Proceedings of the Twenty-Eighth Text REtrieval Conference (TREC 2019)},
  series={NIST Special Publication},
  volume={1250},
  year={2020},
  publisher={NIST}
}

@article{roberts2021trecpm,
  title={Overview of the TREC 2020 Precision Medicine Track},
  author={Roberts, Kirk and Demner-Fushman, Dina and Voorhees, Ellen M. and Hersh, William R. and Bedrick, Steven and Lazar, Alexander J. and Simpson, Matthew},
  journal={Text REtrieval Conference},
  year={2021},
  publisher={NIST},
  url={https://pmc.ncbi.nlm.nih.gov/articles/PMC8629152/}
}

§9.2 官方资源

资源 URL
NIST TREC PM 数据下载 https://trec.nist.gov/data/precmed.html
TREC CDS/PM 官网 http://www.trec-cds.org/
2017 数据页 https://trec.nist.gov/data/precmed2017.html
2018 数据页 https://pages.nist.gov/trec-browser/trec27/pm/data/
2019 数据页 https://pages.nist.gov/trec-browser/trec28/pm/data/
2020 数据页 https://pages.nist.gov/trec-browser/trec29/pm/data/
ir_datasets Medline https://ir-datasets.com/medline.html
ir_datasets ClinicalTrials https://ir-datasets.com/clinicaltrials.html

§9.3 关键论文

  1. Roberts et al. (2018). “Overview of the TREC 2017 Precision Medicine Track.” TREC 2017.
  2. Roberts et al. (2019). “Overview of the TREC 2018 Precision Medicine Track.” TREC 2018.
  3. Roberts et al. (2020). “Overview of the TREC 2019 Precision Medicine Track.” TREC 2019.
  4. Roberts et al. (2021). “Overview of the TREC 2020 Precision Medicine Track.” TREC 2020.
  5. Gallego et al. (2018). “CSIRO at 2017 TREC Precision Medicine Track.” TREC 2017.
  6. Wang et al. (2018). “Team UKNLP at TREC 2017 Precision Medicine Track.” TREC 2017.
  7. Faessler et al. (2020). “JULIE Lab & Med Uni Graz @ TREC 2019 Precision Medicine Track.” TREC 2019.
  8. Nishani et al. (2018). “KlickLabs at TREC 2018 Precision Medicine track.” TREC 2018.

§9.4 许可证

TREC PM 数据为 U.S. Government Public Domain(美国政府公共领域数据),由 NIST(美国商务部下属机构)发布,可自由使用、复制和分发,无需额外许可。PubMed/MEDLINE 摘要的版权归各出版商所有,ClinicalTrials.gov 记录为公共领域。

§9.5 引用建议

使用 TREC PM 数据时,请引用对应年份的 Overview 论文(见 §9.1 BibTeX),并注明数据来源为 NIST TREC。

§9.6 致谢

TREC PM 由 NIST 赞助,OHSU Department of Medical Informatics 提供相关性判定,MD Anderson Cancer Center 肿瘤学家创建主题,NLM 提供 PubMed 和 ClinicalTrials.gov 语料。

§9.7 变更日志

日期 变更
2017-02 TREC 2017 PM Track 启动
2017-11 2017 评测结果发布
2018-04 2018 文档集合发布
2018-11 2018 评测结果发布
2019-06 2019 主题发布,新增治疗提取子任务
2019-11 2019 评测结果发布
2020-06 2020 主题发布,重大调整(新增 treatment、取消试验、引入证据质量)
2020-11 2020 评测结果发布,TREC PM 赛道正式结束
2021+ 数据通过 ir_datasets 和 PyTerrier 永久公开

§10 AI 使用声明卡

§10.1 AI 模型使用

模型 版本 用途
Claude Sonnet 4 页面内容生成
WebSearch TREC PM 论文和数据信息检索

§10.2 AI 参与范围

AI 辅助内容生成(研究文献检索 → 结构化整理 → 初稿撰写)

§10.3 输入来源

  1. NIST TREC PM 官网(trec.nist.gov/data/precmed.html)— 主题结构、语料规格、评测协议
  2. TREC 2017-2020 PM Overview 论文 — 评测设计、结果分析、统计数据
  3. 参赛团队论文(CSIRO、UKNLP、HPI-DHC、JULIE-MUG、KlickLabs)— 系统方法、性能数据
  4. ir_datasets 文档(ir-datasets.com)— Python API、数据格式、qrels 统计
  5. TREC CDS/PM 官网(trec-cds.org)— 任务说明、relevance guidelines
  6. PMC PMC8629152 — TREC 2020 PM Overview 全文
  7. 《Global Medical AI Datasets》PDF — TREC PM 基础介绍

§10.4 人工校验表

内容模块 审核者 审核方式 审核状态
§2 医学背景 千方病案医学编辑部 交叉审核 ✅ 已通过
§6 代码示例 千方病案医学编辑部 逻辑审查 ✅ 已通过
§3 数据规格 千方病案医学编辑部 与官方文档交叉比对 ✅ 已验证
§8 排行榜 千方病案医学编辑部 与 TREC 论文交叉比对 ✅ 已验证
§C JSON-LD 千方病案医学编辑部 结构化数据校验 ✅ 已验证

页面状态:published(全部内容已完成审核并发布)

返回 AI Ready 数据集