DDI Corpus — 药物相互作用抽取黄金语料

UC3M+DFKI 手工标注的 1,025 篇 DrugBank 专论与 Medline 摘要语料——18,502 个药理学实体、5,028 条 PK/PD 药物相互作用,SemEval-2013 Task 9 DDIExtraction 官方黄金标准,学术研究免费

来源 DrugBank 药物专论 792 篇 + Medline 摘要 233 篇(共 1,025 篇),人工标注 18,502 个药理学实体与 5,028 条 PK/PD 药物相互作用,XML 格式发布时间: 2026-10-16最后更新: 2026-10-20 阅读 23
DDI Corpus — 药物相互作用抽取黄金语料

信息速览

数据集名称DDI Corpus — 药物相互作用抽取黄金语料
数据类型人工标注,文本数据,公开评测数据
规模不适用(文本语料,非患者级数据)
接入方式DrugBank 药物专论 792 篇 + Medline 摘要 233 篇(共 1,025 篇),人工标注 18,502 个药理学实体与 5,028 条 PK/PD 药物相互作用,XML 格式
AI 就绪度

DDI Corpus(ddi-corpus)— 药物相互作用抽取黄金语料

一句话定义:DDI Corpus 是 2013 年由西班牙 UC3M 与德国 DFKI 联合发布、手工标注 1,025 篇生物医学文本、含 18,502 个药理学实体与 5,028 条药物-药物相互作用的关系抽取语料,也是 SemEval-2013 Task 9 挑战赛的官方黄金标准。

阅读提示:本文面向生物医学 NLP 研究者、信息抽取/关系抽取模型开发者、药物安全与药物警戒研究人员,以及需要评估「药物-药物相互作用」抽取系统的工程团队。若你只想知道「这是不是我要的数据集、怎么拿到、许可怎么算」,请直接跳到 §1 速览与 §6 获取与许可。


§0 导读:这个数据集解决什么问题

0.1 一个三十年未解的信息过载问题

药物相互作用(drug-drug interaction,DDI)指一种药物影响另一种药物的活性、代谢或毒性,从而导致疗效改变或不良反应风险上升。临床上 DDIs 是导致住院与不良事件的重要原因,而关于 DDIs 的知识却散布在数以千万计的论文摘要、药品说明书、药物专论与病例报告中。论文开篇即点明这一矛盾:DDIs 的管理是一个关键问题,其根源在于可用信息量已经压倒性地庞大(“a critical issue resulting from the overwhelming amount of information available on them”)。

自然语言处理(natural language processing,NLP)被视为降低这一负担的可行路径:让机器自动从海量生物医学文本中识别药物实体、抽取出「药物 A 与药物 B 存在某类相互作用」的断言,从而把人工逐篇阅读的时间成本压缩几个数量级。但 NLP 方法有一个前提——它几乎完全依赖带标注的语料。没有语料,就没有可以训练、可以评测、可以横向比较的模型。

0.2 语料空白:为什么需要一个 DDI 专用语料

作者指出,在 DDI Corpus 出现之前,生物医学领域并非没有标注语料。相反,存在若干标注了生物实体及其关系的语料(例如面向蛋白质-蛋白质相互作用 PPI 的资源)。但存在两个明确缺口:

  1. 缺少以「药理学物质(pharmacological substances)」为标注对象的语料——已有的 PPI 语料标注的是蛋白质、基因,而非药物;而药物的命名系统(品牌名、通用名、研究代号、复方组分)与蛋白质命名差异巨大,不能直接复用。
  2. 既有关注 DDI 的工作只覆盖药代动力学(pharmacokinetic,PK)相互作用,而忽略了药效动力学(pharmacodynamic,PD)相互作用。PK 指一方药物改变另一方的吸收、分布、代谢、排泄(即「体内过程」);PD 指一方药物改变另一方的药理效应(即「作用强度」)。只标注 PK 会系统性漏掉大量临床相关的相互作用。

DDI Corpus 正是为填补这两个缺口而构建:一个以药理学物质为实体、同时覆盖 PK 与 PD 两类相互作用的细粒度(fine-grained)人工标注语料。

0.3 它的历史地位:从语料变成基准

DDI Corpus 的价值不止于「一份标注数据」。它被直接采纳为 SemEval-2013 Task 9(DDIExtraction 2013) 的官方黄金标准——这是一个有 14 支来自 7 个国家的队伍参加的公开评测任务。语料因此同时具备了三种身份:

  • 训练资源:约 77% 的文档用于训练各家系统;
  • 评测基准:两个子任务的测试集统一,使不同系统可被严格横向比较;
  • 方法论范本:配套发布的标注指南(annotation guidelines)与观察者间一致性(inter-annotator agreement)报告,成为后续生物医学语料构建的可参照流程。

十余年来,DDI Corpus 一直是 DDI 抽取研究绕不开的基准,大量基于 CNN、RNN、注意力机制、BERT 乃至 PubMedBERT 的系统都在其上报告结果。

0.4 本文的组织

本文按「是什么 → 里面有什么 → 怎么标 → 怎么用 → 怎么评估 → 怎么拿 → 在生态里处于什么位置 → 有什么坑」的顺序展开,覆盖 §1 到 §10,并附 FAQ、事实清单、术语表与十七个附录。所有硬数字均标注口径(JBI 终版 vs SemEval 发布版),双口径冲突逐条存照(见附录)。


§1 数据集速览:十问十答

# 问题 回答
1 这是什么类型的资源? 生物医学文本的关系抽取标注语料(text corpus),不是数据库、不是知识库、不是影像数据
2 谁做的? 西班牙马德里卡洛斯三世大学(UC3M)计算机科学系 LABDA 组 + 德国 DFKI 语言技术实验室
3 什么时候发布? 2013 年(JBI 2013 年 10 月刊;挑战赛 *SEM 2013 年 6 月)
4 规模多大? 1,025 篇文本(792 DrugBank 专论 + 233 Medline 摘要);18,502 个药理实体;5,028 条 DDI
5 文本从哪来? DrugBank 药物专论 + Medline 期刊摘要两个来源
6 标注了什么? 药理学实体(drug/group/brand/drug_n)+ 药物相互作用(mechanism/effect/advice/int 四类,含 PK 与 PD)
7 什么格式? XML,遵循 Pyysalo et al. (2008) 提出的 PPI 语料统一格式
8 有没有评测基准? 有,SemEval-2013 Task 9(DDIExtraction 2013),最佳系统 F1 分别 71.5%(实体识别)/ 65.1%(DDI 检测分类)
9 许可怎么算? 学术研究免费(free for academic research),非标准 CC 许可;商用须另行联系团队
10 怎么拿到? 从官方主页 labda.inf.uc3m.es/ddicorpus 获取(抓取时点官网不可达,见 §6 与附录 M)

一句话选型判据:如果你做的是生物医学文本的药物实体/关系抽取,需要在公认基准上报告结果,或者要构建药物知识图谱的文本侧监督信号——这是首选语料之一。如果你要的是结构化的药物相互作用数据库(含相互作用严重程度、临床建议等字段),请转向 DDInter、TWOSIDES 等数据库型资源(见 §9)。

1.1 定位坐标:语料 vs 数据库

理解 DDI Corpus 的第一要点,是分清它与「药物相互作用数据库」的根本差异:

维度 DDI Corpus(本条目) 数据库型资源(如 DDInter/TWOSIDES)
数据形态 非结构化文本 + 标注 结构化条目(药物对 → 相互作用类型/严重度)
核心用途 训练/评测文本挖掘模型 查询、临床决策参考、统计分析
标注对象 文本中的实体 span 与关系 化学实体对与关系属性
典型产出 能读文本的抽取模型 能查关系的知识库
是否含原文 含(DrugBank 专论 + Medline 摘要) 通常不含原文

二者并非替代关系,而是上下游:DDI Corpus 训练出的抽取模型,可以用于从文献中自动扩充数据库型资源;反之,数据库可作为抽取结果的规范化(normalization)词表。本条目与库内 ddinter(rid=1100)正是这一互补关系的两端。


§2 数据构成与规格

2.1 规模、来源与机构构成

DDI Corpus 由两个来源的文本合并而成,这一双源结构是它最重要的设计特征,也是理解后续诸多现象(性能差异、一致性差异、类别失衡)的钥匙。

来源一:DrugBank 药物专论(792 篇)

DrugBank 是一个综合性的药物与药物靶点数据库,其药物专论(drug monograph)章节专门描述每种药物的药理、适应证与相互作用。作者从中选取了792 篇描述药物相互作用的文本。选择 DrugBank 的理由很直接:它的专论主题聚焦于药物本身及其相互作用,语言相对规范,药物实体密度高——这使它成为「更容易」的标注源,标注一致性也更高。

来源二:Medline 摘要(233 篇)

Medline(PubMed 背后的书目数据库)收录了海量生物医学期刊摘要。作者选取了 233 篇与药物相互作用相关的摘要。与 DrugBank 不同,Medline 摘要的主题是发散的——一篇摘要可能主要讨论某种疾病的机制,DDI 只是顺带提及;且摘要中常出现大量未获批或研究阶段的物质、复方、以及容易与药物混淆的非药物实体。这使它成为「更难」的标注源。

合并后的规模(JBI 终版口径):

  • 文档总数:1,025(792 + 233)
  • 药理学实体:18,502
  • 药物相互作用:5,028

