信息速览
INFOBOX — SemMedDB 一屏速览
维度 内容 本质 NLM 用 SemRep 对 MEDLINE 全量引文标题+摘要全自动抽取的「主语-谓词-宾语」语义谓词(semantic predication)数据库——文献级知识图谱的数据库形态 团队 NLM Lister Hill 国家生物医学传播中心(LHNCBC);Halil Kilicoglu(架构师)、Graciela Rosemblat 等 论文 Bioinformatics 2012;28(23):3158-3160(创刊);BMC Bioinformatics 2016;17:163(2.0);BMC Bioinformatics 2020;21:188(SemRep 评估) 版本 semmedVER43_R:MEDLINE BASELINE 2022 + PubMed 更新至 2024-05-08——官方声明最终版,此后停止更新 规模 37,233,341 引文 / 130,480,195 predications / 263,160,520 句 / 1,982,424,585 实体提及 谓词 30 种语义谓词(TREATS/CAUSES/INHIBITS/INTERACTS_WITH 等);语义类型来自 UMLS Semantic Network 质量 SemRep 严格匹配 F1=0.42 / 宽松匹配 F1=0.52(2020 评估);全自动、零人工标注——规模换精度 修饰 PREDICATION_AUX 提供 NEGATION_FLAG / UNCERTAIN_FLAG;正式库 anaphora(指代消解)关闭 获取 UTS 账号登录后下载;MySQL 转储 + CSV.gz 双格式;旧入口 /project/semmeddb 已重定向(坑 3) 许可 UMLS Metathesaurus License(非商业)——biothings 曾错标 CC BY 4.0 后修正(坑 4) 状态 VER43_R 后不再更新;旧版 VER31/40/41/42 已被官方删除 量级坐标 断言 1.3 亿 / 句子 2.6 亿 / 实体 20 亿——三层口径勿混(坑 1,§2.8 坐标系) 库内互链 umls(558)、bc5cdr(415)、biored(457)、drugcentral(344)、disgenet(449) 等 16 条
SemMedDB(Semantic MEDLINE Database,语义 MEDLINE 数据库)是美国国家医学图书馆(NLM)Lister Hill 国家生物医学传播中心(LHNCBC)生产的「文献级知识图谱」:用自研的 SemRep 信息抽取系统把 MEDLINE/PubMed 全部引文的标题与摘要逐句读一遍,把自然语言句子里的生物医学断言抽成「UMLS 概念 A - 语义谓词 - UMLS 概念 B」的三元组,落成六张关系表。最终版 semmedVER43_R 含 37,233,341 篇引文与 130,480,195 条语义谓词——平均每篇引文约 3.5 条三元组,且每一条都能回溯到原文的具体句子。
三个关键认知先行:
- 它是全自动的:从实体识别到谓词判定没有任何人工标注环节,精度上限被 SemRep 系统本身封顶(严格匹配 F1=0.42)——这是它与 bc5cdr、biored 等人工标注关系语料的本质分野,也是 1.3 亿行规模的直接代价。
- 它是静止的:官方下载页明示 VER43_R 是 “the final update for the SemMedDB Database”,此后不再更新;一切引用与工程决策都要带上「数据截止 2024-05-08」这个时点(坑 2)。
- 它是受限开放的:数据免费但绑定 UMLS Metathesaurus License(非商业用途),下载需 UTS 账号——「免费」与「无门槛」是两件事,第三方镜像的许可标注还曾出错(坑 4)。
导语读法三则:
- 只想下数据:直奔 §5——注意 UTS 账号门槛与非商业限制,别被「NLM 免费」四个字误导。
- 关心数据质量:直奔 §4——SemRep 评估、错误来源分解与「分层使用」策略三段连读。
- 做知识图谱或药物重定位:直奔 §6——下游生态与通行使用策略可直接对标。
§0 导读:这个数据集解决什么问题
生物医学知识的主要载体是句子,不是表格。MEDLINE 每年新增一百多万篇引文,几乎每篇摘要都藏着若干条「X 导致 Y」「Z 治疗 W」式的断言。要把这些断言变成机器可计算的知识,有两条路:一条是人工标注——精度高,但成本高到只能覆盖百篇量级(库内 bc5cdr、biored 都是数百篇规模);另一条是全自动抽取——精度打折,但能把语料铺满整个 MEDLINE。SemMedDB 走的是第二条路:NLM 用 SemRep 系统对 3723 万篇引文逐句抽取,产出 1.3 亿条语义谓词,建成一个「句子里有什么就存什么」的文献级知识图谱。
它的价值分三层。第一层是数据本身:六张关系表把「哪篇文章的哪个句子里、谁对谁做了什么」存成可 SQL 查询的结构,PREDICATION 主表 1.3 亿行可直接 JOIN 回溯到引文与原句——可溯源性是它区别于黑盒知识图谱的核心资产。第二层是方法样本:SemMedDB 展示了一条全自动流水线如何工程化地跑完整个 MEDLINE,包括哪些功能(anaphora,指代消解)因为维护代价被正式版关闭——这些取舍本身就是文献挖掘工程的一手教材。第三层是生态位:NCATS Translator、Every Cure、biothings 等下游系统都把它当知识底座;但它没有自带基准、没有 leaderboard——它不是考卷,是矿。
§0 读法三则:
- 条目主线是「规模换精度」:1.3 亿三元组的每一行都带着 F1≈0.42-0.52 的出厂折扣,使用前必读 §4.5 统计卫生守则。
- 全文统计数字均出自官方下载页与三篇论文(2012 创刊、2016 2.0、2020 SemRep 评估);数字口径冲突处(brief 2.7 亿 vs 实核 1.3 亿等)已在 §9 双口径登记表与坑 1 存照。
- 检索时注意官方项目页已迁移:/project/semmeddb 会重定向,当前活跃入口在 /temp/SemRep_SemMedDB_SKR/ 路径下(坑 3)——「temp」只是 NLM 服务器目录名,不代表数据是临时资源。
本条目结构地图(按阅读目的选择路径):
| 你想知道 | 去哪 |
|---|---|
| 这库里有什么、长什么样 | §2(六表/谓词/溯源体系) |
| 这些数据怎么来的、为什么有的功能没有 | §3(SemRep 流水线/anaphora 取舍) |
| 数据多可靠、错了怎么办 | §4(评估数字/错误分解/统计守则) |
| 怎么拿到手、能拿去商用吗 | §5(UTS 门槛/许可链/DAIMS) |
| 别人都拿它做什么 | §6(下游生态)+ §7(库内组合用例) |
| 有哪些前人踩过的坑 | §9(双口径存照)+ §10(八个坑) |
| 快速决策 | §11.4 决策卡 + 附录 C 决策树 |
§1 数据集速览:十问十答
Q1:SemMedDB 到底是什么?
NLM LHNCBC 维护的语义谓词数据库:SemRep 系统对 MEDLINE/PubMed 引文的标题与摘要逐句抽取「UMLS 概念 - 语义谓词 - UMLS 概念」三元组并全量入库。数据形态是六张关系表(MySQL 转储 + CSV.gz 双格式发布),不是 API 服务,也不是图数据库导出文件。
Q2:规模有多大?
最终版 semmedVER43_R:37,233,341 篇引文(CITATIONS 表)、263,160,520 个句子(SENTENCE 表)、1,982,424,585 个实体提及(ENTITY 表)、130,480,195 条语义谓词(PREDICATION 表)。注意:曾有「约 2.7 亿 predications」的说法在流传——那是句子数(2.63 亿)的量级,谓词实核 1.3 亿(坑 1)。
Q3:一条 predication 记录什么?
一条主谓宾断言:主语与宾语各带 UMLS 概念标识与语义类型(如 Pharmacologic Substance、Disease or Syndrome),谓词是 30 种语义谓词之一(TREATS、CAUSES、INHIBITS、INTERACTS_WITH 等),并经 SENTENCE_ID 与 PMID 回链到原句与引文——每个三元组都能溯源。
Q4:谁生成的,可靠吗?
SemRep 1.8 Regular 全自动生成,零人工标注。SemRep 2020 评估:严格匹配 P=0.55/R=0.34/F1=0.42,宽松匹配 P=0.69/R=0.42/F1=0.52。可靠性的正确打开方式是「分层使用」:按谓词白名单+频次过滤(下游 Every Cure 的通行实践),而不是全量直用。
Q5:覆盖哪些语义谓词?
30 种,覆盖治疗(TREATS)、诊断(DIAGNOSES)、病因(CAUSES)、抑制(INHIBITS)、相互作用(INTERACTS_WITH)、过程(PROCESS_OF)等关系族;主宾语义类型取自 UMLS Semantic Network(2020 版 127+ 语义类型)。
Q6:怎么下载?
官方下载页(lhncbc.nlm.nih.gov/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html)→ UTS(Unified Medical Language System)账号登录 → 下载 MySQL 转储或 CSV.gz。旧入口 /project/semmeddb 已重定向(坑 3)。
Q7:许可是什么?
UMLS Metathesaurus License(数据跟随 UMLS 术语许可,UTS 账号签署即覆盖)+ 非商业用途(2012 创刊论文口径)。biothings 镜像曾错标 CC BY 4.0、后经 PR 修正——引用许可时以 UMLS 口径为准(坑 4)。
Q8:还在更新吗?
不。官方下载页明示 VER43_R 是 “the final update for the SemMedDB Database”(数据截止 2024-05-08),旧版 VER31/40/41/42 已从官网删除。任何「持续更新」的表述都与官方口径相反(坑 2)。
Q9:谁在用?
NCATS Translator(NIH 知识图谱计划,官方 wiki 有专页)、Every Cure(药物重定位,给出明确使用建议)、biothings/semmeddb(API 化镜像,2025-05-07 更新至 43_2024R 口径)、PARMESAN(提示语料生成管线),以及大量把 SemMedDB 当弱监督源的研究。
Q10:为什么它对 AI-Ready 重要?
它是「全自动抽取 + 术语许可绑定 + 版本静止」三特征叠加的独特样本:AI-Ready 得分高在机器可读、体量巨大、结构规整(PMID+CUI 双外键体系);失分在许可门槛(UTS 账号+非商业)与精度折扣(无人工标注)。它是库内第一个纯文献级知识图谱条目,与人工标注关系语料家族(bc5cdr/biored/chemprot 等)构成光谱的两端。
§1.5 三个易混概念辨析
检索与阅读 SemMedDB 相关资料时,有三对概念最容易被搅在一起:
| 易混对 | 辨析 |
|---|---|
| SemMedDB vs PubMed/MEDLINE | PubMed/MEDLINE 是文献库(存文章);SemMedDB 是谓词库(存从文章里抽出的断言)。前者 3700 万篇是「文章数」,后者 1.3 亿条是「断言数」——两者经 PMID 外键连接,但内容层完全不同 |
| SemMedDB vs UMLS | UMLS 是概念体系(什么是「阿司匹林」、它属于什么类别);SemMedDB 是断言集合(「阿司匹林-TREATS-头痛」)。SemMedDB 的每个论元都是 UMLS 概念——没有 UMLS,SemMedDB 只是字符串对 |
| SemMedDB(库)vs SemRep(引擎) | SemRep 是抽取系统(程序),SemMedDB 是其输出的数据库(数据)。引擎版本(1.8 Regular)与库版本(VER43_R)是两个独立编号;引擎的评估数字(§4)适用于库,但库是静态快照、引擎仍可演化 |
外加一个常见的时间线混淆:SemMedDB 的论文有三个关键年份(2012 创刊/2016 2.0/2020 SemRep 评估),库版本也有三代口径(schema 2.0→3.0→VER43_R)——论文年代表方法演进,版本年代表数据演进,两轴不要互相代入(§2.1 版本链与附录 P 时间线分轴呈现)。
§2 数据构成与规格
2.1 版本与语料口径
最终版 semmedVER43_R 的三个定位参数:
| 参数 | 值 | 说明 |
|---|---|---|
| 版本号 | semmedVER43_R | R 对应 SemRep Regular 版输出;官方声明 “This is the final update for the SemMedDB Database” |
| 语料快照 | MEDLINE BASELINE 2022 + PubMed Update Files through May 8, 2024 | 语料日期是数据覆盖的硬边界——2024-05-08 之后的文献不存在于此库 |
| 抽取引擎 | SemRep version 1.8 Regular | 全自动流水线;anaphora(指代消解)功能关闭 |
版本链(新→旧):
| 版本 | 状态 | 备注 |
|---|---|---|
| semmedVER43_R | 在发布(最终版) | 数据截止 2024-05-08;官方声明不再更新 |
| semmedVER43_2023_R | 已被取代 | PARMESAN 语料基于其 PREDICATION CSV(文件名含 116080 分片号) |
| semmedVER43_2022_R | 已被取代 | biothings 引用的 CSV 直链即此版本(路径含 umls-restricted) |
| VER30+(schema 3.0 起) | 历史版本 | 表结构重构:删除 CONCEPT/CONCEPT_SEMTYPE/PREDICATION_ARGUMENT/SENTENCE_PREDICATION 四表,新增 GENERIC_CONCEPT(259 行) |
| 2.0 时代(VER31/40/41/42 等) | 已从官网删除 | 老 2.0 表结构文档存于 dbinfo20.html(UMLS 2006AA 概念 + EntrezGene 口径);直链已失效 |
2.0 到 3.0 的 schema 重构值得专门记一笔:老结构里「概念—句子—谓词」的关联被拆在四张表中,3.0 把它们收拢进 ENTITY/PREDICATION 并引入 GENERIC_CONCEPT。下游若有按 dbinfo20.html 建模的老代码,直接接 VER43_R 会在表结构层面报错——迁移成本要在选型时算进去。
2.2 六表总览
官方下载页逐表给出行数与体量(MySQL 与 CSV 双格式发布):
| 表 | 行数 | MySQL 体量 | CSV 体量 | 内容层 |
|---|---|---|---|---|
| CITATIONS | 37,233,341 | 177M | — | 引文层:PMID 与题录 |
| SENTENCE | 263,160,520 | 16G | — | 句子层:被抽取处理的每个句子 |
| ENTITY | 1,982,424,585 | 46G | 48G | 实体层:句中的实体/概念提及 |
| PREDICATION | 130,480,195 | 3.1G | 3.2G | 主表:语义谓词三元组 |
| PREDICATION_AUX | 130,480,181 | 4.0G | 4.2G | 谓词扩展:否定/不确定性等修饰 |
| GENERIC_CONCEPT | 259 | — | — | schema 3.0 新增;确切语义官方未详注(坑 7) |
三个读表要点:
- 比例关系是理解这个数据库的钥匙:平均每篇引文约 7.1 个句子(263,160,520/37,233,341)、约 53 个实体提及(1,982,424,585/37,233,341)、约 3.5 条谓词(130,480,195/37,233,341)。谓词数远少于实体提及数——大部分句子抽不出可入库的谓词关系,这与 SemRep 召回率 0.34 的评估结果(§4.1)互为印证。
- PREDICATION 与 PREDICATION_AUX 差 14 行(130,480,195 对 130,480,181):官方页原样数字,未见解释文字。工程上按「AUX 为主表的近似全集」处理即可,别当成数据损坏去修(坑 5)。
- MySQL 与 CSV 体量不一致是正常的(ENTITY 46G 对 48G 等):两种导出格式的编码与存储差异所致,行数口径一致(坑 6)。
2.3 PREDICATION 主表结构
PREDICATION 每行一条三元组。以下为结构示意(带 * 号者为 FACTS 实核字段;其余槽位名按官方文档口径示意,精确列名以 UTS 登录后的库结构文档为准):
PREDICATION(每行一条语义谓词)
PREDICATION_ID 主键(示意)
PMID 回链 CITATIONS——引文层
SENTENCE_ID 回链 SENTENCE——三元组的原文句子出处
PREDICATE 语义谓词,30 种之一(TREATS/CAUSES/INHIBITS/…)
SUBJECT_* 主语槽位:UMLS 概念、名称、语义类型等
SUBJECT_NOVELTY* 主语新颖性标记(schema 3.0 起,与 GENERIC_CONCEPT 联动)
OBJECT_* 宾语槽位:UMLS 概念、名称、语义类型等
OBJECT_NOVELTY* 宾语新颖性标记(schema 3.0 起,与 GENERIC_CONCEPT 联动)
PREDICATION_AUX(修饰扩展表)
NEGATION_FLAG* 否定标记
UNCERTAIN_FLAG* 不确定性标记
这张表的工程价值在于双外键溯源体系:PMID 让你回到论文,SENTENCE_ID 让你回到具体句子。做知识清洗或抽样质检时,任何一条可疑三元组都能在原文里找到它的出生地——这是许多黑盒知识图谱产品不具备的透明度。
2.4 修饰标记与 factuality 研究链
PREDICATION_AUX 的两个标记直接决定了三元组的「语气」:
- NEGATION_FLAG:句子表达的是否定(「X 不导致 Y」)——不做过滤就会把否定的断言当正向知识用,这是文献级知识图谱最经典的翻车点。
- UNCERTAIN_FLAG:句子表达不确定(「可能」「推测」层面)——弱证据信号。
在这两个 flag 之外,NLM 团队有一条持续细化「断言修饰」的研究线,但都停留在论文层面、未并入正式库:
| 年份 | 工作 | 内容 | 出处 |
|---|---|---|---|
| 2016 | SemMedDB 2.0 / sortal anaphora | 指代消解实验与 2.0 库发布 | BMC Bioinformatics 17:163,PMID 27080229 |
| 2017 | factuality | 把修饰细化到事实性维度 | PLoS One,PMID 28678823 |
| 2019 | contradictions | 文献间矛盾关系检测 | Rosemblat 等,PMID 31473364 |
| 2024 | 修饰扩展 | Kilicoglu 团队后续工作 | J Biomed Inform,PMID 38782169 |
对使用者的含义:正式库里你能用的修饰信息就是两个 flag——别在文档里找 factuality 字段,它不在 VER43_R 的产品形态里。
2.5 谓词体系与语义类型
- 语义谓词 30 种:这是 PREDICATE 字段的封闭取值集。FACTS 实核的示例谓词包括 TREATS(治疗)、DIAGNOSES(诊断)、CAUSES(导致)、INHIBITS(抑制)、INTERACTS_WITH(相互作用)、PROCESS_OF(过程)。官方完整清单以 UTS 登录后的文档为准——本条目不凭记忆罗列全表,构建白名单的方法见附录 E。
- 语义类型来自 UMLS Semantic Network(2020 版 127+ 语义类型):主宾概念的语义类型(如 Pharmacologic Substance、Disease or Syndrome)决定了三元组的「词性」——按语义类型对组合过滤,是比逐条检查更高效的粗筛手段(§4.2 的错误分解支持这一点)。
- 谓词与语义类型是两层不同的约束:谓词管「关系是什么」,语义类型管「论元是什么」。白名单+类型对过滤的组合是下游的通行实践(§6.3 Every Cure 口径)。
2.6 一条 predication 的完整旅程
以创刊论文所举示例「Infection-CAUSES-Guillain-Barre Syndrome(感染导致格林-巴利综合征)」为例,一条三元组在库中的完整旅程:
- 句子层:SemRep 读到某个含该断言的句子(SENTENCE 表落行)。
- 实体层:句中「Infection」「Guillain-Barre Syndrome」被识别为实体提及(ENTITY 表落行),各自带上语义类型。
- 归一化:实体提及映射到 UMLS 概念(CUI),从文本变体收敛到标准概念。
- 谓词判定:触发词与句法分析判定 CAUSES 关系成立,PREDICATION 表落行。
- 修饰赋值:句子若含否定/不确定表达,PREDICATION_AUX 相应置位。
- 消费:下游经 SQL JOIN 或 biothings API 取数,按白名单与频率过滤后进入知识图谱或模型训练。
这条旅程解释了为什么 SemMedDB 的规模是「引文的 3.5 倍」而不是「实体的几十分之一」:关系成立的门槛远高于实体识别的门槛——每一行谓词背后都站着约 15 个被识别但未被装配进关系的实体提及。
2.7 与 UMLS 的绑定关系
SemMedDB 对 UMLS 的依赖是结构性的,不是可选的:
- 概念与语义类型全部来自 UMLS:没有 UMLS,主宾概念就没有锚点——库里的三元组是「CUI-谓词-CUI」的骨架,UMLS 才给它们血肉。
- license 绑定:正因为概念体系是 UMLS 的,数据许可跟随 UMLS Metathesaurus License(§5.3)——这是「数据免费但受限」的根源。
- UTS 账号是唯一正规入口:下载需 UTS 登录(§5.1);用库时应配对加载对应版本的 UMLS Metathesaurus,把 CUI 解析回人类可读的概念名。
- 版本耦合:UMLS 语义网络自身在演进(老版本 2.0 库甚至绑定 UMLS 2006AA 与 EntrezGene)——跨版本对比 SemMedDB 时,先确认各自绑定的 UMLS 口径。
2.8 数据规模的三层量级坐标系
SemMedDB 有三个容易混淆的「亿级」数字,建立量级坐标系后再读任何二手资料都不会迷路:
| 量级 | 数字 | 所在表 | 语义 |
|---|---|---|---|
| L1 断言层 | 130,480,195 | PREDICATION | 机器读出的「主谓宾」——知识的原子 |
| L2 句子层 | 263,160,520 | SENTENCE | 被处理过的句子——L1 的原料 |
| L3 实体层 | 1,982,424,585 | ENTITY | 实体提及——L1/L2 的零件 |
三层坐标系的三个用法:
- 定锚:见到任何关于 SemMedDB 规模的表述,先问它在哪一层——「2.7 亿谓词」是 L2 口径误传(坑 1)、「20 亿关系」是 L3 口径的夸张转述,只有 1.3 亿是谓词。
- 换算:层间比例(谓词/句子≈0.50、实体/句子≈7.5)本身就是流水线效率的画像——每两个句子产出一条谓词、每句 7.5 个实体提及。
- 验数:下游论文若给出 SemMedDB 的行数,拿三层坐标系一对照就知道它用的是哪个表——数字打架往往是层口径打架,不是数据造假。
把坐标系记成一句话:断言 1.3 亿、句子 2.6 亿、实体 20 亿——层低数字小,层高数字大,混层必错。
2.9 怎么读官方下载页:逐区块导读
官方下载页(/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html)是本条目最重要的单一事实来源,逐区块的读法:
| 页面区块 | 内容 | 读法要点 |
|---|---|---|
| 版本声明区 | “This is the final update…” 与语料口径(BASELINE 2022 + updates through May 8, 2024) | 先读这里定版本边界(坑 2)——后面所有数字都属于这个版本 |
| 逐表披露区 | 六表的行数与 MySQL/CSV 体量 | 本条目 §2.2 全表的来源;行数是硬数字,体量按格式分列(坑 6) |
| 引擎说明区 | SemRep 1.8 Regular 与 anaphora turned off | 引擎版本号引用处;anaphora 口径决定指称类噪声预期(§3.4) |
| 下载入口区 | UTS 登录链接与文件下载 | 未登录时只能看元数据,登录后才有完整包清单(§5.1 待核项) |
| 文档链接区 | 库结构文档与老版本文档(dbinfo20.html) | 新老结构分界——接老文档建模会在 schema 3.0 上翻车(§2.1) |
读页面的三条纪律:一是把页面日期与自己抓取日期存照(页面内容会随 NLM 调整变动,本条目抓取时点 2026-10-04);二是官方页只承诺「此版本是什么」,不承诺「与旧版差异」——版本差异要靠版本链(附录 P)自行对齐;三是页面路径里的 /temp/ 不影响权威性(坑 3),NLM 内容以该路径为准。
§3 生成流水线:SemRep 如何造出 1.3 亿三元组
3.1 SemRep 与 SemMedDB 的关系
SemRep 是抽取系统,SemMedDB 是其全量输出的数据库化——两者是「发动机」与「整车」的关系。SemRep 2020 主论文原文明言:“It also underpins SemMedDB, a literature-scale knowledge graph”。VER43_R 使用的引擎版本是 SemRep 1.8 Regular;Regular 版与 anaphora 版的取舍见 §3.4。
理解这层关系有两个实际好处:一是 SemRep 的系统评估(§4)直接适用于 SemMedDB 的质量预期——库就是引擎输出的快照;二是引擎版本(1.8 Regular)与库版本(VER43_R)是两个独立编号,引用时都要写全,只写其一不算完整引用。
3.2 从句子到三元组的环节
按 SemRep 2020 评估的错误来源分解倒推,流水线的关键环节与质量瓶颈一一对应:
MEDLINE 引文(标题+摘要)
→ 分句与预处理 (SENTENCE 层落行)
→ 实体识别 + 语义类型赋值 (错误来源 1:NER/归一化 26.9%)
→ 概念归一化到 UMLS CUI (同上——NER 与归一化合并计)
→ 谓词触发词识别 (错误来源 2:触发词 12.5%)
→ 论元判定与关系装配 (错误来源 3:论元 14%)
→ 修饰赋值(否定/不确定性) (PREDICATION_AUX 落行)
→ PREDICATION 落行,全库 130,480,195 条
三个错误来源的分布本身就是质量地图:概念归一化是最大瓶颈(26.9%)——这是绑定 UMLS 的结构性代价(一个表面形式对多个候选概念);论元识别(14%)与触发词识别(12.5%)次之。三个环节合计约 53.4%,意味着一半以上的系统误差集中在「把词映射到概念、把概念配成关系」这两步。
环节与六张表的映射关系(工程视角的流水线-存储对照):
| 流水线环节 | 落表 | 错误来源占比 |
|---|---|---|
| 分句与预处理 | SENTENCE | — |
| 实体识别+语义类型 | ENTITY | 26.9%(NER/归一化,与下一步合并计) |
| 概念归一化到 CUI | ENTITY | 同上 |
| 谓词触发词识别 | PREDICATION | 12.5% |
| 论元判定与关系装配 | PREDICATION | 14% |
| 修饰赋值 | PREDICATION_AUX | — |
这张映射表的用途是反向的:当你对某类三元组的质量不满意时,可以按其错误模式定位到环节,再定位到表——比如主宾概念张冠李戴查 ENTITY 归一化、谓词语义偏移查 PREDICATION 触发词、语气反转查 AUX。存储层由此变成了诊断层。
3.3 全自动:与人工标注语料的对照
SemMedDB 与库内人工标注关系语料(bc5cdr/415、biored/457、chemprot/753、drugprot/827)是关系抽取光谱的两端:
| 维度 | SemMedDB(本条目) | 人工标注关系语料(bc5cdr 等) |
|---|---|---|
| 标注者 | SemRep 1.8 Regular 全自动 | 训练有素的人工标注者+专家校验 |
| 规模 | 130,480,195 条谓词 / 3723 万篇引文 | 数百篇量级(文献级相差三个数量级) |
| 精度 | 严格匹配 F1=0.42(引擎出厂值) | 通常显著更高(金标准用途) |
| 覆盖 | 全 MEDLINE,谓词 30 种封闭集 | 按语料设计的窄关系集 |
| 典型用途 | 弱监督/距离监督、知识图谱底座、假设生成 | 训练与评测金标准 |
| 溯源 | PMID+SENTENCE_ID 双外键回原句 | 标注文档级对照 |
两种资源不是竞争关系而是上下游关系:人工语料太贵无法铺满文献,自动语料太噪无法当真值——正确姿势是用人工语料校准自动语料(抽样质检、训练过滤模型),用自动语料给模型供规模(§8.2 的四步过滤)。
3.4 anaphora 的历史与关闭决定
anaphora(指代消解)是这条流水线唯一有明确「从有到无」历史的功能,值得完整存照:
- 2016 年 SemMedDB 2.0 引入 sortal anaphora:处理「该药物」「this compound」一类指称,把代词指称归并到具体概念。
- 当时的评估(BMC Bioinformatics 17:163):320 篇摘要测试集上 F1=59.6;影响当时约 8200 万条关系中的约 1.5%。
- 影响的三分结构:约 50% 的无信息关系被替换为更有信息量的表述、约 35% 无实质影响、约 15% 反而引入负面变化。
- 正式库的最终决定:VER43_R 官方口径为 anaphora feature turned off——指代消解关闭;官方也不再发布 anaphora 版年度库(2.0 时代曾并行发布)。
取舍解读:1.5% 的增量覆盖不值得双线发布的维护成本,何况三分结构里还有 15% 的负面变化。这个决定是「全自动流水线的功能取舍」的活教材——不是所有技术上可行的东西都值得进产品线(§8.3 进一步讨论)。
对使用者的实际含义:VER43_R 里,「this drug」这类指称不会被归并到具体概念——涉及指称的断言要么缺主语/宾语侧概念而无法成行,要么按表面形式落行。用 ENTITY/PREDICATION 做跨句聚合时要把这一层噪声算进去。
3.5 修饰扩展的研究线(未并入正式库)
NLM 团队围绕「断言修饰」的后续研究——factuality(2017,PMID 28678823)、contradictions(2019,PMID 31473364)、修饰扩展(2024,PMID 38782169)——构成了一个清晰的方法演进序列,但都停在论文与原型层面。这与 §2.4 的结论一致:产品库里可用的修饰信息就是 NEGATION_FLAG 与 UNCERTAIN_FLAG 两个开关。研究线与产品线的这种「温差」在 NLM 的工程文化里是常态——文献是文献,产品是产品。
3.6 语料范围与数据覆盖面
VER43_R 的语料口径(MEDLINE BASELINE 2022 + PubMed Update Files through May 8, 2024)背后是 MEDLINE 的标准分发机制:
- BASELINE(年度基线):每年 12 月发布的完整引文快照——VER43_R 以 2022 基线为主干,含截至该时点的全部存量引文。
- Update Files(增量更新包):基线之后的每日/每周增量——VER43_R 追加到 2024-05-08 为止。
- 抽取对象:引文的标题与摘要——这是 SemRep 的处理范围,也是「平均每篇 3.5 条谓词」的分母口径。
覆盖面的三个推论:
- 时间边界是硬的:2024-05-08 之后发表的文献不存在于库中——引用时把这一天当作「知识的knowledge cutoff」(坑 2 的数据层含义)。
- 语料是引文层不是全文层:标题与摘要承载了文献的主要断言,但全文正文里的细节不在语料范围——「SemMedDB 覆盖了这篇论文」的准确含义是「覆盖了它的题录与摘要」。
- BASELINE 机制决定体量形态:整库以年度快照+增量包的方式发布,这与持续服务的数据库(API 型)截然不同——快照思维(§8.3)由此而来。
§4 质量与评估:F1=0.42 的正确读法
4.1 SemRep 2020 评估总表
SemMedDB 的质量就是 SemRep 的质量——库是引擎输出的快照。SemRep 2020 主论文(BMC Bioinformatics 21:188,doi 10.1186/s12859-020-3517-7)给出的系统评估:
| 评估设置 | 精确率 P | 召回率 R | F1 |
|---|---|---|---|
| 严格匹配(概念+论元+谓词全对) | 0.55 | 0.34 | 0.42 |
| 宽松匹配 | 0.69 | 0.42 | 0.52 |
| CDR 语料(化学-疾病窄域) | 0.90 | 0.24 | 0.38 |
| CDR 语料(句界口径) | — | 0.35 | 0.50 |
怎么读这张表(三个层次):
- 严格与宽松的差是「抽对还是抽歪」的量度:宽松匹配放宽了判对标准(如概念粒度、论元边界),F1 从 0.42 升到 0.52——说明相当一部分输出「方向对但细节歪」,这类三元组适合当线索,不适合当结论。
- CDR 窄域的高 P 低 R 是个性状画像:在化学-疾病关系(CDR 语料)上精确率冲到 0.90 但召回率只有 0.24——系统倾向「少报但报得准」。这提示按关系族分层看质量:某些谓词组合上 SemMedDB 比平均印象可靠得多。
- 召回率 0.34 是规模故事的另一面:全库 1.3 亿谓词听起来很多,但按严格口径它只捞到了理论上可抽关系的三分之一——文献级知识图谱的「全」是相对于人工标注而言的,相对于语言中的断言总量,它漏掉了约三分之二。
4.2 错误来源分解:质量地图
2020 评估同时给出错误来源分解(占比合计约 53.4%,其余为多因素混合):
| 错误来源 | 占比 | 对应环节 | 使用者对策 |
|---|---|---|---|
| NER/概念归一化 | 26.9% | 实体识别+映射到 UMLS CUI | 按语义类型对组合粗筛,避开 NER 弱区 |
| 论元识别 | 14% | 判断谁是施动者谁是受动者 | 对主宾可互换的关系(如 INTERACTS_WITH)宽容,对方向性关系(CAUSES)严格 |
| 触发词识别 | 12.5% | 判定谓词类型 | 用谓词白名单,收窄触发词歧义暴露面 |
这张分解表的实际价值超过单一 F1 数字:它告诉你误差不是均匀洒在库里的,而是集中在特定环节、特定谓词、特定语义类型组合上。过滤器建在这三个环节对应的维度上(语义类型对、谓词白名单、方向性校验),比全局抽样质检的性价比高得多。
语义类型对过滤的三个示例组合(基于实核的语义类型示例构造):
| 组合 | 过滤条件(示意) | 用途 | 预期质量 |
|---|---|---|---|
| 药-病治疗 | PREDICATE=TREATS 且宾语语义类型=Disease or Syndrome | 药物适应证线索 | 方向性强、触发歧义少——Every Cure 首选档 |
| 病-病因果 | PREDICATE=CAUSES 且主宾语义类型均为疾病类 | 并发症/病因网络 | 触发词歧义高(导致/相关混写)——需频率过滤加压 |
| 药-药相互作用 | PREDICATE=INTERACTS_WITH | 联合用药警示 | 主宾可互换——方向性宽容、但归一化噪声需防(坑 1 的 NER 层根源) |
三个组合共用一条元规则:先按语义类型对收窄论元空间,再按谓词收窄关系空间,最后按频率收窄证据空间——三维收窄后剩下的行数远小于全表,但质量密度高一个量级。
4.3 F1=0.42 对使用者意味着什么
把评估数字翻译成工程决策语言:
- 单条三元组的默认置信度:严格口径下,一条被抽出的谓词约有一半概率完全正确(P=0.55)——任何把单行数据当真值的用法都是错的。
- 频率是免费的置信度代理:同一三元组(同概念对+同谓词)在多篇文献中独立重复出现时,抽取错误的概率不相关叠加,高频三元组的实际可靠性显著高于单次出现。这是「按频率过滤」的统计学依据。
- 下游 Every Cure 的使用建议原文:“only use curated subsets (e.g., TREATS, INHIBITS) and filter by frequency/confidence”——只用品质子集(如 TREATS、INHIBITS 这类方向性强、噪声低的关系族),并按频率/置信度过滤。这是目前下游生态里最清晰的使用策略声明。
- AUX 修饰过滤是零成本的第一道闸:排除 NEGATION_FLAG=1 的行(把否定当肯定是最不该犯的错),视用途排除或降权 UNCERTAIN_FLAG=1 的行。
4.4 SemMedDB 无自带基准
与挑战赛数据集不同,SemMedDB 没有 leaderboard、没有官方评测任务——它的定位是知识底座而非考卷。社区对它的「评测」以两种变体存在:
- 当弱监督源用:如 biorxiv 2025 的 cell-cell 关系抽取用例——用 SemMedDB 谓词做远监督信号,同时指出 SemRep 存在谓词选择偏差(某些关系族被系统性高估/低估)。这是 1.3 亿行的正确打开方式:模型从噪声分布中学信号,而不是把每行当真值。
- 经 biothings API 消费:轻量查询场景绕过本地建库(§6.4)。
想评测自己的关系抽取器或知识图谱构建器:用人工标注语料(库内 bc5cdr/415、biored/457),不要用 SemMedDB——拿噪声源当金标准,评出来的数字没有解释力。
4.5 统计卫生守则:读这组数字的四条规矩
- 别把宽松口径的 0.52 当精度用。你的应用(建图谱、做证据)大多需要严格口径——0.55 的 P 才是单条三元组的默认置信画像。两个口径在文献里常被混引,引用时注明设置。
- CDR 的 0.90 P 不能外推。那是化学-疾病窄域、且配着 0.24 的低召回——「SemMedDB 在某关系族上很准」成立,「SemMedDB 很准」不成立。
- 平均数之下藏着分层差异。26.9% 的错误来自 NER/归一化——意味着按语义类型组合分层的质量差异远大于平均数;任何认真一点的用法都该先做分层抽样质检,建立自己用例下的谓词级质量画像。
- 句界与文档级口径别混。CDR 句界口径(R=0.35/F1=0.50)与文档级是两种测量——引用时写明口径,否则数字不可比。
这四条同样适用于审稿:看到有人引用 SemMedDB 而不说明谓词集合、频率过滤与口径设置,其结论的可信度应打折。
4.6 三类常见误用与对策
从下游文献与社区讨论反推,SemMedDB 的误用集中在三类,每类都有对症解法:
| 误用 | 典型场景 | 后果 | 对策 |
|---|---|---|---|
| 全量当真值 | 直接把 PREDICATION 全表当知识图谱节点边 | 半数断言不完全正确,错误随规模放大 | §8.2 四步过滤,白名单起手 |
| 忽视否定 | 不挂 AUX 表,NEGATION_FLAG=1 的行照用 | 「X 不导致 Y」被当成「X 导致 Y」——方向性反转 | 强制 JOIN PREDICATION_AUX,NEGATION 过滤写进管线 |
| 跨层引数 | 把句子数(2.6 亿)或实体数(20 亿)当谓词数引用 | 规模虚报一个数量级以上,审稿即翻车 | §2.8 量级坐标系定锚(坑 1) |
三类的共同根源是把「数据库行数」当成了「知识质量」——行数只承诺存在性,不承诺正确性。对审稿人的建议:凡见到引用 SemMedDB 的工作,先查其过滤链描述(谓词集合/修饰处理/频率阈值),再查其规模口径在哪一层——两处都干净,结论才值得读。
§5 获取与许可:免费但有门槛的门怎么进
5.1 下载入口与 UTS 门槛
| 事项 | 内容 |
|---|---|
| 活跃下载页 | https://lhncbc.nlm.nih.gov/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html |
| 旧入口 | lhncbc.nlm.nih.gov/project/semmeddb——已重定向至通用项目列表页(坑 3) |
| 门槛 | UTS(Unified Medical Language System)账号登录——官方页明示;注册免费但需签署 UMLS 许可协议 |
| 格式 | MySQL 转储 + CSV.gz 双格式(六表,体量见 §2.2) |
两处实操细节:
- CSV 直链的可用性别依赖:biothings 引用过的直链形如
data.lhncbc.nlm.nih.gov/umls-restricted/ii/tools/SemRep_SemMedDB_SKR/semmedVER43_2022_R_PREDICATION.csv.gz——路径中的 umls-restricted 已明示其许可属性。这类直链随 NLM 服务器策略波动,工程上应走 UTS 门户为主路径。 - 完整下载包清单需登录后可见:官方页对包清单与单包体量的完整披露在 UTS 登录之后——沙箱环境无法注册 UTS,本条目按下载页公开部分收录,完整清单列入待核(§9.2)。
5.2 版本链与下载包
可下载的当前资产是 VER43_R 一套:六表 MySQL 转储 + CSV.gz(行数与体量全表见 §2.2)。三个版本管理要点:
- 旧版本已删:VER31/40/41/42 从官网消失,历史直链失效——不要在任何工程文档里引用旧版本号。
- 下游版本口径不一:PARMESAN 基于 VER43_2023_R、biothings 更新至 43_2024R 口径、官方终版为 VER43_R——引用下游工作时先核对其版本(坑 8),跨版本数字不能混表。
- schema 3.0 是分水岭:VER30+ 起表结构重构(删四表、加 GENERIC_CONCEPT),更老的 2.0 结构文档(dbinfo20.html)只作考古用途。
5.3 许可细读
| 层 | 许可口径 | 来源 |
|---|---|---|
| 数据本体 | UMLS Metathesaurus License(跟随 UMLS 术语许可) | 官方获取要求;UTS 账号签署即覆盖 |
| 用途限制 | non-commercial use(非商业) | 2012 创刊论文 Data availability 口径:“available as a MySQL database for non-commercial use” |
| 概念体系 | UMLS Metathesaurus 本身的许可条款另行适用 | UTS 协议 |
| 论文 | 各期刊版权 | Bioinformatics 2012 / BMC Bioinformatics 2016、2020 |
三条推论:
- 商用接入前先过法务:非商业限制写在创刊论文里,商用管线(产品、商业分析服务)接入前需核对 UMLS 协议的商用条款,必要时向 NLM/UTS 渠道书面确认。
- 衍生知识图谱的再分发同受约束:从 SemMedDB 派生的三元组集合继承了 UMLS 许可属性——再分发派生库时不能自选宽松许可。
- 「免费」的真实含义:无需付费,但需要签署协议+遵守用途限制——它是「受限开放」,不是「开放数据」。
5.4 biothings license 修正史(坑 4 详档)
biothings/semmeddb(BioThings API 化镜像)的 manifest 曾把许可标为 “licence”: “CC BY 4.0”,后经 GitHub PR(#8/#9)修正为 “UMLS Metathesaurus License”。这个修正史有三层教训:
- 第三方镜像的许可字段不可直接采信:镜像方对上游许可的理解可能出错,引用前回溯官方许可链(UTS 协议+创刊论文声明)。
- CC BY 4.0 是错误标注:如果看到二手资料称 SemMedDB 为 CC BY 4.0,其源头大概率是这个已修正的 manifest——按 UMLS 口径纠正。
- 许可纠错的正确方向:从宽松错误标纠正到严格真标——宁可高估限制,不可低估。
5.5 AI-Ready 评估:DAIMS 表
以库内 AI-Ready 检查单过一遍:
| 维度 | 评分(1-10) | 依据 |
|---|---|---|
| D 可发现性 | 7 | NLM 官方页+KG Registry 收录+三篇论文可索引;但项目页迁移造成老链接失效(坑 3),「temp」路径名易误导读 |
| A 可获取性 | 5 | 免费但需 UTS 账号+签 UMLS 许可;无 API 直链依赖;ENTITY 48G 级大文件的下载与入库成本高 |
| I 可互操作 | 7 | MySQL/CSV 标准格式+PMID/UMLS CUI 双外键体系;无图数据库原生导出、无官方 Python 客户端 |
| M 元数据质量 | 6 | 官方下载页逐表行数/体量披露完备;但口径不齐处存在(PREDICATION/AUX 差 14 行、GENERIC_CONCEPT 语义未详注、双格式体量不一) |
| S 可持续性 | 4 | 官方声明停止更新(final update);旧版本已删;服务器路径已现迁移迹象(/project/ → /temp/) |
| 综合评级 | 5.8/10(中) | 结构规整、规模巨大、可 SQL;被许可门槛+精度折扣+版本静止三重压制 |
DAIMS 的综合画像一句话:这是一个「矿藏级」而非「商品级」的 AI-Ready 资产——原材料极其丰富、结构清晰,但你需要自备工具(UTS 账号、数据库工程、过滤流水线)才能开采。
5.6 获取实操清单:从账号到可查询
把 §5.1-§5.3 收拢为一条可执行路径(配合附录 C 决策树使用):
| 步骤 | 动作 | 产出/验证 |
|---|---|---|
| 1 | UTS 注册(免费)+ 签署 UMLS Metathesaurus License | UTS 账号可用登录 |
| 2 | 到官方下载页核对 VER43_R 口径与包清单 | 版本号、数据截止日、六表文件名在案 |
| 3 | 下载 PREDICATION(3.1G/3.2G)与 PREDICATION_AUX(4.0G/4.2G)优先 | 主表+修饰表落盘 |
| 4 | 按需下载 CITATIONS(177M)、SENTENCE(16G)、ENTITY(46-48G)、GENERIC_CONCEPT | 完整六表或最小可用集 |
| 5 | CSV.gz → PostgreSQL COPY(或 MySQL 转储直导),行数对账 | 导入行数 = 官方披露行数(130,480,195 等) |
| 6 | 建索引:PMID/SENTENCE_ID/PREDICATE | JOIN 查询可用 |
| 7 | 跑一条示例查询(如谓词=TREATS 计数)+ 抽 10 条回 PubMed 核对原句 | 溯源动线走通(Q41) |
| 8 | 记录 md5 与版本号入工程文档 | 复现基线固化(§8.3 推论 3) |
两个止损点:第 3-4 步之间先验证小表行数再下大表(ENTITY 48G 下载成本高,行数不对说明口径错了);第 7 步的溯源抽检若连续失败,先怀疑加载路径(CSV 编码/转义)而不是数据本身——官方数字与第三方旁证一致,错更可能在你这边。
5.7 双格式入库路线对比
MySQL 转储与 CSV.gz 两条入库路线的取舍:
| 维度 | MySQL 转储路线 | CSV.gz 路线 |
|---|---|---|
| 适用栈 | MySQL/MariaDB 生态 | PostgreSQL/ClickHouse/DuckDB 等一切能吃 CSV 的引擎 |
| 导入方式 | mysql 客户端直导(SOURCE/piping) | COPY / INSERT 批量装载 |
| 体量口径 | 46G(ENTITY)/3.1G(PREDICATION)等 | 48G(ENTITY)/3.2G(PREDICATION)等(坑 6) |
| 字符集风险 | 随转储声明(含 SET NAMES 等语句) | 需自行确认 UTF-8 与转义(摘要文本含特殊字符) |
| 行数校验 | 导入后 SELECT COUNT 对账 | 同左——官方行数是唯一真值 |
| 下游灵活性 | 锁定 MySQL 生态 | 高——分析型引擎可互换 |
推荐:分析与建模场景走 CSV 路线(列存引擎对 1.3 亿行谓词的扫描快得多);只有当下游已经是 MySQL 服务时才走转储直导。无论哪条路线,行数对账(步骤 5)与溯源抽检(步骤 7)都是不可省略的验收动作。
§6 生态与影响:一个 NLM 内线项目的知识版图
6.1 上下游全景
| 方向 | 资产 | 关系 |
|---|---|---|
| 上游(语料) | MEDLINE / PubMed | 3723 万篇引文的标题与摘要是全部原料 |
| 上游(概念体系) | UMLS Metathesaurus + Semantic Network | 概念归一(CUI)与语义类型的唯一来源;license 绑定源头 |
| 下游(知识图谱计划) | NCATS Translator | 文献级知识底座之一,官方 wiki 专页 |
| 下游(药物重定位) | Every Cure | 给出最清晰的使用策略声明(§6.3) |
| 下游(API 镜像) | biothings/semmeddb | 六表 API 化;2025-05-07 更新至 43_2024R 口径 |
| 下游(语料生成) | PARMESAN_SemMedDB | 基于 VER43_2023_R PREDICATION CSV 生成提示语料 |
| 下游(KG 登记) | KG Registry | w3id.org/information-resource-registry/semmeddb 收录 |
上游两条腿(语料+概念体系)决定了两件事:内容边界由 MEDLINE 决定(§5.2 的数据截止),许可与概念锚点由 UMLS 决定(§5.3)。下游四路则展示了同一份原矿的四种吃法:整库入图(Translator)、白名单过滤(Every Cure)、API 化轻查询(biothings)、抽子集造语料(PARMESAN)。
6.2 NCATS Translator 与 KG Registry:权威背书
- NCATS Translator(NIH 国家转化科学促进中心的知识图谱计划)维护官方 wiki 页(github.com/NCATSTranslator/Translator-All/wiki/SemMedDB),把 SemMedDB 列为文献级知识来源——联邦级知识图谱计划采用,是 SemMedDB 权威性的最硬背书。
- KG Registry(w3id.org/information-resource-registry/semmeddb)收录其元数据条目——知识图谱社区的正式登记。
对选型者的含义:当你需要向上级或审稿人论证「文献级知识图谱选型」的正当性时,Translator 的采用是最直接的先例引用。
6.3 Every Cure:药物重定位的用法范本
Every Cure(药物重定位非营利计划)对 SemMedDB 的使用声明是目前下游生态中最完整的策略范本,两个要点:
- 规模口径旁证:“over 130 million semantic predications…more than 37 million PubMed citations”——与官方下载页数字一致(130,480,195/37,233,341),第三方互证通过。
- 使用策略原文:“only use curated subsets (e.g., TREATS, INHIBITS) and filter by frequency/confidence”——只用品转子集+频率/置信度过滤。
这条策略把 §4 的质量数字变成了可执行清单:谓词白名单(TREATS/INHIBITS 这类方向性强的关系族)→ 频率过滤(重复出现才采信)→ 修饰过滤(AUX flag)。药物重定位是最吃「证据强度」的用例——连它都只用品质子集,说明全量直用在任何严肃场景都不成立。
6.4 biothings:API 化镜像与 license 修正史
biothings/semmeddb 把六表做成 BioThings API 镜像,两个存照点:
- 版本口径:GitHub 仓 2025-05-07 更新至 43_2024R 口径——注意这不是官方终版号 VER43_R,引用经 biothings 取的数时版本口径要单独注明(坑 8)。
- license 修正史:manifest 曾错标 CC BY 4.0、后经 PR#8/#9 修正为 UMLS Metathesaurus License(§5.4 详档)——第三方镜像的元数据要带批判性引用。
工程定位:biothings 适合轻量查询与原型验证;重工程(全库分析、模型训练)仍应回官方下载本地建库——API 的查询吞吐撑不起 1.3 亿行的批量消费。
一个实用的分工判断:如果你的查询模式是「按概念/谓词查几百条」(如给 LLM 补证据、给应用做联想),biothings 的 API 形态最省事;如果是「全表扫描+统计建模」(如训练关系分类器、构建子图),必须本地建库——两种模式没有对错,选错形态才会浪费时间。
6.5 PARMESAN 与弱监督研究
- PARMESAN_SemMedDB:基于 semmedVER43_2023_R_PREDICATION.116080.csv.gz 生成的提示(prompt)语料管线——SemMedDB 的谓词句子对被拿去喂大模型,做关系抽取的上下文学习素材。
- 弱监督用例:biorxiv 2025 的 cell-cell 关系抽取研究把 SemMedDB 当远监督信号源,同时指出 SemRep 的谓词选择偏差——这不是缺陷报告,而是弱监督方法论的常规操作:先摸清信号源的偏差结构,再设计训练策略。
这两条线的共同点:都不把 SemMedDB 当真值,而是当先验。这正是「弱监督」与「监督」一词之差的工程含义。
6.6 在文献知识图谱景观中的位置
以库内同类生态位对照,文献知识的生产链分三层:
| 层 | 代表(库内 rid) | 特征 |
|---|---|---|
| 原矿层(自动抽取) | SemMedDB(本条目) | 全 MEDLINE 覆盖、无人工策划、F1 0.42-0.52 |
| 精炼层(文献挖掘+人工策划) | DisGenet(449)、DrugCentral(344) | 从文献来但经专家策划,关系数百万级、置信度分级 |
| 应用层(知识图谱/重定位) | NCATS Translator、Every Cure | 消费前两层,面向发现与决策 |
SemMedDB 的生态位是最上游的原矿:DisGenet、DrugCentral 这类策划型知识库的早期版本同样以文献挖掘为底、人工审核为面——SemMedDB 与它们不是竞争者,而是供应链的上下游。用矿的比喻收束:SemMedDB 是露天矿(谁都能挖、含杂质),策划库是精选厂(有质检、产量小),应用系统是工厂(两者都要用)。
6.7 下游生态时间线
把 §6.1-§6.6 的生态事实按时间轴重排,能看到「库在收官、生态在生长」的剪刀差:
| 时点 | 事件 | 生态含义 |
|---|---|---|
| 2012 | 创刊论文(Bioinformatics 28(23):3158-3160) | 库立项:PubMed-scale 谓词仓库成型 |
| 2016 | SemMedDB 2.0(anaphora 实验) | 最后一次大功能尝试(后关闭) |
| 2017-2019 | factuality/contradictions 研究线 | 修饰理论推进(停在论文层) |
| 2020 | SemRep 主论文+系统评估 | 质量数字定标(F1=0.42/0.52) |
| 2022-2023 | VER43_2022_R/VER43_2023_R 年度版 | biothings/PARMESAN 等下游分别挂靠 |
| 2024-05-08 | VER43_R 数据截止(final update) | 库层收官 |
| 2025-05-07 | biothings 更新至 43_2024R 口径 | 镜像层仍在生长 |
时间线的读法:库的生命周期(2012-2024)与其生态生命周期(2012-至今)已经解耦——这既是「final update 不等于项目死亡」的证据,也是依赖者必须自建快照治理的理由(官方不再有新快照,下游口径开始各自漂移,坑 8 的根源即在此)。
§7 与库内条目的关系
7.1 家族图谱:16 条互链分四组
第一组:术语系统(上游同源)
- umls(rid 558):概念归一与语义类型的直接上游;license 同源(UMLS Metathesaurus License)——两库应配对使用,umls 条目是理解 CUI 体系的前置阅读。
- snomed-ct(rid 557)/ meddra(rid 579):同层医学术语系统,经 UMLS 映射可与 SemMedDB 的 CUI 体系互转。
第二组:人工标注关系语料(光谱另一端)
- bc5cdr(rid 415)/ biored(rid 457):化学-疾病、生物-化学-疾病的人工标注金标准——SemRep 精度上限的反差参照,也是给 SemMedDB 做抽样校准的现成标尺。
- chemprot(rid 753)/ drugprot(rid 827)/ ddi(rid 171)/ pharmaconer(rid 504):药物/化学实体关系语料族——与 SemMedDB 的药物类谓词(TREATS/INHIBITS/INTERACTS_WITH)覆盖面重叠,可用于分层校准。
- bc2gm(rid 434)/ ncbi-disease(rid 425):基因/疾病 NER 语料——SemMedDB 错误来源第一大户(NER 占 26.9%)的直接对照。
第三组:PubMed 文献 NLP 下游(同饮 MEDLINE 之水)
- pubmedqa(rid 49)/ mednli(rid 648)/ biosses(rid 750):文献问答、自然语言推理、句子相似度——语义层的文献理解任务,与 SemMedDB 的谓词层互补。
第四组:文献挖掘型知识库(同类生态位)
- disgenet(rid 449)/ drugcentral(rid 344):经策划的疾病-基因、药物-疾病关联库——SemMedDB 的「精炼版」同侪(§6.6 供应链关系)。
7.2 检索路径建议
- 检索词组合:“SemMedDB”(精确短语)+ “semantic predication” + “SemRep”。泛搜 “Semantic MEDLINE” 会混入不相关结果。
- 版本对齐:引用下游工作先核对其库版本(PARMESAN=VER43_2023_R、biothings=43_2024R 口径、官方=VER43_R)——坑 8。
- 按需分流:要高精度金标准关系 → bc5cdr/biored;要文献级覆盖 → SemMedDB+过滤;要策划过的疾病/药物关联 → disgenet/drugcentral;要概念体系本身 → umls(558)。
7.3 四个跨条目组合用例
单条互链是点,组合用例是网。四个常见的跨条目组合方案:
- 构建疾病-药物知识图谱:semmeddb(本条目,谓词原矿)+ umls(558)(概念解析)→ 过滤后的 TREATS/INHIBITS 白名单子集;用 disgenet(449)/drugcentral(344) 做策划层交叉验证——三层供应链的完整落地。
- 评测关系抽取器:bc5cdr(415)/biored(457) 金标准做测试集 + semmeddb 做预训练/远监督语料——先在噪声上学覆盖,再在金标准上验精度。
- 药物实体与关系流水线:pharmaconer(504)/chemprot(753)/drugprot(827) 训练 NER 与关系模型 → 模型输出与 semmeddb 的药物类谓词互检——人工语料校准自动语料的典型闭环。
- 文献问答系统:pubmedqa(49) 做问答评测 + semmeddb 做证据索引(谓词三元组当候选证据句)+ mednli(648) 做推理一致性——语义层文献理解的三件套。
组合的共同原则:每个条目只用在它的质量档位上——金标准档做评测、原矿档做规模、策划档做验证,跨档使用(拿原矿当金标准)是组合方案里唯一被禁止的动作。
组合方案外的两条延伸建议:其一,组合不限于上述四例——16 条互链条目的两两组合有上百种,选型时先写清你的质量档位需求,再回本节对号;其二,组合引入的版本口径会叠加(每个条目有自己的版本状态),跨条目组合的报告里要为每个数据源单独标注版本与时点,否则整个结论的可复现性会塌缩到口径最模糊的那个源上。
§8 方法学启示:五条可迁移的经验
8.1 全自动 vs 人工标注:成本-质量光谱的极值点
光谱两端各有一个极值样本:人工标注端是 bc5cdr(数百篇、金标准、成本线性增长),全自动端是 SemMedDB(3723 万篇、F1=0.42、边际成本近零)。SemMedDB 的启示不是「自动好」也不是「人工好」,而是先把自动流水线建好跑满全量,让精度提升变成增量改进而非准入门槛——1.3 亿行的不完美底座,比 500 行的完美金标准能支撑更多类型的工程。
8.2 弱标签分层使用:四步过滤方法论
从 §4 的质量数字与 §6.3 的下游实践,可以提炼一套适用于一切弱监督知识库的过滤方法论:
- 谓词白名单:只用品子集(TREATS/INHIBITS 等方向性强、触发歧义少的关系族)——Every Cure 口径。
- 频率过滤:同一三元组多文献重复出现才采信——频率是免费的置信度代理。
- 修饰过滤:排除 NEGATION_FLAG=1,视用途处理 UNCERTAIN_FLAG=1——零成本的第一道闸。
- 独立校准:用小规模人工语料(bc5cdr/biored)对过滤后的子集做抽样质检——建立自己用例下的实际精度估计。
四步的成本递增、收益也递增;最省事的第 1+3 步就能砍掉大部分显性噪声。
8.3 版本静止的可持续性教训
NLM 用十余年把库建到 1.3 亿行后宣布收官(final update)——维护成本与机构优先级变化是真实约束,公共科研基础设施没有「永远在线」的承诺。三条工程推论:
- 把「永不更新」当设计输入:依赖 SemMedDB 的系统,其数据层应设计为「快照+版本号」而非「活水」。
- 镜像不等于延续:biothings 镜像仍在更新口径(43_2024R),但其版本号与官方终版(VER43_R)的差异本身就是需要存照的不一致——镜像的口径治理是独立于官方的。
- 旧版本会消失:VER31/40/41/42 已删——需要长期可复现的项目应自存数据副本并记录 md5,不能依赖官方长期托管。
8.4 与「承认真值的分布性」思想的呼应
库内 PANDA-PLUS 条目讨论过「标签以概率分布存在」——把分级真值从单值改为分布。SemMedDB 走的是另一个方向:真值不确定但规模碾压——把不确定性交给下游过滤,把确定性留给结构(PMID+SENTENCE_ID 的溯源骨架永不模糊)。两者合读得到数据集工程的一条普遍原理:规模、精度、成本三者没有免费午餐,但溯源结构是唯一不加成本也能提升可信度的资产——无论标签多噪,能回到原句的知识就可审计。
8.5 给数据集工程者的三条反直觉教训
从 SemMedDB 十余年的生命周期里,提炼三条与直觉相反的工程教训:
- 「先跑满全量」优于「先追求完美」:SemRep 的 F1 只有 0.42,但 NLM 没有等它变好再发布——1.3 亿行的噪声底座激活了整个下游生态(Translator/Every Cure/biothings),而精度改进(anaphora、factuality)反而多数没进产品线。数据集的生态价值在发布时就开始复利,完美主义是发布的天敌。
- 关闭功能是产品决策,不是技术退步:anaphora 技术上成功(F1=59.6)、业务上微弱(1.5%)、维护上双倍——关闭它是三者加权的正确答案。工程叙事里「我们关掉了能用的功能」值得公开存照,而不是藏着掖着。
- 收官也是一种负责:与其让库在低维护下慢慢腐烂(版本混乱、链接失效),不如宣布 final update 并删净旧版——清晰的死亡好过含糊的半死。下游因此获得了明确的「快照契约」:VER43_R 之后不会再变,你的复现基线从此稳定。
这三条与库内其他条目的工程叙事(PANDA-PLUS 的「先发布再补精度」、版本静止条目的快照治理)共同指向一个元原则:数据集是活的生态而非死的文件,发布策略本身就是数据工程的一部分。
§9 双口径与存照登记
9.1 双口径登记表
| # | 项 | 口径 A | 口径 B | 处理 |
|---|---|---|---|---|
| 1 | predications 规模 | 约 2.7 亿(任务 brief 流传口径) | 130,480,195(官方下载页 PREDICATION 行数) | 按实核 1.3 亿成稿;2.7 亿≈SENTENCE 句数(263,160,520)量级(坑 1) |
| 2 | license | CC BY 4.0(biothings 旧 manifest) | UMLS Metathesaurus License(官方) | 按 UMLS 口径;CC BY 4.0 为已修正的错误标注(坑 4) |
| 3 | 谓词表行数 | PREDICATION 130,480,195 | PREDICATION_AUX 130,480,181 | 差 14 行为官方原样数字,不强行解释(坑 5) |
| 4 | ENTITY 体量 | 46G(MySQL) | 48G(CSV) | 格式差异,行数口径一致(坑 6) |
| 5 | 下游版本口径 | VER43_R(官方终版) | 43_2024R(biothings)/VER43_2023_R(PARMESAN) | 引用下游先核版本(坑 8) |
9.2 存照清单(含使用者影响)
- final update 声明在案:官方下载页明示 VER43_R 为最终版,本条目全篇不出现「持续更新」表述(坑 2)。→ 使用者影响:工程规划把 2024-05-08 当永久数据边界;不期待补丁版。
- 官方项目页迁移:/project/semmeddb 重定向至通用项目列表页;当前活跃入口为 /temp/SemRep_SemMedDB_SKR/ 下的下载页与工具页(坑 3)。→ 使用者影响:文档与代码里的链接全部改指 /temp/ 路径;对老链接做重定向兜底。
- anaphora 正式库关闭:anaphora feature turned off;2016 的 anaphora 版年度库仅存于历史版本序列,已停发(§3.4)。→ 使用者影响:涉及指称的断言统计要声明该口径;跨句聚合的噪声预算里含指称层。
- GENERIC_CONCEPT 259 行语义未详注:推测为 schema 3.0 的通用概念/语义类型层表,但官方未逐字说明——条目按「语义未详注」存照,不臆测用途(坑 7)。→ 使用者影响:该表不进关键路径;NOVELTY 字段的口径在 UTS 登录后核实再用。
- PREDICATION 与 PREDICATION_AUX 行数差 14:130,480,195 对 130,480,181,官方原样数字,未见解释文字——按近似全集处理,不当作数据错误修复(坑 5)。→ 使用者影响:主表 LEFT JOIN AUX,不假设一一对应。
- 沙箱证据环境备注:官方工具页 curl 直抓失败(沙箱出网限制)、WebFetch 经 archive.org 代理限流——官方页内容经 WebSearch 三次命中且相互一致;核心数字(130,480,195/37,233,341 等)均有官方下载页、创刊/评估论文、第三方(Every Cure)三源互证。→ 使用者影响:本条目的数字可信度建立在三源互证上;UTS 登录后可进一步实抓核对(附录 O 待核项)。
§10 避坑清单:八个已踩过的坑
坑 1:2.7 亿不是 predications 数。 任务 brief 曾写「约 2.7 亿 predications」,与官方下载页实核 130,480,195 不符——2.7 亿接近 SENTENCE 表 263,160,520 的句子数量级。凡见「SemMedDB 有 2.7 亿谓词」的表述,按句子数口径误传处理,引用谓词一律 1.3 亿。
坑 2:VER43_R 是最终版,别写「持续更新」。 官方下载页明示 “This is the final update for the SemMedDB Database”,数据截止 2024-05-08;旧版 VER31/40/41/42 已删除。「持续更新」「最新文献覆盖」类表述都与官方口径相反。
坑 3:官方项目页已迁移。 /project/semmeddb 重定向至通用项目列表页;活跃入口是 /temp/SemRep_SemMedDB_SKR/ 路径。「temp」只是服务器目录名,不代表临时资源;老链接失效不是资源消失。
坑 4:license 别抄 biothings 旧 manifest。 其 “licence”: “CC BY 4.0” 是已修正的错误标注,正确口径为 UMLS Metathesaurus License+非商业。二手资料称 CC BY 4.0 的,源头大概率是这个 manifest。
坑 5:PREDICATION 与 PREDICATION_AUX 差 14 行不是数据损坏。 130,480,195 对 130,480,181——官方原样数字未见解释,工程上按 AUX 为主表近似全集处理,别试图「修复」。
坑 6:MySQL 与 CSV 体量不一致是格式差异。 ENTITY 46G(MySQL)对 48G(CSV)等——两种导出的编码与存储差异,行数口径一致,按你所用的加载路径取对应体量。
坑 7:GENERIC_CONCEPT 259 行语义未详注,别臆测。 它是 schema 3.0 新增表,官方未逐字说明用途;条目只存照行数与「与 NOVELTY 字段联动」的口径,不编造语义。
坑 8:版本链多口径,引用下游先对齐版本。 VER43_R(官方终版)、VER43_2022_R(biothings CSV 直链)、VER43_2023_R(PARMESAN)、43_2024R(biothings 更新口径)并存——跨版本的行数/口径差异不是矛盾,是版本不同;混表引用是最常见的翻车方式。
§11 总结
11.1 三句话总结
- SemMedDB 用全自动 SemRep 把 3723 万篇 MEDLINE 引文变成 1.3 亿条可溯源三元组——文献级知识图谱的原矿,规模与精度的权衡被官方数字明码标价(严格 F1=0.42、宽松 F1=0.52)。
- 六表结构以 PMID+CUI 双外键贯通「引文-句子-实体-谓词」四层,任何一行都能回到原句——可溯源性是它区别于黑盒知识图谱的核心资产。
- VER43_R 是官方声明的最终版:许可绑 UMLS(非商业+UTS 账号门槛),使用前先做谓词白名单+频率+修饰三层过滤(Every Cure 口径)——全量直用是唯一被明确劝退的用法。
11.2 适合谁
- 弱监督/远监督研究者:1.3 亿弱标签做预训练信号,配合偏差结构(§4.2)设计训练策略。
- 知识图谱工程团队:Translator 式底座建设,或为策划型知识库(disgenet/drugcentral 式)供原矿。
- 药物重定位团队:白名单谓词+频率过滤的假设生成(Every Cure 范本)。
- NLP 教学与教材作者:全自动抽取流水线取舍(anaphora 关闭、双口径存照)的一手工程案例。
- LLM 应用开发者:1.3 亿可溯源断言当检索增强证据库或幻觉对照底座(Q49)。
11.3 不适合谁
- 需要高精度金标准关系的团队:转 bc5cdr(415)/biored(457)——SemMedDB 的单行数据默认只有约一半完全正确。
- 商用产品直接接入:非商业限制在先(UMLS 口径),先过法务再动工。
- 需要 2024-05-08 之后文献覆盖的项目:版本静止是硬边界,别期待后续更新。
- 需要全文级细节挖掘的项目:语料是标题与摘要层(§3.6),正文里的细节不在覆盖范围。
11.4 30 秒决策卡
| 你的情况 | 行动 |
|---|---|
| 只想快速查几条关系 | 走 biothings API 镜像(注意 43_2024R 版本口径,坑 8) |
| 要全库分析/模型训练 | UTS 注册 → 下载 VER43_R → PostgreSQL/MySQL 入库 → 按 §8.2 四步过滤 |
| 要商用接入 | 先核对 UMLS 协议商用条款,必要时书面确认——数据层先按非商业设计 |
| 要训练/评测关系抽取器 | 用 bc5cdr(415)/biored(457) 金标准;SemMedDB 只当预训练/弱监督源 |
| 要引用 SemMedDB | 引创刊论文(Bioinformatics 2012)+ 引擎评估(BMC Bioinformatics 2020),注明版本号与谓词集合 |
| 要理解 CUI/语义类型 | 先读库内 umls(558) 条目再回来——概念体系是前置知识 |
| 要给团队做内训 | 按 Q59 四段排课,教材即本条目 |
11.5 一分钟电梯陈述
把整个条目压缩成一段可以在电梯里讲完的话:
SemMedDB 是 NLM 用自己的抽取系统 SemRep 把 3700 多万篇 MEDLINE 文献的标题和摘要逐句读了一遍,把读出来的生物医学断言存成了 1.3 亿条「谁-做了什么-对谁」的三元组,每条都能追溯回原文的那个句子。它是全自动的,所以没有人工标注那么准——官方评估严格口径 F1 是 0.42,意思是单条数据约一半不完全正确;但它免费、体量巨大、结构规整,下载只要注册一个 UTS 账号。正确用法不是全量当真值,而是挑关系类型(比如 TREATS)、按出现频率过滤、排除否定句之后再用——药物重定位组织 Every Cure 就是这么用的。要注意两件事:一是官方已经宣布 VER43_R 是最后一版,数据停在 2024 年 5 月;二是它的许可跟着 UMLS 走,非商业用途,商用要先过法务。一句话收尾:它是文献知识的露天矿——杂质不少,但谁都能挖,而且每块矿石都刻着出处的坐标。
FAQ(高频问答 60 问)
A. 基础认知
Q1:SemMedDB 是数据库还是知识图谱?
两者都是:物理形态是六张关系表(MySQL/CSV),逻辑形态是以谓词为边的文献级知识图谱。创刊论文自称 repository(仓库),SemRep 2020 论文称它为 literature-scale knowledge graph——数据库是它的身体,知识图谱是它的灵魂。
Q2:SemRep 和 SemMedDB 什么关系?
发动机与整车。SemRep 是 NLM 的语义谓词抽取系统(2020 主论文的系统主体),SemMedDB 是 SemRep 跑完整个 MEDLINE 后输出的数据库化快照。VER43_R 用的引擎是 SemRep 1.8 Regular——引擎评估(§4)直接适用于库的质量预期。
Q3:「predication」这个词到底指什么?
语义谓词:一句自然语言里「主语概念-谓词-宾语概念」的完整断言,如 Infection-CAUSES-Guillain-Barre Syndrome。它比「三元组」多了语言学出身——先有句子,再有断言。库里 PREDICATION 表每行一条,且保留回链句子的能力。
Q4:SemMedDB 的 S 和 semmedVER43_R 的 R 分别是什么?
S 指 Semantic(语义);R 指 SemRep 的 Regular 版本输出(区别于曾并行发布过的 anaphora 版年度库)。引用时版本号写全:semmedVER43_R。
Q5:谁在维护它?
NLM 的 Lister Hill 国家生物医学传播中心(LHNCBC)——SemRep 与 SemMedDB 都是它的内线项目。核心人物:Halil Kilicoglu(创刊论文、2.0 论文、SemRep 主论文一作,架构师)、Graciela Rosemblat(contradictions 研究)等;Marcelo Fiszman 出现在创刊论文作者栏。
Q6:它免费吗?
免费但不无门槛:下载需 UTS 账号(注册免费、需签 UMLS 许可协议),用途受非商业限制(2012 论文口径)。把它描述成「开放数据」是错的,描述成「收费数据」也是错的——准确说法是「免费+许可约束+账号门槛」。
Q7:它和 UMLS 是什么关系?
结构性依赖:概念(CUI)与语义类型全部来自 UMLS Metathesaurus 与 Semantic Network,没有 UMLS 它就是无锚点的字符串对。也因此许可与 UMLS 绑定(§5.3)——用库必须配对加载 UMLS。
Q8:最大的卖点一句话?
3700 万篇文献、每条断言可溯源到原句——目前公开世界里覆盖面最大的可 SQL 生物医学语义知识库。
Q9:最大的局限一句话?
全自动抽取没有人工标注兜底,严格口径 F1=0.42——单行数据默认约一半不完全正确,全量直用等于把噪声当知识。
Q10:它现在还活着吗?
数据层已收官(VER43_R 为官方声明最终版,2024-05-08 数据截止),生态层仍活跃(biothings 2025-05 还在更新镜像口径、Translator/Every Cure 持续使用)——「库不再长,用途还在长」。
B. 数据与获取
Q11:下载要几步?
三步:注册/登录 UTS 账号 → 到官方下载页(lhncbc.nlm.nih.gov/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html)→ 下载 MySQL 转储或 CSV.gz。旧入口 /project/semmeddb 已重定向(坑 3)。
Q12:六张表里最该先加载哪张?
PREDICATION(3.1G/3.2G)——主表最小、信息密度最高;再按需 JOIN CITATIONS(177M)与 SENTENCE(16G)。ENTITY 48G 级别,除非做实体级分析否则可后置;GENERIC_CONCEPT 259 行秒级加载但语义未详注(坑 7)。
Q13:CSV 和 MySQL 格式怎么选?
Linux 工程链选 CSV.gz(导入 PostgreSQL/ClickHouse 方便);MySQL 生态选转储直导。行数两格式一致(坑 6 的体量差异是格式编码所致,非数据差异)。
Q14:直接从 data.lhncbc.nlm.nih.gov 的 CSV 直链下载可行吗?
biothings 引用过此类直链(路径含 umls-restricted),但直链可用性随 NLM 服务器策略波动——工程主路径应走 UTS 门户,直链只作参考。
Q15:完整下载包清单哪里看?
官方下载页在 UTS 登录后披露完整包清单与单包体量——本条目成稿时(沙箱无法注册 UTS)按公开部分收录,完整清单列入待核(附录 O)。
Q16:VER43_R 能和哪些 UMLS 版本配对?
官方未在公开页明示逐版本配对表(老 2.0 库曾绑定 UMLS 2006AA+EntrezGene)。实操:下载时记录官方页对 VER43_R 的 UMLS 口径说明,用 UTS 登录后的文档确认;跨版本对比前先对齐概念体系版本。
Q17:旧版本还能下到吗?
官方渠道不能——VER31/40/41/42 已从下载页删除。个别第三方镜像(如 biothings 的历史 CSV)留有中间版本(2022_R/2023_R),但引用旧版本需注明来源与版本号(坑 8)。
Q18:商用要钱吗?
非商业用途限制在先(2012 论文口径)——商用前需核对 UMLS Metathesaurus License 的商用条款,必要时向 UTS/NLM 渠道书面确认。这不是钱的问题,是许可边界问题。
C. 质量与统计
Q19:F1=0.42 会不会太低,根本不能用?
取决于用法。当金标准用——不能用;当弱监督信号、证据线索、假设生成源——正是设计用途。1.3 亿行 × 半数正确率 ≈ 6500 万条正确断言,仍是人类史上最大的生物医学断言集合之一,关键是过滤(§8.2)。
Q20:严格匹配和宽松匹配差在哪?
判对标准不同:严格要求概念、论元方向、谓词全对;宽松放宽细节(如概念粒度、边界)。0.42→0.52 的提升说明大量输出「方向对细节歪」——当线索可以,当结论不行。
Q21:CDR 语料上 P=0.90 意味着 SemMedDB 很准吗?
不。那是化学-疾病窄域+低召回(R=0.24)的特定画像——少报但报得准。不能外推到全谓词(§4.5 守则 2)。
Q22:最大的错误来源是什么?
NER/概念归一化(26.9%)——把词映射到 UMLS 概念是结构性难点。对策是按语义类型对组合粗筛,避开 NER 弱区。
Q23:怎么把 1.3 亿行快速变干净?
§8.2 四步过滤:谓词白名单 → 频率过滤 → NEGATION/UNCERTAIN 修饰过滤 → 人工语料抽样校准。前三步纯 SQL 可完成,能砍掉大部分显性噪声。
Q24:NEGATION_FLAG 为什么必须过滤?
文献里否定句常见(「X 无显著差异」「X 不导致 Y」)——不过滤就把反证当正据,是文献级知识图谱最经典的系统性错误。这是零成本过滤,没有任何理由跳过。
Q25:anaphora 关闭对我有什么实际影响?
指称(「该药物」「this compound」)不被归并到具体概念——涉及指称的断言要么无法成行(缺概念锚点),要么按表面形式落行。做跨句聚合、实体级统计时要算上这层噪声(§3.4)。
Q26:PREDICATION 和 PREDICATION_AUX 行数为什么差 14?
官方原样数字,未见解释。按「AUX 为主表近似全集」处理,JOIN 时用左连接防丢行——别当数据损坏去修(坑 5)。
Q27:能拿 SemMedDB 当评测基准吗?
不能——它无自带基准与 leaderboard。评测你的关系抽取器用 bc5cdr(415)/biored(457);拿噪声源当金标准,评出来的数字没有解释力(§4.4)。
D. 下游与生态
Q28:NCATS Translator 怎么用它?
Translator 把 SemMedDB 作为文献级知识来源之一整合进 NIH 知识图谱计划(官方 wiki 专页在案)。对普通用户的意义:联邦级计划的采用是选型时最有力的先例背书。
Q29:Every Cure 的「白名单+频率过滤」具体怎么做?
其使用建议原文:“only use curated subsets (e.g., TREATS, INHIBITS) and filter by frequency/confidence”。落地:建谓词白名单(TREATS/INHIBITS 等方向性强的关系族起家)→ 按(主宾概念对+谓词)分组计数 → 设频率阈值 → AUX 修饰过滤。
Q30:biothings 镜像和官方库什么关系?
BioThings API 化镜像:六表转 API 服务,2025-05-07 更新至 43_2024R 口径(注意非官方终版号 VER43_R,坑 8);其 manifest 的 license 字段曾错标 CC BY 4.0 后修正(坑 4)。轻查询用它,重工程回官方。
Q31:PARMESAN 拿它做什么?
基于 semmedVER43_2023_R 的 PREDICATION CSV 生成提示语料(PARMESAN_SemMedDB)——把谓词句子对喂给大模型做关系抽取的上下文学习素材。这是 SemMedDB 在 LLM 时代的典型再利用。
Q32:弱监督研究怎么处理 SemRep 的偏差?
先测偏差再用信号:biorxiv 2025 的 cell-cell 关系抽取用例指出 SemRep 存在谓词选择偏差(某些关系族被系统性高/低估)。正确姿势是把偏差结构建模进训练策略(加权、去偏),而不是假装信号无偏。
Q33:SemMedDB 和 DisGenet/DrugCentral 重复吗?
不重复、是供应链上下游(§6.6):SemMedDB 是未策划原矿(1.3 亿谓词、无审核),DisGenet(449)/DrugCentral(344) 是策划精炼层(关系分级、专家审核)。原矿供规模,精炼层供置信度。
Q34:有商业化实体吗?
没有——NLM 官方项目,免费+许可约束。所有下游商业化(Translator 计划、Every Cure、biothings)都是在许可框架内的消费方,不是 SemMedDB 本身的商业化。
E. 生产与库内
Q35:本条目为什么 slug 是 semmeddb?
官方名即 SemMedDB,slug 取小写。查重结论:库内 url_name 无 semmed/semrep/medline 命中、writing/ 目录 733 个无同名——无冲突。
Q36:本条目与 umls(rid 558)条目什么关系?
上游与概念体系前置阅读:SemMedDB 的 CUI 与语义类型全部来自 UMLS,license 同源。读懂 umls 条目是读懂本条目 §2.5/§5.3 的前提。
Q37:本条目与 bc5cdr(rid 415)/biored(rid 457)什么关系?
关系抽取光谱两端:bc5cdr/biored 是人工标注金标准(数百篇、高精度),SemMedDB 是全自动原矿(3723 万篇、F1=0.42)。两者互为校准工具——金标准给原矿做抽样质检,原矿给金标准供规模外推。
Q38:brief 里的 2.7 亿怎么处理了?
存照为句子数口径误传:130,480,195(谓词)才是 PREDICATION 表行数,263,160,520(句子)才是 2.7 亿量级的来源(坑 1)。条目全篇按实核 1.3 亿成稿,§9.1 双口径登记表存档。
Q39:条目抓取时点的证据环境有什么限制?
沙箱 curl 直抓官方工具页失败(出网限制)、WebFetch 经 archive.org 代理限流——官方页内容经 WebSearch 三轮命中且一致;核心数字均有官方下载页、论文、第三方(Every Cure)三源互证。完整下载包清单需 UTS 登录,列入待核(附录 O)。
F. 工程与复现
Q40:入库 PostgreSQL 的推荐路径?
CSV.gz → COPY 直导(PREDICATION 3.2G 最先)→ 建 PMID/SENTENCE_ID 索引 → 按需挂 CITATIONS/SENTENCE。ENTITY 48G 后置,GENERIC_CONCEPT 一并导入。AUX 用左连接挂修饰。
Q41:一条可疑三元组怎么溯源?
PREDICATION 行取 PMID + SENTENCE_ID → JOIN SENTENCE 取原句 → PMID 回 PubMed 原文核对。双外键体系保证任何一行都能回到出生地——这是抽检质检的标准动线。
Q42:跨版本对比(如 2022_R vs 43_R)注意什么?
三件事:版本号口径(坑 8)、概念体系版本(UMLS 演进)、schema 世代(3.0 前后表结构不同,老代码直接报错)。对比结论必须绑定版本号表述。
Q43:想复现一条「过滤后的 TREATS 高频子集」要多久?
纯 SQL 一天内可完成:谓词=TREATS → NEGATION_FLAG=0 →(按需)UNCERTAIN_FLAG=0 → 按概念对聚合计数 → 阈值截断。第 4 步(人工校准)另计——用 bc5cdr 的化学-疾病子集或自标 100 条。
Q44:如果只记住一件事?
每一行都只有约一半概率完全正确,但每一行都能溯源到原句——用过滤兑现规模,用溯源兑现透明,用许可合规兑现可持续。
G. 进阶与辨析
Q45:SUBJECT_NOVELTY/OBJECT_NOVELTY 字段是干什么的?
schema 3.0 起新增的主/宾语新颖性标记,与 GENERIC_CONCEPT 表联动(依赖 GENERIC_CONCEPT 时置 0/1)。它给「这个概念是否以通用形式出现」提供了一个过滤维度——但 GENERIC_CONCEPT 本身语义未详注(坑 7),用前先在 UTS 登录后的文档里核实口径。
Q46:为什么 SemMedDB 不提供图数据库导出(Neo4j 之类)?
NLM 的产品形态是关系表(MySQL/CSV)——知识图谱是它的逻辑形态,不是交付格式。想要图视图:自行从 PREDICATION 表导(主宾概念为节点、谓词为边,一条 SQL 的事),或用 biothings API 拉取。社区没有官方 Neo4j 版本,见到第三方导出版先核版本口径(坑 8)。
Q47:CITATIONS 表既然只有题录,为什么还要单独一张?
它是溯源动线的起点与规模口径的锚:37,233,341 行定义了「库覆盖多少文献」;PMID 外键把谓词层接回 PubMed 原文。没有它,PREDICATION 就是无根的三元组——177M 的体量换来整个库的可回溯性,性价比极高。
Q48:频率过滤的阈值怎么定?
没有官方推荐值——按用例的精度/覆盖权衡自定。实操:对「概念对+谓词」分组计数后看分布(通常长尾),取能保留目标谓词集合 30-70% 行数的阈值作起点,再用 bc5cdr 等人工语料抽检校准(附录 E 第 5 步)。报告时必须写明阈值——不同阈值下的子集不可比。
Q49:LLM 时代 SemMedDB 还有价值吗?
价值反而上升:一是当远监督信号源训练/评测 LLM 的关系抽取(PARMESAN 已示范谓词句子对喂大模型);二是当 LLM 幻觉的对照底座——1.3 亿条可溯源断言是现成的「引用检查器」素材;三是当检索增强(RAG)的文献证据索引。它的问题是老(截止 2024-05-08)与噪(F1=0.42),不是过时。
Q50:SemMedDB 和「Semantic MEDLINE」是一个东西吗?
官方全称就是 Semantic MEDLINE Database,缩写 SemMedDB——是同一个东西。但泛搜「Semantic MEDLINE」会混入语义检索类无关工作,检索时用「SemMedDB」精确短语(§7.2)。二手资料里「Semantic MEDLINE 项目」有时指整个 SemRep/SemMedDB 工程群——读上下文分辨。
Q51:为什么谓词只有 30 种,会不会太少?
封闭集是设计而非缺陷:谓词集对应 UMLS Semantic Network 的关系定义,覆盖治疗/病因/抑制/相互作用等主干部位。少而稳的谓词集让 1.3 亿行有了统一语义、可枚举可过滤——这正是白名单实践可行的前提。开放域关系的抽取不是它的目标(那是开放信息抽取社区的领地)。
Q52:SENTENCE 表 263M 行太大了,能只加载一部分吗?
能——SENTENCE 只在溯源时需要。按需加载策略:先入库 PREDICATION+AUX+CITATIONS(最小可用集,~8G);跑过滤流水线时不 JOIN SENTENCE;只在抽样质检/溯源抽检时按 SENTENCE_ID 范围导入对应分片。ENTITY 同理(48G,仅实体级分析才需要)。
Q53:怎么判断下游论文用的是哪个库版本?
三条线索:一看数据文件名(含 VER43_2022_R/2023_R 等版本号的直接判定);二看行数(拿 §2.2 六表行数对号入座,行数对不上就是别的版本);三看引用(注 2012 论文未必说明版本——最终以文件名/行数为准)。都对不上时按「未知版本」处理,不要默认它是 VER43_R(坑 8)。
Q54:本条目和 disgenet(449)/drugcentral(344) 条目先读哪个?
先读本条目(原矿层),再读策划层——供应链从上游读下来最顺:SemMedDB 展示「文献怎么变成结构化断言」,disgenet/drugcentral 展示「断言怎么变成有置信度分级的知识」。反向读也可以(先看精炼产品再回溯原矿),但会错过「策划成本为什么这么高」的规模背景。
H. 对照与延伸
Q55:SemMedDB 能用来做命名实体识别训练吗?
间接可以:ENTITY 表的 1,982,424,585 个实体提及是天然的弱标注实体库(提及→CUI 对应)。但要注意两点:一是它出自同一个 SemRep 流水线,NER 层错误(占 26.9%)会内嵌其中——不适合当 NER 金标准;二是正经的 NER 训练/评测用 bc2gm(434)/ncbi-disease(425) 这类人工语料,SemMedDB 只当预训练与规模扩展源。
Q56:SemMedDB 和 MedlinePlus、PubMed Central 是什么关系?
都属 NLM 但分工不同:PubMed/MEDLINE 存引文(文章级)、PMC 存全文、MedlinePlus 面向大众健康科普;SemMedDB 存从 MEDLINE 引文标题与摘要里抽出的语义断言(断言级)——它是最「机器可算」的那一层。四者经 PMID 等标识符互通。
Q57:为什么不直接用 LLM 抽三元组,还要用 2012 年的 SemRep?
成本与可复现性:LLM 抽 3723 万篇的成本是天文数字且输出不可复现;SemRep 是规则+词典的确定性流水线,边际成本近零、同样输入永远同样输出——对 1.3 亿行的工业生产,确定性压倒一切。LLM 时代的正确姿势是把 SemMedDB 当评测底座/弱监督源(Q49),而不是推倒重来。
Q58:库内同类条目里,谁和 SemMedDB 的「全自动+规模」路线最像?
没有完全同型的——这正是它「库内第一个纯文献级知识图谱条目」的原因。最接近的形态对照:disgenet(449)/drugcentral(344)(文献挖掘但经策划)、bc5cdr(415)/biored(457)(关系抽取但人工标注)——SemMedDB 独占「全自动+文献级」象限,其他条目各占一端。
Q59:想给团队做一次 SemMedDB 内训,怎么排课?
半日课的四段排法:① 一小时讲定位与量级坐标系(§0/§2.8/坑 1);② 一小时讲流水线与质量(§3/§4,重点 F1=0.42 的含义与错误分解);③ 一小时动手:UTS 注册+CSV 入库+跑 §8.2 四步过滤(附录 C/E 配合);④ 半小时讲许可与坑(§5/§10)。教材直接用本条目——它就是按可教学结构写的。
Q60:这条目一年后最可能过时的是哪一段?
两处:一是 biothings 口径(43_2024R)可能再变——镜像层活跃(附录 I 触发点 3);二是 biorxiv 2025 之后的弱监督用例会持续累积——生态层仍在生长(§6.7 剪刀差)。相对最不会过时的是核心硬数字(六表行数/评估数字/许可链)——它们属于已收官的 VER43_R,官方不会再改。
事实清单(硬事实 43 条)
- SemMedDB 全称 Semantic MEDLINE Database,维护方为 NLM Lister Hill 国家生物医学传播中心(LHNCBC)。
- 创刊论文:Kilicoglu H, Fiszman M, Powell A, et al. SemMedDB: a PubMed-scale repository of biomedical semantic predications. Bioinformatics 2012;28(23):3158-3160;doi 10.1093/bioinformatics/bts591;PMID 23044550;PMCID PMC3509487。
- 创刊论文 Data availability 口径:以 MySQL 数据库形式对 non-commercial use 开放,需 UMLS Metathesaurus license。
- SemMedDB 2.0 / sortal anaphora 论文:BMC Bioinformatics 2016;17:163;doi 10.1186/s12859-016-1009-6;PMID 27080229。
- SemRep 主论文:BMC Bioinformatics 2020;21:188;doi 10.1186/s12859-020-3517-7;原文明言 “It also underpins SemMedDB, a literature-scale knowledge graph”。
- 方法链补充:factuality(Kilicoglu 2017,PLoS One,PMID 28678823);contradictions(Rosemblat 2019,PMID 31473364);修饰扩展(Ming/Zhang/Kilicoglu 2024,J Biomed Inform,PMID 38782169)。
- 最终版 semmedVER43_R:MEDLINE BASELINE 2022 + PubMed Update Files through May 8, 2024;引擎 SemRep 1.8 Regular。
- 官方下载页明示 “This is the final update for the SemMedDB Database”——VER43_R 为最终版,此后停止更新。
- 旧版本 VER31/40/41/42 已从官网下载页删除,直链失效。
- 规模:37,233,341 citations;130,480,195 predications。
- 六表行数/体量(官方下载页口径):CITATIONS 37,233,341 行/177M;SENTENCE 263,160,520 行/16G;ENTITY 1,982,424,585 行/46G(MySQL)/48G(CSV);PREDICATION 130,480,195 行/3.1G(MySQL)/3.2G(CSV);PREDICATION_AUX 130,480,181 行/4.0G(MySQL)/4.2G(CSV);GENERIC_CONCEPT 259 行。
- 平均比例:每篇引文约 7.1 句、约 53 实体提及、约 3.5 条谓词。
- PREDICATION 与 PREDICATION_AUX 行数差 14 行(130,480,195 vs 130,480,181)——官方原样数字未见解释。
- MySQL 与 CSV 双格式行数一致、体量不一致(如 ENTITY 46G vs 48G)——格式编码差异。
- 语义谓词 30 种(TREATS/DIAGNOSES/CAUSES/INHIBITS/INTERACTS_WITH/PROCESS_OF 等为实核示例)。
- 主宾语义类型来自 UMLS Semantic Network(2020 版 127+ 语义类型),如 Pharmacologic Substance、Disease or Syndrome。
- 论文示例三元组:Infection-CAUSES-Guillain-Barre Syndrome。
- PREDICATION 含 SUBJECT_NOVELTY/OBJECT_NOVELTY 字段(schema 3.0 起,与 GENERIC_CONCEPT 联动)。
- PREDICATION_AUX 提供 NEGATION_FLAG(否定)与 UNCERTAIN_FLAG(不确定性)修饰标记。
- 正式库 anaphora feature turned off(指代消解关闭);官方不再发布 anaphora 版年度库。
- anaphora 2016 评估:320 篇摘要测试集 F1=59.6;影响当时约 82M 关系中的约 1.5%;约 50% 无信息关系被替换/35% 无影响/15% 负面。
- schema 3.0 重构:删除 CONCEPT/CONCEPT_SEMTYPE/PREDICATION_ARGUMENT/SENTENCE_PREDICATION 四表,新增 GENERIC_CONCEPT。
- 老 2.0 表结构文档存于 dbinfo20.html(UMLS 2006AA 概念 + EntrezGene 口径)。
- SemRep 2020 评估:严格匹配 P=0.55/R=0.34/F1=0.42;宽松匹配 P=0.69/R=0.42/F1=0.52。
- CDR 语料评估:P=0.90/R=0.24/F1=0.38;句界口径 R=0.35/F1=0.50。
- 错误来源分解:NER/归一化 26.9%、论元识别 14%、触发词识别 12.5%。
- Every Cure 旁证口径一致:“over 130 million semantic predications…more than 37 million PubMed citations”。
- Every Cure 使用建议原文:“only use curated subsets (e.g., TREATS, INHIBITS) and filter by frequency/confidence”。
- 下载门槛:UTS 账号登录(官方页明示);格式为 MySQL 转储 + CSV.gz。
- 活跃下载页:https://lhncbc.nlm.nih.gov/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html。
- biothings 引用的 CSV 直链形如 data.lhncbc.nlm.nih.gov/umls-restricted/ii/tools/SemRep_SemMedDB_SKR/semmedVER43_2022_R_PREDICATION.csv.gz——路径含 umls-restricted,仍受 UMLS 许可约束。
- 官方项目页 /project/semmeddb 重定向至通用列表页;活跃入口在 /temp/SemRep_SemMedDB_SKR/ 路径下。
- biothings/semmeddb manifest 曾标 CC BY 4.0,后经 PR#8/#9 修正为 UMLS Metathesaurus License。
- biothings/semmeddb 2025-05-07 更新至 43_2024R 口径。
- PARMESAN_SemMedDB 基于 semmedVER43_2023_R_PREDICATION.116080.csv.gz 生成提示语料。
- NCATS Translator 官方 wiki:github.com/NCATSTranslator/Translator-All/wiki/SemMedDB。
- KG Registry 收录:w3id.org/information-resource-registry/semmeddb。
- SemMedDB 无自带基准/leaderboard;biorxiv 2025 cell-cell 关系抽取用例将其作弱监督源并指出 SemRep 谓词选择偏差。
- 版本链:VER30+(schema 3.0 重构)→ VER43_2022_R → VER43_2023_R(PARMESAN 口径)→ VER43_R(终版)。
- GENERIC_CONCEPT 仅 259 行,确切语义官方未详注——推测为 schema 3.0 通用概念/语义类型层。
- UTS 账号注册流程是否要求机构信息、完整下载包清单与单包体量——需 UTS 登录后核实(沙箱无法注册,列入待核)。
- 查重与锁存照:库内 url_name 查询 semmed/semrep/medline 均 0 行命中;writing/ 733 目录无同名;.lock 由 agent-c-semmeddb 持有(2026-10-04T05:02)。
- 语义谓词为 30 种封闭集,对应 UMLS Semantic Network 的关系定义——封闭集是谓词白名单实践可行的前提(Q51)。
术语表(46 条)
| 术语 | 释义 |
|---|---|
| SemMedDB | Semantic MEDLINE Database——NLM 的文献级语义谓词数据库 |
| SemRep | NLM 的语义谓词抽取系统,SemMedDB 的生成引擎(VER43_R 用 1.8 Regular) |
| 语义谓词(semantic predication) | 「主语概念-谓词-宾语概念」形式的断言,库里 PREDICATION 表每行一条 |
| 三元组(triple) | 主-谓-宾结构的知识表示,知识图谱的原子单位 |
| UMLS | Unified Medical Language System,NLM 的统一医学语言系统(概念体系+词典+语义网络) |
| Metathesaurus | UMLS 的概念库——SemMedDB 主宾概念的来源,license 绑定源头 |
| Semantic Network | UMLS 的语义类型体系(2020 版 127+ 类型),如 Disease or Syndrome |
| CUI | Concept Unique Identifier,UMLS 概念的唯一标识——库内归一化的锚点 |
| 语义类型(semantic type) | 概念的类别标签(如 Pharmacologic Substance),粗筛过滤的第一维度 |
| 谓词(predicate) | 30 种封闭关系集之一(TREATS/CAUSES/INHIBITS 等),PREDICATE 字段取值 |
| MEDLINE | NLM 的文献引文数据库,SemMedDB 的全部语料来源 |
| PubMed | MEDLINE 的免费检索界面;引文以 PMID 标识 |
| PMID | PubMed 唯一标识号——PREDICATION 回链引文层的外键 |
| LHNCBC | Lister Hill 国家生物医学传播中心,NLM 内部研发机构,SemMedDB 维护方 |
| UTS | Unified Medical Language System 的注册系统——下载 SemMedDB 的账号门槛 |
| NER | 命名实体识别——SemRep 流水线第一环节,也是最大错误来源(26.9%) |
| 概念归一化(concept normalization) | 把文本实体映射到 UMLS 概念(CUI)的过程 |
| 否定标记(NEGATION_FLAG) | PREDICATION_AUX 字段:该断言在原句中被否定 |
| 不确定性标记(UNCERTAIN_FLAG) | PREDICATION_AUX 字段:该断言在原句中带不确定语气 |
| factuality | 事实性维度——把修饰细化为多层的研究线(Kilicoglu 2017),未并入正式库 |
| anaphora | 指代消解——2016 引入实验、正式库关闭的功能 |
| sortal anaphora | 「该药物」一类带类别限制的指称,anaphora 版处理的对象 |
| schema 3.0 | 表结构重构世代:删四表、加 GENERIC_CONCEPT,VER30+ 起 |
| GENERIC_CONCEPT | schema 3.0 新增表(259 行),确切语义官方未详注 |
| distance supervision / 远监督 | 用知识库自动对齐文本生成训练标签的方法——SemMedDB 的典型用法 |
| 弱监督(weak supervision) | 用噪声标签源训练模型——1.3 亿行的正确打开方式 |
| literature-based discovery | 文献间发现——Swanson 式的跨文献假设生成,SemMedDB 的设计用途之一 |
| curated subset | 品质子集——按谓词白名单等规则过滤后的高置信子集(Every Cure 口径) |
| NCATS Translator | NIH 国家转化科学促进中心的知识图谱计划,SemMedDB 的下游消费者 |
| Every Cure | 药物重定位非营利计划,给出最清晰的 SemMedDB 使用策略声明 |
| biothings | BioThings API 框架的 SemMedDB 镜像(2025-05 更新至 43_2024R 口径) |
| KG Registry | 知识图谱登记服务,收录 w3id.org/information-resource-registry/semmeddb |
| schema(表结构世代) | SemMedDB 库结构的版本分界:2.0 结构(老四表)vs 3.0 结构(现六表) |
| 快照(snapshot) | 年度 BASELINE+增量包的分发形态——「数据不再变化」的工程契约 |
| 置信度代理(confidence proxy) | 用出现频率等间接信号估计可靠性——频率过滤的统计学基础 |
| 长尾分布 | 「概念对+谓词」计数分布的形态——阈值过滤所以要看的对象 |
| 白名单(whitelist) | 预先批准的谓词集合——弱标签过滤的第一道闸 |
| 证据句(evidence sentence) | 三元组的原文出处句——SENTENCE_ID 指向的对象 |
| knowledge cutoff | 数据覆盖的时间终点(本库为 2024-05-08) |
| 远监督(distant supervision) | 用知识库自动对齐文本生成训练标签——与近监督(人工标注)相对 |
| 实体提及(entity mention) | 文本中实体的每一次具体出现——ENTITY 表的基本单位 |
| 触发词(trigger word) | 句中触发谓词判定的核心词——12.5% 错误来源对应环节 |
| 论元(argument) | 谓词的主语/宾语角色——14% 错误来源对应环节 |
| 开放信息抽取(Open IE) | 不预设关系集的抽取范式——与 SemMedDB 的 30 种封闭谓词集相对 |
| Update Files | MEDLINE 基线之间的增量引文包——VER43_R 追加至 2024-05-08 的增量层 |
附录
附录 A:条目信息速查卡
| 项 | 值 |
|---|---|
| 条目名 | SemMedDB |
| url_name | semmeddb |
| 类型 | 文献级语义知识图谱(数据库形态) |
| 维护方 | NLM LHNCBC |
| 论文 | Bioinformatics 2012;28(23):3158-3160(创刊)+ BMC Bioinformatics 2016;17:163(2.0)+ 2020;21:188(SemRep 评估) |
| 规模 | 37,233,341 引文 / 130,480,195 predications(semmedVER43_R) |
| 版本状态 | VER43_R 为官方声明最终版(数据截止 2024-05-08) |
| 许可 | UMLS Metathesaurus License + 非商业(UTS 账号下载) |
| 抓取时点 | 2026-10-04 |
| 库内互链 | umls(558)/snomed-ct(557)/meddra(579)/bc5cdr(415)/biored(457)/bc2gm(434)/ncbi-disease(425)/chemprot(753)/drugprot(827)/ddi(171)/pharmaconer(504)/pubmedqa(49)/mednli(648)/biosses(750)/disgenet(449)/drugcentral(344) |
附录 B:逐项证据链自证
| 关键数字/事实 | 来源 | 位置 |
|---|---|---|
| 130,480,195 predications / 37,233,341 citations | 官方下载页逐表披露 | SemMedDB_download.html |
| 六表行数与 MySQL/CSV 体量 | 官方下载页 | 同上 |
| SemRep 1.8 Regular + 语料口径(BASELINE 2022 + updates through 2024-05-08) | 官方下载页 | 同上 |
| “This is the final update” 声明 | 官方下载页 | 同上 |
| 严格 P=0.55/R=0.34/F1=0.42;宽松 P=0.69/R=0.42/F1=0.52 | SemRep 2020 论文 | BMC Bioinformatics 21:188 |
| CDR P=0.90/R=0.24/F1=0.38;句界 R=0.35/F1=0.50 | SemRep 2020 论文 | 同上 |
| 错误来源 26.9%/14%/12.5% | SemRep 2020 论文 | 同上 |
| anaphora F1=59.6/320 摘要/1.5%/50-35-15 | SemMedDB 2.0 论文 | BMC Bioinformatics 17:163 |
| non-commercial + UMLS license 要求 | 创刊论文 | Bioinformatics 28(23):3158-3160 |
| anaphora turned off(正式库) | 官方下载页说明 | SemMedDB_download.html |
| UTS 账号门槛 | 官方下载页 | 同上 |
| biothings 43_2024R 口径 + license 修正史(PR#8/#9) | biothings/semmeddb GitHub 仓 | manifest 与 PR 记录 |
| PARMESAN 用的 2023_R CSV 分片 | PARMESAN 仓库 | 数据文件名 |
| Every Cure 130M/37M 旁证+使用建议 | Every Cure 文档 | 第三方互证 |
附录 C:数据获取决策树
需求是什么?
├── 快速查几条关系 / 原型验证
│ └── biothings API 镜像(注意 43_2024R 版本口径,坑 8)
├── 全库分析 / 模型训练
│ ├── 1) UTS 注册+签署 UMLS 许可
│ ├── 2) 官方下载页下 VER43_R(先 PREDICATION 3.2G,后按需挂表)
│ ├── 3) CSV.gz → PostgreSQL COPY / MySQL 转储直导
│ └── 4) §8.2 四步过滤后再消费
├── 高精度金标准关系
│ └── 不用本库 → bc5cdr(415) / biored(457)
├── 商用接入
│ └── 先核对 UMLS Metathesaurus License 商用条款(非商业限制在先)
└── 概念体系本身
└── umls(558) 条目 + UTS 配套下载
附录 D:六表数据字典(官方口径+示意)
| 表 | 关键内容 | 行数 | 消费建议 |
|---|---|---|---|
| CITATIONS | 引文层(PMID/题录) | 37,233,341 | JOIN 锚点,轻量 |
| SENTENCE | 句子层 | 263,160,520 | 溯源用(16G,按需加载) |
| ENTITY | 实体提及层 | 1,982,424,585 | 实体级分析才加载(48G) |
| PREDICATION | 语义谓词主表 | 130,480,195 | 首选加载;含 NOVELTY 字段 |
| PREDICATION_AUX | 修饰扩展 | 130,480,181 | NEGATION/UNCERTAIN 过滤必挂;行数差 14 按近似全集处理(坑 5) |
| GENERIC_CONCEPT | schema 3.0 新增 | 259 | 秒级加载;语义未详注(坑 7),勿臆测 |
精确列名以 UTS 登录后的库结构文档为准;本条目实核字段为 SUBJECT_NOVELTY/OBJECT_NOVELTY/NEGATION_FLAG/UNCERTAIN_FLAG。
附录 E:谓词白名单构建指引
SemMedDB 的谓词是 30 种封闭集,本条目仅收录 FACTS 实核的六个示例(TREATS/DIAGNOSES/CAUSES/INHIBITS/INTERACTS_WITH/PROCESS_OF),不凭记忆罗列全表。构建白名单的可执行流程:
- 拿全表:UTS 登录后从官方文档或 VER43_R 库内
SELECT DISTINCT PREDICATE FROM PREDICATION(示意)取全部 30 个取值——以库内实际为准,不靠二手清单。 - 按用例分组:治疗/药理类(TREATS/INHIBITS/INTERACTS_WITH 型)、病因/风险类(CAUSES 型)、诊断类(DIAGNOSES 型)、过程/其他。
- 先收方向性强的:TREATS、INHIBITS 这类主宾角色固定的关系族噪声低(Every Cure 起手式);主宾可互换的关系族(如 INTERACTS_WITH)单独标记、宽容使用。
- 按语义类型对加约束:谓词×主宾语义类型对的二维过滤(如 TREATS 且宾语为 Disease or Syndrome),比单维谓词过滤更精细。
- 抽样校准:对每个入选谓词抽 50-100 条人工判读,估算用例内精度——把 §4 的全局 F1 换成你自己的谓词级数字。
附录 F:许可条款细读
- 数据本体:UMLS Metathesaurus License——随 UTS 账号签署的 UMLS 术语许可覆盖;非商业用途限制来自创刊论文声明(“available as a MySQL database for non-commercial use”)。
- 概念体系:UMLS Metathesaurus 本身的许可条款另行适用——用 CUI 就在 UMLS 许可的射程内。
- CSV 直链:路径含 umls-restricted 即许可属性的明示;直链可用性不作工程依赖。
- 派生物:从 SemMedDB 派生的三元组集合继承 UMLS 许可属性——再分发派生库不能自选宽松许可(CC BY 4.0 之类标注属 biothings 旧 manifest 式错误,坑 4)。
- 论文:各期刊版权分别适用(Bioinformatics/BMC Bioinformatics),引用观点引论文、用数据循数据许可。
附录 G:坑点档案对照表
| 坑 | 一句话档案 | 触发场景 |
|---|---|---|
| 坑 1 | 2.7 亿是句子数量级,谓词实核 130,480,195 | 规模引用 |
| 坑 2 | VER43_R 为官方声明最终版,非持续更新 | 版本描述 |
| 坑 3 | /project/semmeddb 重定向,活跃入口在 /temp/ 路径 | 链接检索 |
| 坑 4 | biothings 旧 manifest 的 CC BY 4.0 是错误标注 | 许可引用 |
| 坑 5 | PREDICATION 与 AUX 差 14 行,非数据损坏 | 入库质检 |
| 坑 6 | MySQL 与 CSV 体量不一致是格式差异 | 存储规划 |
| 坑 7 | GENERIC_CONCEPT 259 行语义未详注 | 表结构理解 |
| 坑 8 | 版本链多口径(43_R/2022_R/2023_R/43_2024R),混表是高频翻车点 | 下游引用 |
附录 H:检索决策树
你想找什么?
├── SemMedDB 本体/下载
│ └── 官方下载页(/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html)+ UTS 登录
├── 抽取系统的评估数字
│ └── SemRep 2020 论文(BMC Bioinformatics 21:188,doi 10.1186/s12859-020-3517-7)
├── 库的历史与结构演进
│ └── 创刊论文(2012)+ 2.0 论文(2016)+ dbinfo20.html(老结构考古)
├── 轻量 API 查询
│ └── biothings/semmeddb(注意版本口径与 license 修正史)
├── 下游使用范本
│ └── Every Cure 使用建议 / NCATS Translator wiki / PARMESAN
└── 高精度关系金标准
└── 库内 bc5cdr(415)/biored(457)——不用 SemMedDB 评金标准任务
附录 I:维护计划与触发点
| 触发点 | 条件 | 动作 | 优先级 |
|---|---|---|---|
| 官方口径变化 | NLM 页面撤下 final update 声明或发布新版本 | 改写 §2.1/§5.2/坑 2,重评 S 维度 | 1 |
| UTS 注册流程确认 | 取得 UTS 账号后实抓下载包清单 | 补 §5.1/§9.2 待核项、附录 D 列名 | 2 |
| biothings 口径变化 | 镜像更新版本或 license 字段再变 | 更新 §6.4 与坑 8 | 3 |
| 下游大规模采用 | Translator/Every Cure 发布新评估或指南 | §6.2/§6.3 追记 | 4 |
| GENERIC_CONCEPT 语义澄清 | UTS 登录后库结构文档明确其用途 | 解除坑 7 存照 | 5 |
附录 J:引文规范
@article{kilicoglu2012semmeddb,
title = {SemMedDB: a PubMed-scale repository of biomedical semantic predications},
author = {Kilicoglu, Halil and Fiszman, Marcelo and Powell, A. and others},
journal = {Bioinformatics},
volume = {28},
number = {23},
pages = {3158--3160},
year = {2012},
doi = {10.1093/bioinformatics/bts591}
}
@article{kilicoglu2016semmeddb2,
title = {SemMedDB 2.0 (sortal anaphora processing)},
author = {Kilicoglu, Halil and others},
journal = {BMC Bioinformatics},
volume = {17},
pages = {163},
year = {2016},
doi = {10.1186/s12859-016-1009-6}
}
@article{kilicoglu2020semrep,
title = {Overview of BioMed (SemRep system evaluation)},
author = {Kilicoglu, Halil and others},
journal = {BMC Bioinformatics},
volume = {21},
pages = {188},
year = {2020},
doi = {10.1186/s12859-020-3517-7}
}
注:2016/2020 两篇的完整作者列表以期刊页为准(本条目 FACTS 只实核到一作与 et al. 层级);2012 论文作者按 FACTS 收录 Kilicoglu/Fiszman/Powell 及后续作者。数据引用同时注明库版本号 semmedVER43_R 与数据截止日 2024-05-08。
附录 K:FAIR/AI-Ready 检查单
| 检查项 | 状态 | 说明 |
|---|---|---|
| F1 全局唯一标识 | ✅ | 官方项目名+DOI(论文)+KG Registry 收录 |
| F2 富元数据 | ✅ | 官方下载页逐表行数/体量+三篇论文 |
| A1 可访问协议 | ⚠️ | 免费但需 UTS 账号+签许可;非商业限制 |
| A2 元数据可访问 | ✅ | 下载页公开层(行数/体量/版本声明)无需登录 |
| I1 互操作格式 | ✅ | MySQL/CSV 标准格式;PMID/CUI 双外键 |
| I2 词汇表引用 | ✅ | UMLS Metathesaurus+Semantic Network 即其词汇体系 |
| R1 来源溯源 | ✅ | PMID+SENTENCE_ID 回链原句——溯源能力为库的核心资产 |
| R3 可复现流程 | ✅ | SemRep 1.8 Regular+语料快照日期明确 |
| AI-Ready 综合 | 中 | 结构与溯源优;许可门槛+精度折扣+版本静止三重压制(DAIMS 5.8/10) |
附录 L:缩写速查
| 缩写 | 全称 |
|---|---|
| SemMedDB | Semantic MEDLINE Database |
| SemRep | Semantic Representation(NLM 语义谓词抽取系统) |
| NLM | National Library of Medicine(美国国家医学图书馆) |
| LHNCBC | Lister Hill National Center for Biomedical Communications |
| UMLS | Unified Medical Language System |
| UTS | UMLS Terminology Services(UMLS 注册与下载服务) |
| CUI | Concept Unique Identifier |
| NER | Named Entity Recognition(命名实体识别) |
| IE | Information Extraction(信息抽取) |
| PMID | PubMed Identifier |
| DAIMS | Discoverability/Accessibility/Interoperability/Metadata/Sustainability |
| KG | Knowledge Graph(知识图谱) |
| NCATS | National Center for Advancing Translational Sciences |
| Open IE | Open Information Extraction(开放信息抽取,与封闭谓词集相对) |
附录 M:基于 SemMedDB 的研究检查清单(12 项)
- 版本与截止日:写明 semmedVER43_R 与数据截止 2024-05-08;不写「持续更新」。
- 谓词集合:报告你用了哪些谓词(白名单)——全量直用不是方法,是事故。
- 过滤链:报告 NEGATION/UNCERTAIN 处理与频率阈值——可复现性依赖过滤参数。
- 精度预期:引用 SemRep 评估注明严格/宽松口径;不拿 0.52 当精度。
- 修饰语义:确认你的下游理解了「否定行不是正据」。
- 溯源习惯:抽样结论必须回 SENTENCE/原文核对——双外键是为此而设。
- 许可合规:UTS 协议签署;商用前核对非商业边界。
- 版本混表禁令:不与 2022_R/2023_R/43_2024R 口径数字直接混比(坑 8)。
- anaphora 知情:涉及指称的统计要声明「正式库指代消解关闭」。
- 校准义务:用 bc5cdr/biored 或自标小样本给出用例内精度估计。
- ER 图现实:PREDICATION/AUX 差 14 行按近似全集处理(坑 5);GENERIC_CONCEPT 勿臆测(坑 7)。
- 引用完整:数据引创刊论文+版本号;质量结论引 SemRep 2020 评估;生态引用注明抓取时点。
附录 N:检索路径示范(关键词组合与查询式)
| 目标 | 推荐查询式 | 预期命中 |
|---|---|---|
| 本体与下载 | “SemMedDB” AND (“download” OR “VER43”) | 官方下载页(/temp/ 路径) |
| 创刊论文 | “SemMedDB” AND “semantic predications” AND doi 10.1093/bioinformatics/bts591 | Bioinformatics 2012;28(23):3158-3160 |
| 引擎评估 | “SemRep” AND “semantic predications” AND (evaluation OR F1) | BMC Bioinformatics 2020;21:188 |
| 下游范本 | “SemMedDB” AND (“drug repurposing” OR “Translator”) | Every Cure/NCATS wiki |
| 镜像与 API | biothings semmeddb github | biothings/semmeddb 仓 |
| 弱监督用例 | “SemMedDB” AND (“weak supervision” OR “distant supervision”) | 各年文献(含 biorxiv 2025) |
| 反例(勿用) | “Semantic MEDLINE” 泛搜 / 「2.7 亿谓词」类二手表述 | 噪声结果与口径误传(坑 1) |
检索卫生两条:一、凡引用规模数字,先区分「谓词/句子/实体」三个量级(1.3 亿/2.6 亿/20 亿);二、凡引用许可,回溯 UTS 协议与创刊论文声明,不采信二手 manifest。
附录 O:本条目生产档案
- 生产通道:RSI 闭环写手代理 agent-c-semmeddb(教训 12 纪律:brief「2.7 亿」经三源互证证伪为句子数口径,按实核 130,480,195 成稿)
- 事实研究:三轮精确搜索三源互证(官方下载页口径/三篇论文/第三方 Every Cure 与 biothings)+ 库内 SQL 互链排查(827 条目全量导出筛选 16 条)
- FACTS.md:writing/semmeddb/FACTS.md 九节
- 成稿方式:五块直写拼接(part1-5 写入私有区后 cat),全程不用 Edit 追加
- 坑点:§10 八则(坑 1-8「坑 N:」编号制)
- description:成稿时即 ≤170 字符
- 待核清单:① 完整下载包清单与单包体量(需 UTS 登录);② UTS 注册是否要求机构信息;③ CSV 与 MySQL 行数一致性的第三方独立验证;④ GENERIC_CONCEPT 259 行确切语义
- 互链计划:正文内链 16 条(umls 558/snomed-ct 557/meddra 579/bc5cdr 415/biored 457/bc2gm 434/ncbi-disease 425/chemprot 753/drugprot 827/ddi 171/pharmaconer 504/pubmedqa 49/mednli 648/biosses 750/disgenet 449/drugcentral 344)
- 沙箱证据环境备注:官方工具页 curl 直抓失败(出网限制)、WebFetch 经 archive.org 代理限流——核心数字以 WebSearch 三轮一致命中+论文+第三方三源互证
附录 P:库版本时间线总表
| 时点 | 版本/事件 | 口径与状态 |
|---|---|---|
| 2012 | 创刊论文发表(Bioinformatics 28(23):3158-3160) | MySQL 数据库、non-commercial、需 UMLS license |
| 2.0 时代 | VER31/40/41/42 等年度版(含并行 anaphora 版) | 老表结构(dbinfo20.html;UMLS 2006AA+EntrezGene)——已全部从官网删除 |
| schema 3.0 | VER30+ 表结构重构 | 删 CONCEPT/CONCEPT_SEMTYPE/PREDICATION_ARGUMENT/SENTENCE_PREDICATION 四表,新增 GENERIC_CONCEPT |
| 2022 | semmedVER43_2022_R | biothings CSV 直链挂靠口径 |
| 2023 | semmedVER43_2023_R | PARMESAN 挂靠口径(PREDICATION.116080 分片) |
| 2024-05-08 | semmedVER43_R 数据截止 | 官方声明最终版——“This is the final update” |
| 2025-05-07 | biothings 更新至 43_2024R 口径 | 镜像层事件(非官方新版本) |
版本史一句话:官方只有一条主线且已停在 2024-05-08;之后的所有「新版本号」都来自下游镜像的口径管理——引用任何版本号先问它是官方发布还是下游口径。
附录 Q:三类使用者的配置建议
| 使用者 | 建议路径 | 最小配置 | 预算量级 |
|---|---|---|---|
| 学生/入门者 | biothings API 查询 + 论文阅读 | 无需建库 | 零存储,纯查询 |
| 研究者(弱监督/评测) | 下载 PREDICATION+AUX+CITATIONS,PostgreSQL 建库 | ~8G 存储 + 1 天工程 | 单机可行 |
| 工程团队(KG/重定位) | 全六表入库 + 过滤流水线 + 抽样校准 | ~70G 存储 + 索引 + 校准集 | 单台高配服务器 |
三类使用者的共同红线:不要跳过 §8.2 过滤直接消费全表;不要在许可上有任何侥幸(UTS 协议在先)。
附录 R:常见误传对照表(凭印象必错清单)
| 误传 | 事实 | 出处 |
|---|---|---|
| 「SemMedDB 有约 2.7 亿 predications」 | 谓词 130,480,195;2.7 亿≈句子数(263,160,520)量级 | 官方下载页(坑 1) |
| 「SemMedDB 采用 CC BY 4.0 许可」 | UMLS Metathesaurus License + 非商业;CC BY 4.0 是 biothings 旧 manifest 的错误标注 | 创刊论文+biothings PR 修正史(坑 4) |
| 「SemMedDB 持续更新/覆盖最新文献」 | VER43_R 为官方声明最终版,数据截止 2024-05-08 | 官方下载页(坑 2) |
| 「20 亿条关系」 | 20 亿是 ENTITY 实体提及层;关系(谓词)是 1.3 亿 | 官方下载页+§2.8 坐标系 |
| 「SemMedDB 是人工标注的数据集」 | 全自动 SemRep 抽取,零人工标注 | 创刊/评估论文+§3.3 |
| 「SemMedDB 是挑战赛/有 leaderboard」 | 知识底座,无自带基准与评测任务 | §4.4 |
| 「项目页在 /project/semmeddb」 | 已重定向;活跃入口在 /temp/SemRep_SemMedDB_SKR/ 路径 | 官方页迁移存照(坑 3) |
| 「PREDICATION 和 PREDICATION_AUX 行数不一致说明数据有问题」 | 差 14 行为官方原样数字,按近似全集处理 | 官方下载页(坑 5) |
此表可直接用于二手资料质检:见到上述任何一句,按「事实」列纠正并回溯「出处」列。
附录 S:条目自检问答(写作者视角的十问)
本条目成稿后按库内质检惯例自检的十个问题与答案:
- 规模数字用哪个? 130,480,195(PREDICATION 实核),全篇不用 2.7 亿(坑 1 存照)。
- 版本状态怎么写? VER43_R 为官方声明最终版;「final update」原文引用在案,不写持续更新(坑 2)。
- 许可是什么口径? UMLS Metathesaurus License + 非商业;CC BY 4.0 只作为错误标注存照出现(坑 4)。
- 精度数字什么口径? 严格 F1=0.42/宽松 F1=0.52 分列,引用处注明口径;CDR 0.90 P 单独标注窄域。
- 每个坑都有编号吗? 坑 1-8 编号制,正文引用与 §10 详文对齐。
- 每条三元组能溯源吗? PMID+SENTENCE_ID 双外键体系已写入 §2.3/§2.6/Q41——溯源是本条目的核心叙事之一。
- 互链条目都实核过 rid 吗? 16 条互链 rid 全部来自库内 status=1 条目全量导出(附录 O),无凭印象。
- 遗留疑点存照了吗? GENERIC_CONCEPT 语义、下载包清单、UTS 注册要求、双格式独立验证——四项待核入附录 O。
- frontmatter 双引号纪律过了吗? YAML 双引号内无英文直引号;description ≤170 字符;title/subtitle/data_source ≤255 字符。
- 抓取时点在案吗? 2026-10-04 写入 frontmatter(lastReviewed)、附录 A、附录 O 三处。
尾注
本条目为 AI-Ready Wikipedia 数据集条目,生产于 2026-10-04,抓取与核验时点见附录 A/O。事实陈述以官方下载页(lhncbc.nlm.nih.gov/temp/SemRep_SemMedDB_SKR/SemMedDB_download.html)、三篇论文(Bioinformatics 2012;28(23):3158-3160、BMC Bioinformatics 2016;17:163 与 2020;21:188)及第三方互证(Every Cure、biothings)为源;规模口径误传(2.7 亿 vs 1.3 亿)、许可错误标注(CC BY 4.0 vs UMLS)、行数差 14、版本链多口径等原始文档缺陷已在坑点与 §9 存照。条目与库内 umls(558)、bc5cdr(415)、biored(457)、disgenet(449)、drugcentral(344) 等 16 个条目互链,构成「术语系统—文献知识图谱—人工标注语料—策划知识库」家族的完整检索面。SemMedDB 已宣布收官,但 1.3 亿条可溯源断言仍将持续供血于文献挖掘、弱监督与药物重定位的下游生态——矿不再开采,冶炼与使用还在继续。后续维护触发点见附录 I。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- biored — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 知识图谱 / 命名实体识别
- pubtator-central — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 知识图谱 / 命名实体识别
- ddi-corpus — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 知识图谱 / 命名实体识别
- medmentions — 共享标签:医疗NLP / 生物医学文献 / 知识图谱 / 命名实体识别
- bc5cdr — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 命名实体识别
- craft — 共享标签:医疗NLP / 生物医学文献 / 知识图谱 / 命名实体识别
- genia — 共享标签:医疗NLP / 生物医学文献 / 关系抽取 / 命名实体识别
- disease-ontology — 共享标签:医疗NLP / 生物医学文献 / 知识图谱 / 命名实体识别
- medlexsp — 共享标签:医疗NLP / 生物医学文献 / 知识图谱 / 命名实体识别
- europepmc — 共享标签:医疗NLP / 生物医学文献 / 知识图谱 / 命名实体识别
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