SemEval-2013 发布版口径:1,017 篇(784 DrugBank + 233 Medline)、18,491 个实体、5,021 条 DDI。两口径的差异与取舍详见 §2.5 与附录 B。

2.2 双源结构带来的系统性差异

双源并非简单叠加,而是引入了可测量的分布差异:

属性 DrugBank 子集 Medline 子集
文档数 792 233
文本长度 较长(专论章节) 较短(摘要)
主题聚焦度 高(专论即讲药物) 低(摘要主题发散)
药物实体密度 高 相对低
标注一致性(Kappa) 0.80 以上(最高 0.96) 0.55-0.72
系统抽取性能 显著更高 显著更低

论文对性能差异给出的解释是:DrugBank 文本把 DDI 作为核心主题,实体与关系的语言学线索更集中;而 Medline 摘要的主题未必是 DDI,且「区分某种物质是否为药物」本身就很困难——这直接拉低了两者的一致性与系统表现。这一发现对使用者的含义是明确的:任何在 DDI Corpus 上报告的指标,都必须注明是 DDI-DrugBank 子集还是 DDI-Medline 子集,或是否为全量,否则不可比。

2.3 实体类型体系:四个子类

语料标注的药理学实体并非单一「drug」类,而是细分为四个子类型,这一细分在训练集上呈现出清晰的分布(见下表)。区分它们的意义在于:

  • drug:已批准的药物通用名(如 metformin);
  • group:药物类别/药物组(如「NSAIDs」这类泛指群体,而非单个分子);
  • brand:商品名/品牌名(如某个具体厂牌的制剂名);
  • drug_n:未获批准的物质、研究性化合物、实验用药等(“n” 取 “none/not approved” 之意)——这是 Medline 摘要中特别常见的一类,也正是最容易造成标注分歧的一类。

2.4 相互作用类型体系:四类 + PK/PD 二维

每一条 DDI 关系都带有类型标签,属于以下四类之一:

类型 含义 说明
mechanism 机制型 描述一方如何改变另一方的体内过程(PK 机制,如抑制代谢酶)
effect 效应型 描述一方如何改变另一方的药理效应/临床结果(PD)
advice 建议型 文本给出联合用药的处置建议(如「应避免联用」「需监测」)
int 交互型(int 类) 文中陈述存在相互作用但未明确归入上述三类的泛化表述

与这四类正交的是论文强调的 PK/PD 二分:语料同时覆盖药代动力学与药效动力学相互作用——这是相对早期只做 PK 的工作的关键进步。使用者应注意:四类标签是语言学/语用视角的分类,PK/PD 是药理学机制视角的分类,两者不是同一套标签体系,不应混用。

2.5 训练/测试划分与口径取舍

整体划分:约 77% 的文档被随机选入训练集,其余用于测试。

测试集:142 篇 DrugBank 文本 + 91 篇 Medline 摘要(合计 233 篇)。

关键设计:训练集对两个子任务完全一致(因为它同时含实体标注与 DDI 标注)。两个子任务的区别在测试集:

子任务 测试集构成 处理
Task 9.1(实体识别) 54 DrugBank + 58 Medline 剔除含 DDI 标注的文档,并移除实体标注交参赛者
Task 9.2(DDI 检测+分类) 158 DrugBank + 233 Medline 保留含交互文档及其实体标注(可兼作 9.1 的额外训练数据)

盲评集:另有一批 52 篇 DrugBank + 58 篇 Medline 摘要在评测中隐藏 gold 标注,用于校验。

为什么口径会不一致? 这解释了 §2.1 的 1,025 vs 1,017 差异:Task 9.1 测试集构建时剔除了不含 DDI 的文档,使得「可用于任务评测的文档总数」小于「语料本体文档总数」。JBI 论文报告的是语料本体终版规模(1,025),SemEval 论文报告的是任务发布时的配置规模(1,017)。两者都对,只是统计对象不同。

2.6 训练集类别分布总表

SemEval-2013 论文 Table 1 给出了训练集与各测试集的完整统计。训练集细目如下(含句子级、实体级与关系级):

统计项 训练集 Task 9.1 测试 Task 9.2 测试
文档数 572 DrugBank + 145 Medline = 717 54 + 58 = 112 158 + 233 = 391
句子数 5,675 + 1,322 ≈ 7,000 量级 — —
drug 8,197 180 1,518
group 3,206 65 626
brand 1,423 53 347
drug_n 103 5 21
mechanism 1,260 0 279
effect 1,548 0 301
advice 819 0 215
int 178 0 94

从这张表可以读出三个使用上的关键事实:

  1. Task 9.1 测试集的 DDI 类型计数全为 0——因为该测试集刻意剔除了含交互文档,只保留实体标注用来评实体识别;
  2. int 类是长尾:训练集仅 178 例、Task 9.2 测试集仅 94 例,任何以 int 类为主的结论都难有统计效力;
  3. drug 类主导实体分布:8,197 / (8,197+3,206+1,423+103) ≈ 63%,其余三类合计约 37%,drug_n 仅约 0.8%。

2.7 文本与文件的物理规格

  • 格式:XML(每个文档一个 XML,遵循 Pyysalo et al. 2008 的 PPI corpora 统一格式——这一格式最初为蛋白质相互作用语料设计,DDI Corpus 沿用以获得生态兼容性)。
  • 组织:按训练/测试分目录打包;配套发布标注指南 PDF。
  • 提交格式:Task 9.1 要求参赛系统输出 ASCII 列表,每行 IdSentence|startOffset-endOffset|text|type;不连续实体(如 “aluminum and magnesium hydroxide”)在同一字段内用分号分隔各段的起止位置;同一句的多个提及各占一行。
  • 语言:英文。
  • 年份:文本采集与标注大体在 2011-2013 年。

2.8 与 PANDA-PLUS 那类「三层异构可获取性」的对照

作为 AI-Ready 评估的一部分,值得注意的是 DDI Corpus 的可获取性是单一层的:语料本体与标注指南在同一个入口、同一套许可下发布,不存在「数据本体公开但标注请求制」的分层结构(这一点与影像类数据集常见的三层异构形成鲜明对照)。这带来一个明确的好处——可复现性高:任何研究者拿到同一份包,看到的就是同一份训练/测试划分,评测结果天然可比。代价则集中在许可的非标准化上(见 §6)。


§3 标注方法学:一份语料如何被造出来

3.1 标注指南先于标注

DDI Corpus 方法与多数成熟语料一致地遵循一条原则:先写规范,再标数据。团队为其制定了详细的标注指南(annotation guidelines)——明确规定什么是药理学物质、四类实体子类如何区分、四类 DDI 关系如何判定、边界歧义如何处理。指南随语料一同发布,其作用有三:

  1. 约束标注者:减少不同标注者之间的语义漂移;
  2. 指导使用者:让下游研究者理解标签的判定标准,避免误用;
  3. 可复现:使他人能按同一标准扩展或重标。

3.2 双标注者与观察者间一致性

语料由两名标注者独立标注,随后通过测量**观察者间一致性(inter-annotator agreement)**来评估标注质量。论文报告的 Cohen’s Kappa 结果为:

  • 总体几乎完美:Kappa 最高达 0.96,一般高于 0.80;
  • 例外:Medline 的 DDI 标注一致性明显偏低,落在 0.55-0.72 区间。

0.80 通常被视为「高度一致」的门槛,0.96 接近理论上限,这说明 DrugBank 子集的标注质量非常高。而 Medline 的 0.55-0.72 属于「中等一致」,反映了该来源的固有难度:主题发散、物质命名不规范、药物与非药物界限模糊。

3.3 为什么 Medline 更难:三个可解释的原因

第一,主题漂移。DrugBank 专论天然以「这个药」为中心,DDI 是其必然内容;Medline 摘要则可能只在讨论疾病机制时顺带提到某个药物组合,标注者需要判断「这句话算不算在陈述一条 DDI 关系」。

第二,实体边界歧义。Medline 中大量出现复方、联合用药表述、以及「铝和氢氧化镁」这类不连续实体(discontinuous entity)——这正是任务提交格式要求用分号分隔多段 span 的原因。

第三,是否算药物的判定。Medline 摘要常提及维生素、膳食补充剂、研究性化合物、甚至非药理物质。判断某个名词是否属于「药理学物质」,本身就是一道有争议的题——这也是语料专门设置 drug_n 子类(未获批/研究性物质)的原因。

3.4 从语料到挑战赛:DDIExtraction 2013 的实施

语料被直接投入 SemEval-2013 Task 9。该任务拆分为两个子任务并共享同一训练集:

  • Task 9.1:药物实体识别与分类(NERC)。参赛系统读取句子、输出实体 span 与子类。
  • Task 9.2:DDI 检测(是否成对交互)与分类(四类之一)。在检测基础上进一步判类型。

评测采用 micro-averaged F1(对全部实体类型统一计算)作为主线,同时对每一类分别算 precision/recall/F1 并给出 macro-average。论文解释了为何两套都要看:不同实体类型的实例频率差异极大,只看 micro 会被高频类主导,只看 macro 又会让稀有类等权放大小样本噪声。

此外评测区分 STRICT 与relaxed 两种匹配口径:strict 要求实体边界与类型都完全正确,relaxed 允许只判对 span 或只判对类型——论文明确说明这一设计是为了观察「系统是否至少抓住了实体边界」与「是否能给对类型」两项能力。

3.5 任务规模与参与度

DDIExtraction 2013 吸引了 14 支队伍、来自 7 个国家 参与。任务涵盖的不只是 DDI 检测,还包括分类——这是相对 2011 年 DDIExtraction(只识别所有可能交互的药物对)的明确增量。论文也指出,由于训练/测试配置不同,2011 与 2013 的结果不能直接比较——这一提醒对任何试图跨年份对比排行榜的读者都适用。

3.6 语料构建的可迁移经验

从方法学视角,DDI Corpus 的构建留下三条可迁移经验:

  1. 双源设计是有意为之的难度谱:用一个「易」源(DrugBank)与一个「难」源(Medline)组合,既能提供高质量训练信号,又能逼出跨域泛化问题。
  2. 一致性报告要分源披露:如果只报总体 Kappa 0.96 而不报 Medline 的 0.55-0.72,使用者会误判语料难度;分源披露是负责任的做法。
  3. 发布格式选择影响生态采纳:沿用 PPI 语料的统一格式(Pyysalo et al. 2008),使 DDI Corpus 能直接复用已有的生物医学关系抽取工具链,显著降低了采纳门槛。

§4 数据字段与结构:XML 里到底有什么

4.1 Pyysalo 统一格式的由来

DDI Corpus 采用 Pyysalo et al. (2008) 为 PPI 语料提出的统一格式(unified format)。这一决策的技术含义是:DDI Corpus 不必自造一套 schema,而是继承已被生物医学关系抽取社区接受的 XML 结构——文档层、句子层、实体层、关系层四层嵌套。

4.2 四层结构

一个典型的文档 XML 在逻辑上包含四个层次:

层 内容 作用
document 文档元信息(来源、ID) 区分 DrugBank 专论 vs Medline 摘要
sentence 句子切分与句子 ID 提供关系抽取的上下文单位与坐标锚点
entity 实体 span(起止字符偏移)+ 类型 drug / group / brand / drug_n
pair / relation 实体对 + DDI 类型 mechanism / effect / advice / int

句子是关键的原子单位:DDI 标注以句子为上下文边界,这也解释了为什么任务提交格式以 IdSentence 开头——关系判定不跨句。

4.3 实体标注的字段语义

每个实体标注至少携带:

  • 文本(text):表面形式;
  • 类型(type):四子类之一;
  • 字符偏移(offsets):在所属句子内的 start-end 位置。

对不连续实体(如复方名 “aluminum and magnesium hydroxide”),字段用分号分隔各片段的起止位置。这是语料处理复方与并列结构的技术方案,也是使用者在解析时必须专门处理的边界情况。

4.4 关系标注的字段语义

每条 DDI 关系连接两个实体并带类型标签。使用者在解析时应留意:

  • 关系的两个端点都是已标注实体(drug 类的某一子类);
  • 关系类型是四类之一(mechanism/effect/advice/int),而不是 PK/PD 标记——PK/PD 是需求层面的分类,需靠类型语义推断(如 mechanism 多对应 PK,effect 多对应 PD);
  • 同一文本可能蕴含多条关系,关系不互斥。

4.5 解析建议:三个容易踩的结构坑

坑 A:不连续实体会让朴素 span 解析器出错。 若解析器假设「一个实体的起止偏移是一段连续区间」,遇到分号分隔的多段 span 会截断或错并。

坑 B:句子坐标 vs 文档坐标。 任务提交格式的偏移是句子内偏移,而不少预处理脚本习惯用文档级偏移——两者混用会导致实体与文本对不上。

坑 C:drug 与 drug_n 的混淆。 下游若把 drug_n 当作普通药物并入实体库,会把研究性化合物混入已批准药物词表,污染知识图谱。

4.6 数据字典速查表

字段/标签 取值 含义
source DrugBank / Medline 文本来源,决定子集归属
entity.type drug 已批准药物通用名
entity.type group 药物类别/群体泛指
entity.type brand 商品名/品牌名
entity.type drug_n 未获批/研究性物质
relation.type mechanism 机制型相互作用
relation.type effect 效应型相互作用
relation.type advice 建议型表述
relation.type int 泛化交互表述
offset start-end 句子内字符偏移(不连续用分号)

§5 评测与基准结果:DDIExtraction 2013 告诉了我们什么

5.1 两个子任务的最佳成绩

论文报告的核心结果:

子任务 目标 最佳系统 F1
Task 9.1 药理学物质识别与分类 71.5%
Task 9.2 DDI 检测与分类 65.1%

这两个数字此后成为 DDI 抽取领域的标志性基准点。它们传达的判断是:截至 2013 年,通用的实体识别尚可(71.5%),但把关系抽准抽全仍明显更难(65.1%)。

5.2 为什么关系任务更难

论文的解释链条清晰:实体识别只需在句子中框定 span 并分类;而 DDI 任务要在检测(这两个药物到底有没有交互)之上再做分类(属于四类中的哪一类)。检测就要求模型理解语义,分类则要求区分 mechanism/effect/advice/int 这几类在语言表面上高度相似的关系——尤其 advice(建议)与 int(泛化)之间的边界常常暧昧。

5.3 双源子集的结果落差

论文反复强调的一个结论是:DDI-DrugBank 子集的结果显著优于 DDI-Medline 子集。原因在 §3.3 已述——DrugBank 主题聚焦、语言规范;Medline 主题发散、实体歧义多、药物边界模糊。

对使用者的实际含义:一个在 DrugBank 子集上刷到高分的模型,未必能在 Medline 这类真实文献上复现。这也是为什么负责任的论文都会分开报告两个子集,或至少注明评估范围。

5.4 逐类难度的启示

论文不仅给总体 F1,还给出每个实体类型与每个关系类型的分项指标。这一设计揭示了不均衡:高频类(drug、effect、mechanism)相对可控,稀有类(int,训练集仅 178 例)则方差极大。用 int 类为主的结论去推广 DDI 抽取能力,是常见的统计学误用。

5.5 指标体系:micro / macro / STRICT / relaxed

阅读任何在 DDI Corpus 上的报告时,务必核对四个坐标:

  1. micro 还是 macro:micro 被高频类主导,macro 等权稀有类;
  2. STRICT 还是 relaxed:strict 要求边界+类型全对,relaxed 放宽;
  3. 哪个子集:DrugBank / Medline / 全量;
  4. 哪个子任务:9.1(仅实体)还是 9.2(关系)。

四个坐标任一不同,数字就不可直接比。这是使用这份语料最容易被忽视、也最容易出错的地方。

5.6 后续生态:从规则到预训练模型

DDI Corpus 发布后,成为数十项研究的评测对象,方法谱系大致经历了:

  • 早期:基于词典/规则/CRF 与 SVM 的浅层机器学习;
  • 中期:CNN、RNN(含 LSTM)、注意力机制;
  • 近期:BERT 及生物医学域预训练模型(如 PubMedBERT、BioBERT)微调。

这一演进本身赋予语料新的价值:它成为衡量预训练语言模型在生物医学关系抽取上进步的固定标尺。语言模型的整体提升,直接体现在 DDI Corpus 上的 F1 抬升上——不同年份的报告数字因此带有「时间戳」意义,交叉对比时须注意模型代际差异。

5.7 引用与影响力

UC3M 机构库记录的引用情况显示,该论文(含语料)被引 397 次以上(Citation Indexes 口径),并有若干政策引用与大量读者提及。这一量级在生物医学 NLP 语料中属于头部水平,佐证了其「事实标准」地位。


§6 获取与许可:一份「学术免费」的语料怎么用才不越界

6.1 许可条款的口径来源

DDI Corpus 的许可声明没有采用 CC(Creative Commons)系列标准许可,而是团队自定义的表述。其权威来源是 JBI 论文摘要的原文:

“The DDI corpus and the annotation guidelines are free for use for academic research and are available at http://labda.inf.uc3m.es/ddicorpus.”

即**「供学术研究免费使用」**。这句话包含三个要素:

  1. 允许:学术研究用途,免费;
  2. 获取入口:官方主页 labda.inf.uc3m.es/ddicorpus;
  3. 隐含限制:授权范围限定在「academic research」,未明示商业使用许可。

6.2 「学术免费」意味着什么、不意味着什么

由于不是标准许可,使用边界需要靠语义解释。稳妥的理解如下表:

场景 是否在「academic research」范围内 建议
高校/科研机构做研究、发论文 ✅ 是 直接使用,引用论文
学生课程项目/学位论文 ✅ 通常是 使用并引用
公开发布基于它的模型权重 ⚠️ 灰色 需说明训练数据来源与许可,谨慎
企业内部研发/产品 ❌ 不在范围 须先联系 UC3M LABDA 团队取得书面许可
商业 SaaS 服务内部推理 ❌ 不在范围 同上报批
二次分发语料本体 ⚠️ 灰色 建议不自行转发,指向官方入口

关键提醒:由于许可非标准,不存在一个可以照抄的合规清单。凡涉及商用或再分发,正确做法是主动联系语料作者团队确认,而非依据「学界都这么用」的惯例推断。

6.3 两层版权:语料许可 ≠ 摘要版权

这是一个在使用 DDI Corpus 时极易被忽略、却对商用最致命的问题。语料包含 233 篇 Medline 摘要,这些摘要的原文版权属于其各自发表的期刊/出版商(或按 PubMed 政策管理)。因此存在两层权利:

  • 第一层:UC3M 团队对语料标注与打包的许可(free for academic research);
  • 第二层:原始期刊/出版商对摘要原文的版权。

团队给出的「学术免费」授权,在法律上不能自动覆盖第二层——团队本身也只是摘要的使用者。即便你获得了团队的商业许可,摘要原文的商用仍需向原始版权方确认。这一风险对纯 DrugBank 子集较轻(DrugBank 自身有其许可),对 Medline 子集则是实质性的。本条目将此作为最高优先级的使用风险存照。

6.4 官方入口与抓取时点状态

  • 官方主页:http://labda.inf.uc3m.es/ddicorpus
  • 抓取时点(2026-10-16)状态:DNS 解析失败(HTTP 请求返回 curl exit=6,域名不可达)。因此本条目未能实抓官网页面以确认当前是否仍是开放直链下载、还是已改为表单申请制。
  • 本条目许可口径的取证方式:依据 JBI 论文摘要原文 + SemEval 任务论文,二者均为可公开访问的一手论文文本,非二手转述。

给使用者的实操建议:若官网不可达,优先通过 UC3M 机构库(researchportal.uc3m.es)或直接联系作者(Isabel Segura-Bedmar,LABDA 组)获取语料;也可先在文献中检索他人报告的使用来源作参考,但务必回到团队寻求正式许可。

6.5 版本链与获取的「同一份包」原则

DDI Corpus 的版本链相对简单:

  1. DDIExtraction 2011 语料(早期挑战赛版本);
  2. DDI Corpus / DDIExtraction 2013(本文主版本,1,025 篇);
  3. 后续大量衍生模型在语料上训练评测,但语料本身未再发布新版(生态沿用,非语料版本迭代)。

因此,同一份包的复现性很高:任何研究者拿到的训练/测试划分应一致,评测结果天然可比。这一优点也意味着,若你手上的划分与他人报告不一致,很可能是自行重划分或误用了 2011 版——这是排查结果异常时的第一条线索。

6.6 AI-Ready 视角的可获取性小结

维度 评价
是否有公开入口 有(官网),但抓取时点不可达
是否请求制 论文口径为「可用」而非「需申请」,倾向开放获取
许可明确性 低——非标准许可,边界靠解释
版权清晰度 分层——摘要原文有第二层权利
可复现性 高——单包单划分

综合而言,DDI Corpus 的获取可复现性极高、许可明确性偏低。这是它与许多现代 CC 授权数据集相反的特征组合。


§7 生态与影响:一份语料如何演化成领域基础设施

7.1 谱系:从 2011 到 2013

DDI Corpus 不是凭空出现的。同一团队(UC3M LABDA 组)此前已组织过 DDIExtraction 2011 挑战赛。2011 版聚焦于「识别所有可能交互的药物对」,而 2013 版增加了关系分类(四类),并把语料规模与标注规范推进一步。这一「从检测到分类」的演化,是生物医学关系抽取任务成熟的通用路径——先找关系,再判类型。

理解这条谱系的意义在于:DDI Corpus(2013)是团队多年积累的结果,其标注规范代表了一次迭代后的稳定版本,这也是它被广泛采纳、长期不再改版的底气。

7.2 从语料到基准的跃迁

DDI Corpus 的历史地位,本质上是一次**「语料 → 基准」的跃迁**。语料只是数据,而基准是社区共同认可的评测标尺。跃迁的关键动作是把语料接入 SemEval-2013 Task 9 这一公开评测:

  • 提供了统一的训练/测试划分;
  • 提供了逐类指标的标准化报告口径;
  • 吸引了 14 支队伍横向竞争。

一旦成为基准,它就获得了网络效应:后续研究为了与既有工作可比,被迫在同一个语料上报告——于是它自我强化为「事实标准」。这是数据资源影响力的典型机制,也解释了为什么它被引 397+ 次。

7.3 生态位:DDI 抽取研究的公共坐标

在 DDI 抽取研究中,DDI Corpus 扮演的是公共坐标原点:

  • 任何新模型都要回答「在 DDI Corpus 上表现如何」;
  • 不同时期的最佳 F1(71.5% / 65.1% 起步,后续被预训练模型推高)构成了一条可追踪的进步曲线;
  • 语言模型代际(word2vec → ELMo → BERT → 域内预训练)的收益,在这条曲线上直接可见。

这使 DDI Corpus 的价值随时间不减反增——它记录了领域的技术演进。

7.4 与库内同域资源的关系

在千方病案医数集库内,与 DDI Corpus 构成生态关系的条目(建议互链):

库内条目 rid 关系
ddinter 1100 互补:DDInter 是结构化 DDI 数据库,本条目是文本语料,构成「数据库 ↔ 抽取模型」上下游
drugprot 827 同域姊妹:化学-蛋白相互作用抽取黄金语料,与 DDI Corpus 同为 BioCreative/SemEval 系抽取基准
medhop 754 同域:药物相互作用多跳推理阅读理解数据集,可视为 DDI 的推理型衍生任务
twosides 254 同域:DDI 副作用数据集,提供「相互作用→不良反应」的下游关联
intact 582 方法论近邻:分子相互作用数据库,与语料的 PPI 格式渊源相关
drugbank(目录) — 物源关联:本语料 792 篇文本取自 DrugBank

从检索视角看,DDI Corpus 与上述资源共同构成库内**「药物相互作用」知识簇**:语料(本条目)训练抽取模型 → 模型从文献挖掘 DDI → 结果规范化到数据库(ddinter/twosides)→ 下游关联不良反应(twosides)与推理(medhop)。这是药物警戒 NLP 的完整链路。

7.5 潜在应用场景

除纯学术评测外,DDI Corpus 的实际用途包括:

  1. 药物警戒(pharmacovigilance)自动化:训练模型从新发表文献中持续抽取新发现的 DDI,辅助安全信号监测;
  2. 药物知识图谱构建:提供文本侧监督信号,把非结构化文献转为结构化的「药物-药物」边;
  3. 临床决策支持:为处方审核系统提供从文献自动更新的相互作用来源;
  4. 标注方法论研究:作为高质量双标注语料,用于研究一致性评估与标注成本控制;
  5. 跨域泛化研究:双源结构天然提供 DrugBank→Medline 的域迁移实验床。

7.6 局限与边界

作为 2011-2013 年的资源,它的时代局限也需明示:药物名称与相互作用知识已演进,当代药物警戒直接使用需补充时效核对;英文单语意味着跨语言 DDI 需另找资源;句子级标注不支持跨句关系;类别长尾(int 类)限制了细粒度评测的统计效力。


§8 方法学启示:三条可迁移的经验

8.1 双源设计是刻意的难度工程

DDI Corpus 最值得借鉴的方法学决策,是用两个难度不同的源构建单一语料。DrugBank 提供高质量、高密度、高一致性的训练信号;Medline 提供真实文献的难度与歧义。其价值有三:

  • 诊断力:性能落差直接暴露模型的跨域脆弱性;
  • 可信度:在「易」源上刷分不足以证明泛化,双源报告更诚实;
  • 实用性:Medline 代表真实临床文献场景,模型最终要面对的是它。

可迁移原则:构建评测语料时,不要把难度当成噪声消除掉,而应把难度谱系作为设计变量保留并显式报告。

8.2 一致性要分源、分任务披露

DDI Corpus 报告 Kappa 的方式是分源披露(DrugBank 0.80+ / Medline 0.55-0.72),而非只报一个总体高分。这一透明度直接决定了使用者能否正确判断语料质量。

可迁移原则:任何语料的质量指标(一致性、覆盖率、类别分布)都应按子群披露,单一总体数字往往掩盖最有信息量的差异。

8.3 格式继承降低生态采纳门槛

沿用 Pyysalo et al. (2008) 的 PPI 统一格式,使 DDI Corpus 无需自造工具链即可被既有生物医学关系抽取社区使用。这是**「格式即接口」**的典型胜利。

可迁移原则:新数据集在自创格式前,应先问「领域内是否已有被接受的标准格式」——继承格式的生态收益通常大于自定义的便利。

8.4 与影像类数据集的对照启发

与库内影像类条目(如 PANDA-PLUS 的三层异构可获取性)对照,DDI Corpus 展现了相反的可获取性哲学:单一入口、单一许可、强调可复现的固定划分,而非分层发放。两种哲学各有代价——前者牺牲许可精度换取复现性,后者追求发放控制却引入请求制摩擦。没有普适最优解,只有与受众匹配的选择:文本语料的受众是研究者,他们最看重的正是「拿到的就是别人跑的那个」。

8.5 基准的生命周期管理

DDI Corpus 十余年不改版,既是优点也是隐忧。优点是可比性稳定;隐忧是基准会饱和——当预训练模型把 F1 推高到接近上限,区分度下降,社区就需要更难的新基准(这解释了为何后续出现跨句、跨文档、多模态的 DDI 任务)。使用者在选型时应评估:你要的是可比性(用老标准)还是区分度(用新更难基准)。


§9 与库内条目的关系及检索路径

9.1 家族图谱

DDI Corpus 在库内「药物相互作用与生物医学关系抽取」簇中处于语料/基准层。图谱如下:

【语料与基准层】
  ddi-corpus (本条目) ──文本语料/抽取基准── DDI 抽取研究的公共坐标
  drugprot (827)     ──化学-蛋白相互作用抽取黄金语料(姊妹基准)
  medhop (754)       ──DDI 多跳推理阅读理解(推理型衍生)
        │
        ▼ 训练/评测产出抽取模型
【数据库层】
  ddinter (1100)     ──DDI 策展数据库(结构化关系)
  twosides (254)     ──DDI 副作用数据集(关系→不良反应)
  intact (582)       ──分子相互作用数据库
        │
        ▼ 物源
【原始物源】
  DrugBank ──本语料 792 篇文本来源

9.2 与 ddinter(rid=1100)的消歧声明

这是库内最需要消歧的一对条目,因为二者名称都含「DDI」,但为不同实体:

维度 ddi-corpus(本条目) ddinter(rid=1100)
中文名 药物相互作用抽取语料 药物相互作用策展数据库
本质 文本 + 标注 结构化数据库
数据形态 XML 语料 数据库条目
主张 训练/评测 NLP 模型 查询相互作用关系
二者关系 互补,不合并 同左

结论:勿合并。 二者是「标注语料 ↔ 结构化数据库」的上下游互补关系,任何去重合并都会损失信息。

9.3 检索路径建议

路径 A:想做 DDI 抽取模型 → 本条目(语料)→ 读 §4 字段结构 → 参考 §5 指标体系 → 用附录 E 加载骨架起步。

路径 B:想要可查询的 DDI 关系 → 转向 ddinter (rid=1100) 或 twosides (rid=254)。

路径 C:想做药物安全的端到端 → 语料(本条目)训练抽取 → 结果规范化到 ddinter → 关联 twosides 的不良反应。

路径 D:比较不同关系抽取基准 → 本条目 + drugprot (827) 并列,二者分别是 drug-drug 与 chemical-protein 两个任务的黄金语料。

路径 E:研究标注方法学 → 本条目(双源双标注、分源 Kappa)+ 影像类语料(如 PANDA-PLUS)对照不同模态的标注组织方式。

9.4 与同名异实条目的避坑

库内 ddi(rid=171)是皮肤图像跨肤色公平性基准,与本文本语料同名异实。检索「DDI」时务必核对标题,避免误取。判断口诀:看副标题——「公平性基准」是影像,「药物相互作用抽取语料」是本文。


§10 避坑清单:八个已踩过的坑

以下坑点来自语料结构特性、许可条款与文献使用惯例的交叉分析,按危害程度排序。编号「坑 N」与文末附录 Q(坑点档案)对照。

坑 1:把 DDI Corpus 当成「结构化的相互作用数据库」使用

症状:检索者期望拿到「药物 A + 药物 B → 严重程度/临床建议」这样的表格条目,打开后发现是 XML 文本语料,期望落空。

根因:名称中的「DDI」与「Corpus」容易让人联想到数据库。实际上它是文本 + 标注,不含结构化的临床处置字段。

对策:先读 §1.1 的对比表明确形态;要结构化关系请转向 ddinter (rid=1100) / twosides (rid=254)。语料与数据库是互补,不是替代。

坑 2:忽略 1,025 vs 1,017 的双口径,直接引用导致数字对不上

症状:论文写 1,025 篇 / 18,502 实体 / 5,028 DDI,任务论文写 1,017 篇 / 18,491 实体 / 5,021 DDI,两个来源数字不一致,引用时不知该用哪个。

根因:统计对象不同——JBI 论文报语料本体终版规模,SemEval 论文报任务发布配置规模(Task 9.1 剔除了无交互文档)。两者都对。

对策:引用时必须注明口径来源。本条目以 JBI 终版为主口径、SemEval 发布版为注(见附录 B 双口径存照表)。

坑 3:在 DDI Corpus 上报告结果却不注明子集,导致指标不可比

症状:两篇论文都称「在 DDI Corpus 上 F1 达 X%」,但数字差异巨大,无法判断谁更强。

根因:DDI-DrugBank 子集成绩显著高于 DDI-Medline 子集(见 §5.3)。不注明子集,数字就没有共同坐标。

对策:报告时四坐标齐全——micro/macro、STRICT/relaxed、哪个子集、哪个子任务(9.1/9.2)。

坑 4:把「学术免费」当成可商用,踩进许可边界

症状:企业在产品中使用 DDI Corpus 训练模型,未意识到「free for academic research」不含商业授权。

根因:许可非标准 CC,边界靠语义解释;「学界都用」不等于「可以商用」。

对策:商用前主动联系 UC3M LABDA 团队取得书面许可(见 §6.2)。这是不可省的一步。

坑 5:忽略 Medline 摘要原文的第二层版权

症状:即便拿到了团队的商业许可,仍可能因 233 篇 Medline 摘要的原文版权属期刊而侵权。

根因:语料许可只覆盖团队对标注与打包的权利,不覆盖摘要原文(见 §6.3)。这是最隐蔽、也最致命的风险。

对策:商用场景须逐层确认——先团队打包许可,再摘要原文版权;无法确认时避免使用 Medline 子集。

坑 6:用朴素 span 解析器处理不连续实体

症状:解析 XML 时,遇到 “aluminum and magnesium hydroxide” 这类复方实体,实体文本被截断或错误合并。

根因:不连续实体在字段中用分号分隔多段 span,朴素解析器假设单段连续区间(见 §4.5 坑 A)。

对策:解析器显式处理分号分隔的多段偏移;对复方与并列结构单独测试。

坑 7:把 PK/PD 与四类关系标签混为一谈

症状:使用者尝试用 mechanism/effect/advice/int 直接推论 PK 或 PD,发现对不上。

根因:四类标签是语用视角分类,PK/PD 是药理学机制视角分类,二者正交、不是同一套体系(见 §2.4)。

对策:不要把四类硬映射到 PK/PD;需要 PK/PD 区分时依据类型语义与领域知识另行推断,并在报告中说明方法。

坑 8:在长尾类(int)上得出过强结论

症状:某系统在 int 类上 F1 很高/很低,被当作 DDI 抽取能力的证据。

根因:int 类是长尾——训练集仅 178 例、Task 9.2 测试集仅 94 例(见 §2.6),小样本导致方差极大。

对策:稀有类的分项指标只作诊断线索,不作能力结论;报告时给出样本量与置信区间。


FAQ(高频问答 34 问)

A. 基础认知

A1. DDI Corpus 到底是什么?
一份人工标注的生物医学文本语料,用于训练和评测「药物实体识别」与「药物-药物相互作用抽取」模型。不是数据库。

A2. 「DDI」在这里指什么?
Drug-Drug Interaction,药物-药物相互作用。

A3. 谁做的?
西班牙 UC3M(计算机科学系 LABDA 组)+ 德国 DFKI(语言技术实验室),作者 Herrero-Zazo、Segura-Bedmar、Martínez、Declerck。

A4. 什么时候发布的?
2013 年。JBI 论文 2013 年 10 月刊;挑战赛论文 *SEM 2013 年 6 月。

A5. 它和 SemEval 有什么关系?
它是 SemEval-2013 Task 9(DDIExtraction 2013) 的官方黄金标准语料。

A6. 为什么它重要?
它是 DDI 抽取领域事实标准的评测基准,被引 397+ 次,十余年来新模型都在其上报告结果。

A7. 它和库里的 ddi (171) 是一回事吗?
不是。ddi (171) 是皮肤图像公平性基准,与本条目同名异实。

B. 数据与结构

B1. 有多少篇文档?
1,025 篇(JBI 终版口径):792 DrugBank 专论 + 233 Medline 摘要。

B2. 有多少标注实体和关系?
18,502 个药理学实体,5,028 条 DDI(JBI 口径)。

B3. 为什么有两个数字口径?
JBI 论文报语料本体终版(1,025),SemEval 论文报任务发布配置(1,017,剔除无交互文档)。见坑 2。

B4. 实体有哪些类型?
四类:drug(已批准药物)、group(药物类别)、brand(商品名)、drug_n(未获批/研究性物质)。

B5. 关系有哪些类型?
四类:mechanism(机制)、effect(效应)、advice(建议)、int(泛化交互)。

B6. 覆盖 PK 还是 PD?
两者都覆盖——这正是相对早期只做 PK 工作的关键进步。

B7. 文件是什么格式?
XML,遵循 Pyysalo et al. (2008) 的 PPI 语料统一格式。

B8. 有标注指南吗?
有,随语料发布。

B9. 什么语言?
英文。

B10. 有句子切分吗?
有。标注以句子为上下文单位,关系不跨句。

B11. 不连续实体怎么标?
字段内用分号分隔多段 span。

C. 获取与许可

C1. 从哪里下载?
官方主页 http://labda.inf.uc3m.es/ddicorpus(抓取时点不可达,见附录 M)。

C2. 许可是什么?
free for use for academic research——学术研究免费,非标准 CC 许可。

C3. 可以商用吗?
不在明示授权范围内,须联系 UC3M LABDA 团队取得书面许可。

C4. 需要申请吗?
论文口径倾向「可直接获取」,而非请求制;但官网当前状态待核。

C5. 可以二次分发吗?
不建议自行转发,建议指向官方入口;分发涉及版权与许可,谨慎为上。

C6. Medline 摘要的版权归谁?
归各自期刊/出版商,与语料打包许可是两层,商用需双重确认。

C7. 有版本更新吗?
语料本体自 2013 年后未再发布新版,保持固定划分以保可比性。

D. 评测与使用

D1. 最佳成绩是多少?
Task 9.1(实体识别)F1 71.5%;Task 9.2(DDI 检测分类)F1 65.1%(2013 考核基准)。

D2. 为什么关系任务更难?
检测之上还要分类,且四类语言表面相似。见 §5.2。

D3. 为什么 Medline 子集成绩低?
主题发散、实体歧义多、药物边界模糊。见 §3.3。

D4. 报告指标要注意什么?
四坐标:micro/macro、STRICT/relaxed、子集、子任务。

D5. 可以用它做知识图谱吗?
可以,作为文本侧监督信号训练抽取模型,再把抽取结果规范化进图谱。

D6. int 类能用吗?
样本极少(训练 178 例),只能作诊断,不能作能力结论。见坑 8。

D7. 现在还有必要用吗?
有。它是可比性锚点;但若追求区分度,应同时考虑更新的更难基准。

D8. 能用它做中文 DDI 吗?
不能直接用(英文语料),但可作方法迁移与标注规范参照。

D9. 药物名会过时吗?
会。语料年代为 2011-2013,当代药物警戒使用需补时效核对。

D10. 有跨句关系吗?
没有,标注限于句内。


事实清单(硬事实 36 条)

  1. 全称:The DDI corpus: an annotated corpus with pharmacological substances and drug-drug interactions。
  2. 发表期刊:Journal of Biomedical Informatics。
  3. 卷期页:2013 年,46 卷 5 期,914-920 页。
  4. DOI:10.1016/j.jbi.2013.07.011。
  5. PMID:23906817。
  6. 挑战赛论文:SemEval-2013 Task 9,ACL Anthology S13-2056,341-350 页。
  7. 机构:UC3M 计算机科学系 + DFKI 语言技术实验室。
  8. 作者:Herrero-Zazo、Segura-Bedmar、Martínez(UC3M)、Declerck(DFKI)。
  9. 文档总数(JBI 口径):1,025。
  10. DrugBank 文本:792 篇。
  11. Medline 摘要:233 篇。
  12. 药理学实体数(JBI 口径):18,502。
  13. DDI 关系数(JBI 口径):5,028。
  14. 文档总数(SemEval 口径):1,017。
  15. DrugBank 文本(SemEval 口径):784 篇。
  16. 实体数(SemEval 口径):18,491。
  17. DDI 数(SemEval 口径):5,021。
  18. 训练集占比:约 77%。
  19. 测试集(整体):142 DrugBank + 91 Medline。
  20. Task 9.1 测试集:54 DrugBank + 58 Medline。
  21. Task 9.2 测试集:158 DrugBank + 233 Medline。
  22. 盲评集:52 DrugBank + 58 Medline。
  23. 训练集文档数:717(572 DrugBank + 145 Medline)。
  24. 训练集 drug 实体:8,197。
  25. 训练集 group 实体:3,206。
  26. 训练集 brand 实体:1,423。
  27. 训练集 drug_n 实体:103。
  28. 训练集 mechanism:1,260。
  29. 训练集 effect:1,548。
  30. 训练集 advice:819。
  31. 训练集 int:178。
  32. 实体子类:drug / group / brand / drug_n。
  33. 关系类型:mechanism / effect / advice / int。
  34. 一致性:Kappa 最高 0.96,一般 >0.80;Medline 的 DDI 为 0.55-0.72。
  35. 最佳成绩:Task 9.1 F1 71.5%;Task 9.2 F1 65.1%。
  36. 参与规模:14 支队伍、7 个国家;被引 397+ 次。

术语表(32 条)

术语 释义
DDI(drug-drug interaction) 药物-药物相互作用,一方药物改变另一方的活性、代谢或毒性
Pharmacological substance 药理学物质,语料的实体标注对象,含已批准药物与未获批物质
DDI Corpus 本条目所指的人工标注药物相互作用抽取语料
DDIExtraction 2013 SemEval-2013 Task 9 的任务名,以 DDI Corpus 为黄金标准
NERC Named Entity Recognition and Classification,命名实体识别与分类
Relation extraction 关系抽取,从文本中识别实体间语义关系
drug(实体类) 已批准药物的通用名
group(实体类) 药物类别/群体泛指(如「NSAIDs」)
brand(实体类) 商品名/品牌名
drug_n(实体类) 未获批/研究性物质
mechanism(关系类) 机制型相互作用(多对应 PK)
effect(关系类) 效应型相互作用(多对应 PD)
advice(关系类) 联合用药的处置建议
int(关系类) 泛化交互表述(长尾类)
PK(pharmacokinetic) 药代动力学,涉及吸收/分布/代谢/排泄
PD(pharmacodynamic) 药效动力学,涉及药理效应改变
DrugBank 药物与靶点数据库,本语料 792 篇文本来源
Medline PubMed 书目数据库,本语料 233 篇摘要来源
Pyysalo 统一格式 PPI 语料提出的 XML 标注格式,本语料沿用
PPI Protein-Protein Interaction,蛋白质相互作用
Annotation guidelines 标注指南,规范实体与关系判定标准
Inter-annotator agreement 观察者间一致性,衡量标注可靠性
Cohen’s Kappa 扣除随机一致后的一致性系数
STRICT 匹配 严格匹配,实体边界与类型均须正确
relaxed 匹配 放宽匹配,允许仅判对边界或类型
micro-average 微平均,对全部类型统一计算(高频类主导)
macro-average 宏平均,对每类先算再平均(稀有类等权)
F1 精确率与召回率的调和平均
Pharmacovigilance 药物警戒,药物不良反应与相互作用的监测
XML 可扩展标记语言,语料文件格式
Gold standard 黄金标准,经人工标注的权威参考答案
Discontinuous entity 不连续实体,复方等跨多段文本的实体

附录

附录 A:条目信息速查卡

项 值
slug ddi-corpus
中文名 药物相互作用抽取黄金语料
英文名 The DDI corpus
类型 生物医学文本关系抽取语料
规模 1,025 篇 / 18,502 实体 / 5,028 DDI(JBI 口径)
来源 DrugBank 792 篇 + Medline 233 篇
格式 XML(Pyysalo 统一格式)
语言 英文
发布 2013 年
论文 J Biomed Inform 2013;46(5):914-920
DOI 10.1016/j.jbi.2013.07.011
许可 free for academic research
获取 labda.inf.uc3m.es/ddicorpus
基准 SemEval-2013 Task 9
最佳成绩 71.5% / 65.1%
库内互链 ddinter(1100)、drugprot(827)、medhop(754)、twosides(254)

附录 B:双口径存照全表

指标 JBI 终版口径 SemEval-2013 发布版口径 差异 原因
文档总数 1,025 1,017 -8 Task 9.1 剔除无交互文档
DrugBank 文本 792 784 -8 同上
Medline 摘要 233 233 0 未变
药理学实体 18,502 18,491 -11 随文档增减
DDI 关系 5,028 5,021 -7 随文档增减

采信规则:语料规模类引用以 JBI 终版为主;任务配置类引用以 SemEval 发布版为准。两者并存,不取其一否定另一。

附录 C:逐项证据链自证

关键数字 来源 位置
1,025 / 792 / 233 UC3M researchportal + ACM 全文页 Highlights 全文页
18,502 / 5,028 JBI 论文摘要(PubMed 23906817) 摘要
1,017 / 784 / 18,491 / 5,021 SemEval-2013 论文 Table 1 PDF 第 3 节
142 + 91 测试划分 SemEval-2013 论文 §3 PDF
54+58 / 158+233 SemEval-2013 论文 Table 1 PDF
4 类关系定义 SemEval-2013 论文 §3 PDF
71.5% / 65.1% JBI 论文摘要 + SemEval 论文 摘要/Table
Kappa 0.96 / 0.55-0.72 JBI 论文摘要 摘要
free for academic research JBI 论文摘要原文 摘要
Pyysalo 统一格式 SemEval-2013 论文 §2 PDF
14 队 7 国 JBI 论文摘要 摘要
被引 397+ UC3M researchportal 机构库页

附录 D:数据获取决策树

需要药物相互作用相关资源?
├─ 要可查询的结构化关系 → ddinter (1100) / twosides (254)
├─ 要文本抽取训练/评测语料 → 本条目(ddi-corpus)
│   ├─ 做实体识别任务 → Task 9.1 配置(54+58 测试)
│   ├─ 做关系抽取任务 → Task 9.2 配置(158+233 测试)
│   └─ 做域迁移研究 → 分 DrugBank / Medline 子集报告
├─ 要化学-蛋白相互作用 → drugprot (827)
└─ 要做多跳推理 → medhop (754)

附录 E:语料加载与解析骨架(Python 伪代码)

# 说明:DDI Corpus 为 XML(Pyysalo 统一格式)。
# 下列为结构示意,实际标签名以随语料发布的 DTD/schema 为准。
import xml.etree.ElementTree as ET

def load_doc(path):
    tree = ET.parse(path)
    root = tree.getroot()
    entities, relations = [], []
    for sent in root.iter('sentence'):
        sid = sent.get('id')
        for ent in sent.iter('entity'):
            entities.append({
                'sid': sid,
                'text': ent.get('text'),
                'type': ent.get('type'),          # drug/group/brand/drug_n
                # 注意:不连续实体的 offset 可能含分号分隔的多段
                'offset': ent.get('charOffset'),
            })
        for pair in sent.iter('pair'):
            relations.append({
                'sid': sid,
                'e1': pair.get('e1'),
                'e2': pair.get('e2'),
                'type': pair.get('type'),         # mechanism/effect/advice/int
                'ddi': pair.get('ddi', 'true'),
            })
    return entities, relations

def parse_offsets(offset_str):
    """处理分号分隔的不连续实体偏移。"""
    parts = []
    for seg in offset_str.split(';'):
        start, end = seg.split('-')
        parts.append((int(start), int(end)))
    return parts

要点:parse_offsets 必须处理分号,否则不连续实体(坑 6)会被截断。

附录 F:四坐标评测报告模板

数据集:DDI Corpus
子任务:[Task 9.1 实体识别 / Task 9.2 DDI 检测+分类]
评估子集:[DDI-DrugBank / DDI-Medline / 全量]
匹配口径:[STRICT / relaxed]
平均方式:[micro-F1 / macro-F1]

结果(micro-F1):
  总体:__
  按实体类型:drug __ / group __ / brand __ / drug_n __
  (若为 9.2)按关系类型:mechanism __ / effect __ / advice __ / int __

样本量提示:int 类样本极少,分项指标方差大,不作能力结论。

附录 G:与库内 ddinter(1100) 的关系声明

本条目(ddi-corpus)与库内 ddinter(rid=1100)名称相近但为不同实体:前者是文本抽取语料,后者是结构化策展数据库。二者构成药物警戒 NLP 的上下游链路,互补不合并。检索者若需结构化 DDI 关系请取 ddinter;若需训练抽取模型的标注语料请取本条目。

附录 H:与库内 drugprot(827) 的对照

维度 ddi-corpus(本条目) drugprot (827)
任务 drug-drug 相互作用抽取 chemical-protein 相互作用抽取
组织方 UC3M+DFKI(SemEval-2013 T9) BioCreative VII(DrugProt track)
语料渊源 DrugBank + Medline PubMed 摘要 + 实体规范化
关系体系 mechanism/effect/advice/int 化学-蛋白关系多类体系
共同点 同为生物医学关系抽取黄金语料、同强调实体规范化 同左

二者可并列为「生物医学关系抽取双基准」,适合做跨任务方法对比研究。

附录 I:一致性统计口径说明

DDI Corpus 报告的 Cohen’s Kappa 是两名标注者之间的一致性。解读要点:

  • Kappa 扣除随机一致后计算,比裸一致率严格;
  • 须分源解读:DrugBank 0.80+ 与 Medline 0.55-0.72 是两种难度的两张脸;
  • 0.80 通常视为「高度一致」门槛,0.96 接近上限;
  • Medline 的 0.55-0.72 属「中等」,反映该源固有歧义,不代表标注者不称职。

附录 J:DDI 类型 × 子集 计数总表

类型 训练集 Task 9.1 测试 Task 9.2 测试
mechanism 1,260 0 279
effect 1,548 0 301
advice 819 0 215
int 178 0 94

读表要点:Task 9.1 测试的关系计数全 0,因为该测试集刻意剔除含交互文档,只评实体识别。

附录 K:实体类型 × 子集 计数总表

类型 训练集 Task 9.1 测试 Task 9.2 测试
drug 8,197 180 1,518
group 3,206 65 626
brand 1,423 53 347
drug_n 103 5 21

附录 L:文档与句子级计数总表(Table 1 摘要)

统计项 训练集 Task 9.1 测试 Task 9.2 测试
文档数 717 112 391
DrugBank 文档 572 54 158
Medline 摘要 145 58 233

附录 M:官方入口可达性核查记录

项 记录
URL http://labda.inf.uc3m.es/ddicorpus
抓取时点 2026-10-16
结果 DNS 解析失败(curl exit=6)
影响 未能实抓官网确认下载表单/许可全文
备选取证 JBI 论文摘要原文 + SemEval 任务论文(均一手、可公开访问)
遗留疑点 官网当前是否在线、下载是否仍为直链——待人工复核
备用路径 UC3M 机构库 researchportal.uc3m.es / 直接联系 LABDA 团队

附录 N:许可条款细读

要素 内容 风险点
授权表述 free for use for academic research 非标准许可,边界靠解释
允许 学术研究免费使用 界定「学术研究」范围
未尽事项 商用、再分发未明示 须另行联系团队
分层版权 标注与打包归团队;摘要原文归期刊 第二层最易被忽视
合规动作 商用前取得书面许可 不可省

附录 O:使用合规自查清单

  • [ ] 我的用途是否属于「学术研究」?
  • [ ] 若为商用,是否已联系 UC3M LABDA 团队取得书面许可?
  • [ ] 若使用 Medline 子集,是否确认了摘要原文的版权状态?
  • [ ] 是否会在论文/产品中声明数据来源与许可?
  • [ ] 是否会自行分发语料包?(如是,建议改为指向官方入口)
  • [ ] 是否引用了 JBI 论文与(如适用)SemEval 任务论文?

附录 P:DAIMS 评估全表

维度 评分(1-10) 依据
D 可发现性 9 发表于 JBI 高可见期刊+SemEval 任务论文+UC3M 机构库,被引 397+,文献中极易检索;官网抓取时点不可达微降
A 可获取性 7 论文口径为学术免费可用、单一入口单一许可、固定划分可复现;扣分于官网不可达与非标准许可带来的边界模糊
I 可互操作 8 沿用 Pyysalo 统一 XML 格式,兼容既有生物医学关系抽取工具链;无现代 JSON/CoNLL 官方转换
M 元数据质量 8 标注指南+分源一致性报告+完整 Table 1 统计;双口径(1,025/1,017)需人工调和,微降分
S 可持续性 7 依托 UC3M 机构长期维护、发表稳定;但官网可达性存疑,无第三方权威归档(如 Zenodo)→ 单点风险
综合评级 7.8/10(良好) 作为十余年的领域基准,权威性与可复现性高;主要失分在未来可达性与许可标准化

附录 Q:坑点档案(与 §10 对照)

坑号 名称 危害 对策锚点
坑 1 当数据库用 期望落空 §1.1 / 附录 D
坑 2 双口径混用 引用数字矛盾 §2.1 / 附录 B
坑 3 不注明子集 指标不可比 §5.3 / 附录 F
坑 4 学术免费当商用 许可越界 §6.2 / 附录 N
坑 5 忽略摘要第二层版权 侵权 §6.3 / 附录 N
坑 6 不连续实体解析 实体截断 §4.5 / 附录 E
坑 7 PK/PD 与四类混用 标签误用 §2.4
坑 8 长尾类强结论 统计误用 §2.6 / 附录 J

附录 R:检索决策树

输入关键词「DDI」
├─ 想要文本抽取语料 → ddi-corpus(本条目)
├─ 想要结构化数据库 → ddinter (rid=1100)
├─ 想要副作用关联 → twosides (rid=254)
├─ 想要化学-蛋白抽取 → drugprot (rid=827)
├─ 想要多跳推理 → medhop (rid=754)
└─ 看到「公平性基准/皮肤图像」 → 那是 ddi (rid=171),非本条目

§12 案例解剖:四个典型使用场景的完整走查

本节用四个具体场景,把前面各节的知识串成可操作的路径。每个场景给出「目标 → 步骤 → 陷阱 → 产出」。

12.1 场景一:训练一个 DDI 抽取基线模型

目标:在 DDI Corpus 上复现一个可发表的关系抽取基线。

步骤:

  1. 取语料:从官方入口或团队获取 XML 包(见 §6、附录 M),解压后确认 train/test 目录结构;
  2. 解析:用附录 E 的骨架解析 XML,务必处理不连续实体的分号偏移(坑 6);
  3. 构建样本:以句子为单位,把「两个实体 + 上下文」作为输入,关系类型作为标签;不构成关系的实体对作负例;
  4. 注意类别失衡:int 类样本极少(训练 178 例),要么下采样其他类,要么对 int 用加权损失(坑 8);
  5. 训练:从词向量基线到预训练模型逐步升级,记录每一代的 F1;
  6. 评测:按附录 F 四坐标报告——注明子任务、子集、匹配口径、平均方式;
  7. 对比:与 2013 年基准(71.5%/65.1%)对照,并说明模型代际差异(§5.6)。

陷阱:直接把全量文档混在一起训练却分开报告子集指标,会造成信息泄漏式的乐观偏差;若要报 Medline 指标,训练时应避免使用 Medline 测试文档。

产出:一份可复现的关系抽取基线 + 分源分任务的结果表。

12.2 场景二:构建药物相互作用知识图谱的文本侧管道

目标:用 DDI Corpus 训练抽取器,把文献自动转为图谱边。

步骤:

  1. 训练抽取器(同场景一);
  2. 确定本体:图谱的节点是药物实体,边是相互作用;实体规范化(normalization)是成败关键——文本里的 “metformin”、“Glucophage®”、“二甲双胍” 必须映射到同一节点 ID;
  3. 区分 drug 与 drug_n:不要把 drug_n(未获批/研究性物质)直接并入已批准药物节点(坑 C 变体),否则污染图谱;
  4. 关系类型映射:把 mechanism/effect/advice/int 映射为图谱的边属性,不要硬映射到 PK/PD(坑 7);
  5. 下游对接:抽取结果可与 ddinter(1100) 的策展条目比对,或用 twosides(254) 关联不良反应;
  6. 时效管理:因语料年代为 2011-2013,须定期用新文献重训或做增量抽取。

陷阱:忽略实体规范化,会得到一张「同一药物分裂成多个节点」的碎片化图谱。

产出:从文献自动扩充的 DDI 图谱边,可回溯到原文句子。

12.3 场景三:做跨域泛化研究

目标:研究模型从 DrugBank 域迁移到 Medline 域的能力衰减。

步骤:

  1. 利用双源结构:DrugBank 子集作训练集,Medline 子集作测试集(或反之),构造域迁移实验;
  2. 控制变量:保持模型超参不变,只变训练/测试源;
  3. 量化衰减:报告 DrugBank→DrugBank 与 DrugBank→Medline 两组指标的落差(§5.3 的现象复现);
  4. 归因分析:分析错误类型——是实体边界错、实体类型错、还是关系分类错?Medline 的难点集中在药物边界模糊与主题发散(§3.3);
  5. 方法探索:尝试域适应、对抗训练、数据增强等缓解手段。

陷阱:直接用全量训练的模型去报「跨域」结果,实际上没有跨域——必须先明确训练集与测试集的源划分。

产出:一份带错误归因的域迁移研究报告,可直接呼应 DDI Corpus 论文的原始发现。

12.4 场景四:为新产品做 DDI 相关功能前的合规评估

目标:在商业产品中利用 DDI Corpus(或其衍生模型)前,判断是否合规。

步骤:

  1. 判定用途性质:是学术研究还是商业产品?商业产品中「内部研发」与「对外服务」都属商用(§6.2);
  2. 确认团队许可:联系 UC3M LABDA 团队,说明用途,取得书面许可;
  3. 剥离第二层风险:若使用 Medline 子集,须另行确认 233 篇摘要的原文版权(§6.3、附录 N);
  4. 评估替代路径:若摘要版权无法厘清,考虑仅使用 DrugBank 子集,或改用自身文献库重新训练;
  5. 留痕合规:保留许可往来记录,在产品/论文中声明来源。

陷阱:把「学界都这么用」当作合规依据——这在法律上不成立(坑 4)。

产出:一份合规判定记录,或一条替代技术路径。

12.5 四个场景的共性主线

四个场景殊途同归,都指向同一组核心动作:明确口径(哪份数据、哪个子集)→ 正确处理结构(不连续实体、坐标)→ 正确解读指标(四坐标)→ 守住许可边界(两层版权)。这四步是使用 DDI Corpus 的最小严谨集。


§13 按角色阅读路径

不同读者关心的重点不同,本节给出最短路径。

13.1 如果你是 NLP 研究者

  • 先读 §1 速览 + §5 评测与基准:快速建立「这是什么、指标怎么读」的认知;
  • 再读 §4 数据字段与结构 + 附录 E 加载骨架:动手解析;
  • 关键提醒:报告结果时用 附录 F 四坐标模板,避免指标不可比(坑 3)。

13.2 如果你是药物警戒/临床信息研究人员

  • 先读 §0 导读 + §1.1 语料 vs 数据库:分清本条目与数据库型资源的差异;
  • 再读 §7 生态与应用场景:理解如何从文献自动抽取 DDI;
  • 关键提醒:语料年代为 2011-2013,知识需时效补充(§7.6)。

13.3 如果你是数据工程/知识图谱工程师

  • 先读 §4 数据字段与结构 + 附录 E:理解 XML 结构;
  • 再读 §12.2 知识图谱管道:了解端到端流程与实体规范化要点;
  • 关键提醒:drug 与 drug_n 不可混用(坑 C 变体)。

13.4 如果你是合规/法务人员

  • 先读 §6 获取与许可 + 附录 N 许可条款细读 + 附录 O 合规自查清单;
  • 关键提醒:两层版权(团队打包许可 + 摘要原文版权)是最大风险(坑 5)。

13.5 如果你是数据集选型决策者

  • 先读 §1 速览 + §11.4 30 秒决策卡 + 附录 D 决策树;
  • 再读 附录 P DAIMS 评估:横向比较各维度得分;
  • 关键提醒:要文本语料选本条目,要结构化关系选 ddinter。

13.6 如果你是标注方法学研究者

  • 先读 §3 标注方法学 + 附录 I 一致性口径;
  • 再读 §8 方法学启示:提炼可迁移经验;
  • 关键提醒:双源难度设计与分源一致性披露是两个最有价值的可借鉴点。

§14 上下游实操清单

14.1 上手前检查清单

  • [ ] 已确认用途属于学术研究(否则先走许可流程);
  • [ ] 已获取语料包并核对 train/test 划分完整性;
  • [ ] 已明确要跑 Task 9.1 还是 9.2(决定测试集配置);
  • [ ] 已准备处理不连续实体的解析逻辑;
  • [ ] 已明确评估四坐标(micro/macro、STRICT/relaxed、子集、子任务)。

14.2 数据预处理清单

  • [ ] 句子切分与偏移校验(句子坐标 vs 文档坐标,坑 B);
  • [ ] 不连续实体按分号展开(坑 6);
  • [ ] 实体类型归一(drug/group/brand/drug_n 保持区分);
  • [ ] 关系类型归一(mechanism/effect/advice/int 保持区分);
  • [ ] 负例采样(不构成关系的实体对);
  • [ ] 类别失衡处理(int 类加权或下采样)。

14.3 建模清单

  • [ ] 上下文窗口以句子为界(关系不跨句);
  • [ ] 实体标记方案(如 span marker / 实体类型嵌入);
  • [ ] 是否用预训练语言模型(决定与哪个代际基准对比);
  • [ ] 是否分源训练/评测(跨域研究必需)。

14.4 评测清单

  • [ ] 明确子集(DrugBank/Medline/全量);
  • [ ] 明确匹配口径(STRICT/relaxed);
  • [ ] 明确平均方式(micro/macro);
  • [ ] 给出分类型指标与样本量;
  • [ ] 指出长尾类(int)的统计局限。

14.5 发布与合规清单

  • [ ] 引用 JBI 论文(及 SemEval 任务论文);
  • [ ] 声明数据来源与许可;
  • [ ] 商用已取得书面许可;
  • [ ] Medline 子集的摘要版权已确认或已规避。

14.6 常见误解澄清

误解 事实
DDI Corpus 是数据库 它是文本标注语料(§1.1)
有 1,025 篇就是全部口径 任务发布口径为 1,017 篇(坑 2)
学术免费=可商用 商用不在授权范围(坑 4)
拿到团队许可就万事大吉 还有摘要原文第二层版权(坑 5)
四类型就是 PK/PD 二者正交,不是一套标签(坑 7)
全量 F1 是单一数字 须带四坐标(坑 3)
int 类结果能代表全局 int 是长尾,方差大(坑 8)
拿到语料就含所有交互知识 语料止于 2013 年,需时效补充

§11 总结

11.1 三句话总结

  1. DDI Corpus 是 2013 年 UC3M+DFKI 发布的人工标注药物相互作用抽取语料,由 792 篇 DrugBank 专论与 233 篇 Medline 摘要构成,含 18,502 个药理学实体与 5,028 条 DDI(JBI 终版口径)。
  2. 它是 SemEval-2013 Task 9(DDIExtraction 2013)的官方黄金标准,定义了药物实体识别(最佳 F1 71.5%)与 DDI 检测分类(最佳 F1 65.1%)两个子任务,十余年来是 DDI 抽取领域事实上的评测基准。
  3. 它学术研究免费、可复现性极高,但许可非标准、且 Medline 子集摘要存在第二层版权——商用前务必逐层确认,这是使用它的第一风险点。

11.2 适合谁

  • 做生物医学自然语言处理 / 关系抽取 / 实体识别的研究者与工程师;
  • 想用公认基准报告结果、与他人横向比较的模型开发者;
  • 研究标注方法学、一致性评估、双源难度设计的学者;
  • 构建药物知识图谱、需要文本侧监督信号的团队;
  • 做药物警戒自动化、需要从文献抽取 DDI 的研究者。

11.3 不适合谁

  • 想要开箱即用的结构化相互作用数据库的人(请用 ddinter/twosides);
  • 需要中文或其他语种 DDI 语料的人(本语料为英文单语);
  • 需要跨句/跨文档关系的人(标注限于句内);
  • 需要当代最新药物相互作用知识直接上线的人(语料年代为 2011-2013,需时效补充);
  • 计划商用却不愿走许可确认流程的人(有实质合规风险)。

11.4 30 秒决策卡

你的问题 答案
这是什么? 药物相互作用抽取的文本标注语料(非数据库)
多大? 1,025 篇 / 18,502 实体 / 5,028 DDI
谁做的? UC3M + DFKI,2013
是基准吗? 是,SemEval-2013 Task 9 官方黄金标准
成绩多少? 实体 71.5% / 关系 65.1%
免费吗? 学术研究免费,商用须确认
最大风险? Medline 摘要第二层版权 + 许可非标准
库内邻居? ddinter(1100)、drugprot(827)、medhop(754)、twosides(254)

相关数据集导航

以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:

  • bc5cdr — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 药物安全 / 命名实体识别
  • biored — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 命名实体识别 / 知识图谱
  • semmeddb — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 命名实体识别 / 知识图谱
  • pubtator-central — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 命名实体识别 / 知识图谱
  • onsides — 共享标签:医疗NLP / 关系抽取 / 药物安全 / 命名实体识别 / 知识图谱
  • medmentions — 共享标签:医疗NLP / 生物医学文献 / 命名实体识别 / 知识图谱
  • craft — 共享标签:医疗NLP / 生物医学文献 / 命名实体识别 / 知识图谱
  • genia — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 命名实体识别
  • disease-ontology — 共享标签:医疗NLP / 生物医学文献 / 命名实体识别 / 知识图谱
  • medlexsp — 共享标签:医疗NLP / 生物医学文献 / 命名实体识别 / 知识图谱

导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

返回 AI-Ready 数据集