信息速览
INFOBOX — Hetionet 一屏速览
维度 内容 本质 整合 29 个公开数据库的异构生物医学知识图谱——11 类节点、24 类关系的多类型网络,专为边预测(药物重定位)而生 团队 Daniel S. Himmelstein(UCSF PhD)主导,Greene Lab + Baranzini Lab 合作,9 作者论文 论文 eLife 2017;6:e26726(doi:10.7554/eLife.26726;Received 2017-03-11 / Published 2017-09-22;PMC5640425) 数据 47,031 节点 + 2,250,197 边;节点 11 类(Gene 20,945 最大)、关系 24 类(AeG 526,407 最大) 格式 四种发布格式:TSV(逐类文件)、JSON、Neo4j 数据库 dump(官方主推)、hetmatpy 矩阵 许可 数据集 CC0 1.0 公有领域|论文 CC BY 4.0|逐边带 license 属性 方法 Rephetio:1,206 个 metapath 评估 → 123 个 DWPC 特征 + prior → elastic net 逻辑回归 → 31 特征模型 训练 755 个疾病修饰性治疗(positive)+ 29,044 negatives;179,369 个 non-treatments 显式排除 外部验证 DrugCentral 210 指示 AUROC 85.5%;Clinical Trial 5,594 AUROC 70.0%(训练集 97.4% 勿混) 预测产出 概率>1% 的 3,980 个 compound-disease 预测,其中 586 个对应已知治疗 案例研究 癫痫 top100:77 anti-ictogenic / 15 ictogenic / 8 unknown,覆盖 23/25 已知抗癫痫药;bupropion→尼古丁依赖第 9 位、365 条支持路径、靶向 CHRNA3 版本状态 v1.0 是唯一正式版本(无 v2),GitHub Releases 单条;仓库后维护仅元数据 存档 GitHub(Git LFS 大文件)+ Zenodo record 268568 + Software Heritage 评审 Thinklab 开放评审:40 位外部参与者、86 讨论、622 评论、145,771 词 库内互链 drugbank(571)、drugcentral(344)、chembl(572)、sider(92)、disgenet(449)、gwas-catalog(564)、lincs-l1000(399)、gene-ontology(441)、string(414)、dgidb(419)、open-targets(456)、medhop(754)
Hetionet 是一张"把整个生物医学公共数据库焊成一张图"的网络:它把 29 个公开数据库里的基因、疾病、化合物、通路、副作用、解剖部位等 11 类实体,以及它们之间 24 类已策展的关系,合并成 47,031 个节点、2,250,197 条边的异构网络(heterogeneous network)。它存在的第一目的不是"存数据",而是让机器能沿着"化合物—靶点—通路—疾病"这类跨类型路径行走,从而预测哪些老药可能治哪些新病——论文标题里的 “prioritizes drugs for repurposing” 就是这张图交给 Rephetio 模型去完成的任务。数据集以 CC0 公有领域发布,四种格式任取,是图机器学习领域被反复引用的教学基准。
导语读法三则:
- 只想下数据:直奔 §6 获取与许可——CC0 无任何门禁,Neo4j dump 是官方主推格式,但注意 v1.0 后再无新版本(坑 6)。
- 关心预测方法:直奔 §4 与 §5——DWPC 特征、负样本设计、保度数置换基线三段连读;别把训练集 97.4% 当外部验证(坑 5)。
- 做知识图谱工程:直奔 §2 与 §3——11 类节点与 24 类关系的全表、逐边来源与陷阱(GcG 不是共表达,坑 2)。
本条目与库内相关条目的分工:Hetionet 是「整合层」条目——库内 drugbank(571)、gwas-catalog(564)、sider(92) 等是「源层」条目(各自记录单一数据库的完整细节),open-targets(456) 与 medhop(754) 是「对照层」条目(同一路线的不同实现)。读法上:先读本条目建立全景坐标系,再按 §9.1 的三种角色下钻源层与对照层条目。
§0 导读:这个数据集解决什么问题
生物医学知识是出了名的"碎":化合物-靶点结合数据在 DrugBank 和 ChEMBL,疾病-基因关联在 GWAS Catalog 和 DisGeNET,基因功能在 Gene Ontology,副作用在 SIDER,蛋白互作在 Human Interactome——每个库有自己的标识符体系、自己的 schema、自己的许可条款。任何一个想回答"药 X 能不能治病 Y"的研究者,都需要先把十几个库拼起来,而拼图本身每年要重复消耗数千个机时。更麻烦的是,单库视角天然是"一刀切":结合数据只看见亲和力,看不见这条通路是否真的通向疾病机制。
Hetionet 的回答是把异构性本身变成资源。它不追求把所有实体归一成同一类型,而是保留 11 类节点(metanode)与 24 类关系(metaedge)的类型系统,让"化合物结合基因"“基因调控基因”“基因参与疾病通路"这些不同语义的边在一张图里共存。异构的价值在 metapath(元路径)上兑现:一条 CbG→GpPW→DaG 路径读作"化合物结合的基因参与了一条与疾病关联的通路”,这类跨类型证据链是同构网络给不出来的。论文团队围绕这张图做了完整的方法学闭环——从 1,206 个候选 metapath 的系统评估,到 degree-weighted path count(DWPC)特征的标准化,再到以保度数置换网络为基线的显著性校准——最终把"药物重定位"变成一个可复现、可评估、可解释的边预测任务。
第三层是开放科学实践本身成为贡献:论文写作在 Thinklab 平台上公开进行,评审期间 40 位非团队成员参与讨论、留下 622 条评论,全部语料 145,771 词;手稿工具链后来切换为 Manubot(从 Git 仓库自动生成论文);数据集本身连同四份格式以 CC0 发布,连每条边的来源许可都做成 license 属性随数据走。Hetionet 因此常被当作"AI-Ready 数据集"的早期范本——不是因为它加了什么 AI 接口,而是因为它的标识符、格式、许可与文档四件事都做到了机器可读。
§0 读法三则:
- 这个条目是"数据集+方法论文+预测产物"三合一:本体是 47,031 节点/2,250,197 边的网络,方法层是 Rephetio 建模流水线,衍生品是 3,980 个药物重定位预测——三者引用方式不同(§6)。
- 全文统计数字均出自论文正文与官方数据文件(metanodes.tsv/metaedges.tsv),两处口径冲突(digest 的 50,000/19 与作者名单 9 人 vs 7 人)已在坑 3 与坑 7 存照。
- 检索时勿把 Rephetio 当数据集名——Rephetio 是方法与研究计划名,数据集叫 Hetionet;两者关系见坑 1。
§0.1 五分钟理解路径
- 第一分钟:看 INFOBOX 与 §1 十问——知道 47,031/2,250,197/29 三个数字和 CC0 许可就够了。
- 第二分钟:看 §2.1 与 §2.2 两张全表——11 类节点里记住 Gene 占 44.5%,24 类边里记住 GpBP 最大、CtD 最关键。
- 第三分钟:看 §4.1-4.2——任务形式化(compound×disease 打分)与特征结构(1+14+123=138)。
- 第四分钟:看 §5.1 与坑 5——97.4% 是训练集,外部验证 85.5%/70.0%,这是最容易引用错的数字。
- 第五分钟:看 §6.1-6.2——四格式三通道怎么下载、CC0 与行级许可怎么分层,然后直接开工。
为什么 2017 年的图今天还值得读:其一,它是「异构类型系统 + metapath 方法」这条技术路线的原始论文,后续 PrimeKG 一代都是它的注脚;其二,版本冻结+CC0 使它成为少数能逐位复现的图基准——九年后的教学材料仍跑在同一张图上;其三,它的开放科学实践(Thinklab 全程公开评审、Manubot 写作、逐边许可)至今仍是数据集工程的完成度标尺。
§1 数据集速览:十问十答
Q1:Hetionet 到底是什么,一句话说清?
一张异构生物医学知识网络:11 类节点(47,031 个)+ 24 类关系(2,250,197 条),全部从 29 个公开数据库整合而来,CC0 发布,核心用途是支持跨类型关系预测——最著名的应用是 Rephetio 药物重定位模型。
Q2:11 类节点分别是哪些,各有多大?
Anatomy(402)、Biological Process(11,381)、Cellular Component(1,391)、Compound(1,552)、Disease(137)、Gene(20,945)、Molecular Function(2,884)、Pathway(1,822)、Pharmacologic Class(345)、Side Effect(5,734)、Symptom(438)。Gene 类占近半壁江山;Disease 类刻意收得很紧(137 个),保证每个疾病都有足够的关系支撑预测(全表见 §2.1)。
Q3:24 类关系是什么,最大的几类?
覆盖解剖表达(AdG/AeG/AuG)、化合物七类关系(CbG/CdG/CpD/CrC/CtD/CuG/CcSE)、疾病六类关系(DaG/DdG/DlA/DpS/DrD/DuG)、基因三类关系(GiG/GcG/Gr>G)、基因-功能四类(GpBP/GpCC/GpMF/GpPW)与药物类别(PCiC)。边数最大的是 AeG(解剖表达基因,526,407)与 GpBP(基因参与生物过程,559,504);最小的是 CpD(化合物缓解疾病,390)。全表见 §2.2。
Q4:数据从哪些数据库来?
29 个公开数据库:CbG 边来自 DrugBank+ChEMBL+DrugCentral+BindingDB 合并;DaG 边来自 GWAS Catalog+DISEASES+DisGeNET;CcSE 边来自 SIDER;CdG/CuG 边来自 LINCS L1000;GiG 边来自 Human Interactome Database 系列研究;Gp 系列边来自 GO/Reactome/KEGG/WikiPathways。逐边来源对照见 §3。
Q5:Rephetio 是什么,和 Hetionet 什么关系?
Rephetio 是跑在 Hetionet 上的药物重定位方法(名字是 repurpose+heterogeneous+network 的混成词):把每个(compound, disease)对用 metapath 路径特征打分,训练 elastic net 逻辑回归输出治疗概率。Hetionet 是数据底座,Rephetio 是方法层——引用数据集引 v1.0 对应的论文,两者别混(坑 1)。
Q6:模型成绩有多好?
训练集(Disease Modifying 755)AUROC 97.4%——但这是训练集数字。真正的外部验证:DrugCentral 210 个指示 AUROC 85.5%,Clinical Trial 5,594 个 AUROC 70.0%。最终在概率>1% 的 3,980 个预测中,586 个对应已知治疗。口径细节见 §5。
Q7:有什么可解释性案例?
两个经典案例。癫痫:模型 top100 化合物中 77 个具抗癫痫性(anti-ictogenic),覆盖 PharmacotherapyDB 25 个疾病修饰性抗癫痫药中的 23 个。bupropion(安非他酮):预测对尼古丁依赖排第 9 位(99.5 百分位),概率为 null 的 2.50 倍,支持证据 365 条路径,机制解释指向 CHRNA3 靶点(与戒烟药 varenicline 同靶)。
Q8:怎么下载,什么许可?
GitHub hetio/hetionet 仓库直链下载 TSV/JSON/Neo4j dump,无注册无门禁;另有 Zenodo record 268568 与 Software Heritage 存档。数据集本体 CC0 1.0(公有领域),论文 CC BY 4.0——两个许可分开理解,且每条边自带 license 属性(细节见 §6)。
Q9:还在更新吗?
数据本体停在 v1.0(2017)。GitHub Releases 只有 v1.0.0 一条;此后仓库仅维护元数据(describe 文件 2019、Neo4j dump 重新导出 2022、CITATION.cff 2023),节点与边未再扩充——把它当"2017 知识快照"用,别当活数据流(坑 6)。
Q10:用它的标识符是什么体系?
Gene 用 NCBI Entrez ID,Disease 用 Disease Ontology(DOID),Compound 用 DrugBank ID,Anatomy 用 UBERON,功能三件套用 GO ID,Pathway 用 Reactome/KEGG/WikiPathways ID,Side Effect 用 UMLS CUI,Pharmacologic Class 用 NDF-RT。跨库拼接时以这些主键为准(详见 §2.3 与附录 G)。
§1.1 十问之外的三个高频误解
- 「Hetionet 是个蛋白互作网络」——错。GiG(蛋白互作)147,164 条只占全网 6.5%;Hetionet 的本质是 24 类关系并存的异构图,互作只是其中一层。
- 「47,031 节点太少,不如 PrimeKG」——口径错误。Disease 刻意收紧到 137 个以保预测密度(§2.1),规模从来不是它的设计目标,快照可比性才是。
- 「CC0 意味着里面所有内容随便用」——本体层面成立,但边的文献引用等属性受源许可约束(坑 8);合规审计要分两层。
§1.2 数据集身份卡
| 身份维度 | 值 |
|---|---|
| 官方全称 | Hetionet — An Integrative Network of Biomedical Knowledge |
| 中文名 | 整合性生物医学知识网络 |
| 类型 | 异构知识图谱(多类型节点 + 多类型边) |
| 版本 | v1.0(2017 冻结,唯一正式版本) |
| 规模 | 47,031 节点 / 2,250,197 边 / 29 数据源 |
| 许可 | CC0 1.0(数据)+ CC BY 4.0(论文) |
| 方法论文 | eLife 2017;6:e26726 |
| 官方入口 | het.io + GitHub hetio/hetionet |
| 核心应用 | Rephetio 药物重定位 + 图机器学习教学基准 |
| 存档 | Zenodo 268568 + Software Heritage |
§2 数据构成与规格
2.1 规模与节点构成:11 类 metanode 全表
Hetionet 的规模口径是三方一致验证过的:metanodes.tsv 加总、metaedges.tsv 加总、论文摘要与 Table 1/2 全部对得上——47,031 节点、2,250,197 边、29 个数据源。节点侧 11 类 metanode 的精确分布如下(第二列数字为节点数,第三列为未与任何边相连的孤立节点数,第四列为该类节点参与的关系类型数):
| metanode | 节点数 | 未连接 | 参与 metaedge 数 |
|---|---|---|---|
| Anatomy(解剖部位) | 402 | 2 | 4 |
| Biological Process(生物过程) | 11,381 | 0 | 1 |
| Cellular Component(细胞组分) | 1,391 | 0 | 1 |
| Compound(化合物) | 1,552 | 14 | 8 |
| Disease(疾病) | 137 | 1 | 8 |
| Gene(基因) | 20,945 | 1,800 | 16 |
| Molecular Function(分子功能) | 2,884 | 0 | 1 |
| Pathway(通路) | 1,822 | 0 | 1 |
| Pharmacologic Class(药物类别) | 345 | 0 | 1 |
| Side Effect(副作用) | 5,734 | 33 | 1 |
| Symptom(症状) | 438 | 23 | 1 |
| 合计 | 47,031 | 1,874 | — |
三点解读。第一,Gene 一类占全部节点的 44.5%(20,945/47,031),且是唯一参与 16 类关系的"枢纽"类型——几乎所有跨类型路径都要经过基因层,这是生物医药知识"以基因为中心"的结构性反映。第二,Disease 只收 137 个,与 Compound(1,552)形成 11:1 的悬殊比例:这不是遗漏,而是刻意保证每个疾病节点都有足够密集的关系数据支撑预测——太稀疏的疾病只会产出噪声预测。第三,1,874 个孤立节点(占 4%)并非缺陷:Gene 类 1,800 个未连接节点多为注释有限的新基因,保留它们为的是标识符完整与未来扩展。
2.2 边构成:24 类 metaedge 全表
边侧 24 类 metaedge 以"源类型—谓词—目标类型"的三段缩写命名(如 CbG = Compound binds Gene)。下表为 v1.0 精确边数与两端覆盖的节点数:
| 缩写 | 含义 | 边数 | 源节点数 | 目标节点数 |
|---|---|---|---|---|
| AdG | anatomy downregulates gene | 102,240 | 36 | 15,097 |
| AeG | anatomy expresses gene | 526,407 | 241 | 18,094 |
| AuG | anatomy upregulates gene | 97,848 | 36 | 15,929 |
| CbG | compound binds gene | 11,571 | 1,389 | 1,689 |
| CcSE | compound causes side effect | 138,944 | 1,071 | 5,701 |
| CdG | compound downregulates gene | 21,102 | 734 | 2,880 |
| CpD | compound palliates disease | 390 | 221 | 50 |
| CrC | compound resembles compound | 6,486 | 1,042 | 1,054 |
| CtD | compound treats disease | 755 | 387 | 77 |
| CuG | compound upregulates gene | 18,756 | 703 | 3,247 |
| DaG | disease associates gene | 12,623 | 134 | 5,392 |
| DdG | disease downregulates gene | 7,623 | 44 | 5,745 |
| DlA | disease localizes anatomy | 3,602 | 133 | 398 |
| DpS | disease presents symptom | 3,357 | 133 | 415 |
| DrD | disease resembles disease | 543 | 112 | 106 |
| DuG | disease upregulates gene | 7,731 | 44 | 5,630 |
| GcG | gene correlates gene | 61,690 | 9,043 | 9,532 |
| GiG | gene interacts gene | 147,164 | 9,526 | 14,084 |
| GpBP | gene participates biological process | 559,504 | 14,772 | 11,381 |
| GpCC | gene participates cellular component | 73,566 | 10,580 | 1,391 |
| GpMF | gene participates molecular function | 97,222 | 13,063 | 2,884 |
| GpPW | gene participates pathway | 84,372 | 8,979 | 1,822 |
| Gr>G | gene regulates gene(有向) | 265,672 | 4,634 | 7,048 |
| PCiC | pharmacologic class includes compound | 1,029 | 345 | 724 |
| 合计 | — | 2,250,197 | — | — |
值得记住的几个结构性事实:边数前五名(AeG 526,407、GpBP 559,504 除外后依次为 Gr>G 265,672、GiG 147,164、CcSE 138,944、AdG 102,240)合计约 1.1M,占全网一半——生物医学网络的稠密集中在表达、调控与互作三类关系上;而 Rephetio 真正要预测的 CtD(compound treats disease)只有 755 条,是全网第二稀疏的边——任务的本质就是从稠密背景里捞稀疏信号。
2.3 标识符体系:跨库拼接的主键
Hetionet 每类节点都选定了一个稳定主键标识符体系,这是它能"焊"29 个库的前提,也是使用者做外部拼接时的对接点:
| metanode | 主键体系 | 示例 |
|---|---|---|
| Anatomy | UBERON(解剖本体) | UBERON:0000955(brain) |
| Biological Process | GO ID | GO:0006915(apoptotic process) |
| Cellular Component | GO ID | GO:0005739(mitochondrion) |
| Compound | DrugBank ID | DB00330(digoxin) |
| Disease | DOID(Disease Ontology) | DOID:9251(Graves’ disease) |
| Gene | NCBI Entrez ID | 1137(CHRNA3) |
| Molecular Function | GO ID | GO:0004888 |
| Pathway | Reactome / KEGG / WikiPathways ID | Reactome:R-HSA-168256 |
| Pharmacologic Class | NDF-RT | N0000175801 |
| Side Effect | UMLS CUI | C0015230(rash) |
| Symptom | UMLS CUI / MeSH | C1451988 |
跨库拼接的三大陷阱(附录 G 有逐类速查):
- 符号漂移:基因符号跨年份会变(HGNC 重命名),但 Entrez 数字 ID 稳定——拼接脚本锚定数字 ID 并保留符号列做人工核对。
- 前缀分流:Pathway 的 Reactome/KEGG/WikiPathways 三来源 ID 前缀不同(R-HSA:/hsa:/WP:),统一处理时先按前缀分流再做映射。
- CUI 一对多:UMLS CUI 是概念级标识,同一 CUI 下有多个同义别名——按 CUI 合并后应保留首选名而非字典序首名。
使用要点有三。其一,Entrez ID 会随 NCBI 重命名波动,但数值 ID 本身稳定,跨年份比对请锚定数字而非基因符号。其二,Compound 用 DrugBank ID 而非 ChEMBL ID——虽然 CbG 边合并了四个来源,但节点主键统一到 DrugBank,与库内 drugbank(571) 条目的标识符体系直接兼容。其三,Pathway 的三个来源各自保留原 ID 前缀,拼接时注意前缀分流。identifier 逐 metanode 的完整映射速查见附录 G。
2.4 版本冻结与元数据维护的时间线
Hetionet v1.0 于 2017 年随论文发表冻结,此后 GitHub 仓库的活动全部是元数据层面的:describe 系列文档更新于 2019-04-17,Neo4j dump 于 2022-07-10 重新导出(节点与边数未变),README 更新于 2023-01-31,CITATION.cff 更新于 2023-04-03。没有 v2,官方也未宣布任何扩充计划。这意味着:知识时效以 2017 年文献为界——LINCS 后续批次、新获批药物、2018 年后的 GWAS 增量都不在图里。把 Hetionet 当"快照型基准"用是正确的姿势;当"活数据流"用则会犯时代错误。
2.5 唯一有向边:Gr>G 与 metapath 方向性
24 类 metaedge 中只有一类是有向的:Gr>G(gene regulates gene,基因调节基因),265,672 条边全部带调节方向箭头(上游→下游)。其余 23 类在构建时均按无向处理。这个不对称有直接的建模后果:在 hetio 的 metapath 语法里,CbG→Gr>GaD(化合物结合的基因调节了某疾病的关联基因)与 CbG←Gr>GaD(化合物结合的基因被某疾病的关联基因调节)是两条不同的 metapath,评分可以完全不同——方向信息在 metapath 层面被放大成语义差异。下游使用者如果把 Hetionet 无差别转成无向邻接矩阵,Gr>G 的调节语义就静默丢失了;做调控方向相关任务(如上游调控因子识别)时必须保留有向结构。
2.6 关系类型与节点类型的覆盖矩阵
11 类节点 × 24 类关系的覆盖并不均匀:Gene 参与 16 类关系、Compound 参与 8 类、Disease 参与 8 类,而 Symptom、Side Effect、Pharmacologic Class、Biological Process、Cellular Component、Molecular Function、Pathway 各只参与 1 类——它们是"叶子"类型,只作为关系的终点出现。叶子类型的意义在于提供语义终点(预测任务的目标端或解释端),枢纽类型(Gene/Compound/Disease)提供路径的中转能力。metapath 设计(§4.2)正是围绕"如何穿越枢纽层抵达叶子层"展开的。
2.7 数据文件组织与字段约定
GitHub hetio/hetionet 仓库的 v1.0 数据按目录分层:nodes/ 目录存放 11 个逐 metanode 的 TSV 文件,edges/ 目录存放 24 个逐 metaedge 的 TSV 文件,文件名与类型缩写一一对应;JSON 格式则是单文件嵌套全图;Neo4j dump 为单一压缩包;hetmatpy 格式经 Python 库按需加载。所有 TSV 带表头、UTF-8 编码、制表符分隔。
节点文件与边文件的共同字段约定:
- 节点文件:主键列 identifier(§2.3 各类命名空间)、名称列 name、数据来源列(标注该实体取自哪个数据库)以及逐类型的特有列(如 Gene 的符号列、Compound 的 InChIKey 相关标识)。
- 边文件:source / target 两列引用对应节点文件的主键,另有 license 列标注该边的来源许可(§6.2),部分 metaedge 额外携带证据属性(如 CbG 的文献引用列)。
- 元数据文件:metanodes.tsv(11 行计数表)、metaedges.tsv(24 行计数表)与 describe 系列 Markdown——前者是规模口径的"账本"(§2.1/§2.2 两表即由此而来),后者是逐边构建说明。
- 一致性保证:节点文件主键在边文件 source/target 列中的引用是封闭的——edges 引用的 identifier 必然存在于 nodes 文件,做外键校验应零缺失。
2.8 与同类知识图谱的规模对照
把 Hetionet 放进同类异构生物医学图谱的坐标系(对照口径见 §7.3,数字为各项目官方发布口径):
- Hetionet(2017):47,031 节点 / 2,250,197 边 / 11 类节点 / 24 类边,CC0,版本冻结。
- PrimeKG(2023):规模在节点与边两个维度上都显著超出,且引入临床注释等新模态;构建范式公开承认承自 Hetionet。
- Open Targets 平台:不发布单一"全图"而是持续更新的整合平台,覆盖远超 2017 知识边界,但许可与 Hetionet 的 CC0 不同。
- Robokop / SPOKE:问答型与信号传播型两条分支,类型系统与 metapath 思想同源。
对照的结论是:Hetionet 的价值不在规模(已是历史快照),而在「类型系统 + CC0 + 冻结版本 + 方法论文」四件套的完整性——它是唯一同时满足这四条的快照型基准。
2.9 三类节点的结构角色速查
按节点在网络中的拓扑功能,11 类 metanode 可归为三组:
- 枢纽组(参与 ≥8 类边):Gene(16 类)、Compound(8 类)、Disease(8 类)——所有跨类型路径的可行走节点,预测任务的源端与目标端都在这组。
- 半枢纽组(参与 4 类):Anatomy(AdG/AeG/AuG/DlA 四边)——唯一同时连接三个方向的组织节点。
- 叶子组(各参与 1 类边):BP、CC、MF、Pathway、Pharmacologic Class、Side Effect、Symptom——语义终点,提供解释与目标但不起中转作用。
设计含义:子图抽取时丢掉叶子组不影响连通性但丢掉解释力;丢掉枢纽组则图直接碎片化。metapath 的长度上限(2-4)正是由「必须穿越枢纽组、可选择性访问叶子组」的结构决定的。
§3 逐边来源解剖:24 类关系各自从哪来
3.1 解剖-基因三兄弟:AdG / AeG / AuG
AeG(anatomy expresses gene)是全网最大的 metaedge(526,407 条),整合 GTEx 等组织表达谱来源,记录「某解剖部位表达某基因」;AdG/AuG(102,240/97,848 条)分别记录组织表达的下调与上调,来源同为组织表达数据的差异表达分析。三类合计约 72.6 万条边,构成了"空间表达层"。
- 使用注意一:这组边的组织表达来源为多源整合(GTEx、Bgee 等),官方 describe 文件未逐边给出精确的比例构成,引用时写「组织表达谱多源整合」即可,不宜断言单一来源(待核项见附录 C)。
- 使用注意二:AdG/AuG 的源节点只有 36 个(有下调/上调数据的组织远少于有表达数据的 241 个),组织覆盖本身是不对称的。
- 使用注意三:AeG 是检测型关系——「表达即建边」,无表达量分级;需要量级信息时应回到源库的表达矩阵。
3.2 化合物七类关系:Hetionet 的药学层
- CbG(compound binds gene,11,571 条):合并 DrugBank、ChEMBL、DrugCentral、BindingDB 四个来源的结合数据,覆盖 1,389 个化合物与 1,689 个基因。特色设计:11,571 条边附带 10,646 篇支持文献的引用属性(license-gated,随边存储但受各期刊许可约束)——这是「逐边 license 属性」设计的代表实现。
- CtD(compound treats disease,755 条)与 CpD(compound palliates disease,390 条):来自团队自建的 PharmacotherapyDB——把治疗指征拆成「疾病修饰性(disease-modifying)」与「症状缓解性(symptomatic)」两档。这个区分是 Rephetio 任务设计的灵魂:CtD 是模型要预测的正样本,CpD 是要与之区分的干扰项(§5.1)。
- CdG/CuG(compound down/upregulates gene,21,102/18,756 条):来自 LINCS L1000 扰动转录组实验——化合物处理细胞后基因表达的变化方向。与库内 lincs-l1000(399) 条目直接对接。
- CrC(compound resembles compound,6,486 条):ECFP 化学指纹的 Dice 相似度 ≥ 0.5 时建边——纯结构相似性,不涉生物学实验。
- CcSE(compound causes side effect,138,944 条):来自 SIDER 4.1(NLP 从药品说明书提取的副作用),1,071 个化合物对 5,701 个副作用。与库内 sider(92) 条目对应。
- PCiC(pharmacologic class includes compound,1,029 条):DrugCentral 提供的三类 FDA pharmacologic class 归属,345 个药物类别收 724 个化合物。
药学层使用要点:七类边覆盖「结合→表达扰动→结构相似→副作用→类别→治疗」的完整药物作用链,这正是 metapath 能把间接证据串起来的物质基础;但各边的证据等级不同(结合数据 > 表达扰动 > 结构相似),引用具体边时宜注明来源类型而非笼统写「Hetionet 显示」。
3.3 疾病六类关系:从关联到机制的分层
- DaG(disease associates gene,12,623 条):三源合并——GWAS Catalog(全基因组关联研究)、DISEASES(文本挖掘)、DisGeNET(文献策展聚合)。这是疾病-基因层的骨干边。与库内 gwas-catalog(564)、disgenet(449) 条目分别对接其子来源。
- DdG/DuG(disease down/upregulates gene,7,623/7,731 条):疾病状态下基因表达的变化方向,来源为 DISEASES 文本挖掘与手工策展的混合。
- DlA(disease localizes anatomy,3,602 条):疾病定位于解剖部位,来源为文本挖掘与语义相似度计算的混合。
- DpS(disease presents symptom,3,357 条)与 DrD(disease resembles disease,543 条):症状表现与疾病相似性,同样来自文本挖掘+手工策展混合管线。DrD 是同类节点间仅有的两类同质边之一(另一类是 CrC)。
疾病层使用要点:六类边构成「关联(DaG)→表达变化(DdG/DuG)→定位(DlA)→表现(DpS)→相似(DrD)」的语义阶梯——从统计关联到临床表现的证据梯度清晰;文本挖掘类边的噪声率高于实验类边,机制级推断前建议回源核对(Q51)。
3.4 基因-基因三类:全网最容易被误读的层
- GiG(gene interacts gene,147,164 条):蛋白物理互作,来源为 Human Interactome Database(聚合 Rual、Venkatesan、Yu、Rolland 四个大规模互作组研究)加 Incomplete Interactome 补充,另有 Himmelstein 前作构建的网络。与库内 string(414) 的功能关联型互作概念不同——GiG 是物理结合口径。
- GcG(gene correlates gene,61,690 条):基因进化速率共变 ≥ 0.75 时建边——两个基因在跨物种尺度上进化速率同步变化,暗示功能约束共享。这是最容易踩的坑:它不是共表达(correlates 不是 coexpression),GTEx 共表达检索不会命中这条边的来源;把它当共表达网络解读会得出荒谬结论(坑 2)。
- Gr>G(gene regulates gene,265,672 条):转录因子调控关系,唯一带方向箭头的 metaedge(§2.5)。
3.5 基因-功能四件套:GO 注释传播的产物
GpBP/GpCC/GpMF(559,504/73,566/97,222 条)来自 Gene Ontology 注释,但有一个关键工艺:注释传播(propagation)——某基因被注释到某 GO 术语时,该术语的所有父级术语也自动计入。因此 GpBP 的 559,504 条远超 GO 的原始注释条目数。这带来两个使用后果:其一,用 Gp 系列边做 GO 富集分析会因重复计数而失真,需先反传播或用原始注释文件;其二,GpPW(gene participates pathway,84,372 条)不含传播工艺——Reactome/KEGG/WikiPathways 的通路归属按原始定义收录。GpCC/GpMF/GpPW 分别对接库内 gene-ontology(441) 的三个分支。
3.6 来源对照速查
| metaedge 组 | 主要来源 | 构建工艺 | 库内对接 |
|---|---|---|---|
| AdG/AeG/AuG | GTEx、Bgee 等组织表达源 | 表达检测 + 差异表达 | — |
| CbG | DrugBank+ChEMBL+DrugCentral+BindingDB | 多源结合数据合并 + 文献属性 | drugbank(571)/chembl(572)/drugcentral(344) |
| CtD/CpD | PharmacotherapyDB(团队自建) | 指征两档策展 | — |
| CdG/CuG | LINCS L1000 | 扰动表达方向 | lincs-l1000(399) |
| CrC | ECFP 指纹 | Dice 相似度 ≥0.5 | — |
| CcSE | SIDER 4.1 | NLP 说明书挖掘 | sider(92) |
| PCiC | DrugCentral | FDA 药物类别归属 | drugcentral(344) |
| DaG | GWAS Catalog+DISEASES+DisGeNET | 关联三源合并 | gwas-catalog(564)/disgenet(449) |
| DdG/DuG/DlA/DpS/DrD | DISEASES 文本挖掘+策展 | 文本挖掘+语义相似度+人工 | — |
| GiG | Human Interactome Database 等 | 物理互作聚合 | string(414)(口径对照) |
| GcG | 进化速率分析 | 速率共变 ≥0.75 | — |
| Gr>G | 转录调控数据源 | 有向调节 | — |
| GpBP/GpCC/GpMF | GO | 注释传播 | gene-ontology(441) |
| GpPW | Reactome/KEGG/WikiPathways | 通路归属 | gene-ontology(441) |
来源合并的两条纪律(从上表提炼):
- 同边多源 = 证据叠加,不是口径冲突:CbG 四源、DaG 三源都是「任一来源支持即建边」,边不带来源投票数——需要来源级置信时应回各源库分别核对。
- 自算边(CrC/GcG)与外源边(其余 22 类)性质不同:自算边由 Hetionet 团队用统一工艺生成、阈值透明;外源边继承源库的构建工艺与噪声特性——审计优先级与复现难度都不同。
3.7 24 类 metaedge 逐类档案
每类一条档案:含义 → 规模与两端覆盖 → 来源工艺 → 使用注意。
- AdG(anatomy downregulates gene):102,240 条,36 组织 × 15,097 基因。组织表达差异分析的下调侧。源组织仅 36 个,覆盖窄于 AeG 的 241——引用组织覆盖时别混用两个分母。
- AeG(anatomy expresses gene):526,407 条,241 × 18,094。全网第二大边;GTEx 等表达谱的检测型关系(表达即建边,无方向无强度分级)。
- AuG(anatomy upregulates gene):97,848 条,36 × 15,929。上调侧,源覆盖同 AdG。
- CbG(compound binds gene):11,571 条,1,389 × 1,689。四源合并 + 10,646 篇文献属性;建模与引用属性分开取用(坑 8)。
- CcSE(compound causes side effect):138,944 条,1,071 × 5,701。SIDER 4.1 NLP 提取;说明书口径意味着「说明书未提 ≠ 不会发生」。
- CdG(compound downregulates gene):21,102 条,734 × 2,880。LINCS L1000 扰动方向;细胞类型与剂量上下文压缩在关系类型之外。
- CpD(compound palliates disease):390 条,221 × 50。症状缓解指征;Rephetio 里是干扰对照(§5.1),做治疗预测时别当正样本。
- CrC(compound resembles compound):6,486 条,1,042 × 1,054。ECFP Dice ≥0.5;纯结构相似、无生物验证,阈值邻域的边敏感于指纹版本。
- CtD(compound treats disease):755 条,387 × 77。PharmacotherapyDB 疾病修饰性指征——Rephetio 的正样本本体,77 个疾病就是任务的目标疾病全集。
- CuG(compound upregulates gene):18,756 条,703 × 3,247。LINCS 上调侧,注意同 CdG 的上下文压缩。
- DaG(disease associates gene):12,623 条,134 × 5,392。三源合并;关联不等于因果,做机制推断时需下游验证。
- DdG(disease downregulates gene):7,623 条,44 × 5,745。疾病状态下调;源疾病仅 44 个——疾病覆盖极窄但基因覆盖广。
- DlA(disease localizes anatomy):3,602 条,133 × 398。疾病定位;文本挖掘+策展混合。
- DpS(disease presents symptom):3,357 条,133 × 415。症状表现;与 Side Effect 类型分属疾病端与药物端,勿混。
- DrD(disease resembles disease):543 条,112 × 106。疾病相似(语义相似度+文本);同类同质边之一。
- DuG(disease upregulates gene):7,731 条,44 × 5,630。疾病状态上调,覆盖同 DdG。
- GcG(gene correlates gene):61,690 条,9,043 × 9,532。进化速率共变 ≥0.75;不是共表达(坑 2)。
- GiG(gene interacts gene):147,164 条,9,526 × 14,084。物理互作聚合;与 string(414) 的功能关联口径不同(§3.4)。
- GpBP(gene participates biological process):559,504 条,14,772 × 11,381。GO 传播后计数(坑 8)。
- GpCC(gene participates cellular component):73,566 条,10,580 × 1,391。同上传播工艺。
- GpMF(gene participates molecular function):97,222 条,13,063 × 2,884。同上传播工艺。
- GpPW(gene participates pathway):84,372 条,8,979 × 1,822。通路归属,不含传播。
- Gr>G(gene regulates gene):265,672 条,4,634 × 7,048。唯一有向(坑 4);TF→靶点箭头语义。
- PCiC(pharmacologic class includes compound):1,029 条,345 × 724。NDF-RT 类别归属;分类体系与 ATC 不同(附录 G)。
§4 Rephetio:药物重定位建模全链路
4.1 任务定义:把重定位变成边预测
Rephetio(repurpose + heterogeneous + network 的混成词,读作 rep-het-ee-oh)把药物重定位形式化为 Hetionet 上的一个治疗边预测任务:给定全部 1,552 个化合物 × 137 个疾病的组合,为每个组合计算「该化合物疾病修饰性地治疗该疾病」的概率,然后按概率排序输出优先级清单。这个形式化有两个前提条件,都是 Hetionet 数据侧预先设计好的:其一,需要一张足够异构的网络让"间接证据"可以流通——直接的治疗证据(CtD)只有 755 条,而间接路径(化合物→靶点→通路→疾病)有千余种走法;其二,需要一个高质量的疾病修饰性治疗清单作为监督信号——这就是团队自建的 PharmacotherapyDB(755 条 CtD 边的来源),它把「治标不治本」的症状缓解指征(CpD,390 条)单独拆开,避免模型把止痛药学成抗癌药。
4.2 特征工程:138 个特征的三层结构
每个(compound, disease)对提取 138 个特征,分三层:
- prior(1 个):既有治疗信念——该化合物是否已有该疾病或相邻适应症的已知治疗记录,来自 PharmacotherapyDB 的先验治疗计数。这个特征回答「模型之外我们本来信多少」。
- metaedge node degrees(14 个):化合物端与疾病端在各类相关 metaedge 上的度数(如化合物的 CbG 度 = 它结合多少靶点、疾病的 DaG 度 = 多少基因与它关联)。度数特征捕捉「这个节点在图里有多忙」。
- DWPC(123 个):123 条入选 metapath 各自的 degree-weighted path count——化合物与疾病之间沿该 metapath 的路径条数,按两端节点度数加权标准化。这是特征主体,回答「间接证据有多强」。
1 + 14 + 123 = 138。这个结构决定了 Rephetio 的可解释性:模型的每个预测都能拆解为「若干条具体的 metapath 路径支持它」——bupropion 案例(§5.5)就是这种拆解的展示。
| 特征层 | 个数 | 信息来源 | 回答的问题 |
|---|---|---|---|
| prior | 1 | PharmacotherapyDB 先验治疗 | 「模型之外我们本来信多少」 |
| node degrees | 14 | 化合物/疾病端各 metaedge 度数 | 「这个节点在图里有多忙」 |
| DWPC | 123 | 123 条入选 metapath 的加权路径 | 「间接证据有多强」 |
| 合计 | 138 | — | 训练后收缩至 31 非零 |
4.3 metapath 系统评估:1,206 → 709 → 123 的漏斗
团队没有手工挑选 metapath,而是把 Hetionet 上全部 1,206 个长度 2-4 的 metapath 一网打尽做系统评估。每个 metapath 对 755 个治疗对与随机非治疗对计算 DWPC,检验其对治疗/非治疗的区分力;709 个 metapath 达到 FDR < 5% 显著性,且覆盖全部 24 类 metaedge——说明每一类关系都在某条路径上携带治疗信号。最终依据效应量与相关性精选 123 个 metapath 进入模型。这个漏斗本身是方法学贡献:metapath 的价值不靠直觉,靠全量扫描与多重检验校正。
4.4 DWPC 的标准化:度数加权的必要性
朴素路径计数有个致命混淆:高度节点(如连接密集的 TP53)天然参与更多路径,路径数高不等于证据强。DWPC 的处理是对每条 metapath 抽取 1,000 个按节点度数保持的置换网络样本,估计「在度数结构相同但关系随机重连的图里,这条路径期望出现多少次」,再把实测 DWPC 转换为相对期望的标准化值(提取自论文 Methods)。这让「化合物 A 沿 CbG→GpPW→DaG 有 40 条路径」与「化合物 B 只有 4 条」变得可比——只要 A 的靶点都是超级枢纽,40 条可能还不如 B 的 4 条有信息量。
一个简化数值例子(示意 DWPC 的直觉,非论文真实数值):
- 化合物 A(3 个靶点,均为高度枢纽)到疾病 D 有 40 条 CbG→GpPW→DaG 路径。
- 置换网络里,同等度数的化合物期望路径数是 35——A 的「超额证据」只有 5。
- 化合物 B(2 个低度靶点)只有 4 条路径,但置换期望是 0.5——超额证据是 8 倍于期望。
- 标准化后 B 的 DWPC 高于 A——尽管原始路径数差 10 倍。
- 这就是「度数加权」四个字的实际含义:信号按「超出随机期望多少」计价,不按绝对数量。
4.5 模型:elastic net 逻辑回归与 31 特征终版
分类器是带弹性网络正则(elastic net)的逻辑回归,α(L1/L2 混合比)与 λ(正则强度)经交叉验证选定。训练完成后 138 个特征收缩到 31 个非零——其中 11 个 DWPC 特征带正系数,prior 与部分度数特征也在列。特征收缩既是正则化的自然结果,也是可解释性的收获:31 个非零特征就是「模型实际采用的推理模式」清单,每条都能翻译回 metapath 语义。全流程(特征提取、置换校准、模型训练)在 rephetio 分析仓库开源,可完整复现。
训练细节存照:
- 特征矩阵规模:212,624 个(compound, disease)组合 × 138 特征;训练监督仅覆盖其中的 755 正 + 29,044 负。
- 11 个正系数 DWPC 意味着入选 metapath 中仅少数真正「加分」——其余 112 条落选 DWPC 在正则下归零,metapath 漏斗(1,206→709→123→31)的最后一层由正则完成。
- prior 特征保留非零,说明「既有治疗信念」与「网络结构证据」在模型内互补而非互相替代——这也是 §5.1 prior 基线对照的意义所在。
- 交叉验证口径下 α/λ 的具体取值以分析仓库的最终运行记录为准(论文 Methods 给出搜索空间与选择流程)。
4.6 预测产出:3,980 个候选与 586 个已知
模型对全部 1,552 × 137 = 212,624 个(compound, disease)组合打分,概率缩放到「患病率 0.36%」的现实基线上。概率 > 1% 的组合共 3,980 个,构成论文发布的重定位优先级清单;其中 586 个对应 PharmacotherapyDB 等来源中的已知治疗——这部分是模型的「复习题」,用来自查清单的召回质量;其余 3,000+ 个则是真正的候选假设。清单全文随论文开放,het.io/repurpose 提供交互式探索界面(repurpose-frontend)。
4.7 典型 metapath 例子库:把缩写读成句子
metapath 的缩写串初见很难读,把它们逐条翻译成中文句子有助于建立直觉(下例均属 123 条入选特征的典型代表形态):
- CbG→CtD(化合物—结合—基因—治疗—疾病):「该化合物结合的某个基因,恰是某疾病的已知治疗靶点」——最直接的药理学路径。
- CbG→GpPW→DaG(化合物—结合—基因—参与—通路—关联—疾病):「化合物靶点参与的通路与疾病有关联基因」——通路中介的经典两跳。
- CbG→Gr>G←DaG(化合物靶点调节某基因,该基因与疾病关联):利用唯一有向边 Gr>G 的方向语义(坑 4)。
- CrC→CbG→CtD:「与该化合物结构相似的化合物,其结合基因是疾病治疗靶点」——结构相似性传导治疗证据。
- CcSE→CcSE 反向(化合物 A 的副作用与化合物 B 相同):副作用共享暗示作用机制重叠——「副作用即指纹」思路。
- CpD←DpS→CtD(该化合物缓解的症状是某疾病的表现):症状桥梁——也是模型必须学会「不加分」的路径(症状缓解≠治疗,§5.1 Symptomatic 对照组的由来)。
- CdG/CuG→DdG/DuG(化合物扰动基因方向与疾病状态基因变化相反):治疗性反转假设的图论表达。
- CbG→GiG→DaG(化合物靶点的互作伙伴与疾病关联):蛋白互作网络的一跳外延。
- AuG/AeG→DlA(化合物上调基因在疾病定位的组织中表达):解剖层提供空间合理性。
- PCiC 反向→CtD(同药物类别的其他化合物治疗该疾病):类别迁移路径——同药物类药的适应症先验。
读法要点:每条 metapath 的证据强度经 DWPC 度数加权(§4.4),路径条数多≠证据强;上例中第 6 条是「负向校准」的样本——入选特征不都是正向证据,elastic net 的系数符号决定该路径是加分还是减分。
§5 评估与验证:四组指示集的正确读法
5.1 四组 indication sets(Figure 3)
| 指示集 | 规模 | 角色 | AUROC | prior 基线 |
|---|---|---|---|---|
| Disease Modifying | 755 | 训练集正样本 | 97.4% | 54.1% |
| DrugCentral | 210 | 外部验证 | 85.5% | 62.5% |
| Clinical Trial | 5,594 | 外部验证 | 70.0% | — |
| Symptomatic | 390 | 干扰对照(palliates) | — | — |
四组各有明确的测量意图。Disease Modifying 755 就是训练集本身(PharmacotherapyDB v1.0)——97.4% 是拟合成绩,prior 基线仅 54.1% 说明「光靠既有治疗信念猜不对,模型确实学到了网络结构里的东西」,但这不是泛化证据。DrugCentral 210 是模型从未见过的独立策展来源,85.5% 是最干净的外部验证成绩。Clinical Trial 5,594 取自正在进行的临床试验适应症,任务更难(试验中的适应症本来就远离「已知有效」),70.0% 反映了真实任务难度。Symptomatic 390 用于验证模型确实学到了「疾病修饰」与「症状缓解」的语义区分——若模型只会把止痛药排前,Symptomatic 集成绩会虚高。
- Disease Modifying 755 逐层读:来源 PharmacotherapyDB v1.0 的疾病修饰性指征;覆盖 77 个疾病;是训练正样本本体——评估它等于评估记忆。
- DrugCentral 210 逐层读:独立机构策展、模型未见、口径干净;与训练集的机构隔离使其成为首选泛化证据;prior 基线 62.5% 提示这部分适应症本来就「更可猜」。
- Clinical Trial 5,594 逐层读:规模最大但噪声也最大(临床试验适应症含探索性阶段);70.0% 应读作「任务难度下限」而非「模型上限」。
- Symptomatic 390 逐层读:不是正负样本而是语义对照——检验 CtD/CpD 两档策展是否真的被模型内化。
5.2 最常见的误读:97.4% 不是外部验证
文献里流传最广的误读是把 97.4% 当作 Hetionet/Rephetio 的泛化性能引用。正确的引用姿势:外部验证成绩是 DrugCentral 85.5%(高质量策展来源)与 Clinical Trial 70.0%(临床试验口径);97.4% 只能作为训练集拟合度的注脚。差值本身就是信息——从训练集到外部验证掉了约 12-27 个百分点,这是 edge prediction 任务在新分布上的真实代价(坑 5)。
5.3 与随机基线的对照:xswap 保度数置换
AUROC 数字必须连同基线一起读。Rephetio 的显著性框架有两个基线层:其一,ΔAUROC 相对保度数置换网络(xswap 方法,hetio 组织的开源 C++ 实现,BSD-2)——把 Hetionet 的边随机重连但保持每个节点度数不变,检验信号是否真来自「哪条边连接了谁」而非「谁的度数高」;其二,prior 基线(上表)——检验网络特征是否在既有信念之外有增量。两层对照都过,97.4%/85.5%/70.0% 才有意义。
xswap 与 DWPC 的分工(两者都用置换,但层次不同):
- DWPC 内的置换:为「单个 (compound, disease) 对在单条 metapath 上的路径计数」做标准化——特征层的去混淆。
- xswap 基线:为「整个模型的判别力」做显著性检验——评估层的去混淆。
- 前者回答「这条路径值几分」,后者回答「模型整体是不是在骗人」;引用成绩时两层证据都应提及。
5.4 案例一:癫痫(epilepsy)的抗癫痫药检索
论文 Figure 5A 对癫痫做了定向案例研究:取模型对癫痫打分最高的 100 个化合物(剔除 1 个复方药后 99 个),对照文献证据标注其抗癫痫性(anti-ictogenic)或促癫痫性(ictogenic)。结果:77 个具抗癫痫性、15 个具促癫痫性、8 个证据不明。更关键的召回指标:PharmacotherapyDB v1.0 收录的 25 个疾病修饰性抗癫痫药中,模型 top100 覆盖了 23 个(23 of 25)。这个案例示范了「网络传播效应」的工作方式:抗癫痫药在图里彼此相似(CrC 结构相似、共享靶点)、疾病端连接密集(DaG/DdG/DuG 三路证据),使整个药物家族被 metapath 信号集体托举进 top100。
5.5 案例二:bupropion → 尼古丁依赖的可解释路径
bupropion(安非他酮,抗抑郁药兼戒烟辅助药)对尼古丁依赖的预测是论文给出的可解释性样板:模型排名第 9 位(99.5 百分位),治疗概率为 null(无先验信念基线)的 2.50 倍,支持证据共 365 条 metapath 路径。路径拆解显示机制解释收敛到 CHRNA3(尼古丁乙酰胆碱受体亚基):bupropion 经 CbG 边连到 CHRNA3,而 CHRNA3 经 DaG/DuG 等边连到尼古丁依赖——与已知戒烟药 varenicline(伐尼克兰,同为烟碱受体靶点)形成同靶佐证。这个案例的意义在于示范了 DWPC 框架的「每个预测都能讲成故事」:365 条路径不是黑箱权重,而是可以逐条人工审计的证据链。
从案例到方法论的三个启示:
- 可解释性是设计出来的,不是事后补的——特征本身就是 metapath 路径,预测与证据天然同构。
- 同靶佐证是交叉验证的平替——CHRNA3 与 varenicline 的靶点重合给了独立于模型的生物学印证。
- 高百分位 ≠ 高置信——第 9 位预测仍需实验验证,模型输出是优先级排序工具而非结论生成器。
5.6 评估数字的引用守则
- 训练集/外部验证分开引用:97.4%(训练)≠ 85.5%/70.0%(外部),混引必错。
- 指示集规模要带上:210 与 5,594 是两个难度不同的验证集,只报 AUROC 不报规模是选择性叙述。
- prior 基线要带上:85.5% 的 prior 基线是 62.5%——模型的净增量是 23 个百分点,不是 85.5 本身。
- 3,980 预测/586 已知是「清单质量」口径,不是 AUROC 口径,两者别互相换算。
- 案例数字(77/8/15、23 of 25、365、2.50)仅对各自案例成立,不可外推到全集。
5.7 评估数字速查卡(引用前先对表)
| 数字 | 口径 | 可否当泛化性能 | 常见误用 |
|---|---|---|---|
| 97.4% | Disease Modifying 755(训练集)AUROC | 否——拟合成绩 | 被当外部验证引用(坑 5) |
| 54.1% | 训练集 prior 基线 | 否——基线 | 与 97.4% 相减说「模型提升 43 分」夸大 |
| 85.5% | DrugCentral 210(外部)AUROC | 是(高质量策展外部验证首选) | 忘记带 prior 基线 62.5% |
| 70.0% | Clinical Trial 5,594(外部)AUROC | 是(临床试验口径) | 与 85.5% 平均后混报 |
| 62.5% | DrugCentral prior 基线 | 否——基线 | — |
| 3,980 | 概率>1% 预测数 | 否——清单规模 | 与 AUROC 混算 |
| 586 | 预测中已知治疗数 | 否——召回自查 | 当精度报 |
| 77 / 8 / 15 | 癫痫 top100 标注分布 | 否——单案例 | 外推全集 |
| 23 of 25 | 抗癫痫药召回 | 否——单疾病 | 当全疾病召回 |
| 第 9 位 / 99.5 百分位 | bupropion→尼古丁依赖 | 否——单案例 | — |
| 2.50 倍 | bupropion 概率相对 null | 否——单案例 | — |
| 365 | bupropion 支持路径数 | 否——单案例 | 当全局均值 |
5.8 复现清单:如果要重跑 Rephetio
- 数据定版:Zenodo record 268568 下载 v1.0(勿混用第三方重打包)。
- 任务边界:正样本 = PharmacotherapyDB 755 条 CtD;负样本 = 29,044 个 prior=0 采样;显式排除 179,369 个 prior=0 non-treatments(§8.4)。
- 特征:prior 1 + node degrees 14 + DWPC 123;DWPC 的置换校准每 metapath 1,000 样本。
- metapath 集合:从 1,206 全量出发(勿手工挑选),FDR<5% 过滤后按论文清单取 123 条。
- 模型:elastic net 逻辑回归,交叉验证选 α/λ;预期收敛到 31 个非零特征量级。
- 评估:四组 indication sets 各报 AUROC+prior 基线;显著性对照 xswap 保度数置换网络。
- 验收锚点:外部验证应落在 DrugCentral 85.5%、Clinical Trial 70.0% 邻域;偏离过大先查置换校准实现。
- 算力提示:置换校准是计算大头(1,206 × 1,000 次图遍历),单机可行但建议并行。
§6 获取与许可:四格式三通道,CC0 无门禁
6.1 四种发布格式与三条获取通道
格式(按官方推荐序):
- Neo4j 数据库 dump:官方主推。导入后用 Cypher 直接查询异构图(示例见附录 E),适合要做 metapath 遍历与图算法的团队。
- TSV 文件:nodes 目录 11 个文件 + edges 目录 24 个文件,每类一文件,带表头,任何语言 5 分钟读完。适合只想取局部关系的用户。
- JSON:单文件全图,结构化嵌套,适合前端渲染与轻量脚本。
- hetmatpy 矩阵格式:hetio 组织维护的 Python 库,把异构图压成按 metanode/metaedge 索引的稀疏邻接矩阵堆叠(hetmat),适合直接跑数值计算。
通道(全部无需注册):
- GitHub
hetio/hetionet仓库直链(大文件经 Git LFS 托管,clone 时注意 LFS 配额); - Zenodo record 268568——版本化 DOI 存档,引用时比 GitHub 链接更稳;
- Software Heritage 存档(swh:1:dir:7a8ca59f… 前缀的 SWHID)——全宇宙唯一标识级别的长期保存。
6.2 CC0 与逐边 license:两层许可一起看
数据集本体以 CC0 1.0 发布——公有领域贡献,可商用、可修改、可再分发、无需署名(但官方通过 CITATION.cff 礼貌请求引用论文)。论文本身是 CC BY 4.0(eLife 全 OA)。两个许可各管各的资产,勿混(数据 CC0 ≠ 论文 CC0,反之亦然)。
Hetionet 的特色是第三层:每条边(与部分节点)自带 license 属性字段,标注该条关系的数据源许可。典型是 CbG:11,571 条边附带 10,646 篇支持文献的引用属性,这些文献引用信息 gate 在各期刊许可之下——边本身(「化合物 X 结合基因 Y」这个事实)在 CC0 下自由,但边携带的文献全文当然仍受版权法约束。做合规审计时,本体与属性要分开评估。
合规审计两步法:第一步审「我要用的边/节点本体」——全部在 CC0 下,仅需礼貌引用;第二步审「我要连同携带的属性一起取用吗」——文献引用、原始计数等属性各受其源许可约束,逐属性核对 license 列后再定发放方式。
6.3 引用规则:一条官方消息字段说清
CITATION.cff(cff-version 1.2.0,type: dataset,license: CC0-1.0)的官方消息字段写明:引用 Hetionet v1.0 请引用 Rephetio 论文 10.7554/eLife.26726。即数据集没有独立的"数据论文",v1.0 的学术引用锚点是 eLife 论文本身。cff 文件收录 7 位作者(含 ORCID:Himmelstein 0000-0002-3012-7446、Greene 0000-0001-8713-9213、Baranzini 0000-0003-0067-194X 等)。注意作者名单双口径:eLife 论文页列 9 人(Himmelstein、Lizee、Hessler、Brueggeman、Chen、Hadley、Green、Khankhanian、Baranzini),cff 收 7 人——引论文按 9 人口径,引数据集按 7 人口径(坑 7)。
引用条目生成建议:BibTeX/Zotero 用户直接以 CITATION.cff 导入(cff 格式已被主要文献管理器支持);勿手抄作者名单——9 vs 7 的双口径最易在手抄时出错;引用版本写 v1.0 并附 Zenodo DOI(record 268568)以保证可溯性。
6.4 AI-Ready 评估:把 CC0 做到了光谱顶端
按本库 AI-Ready 评估框架(DAIMS 全表见附录 B):可获取性几乎满分——公开直链、无注册、无申请、四格式齐备、三种存档通道;可互操作性同样高位——标准 TSV/JSON + 图数据库原生格式 + 标识符体系逐类锚定主流本体。失分点在可发现性与元数据细节:het.io 官网的导航偏研究者视角,新用户不易一眼找到 describe 文档;digest 规模双口径(坑 3)与 perturbations 笔误(存照 ②)会让自动化抽取产生幻觉数字。综合评级 8.8/10,是库内可获取性光谱的最高档。
6.5 与库内可获取性光谱的对照
- 公开直链无门禁:Hetionet(CC0)、gene-ontology(441)、gwas-catalog(564)——同一档。
- 公开但注册/许可限定:drugbank(571)(学术许可申请制)、chembl(572)(CC BY-SA 附加条款)、lincs-l1000(399)(公开,下载协议)。
- 部分请求制:drugcentral(344)(数据公开)、dgidb(419)(公开 API)。
- Hetionet 与上述条目是「源-汇」关系:它的 CbG/DaG/CcSE 等边直接吸收了这些库的内容并统一到 CC0 之下——但注意 CC0 只覆盖 Hetionet 的整合产物,各源的原始数据库使用条款仍由各条目自行声明;需要最完整的原始记录时回到源库(§3.6 对照表)。
6.6 版本与日期存照:引用时以哪一天为准
- 数据内容版本:v1.0(2017 论文发表时点冻结)——数据本体唯一版本。
- 官方推荐引用锚点:eLife 论文 doi 10.7554/eLife.26726(CITATION.cff 官方消息字段,§6.3)。
- Zenodo DOI:record 268568——数据集的独立版本化存档标识。
- 仓库维护时间线(GitHub Releases/Commits 口径):describe 文档 2019-04-17 → Neo4j dump 重导出 2022-07-10 → README 2023-01-31 → CITATION.cff 2023-04-03;均为元数据维护,47,031/2,250,197 的规模口径从未变化。
- PMC 日期序列(存照 ③,坑 7 相关):PMC XML 记录 2017-03-11(Received)/ 2017-09-11 / 2017-09-22(Published)/ 2017-10-16 / 2024-03-27 多个日期节点——引用时只写 Received 2017-03-11、Published 2017-09-22 两个,其余是 XML 流水记录。
6.7 下载完整性的三重自查
- 规模账本:metanodes.tsv 加总 = 47,031、metaedges.tsv 加总 = 2,250,197,与论文摘要一致(§2.1)——任何偏离说明文件不完整或版本混杂。
- 平台哈希:Zenodo record 268568 提供逐文件 checksum;GitHub Git LFS 对象自带 SHA256。
- 外键封闭:edges 文件的 source/target identifier 应全部能在 nodes 文件中命中(§2.7)——引用完整性是拼接前的最后一道闸。
§7 生态与影响:一个数据集的三重生命
7.1 hetio 组织的 9 个仓库:数据集背后的工具家族
Hetionet 不是孤立文件,是 hetio GitHub 组织的核心资产,配套工具链共 9 个主要仓库:hetionet 本体(363 stars/77 forks,抓取时点)、het.io 官网、frontend-components(React 组件,MIT)、hetnetpy(Python 图操作库,自 dhimmel/hetio 迁移而来,103 stars)、hetmatpy(矩阵运算)、disease-genes-frontend 与 repurpose-frontend(两个交互式查询前端,后者承载 het.io/repurpose 预测探索页)、medline(文献词共现分析)、xswap(保度数随机化方法,C++,BSD-2)——从数据、查询、计算到随机化基线,全链条自研开源。
7.2 Thinklab 开放评审:145,771 词的公开写作
论文写作在 Thinklab 平台上全程公开进行:评审期间 40 位非团队成员参与讨论,产生 86 个讨论主题、622 条评论、191 条笔记,全部语料达 145,771 词(918,837 字符),约合 20.8 篇论文的文本体量。Thinklab 平台 2017-07 停运后转为静态存档(think-lab.github.io);讨论语料做了机器可读打包(dhimmel/thinklytics 仓库)。这段实践的价值超出 Hetionet 本身:它示范了「同行评审可以是一次公开的多人协作」,其中多条外部评论直接改进了数据集构建(如表达式边的来源修正建议)。
对评审制度的三点启示:
- 公开评审把「审稿人-作者私通信道」变成了可引用的公共文献——评审语料本身获得引用。
- 平台依赖是风险:Thinklab 停运后语料险些随平台消失,静态存档+机器可读打包是正确补救。
- 透明不等于慢:eLife 从投稿(2017-03-11)到发表(2017-09-22)约 6 个月,公开协作并未拖慢节奏。
7.3 下游继承:PrimeKG 一代的源头之一
Hetionet 的「多源整合异构图」路线直接启发了后续一代生物医学知识图谱:
- PrimeKG(2023):Harvard 团队的多模态精准医学 KG,官方文档明确引用 Hetionet 为精神源头并做规模对照;在疾病覆盖与临床注释上扩展,范式承自 metanode/metaedge 类型系统。
- Open Targets:工业级整合平台,与 Hetionet 共享 GWAS Catalog、DisGeNET 等多个上游数据源,但走持续更新路线;可作为 Hetionet 的「活版本」参照系。
- Robokop:问答型生物医学 KG,把 metapath 思想移植到自然语言问答场景。
- SPOKE:UCSF 的知识图谱,以 SPOKEsig 信号传播方法为特色——与 DWPC 同属「图上证据传播」家族但数学形式不同。
它们与 Hetionet 的关系是「同一路线的代际演进」,各自在规模、更新频率或模态上扩展;检索时以「Hetionet PrimeKG Open Targets comparison」可找到代际对比文献。
7.4 教学事实标准:图机器学习的「MNIST」
v1.0 冻结反而成就了它的第二个生命:因为数据不再变动,Hetionet 成为图神经网络(GNN)、链接预测、知识图谱嵌入教学与论文实验的事实标准数据集——PyTorch Geometric、Neo4j 官方教程、多篇 GNN 综述均以 Hetionet 为示例。Himmelstein 本人也发布了 rephetion-vignettes(2019)做 DWPC 方法的复现教学。使用时注意:教学场景常用「间接边预测」任务(如预测 GiG),与 Rephetio 的 CtD 任务口径不同,成绩不可互换。
7.5 与库内 medhop(754) 的关系
MedHop 是 WinoGrande 风格的生物医学阅读推理数据集(基于 DrugBank 交互关系构造代词消解谜题),与 Hetionet 共享「DrugBank 药物-靶点」这一上游,但任务形态完全不同——MedHop 考文本推理,Hetionet 考图结构推理。两者是「同一批药学知识在 NLP 与 KG 两个表示空间的平行投影」,适合做跨表示学习的对照组。
7.6 大事记时间线(2015-2026)
- 2016:预印本上线 bioRxiv(doi.org/bs4f),Hetionet 数据先行公开供评审。
- 2017-03-11:论文投稿 eLife;Thinklab 平台公开评审启动(最终 40 位外部参与者、86 discussions、622 comments)。
- 2017-08:手稿工具链切换 Manubot(从 Git 仓库自动生成论文)——本篇是 Manubot 早期的高知名度案例。
- 2017-09-22:eLife 正式发表(2017;6:e26726);Hetionet v1.0 与论文同步定版;GitHub Releases 建立 v1.0.0。
- 2017-07:Thinklab 平台停运,评审语料转静态存档(think-lab.github.io);后打包为机器可读语料(dhimmel/thinklytics)。
- 2019-04-17:describe 系列文档更新——数据构建说明的最后一次内容性维护。
- 2019:Himmelstein 发布 rephetion-vignettes——DWPC 方法的复现教学包。
- 2022-07-10:Neo4j dump 重导出(适配新版 Neo4j 兼容性),节点与边数不变。
- 2023:PrimeKG 发表并公开以 Hetionet 为范式源头与对照基线——路线继承的标志性节点。
- 2023-01-31 / 2023-04-03:README 与 CITATION.cff 最后更新(cff 收录 7 作者 ORCID)。
- 2026 抓取时点:仓库 363 stars / 77 forks;Releases 仍仅 v1.0.0——「冻结九年后仍被引用」本身是基准地位的证明。
§8 方法学启示:五条可迁移的经验
8.1 异构性是资源,不是待消除的负担
很多整合项目把「归一化」理解为把所有实体压平成一种类型。Hetionet 反其道而行:保留 11 类节点 24 类边的类型系统,让 metapath 承载跨类型语义。可迁移的判断标准:当任务需要「间接证据链」时,类型细分本身就是特征;当任务只需点对点映射时,类型才可压缩。
8.2 用全量扫描代替专家直觉做特征选择
1,206 个 metapath 全扫 → FDR < 5% 过滤 → 123 个入模,而不是让领域专家凭感觉挑「看起来合理」的路径。结论:至少 709 条路径显著,远超任何专家的事前想象;最反直觉的是,覆盖全部 24 类 metaedge 意味着连「副作用层」「解剖层」都在为治疗预测供证据。
8.3 度数混淆必须置换校准
任何图上的计数特征(路径数、共同邻居数)都会被节点度数污染。Hetionet 的解法双管齐下:特征内部做度数加权标准化(DWPC),评估外部做保度数置换基线(xswap)。可迁移:凡是「按度数保持随机重连后信号消失」的特征才是真信号。
8.4 训练集设计防在先:两档指征 + 负样本排除
Rephetio 的监督设计有三道防线:CtD(疾病修饰)与 CpD(症状缓解)两档分开,防止模型把止痛学成治病;29,044 个 negatives 按 prior=0 采样,保证负样本不是「未知」而是「已知非治疗」;179,369 个 prior=0 的 non-treatments 显式排除出训练池——它们是「模型尚不知道答案」的区域,混入会污染负样本。这个「把无知显式排除」的设计是弱标注图任务最值得抄的一步。
8.5 许可随数据走,用属性字段而非声明页
把每条边的来源许可做成 license 属性列,而不是在 README 里写一句「数据来自公开数据库」。当整合来源许可异构(本条目 CbG 的四源许可就互不相同)时,行级许可让下游的合规审计可自动化——这是 CC0 本体与受约束属性并存的制度设计。
8.6 版本冻结不是缺陷,是基准的成立条件
多数数据团队视「停止更新」为失败。Hetionet 反证了另一种生命周期:知识内容冻结(v1.0),方法与工具链继续演进(hetmatpy、xswap、rephetion-vignettes),数据因此成为可比实验的稳定底座——九年后的 GNN 教程仍能逐位复现同样的图。可迁移的判断:当数据集的主要用途是「横向对比算法」时,冻结比追新更有价值;当用途是「纵向监测知识」时,才需要持续更新(那种情况下 Open Targets 式平台更合适)。
8.7 六条经验的迁移检查清单
动手前逐条自问:
- 异构性:我的任务需要跨类型证据链吗?需要——则保留类型系统;不需要——才考虑压缩(§8.1)。
- 特征选择:我有资源全量扫描吗?没有——至少随机大样本扫描代替直觉(§8.2)。
- 度数混淆:我的计数特征做过保度数置换校准吗?(§8.3)
- 监督设计:我的「未知」样本被显式排除出负样本池了吗?(§8.4)
- 许可:我的行级数据带来源许可字段吗?(§8.5)
- 生命周期:我的数据集主要服务横向对比(宜冻结)还是纵向监测(宜更新)?(§8.6)
§9 与库内条目的关系
9.1 家族图谱:12 个互链点的三种角色
- 上游数据源(吸收进 Hetionet):drugbank(571) 与 chembl(572)(CbG 结合边来源)、drugcentral(344)(CbG+PCiC 来源)、sider(92)(CcSE 来源)、gwas-catalog(564) 与 disgenet(449)(DaG 来源)、lincs-l1000(399)(CdG/CuG 来源)、gene-ontology(441)(GpBP/GpCC/GpMF/GpPW 来源)。这 8 个条目是 Hetionet 的"原料库",各自条目记录的原始数据比 Hetionet 中相应切片更完整、更新。
- 方法对照:string(414)(功能关联型互作 vs GiG 物理互作,口径对照见 §3.4)、dgidb(419)(药物-基因相互作用数据库,与 CbG/CtD 任务重叠,可做召回对照)。
- 下游/平行:open-targets(456)(工业级整合平台,代际演进对象,§7.3)、medhop(754)(同一药学知识的 NLP 投影,§7.5)。
9.2 检索路径建议
- 检索词组合:“Hetionet”(精确)+ “heterogeneous network” 或 “drug repurposing”;勿用 “Rephetion”(拼写错误变体)或把 Rephetio 当数据集名搜(坑 1)。
- 要取某一类关系:先看 §3.6 来源对照表定位源库,再决定从 Hetionet 整体取(CC0 方便)还是从源库取(更全更新)。
- 要复现 Rephetio:数据取 v1.0(Zenodo 268568)+ rephetio 分析仓库,勿混用 2022 重导出的 Neo4j dump 与第三方重新打包版本。
- 要对比知识图谱:PrimeKG/Open Targets 文献中检索 “Hetionet” 作为基线口径。
三条勿用检索词(精确搜索验证过无效或误导):
- “Hetionet v2”——不存在该版本(坑 6),检索只会带回讹传。
- “Hetionet coexpression”——GcG 是进化速率共变(坑 2),共表达词会导向错误解读。
- “Rephetio dataset”——方法名加 dataset 后缀的组合没有官方对应物(坑 1)。
9.3 标识符互通矩阵:与库内条目如何拼接
| 库内条目 | 其标识符体系 | 与 Hetionet 的对接点 | 拼接建议 |
|---|---|---|---|
| drugbank(571) | DrugBank ID | Compound 主键即 DrugBank ID | 直接对接,零转换 |
| chembl(572) | ChEMBL ID | CbG 边的子来源 | 经映射表转换后并边 |
| drugcentral(344) | DrugCentral ID + FDA class | CbG/PCiC 子来源 | 类别归属按 NDF-RT 锚定 |
| sider(92) | UMLS CUI( MedlinePlus 口径) | CcSE 的 Side Effect 主键 | CUI 直连 |
| disgenet(449) | CUI×Entrez 对 | DaG 子来源 | 双主键均为 Hetionet 口径 |
| gwas-catalog(564) | RSID→Entrez 映射 | DaG 子来源 | 以 Entrez 数字 ID 对齐 |
| lincs-l1000(399) | 基因符号/Entrez | CdG/CuG 来源 | 锚定 Entrez(§2.3) |
| gene-ontology(441) | GO ID | Gp 系列四边 | 注意传播口径差(坑 8) |
| string(414) | Ensembl/Entrez | 与 GiG 对照(口径不同) | 物理互作 vs 功能关联勿混 |
| dgidb(419) | 基因符号+药物名 | 与 CbG/CtD 召回对照 | 名称归一化后比对 |
| open-targets(456) | EFO/Ensembl | 代际对照 | 用文献口径对照而非逐边合并 |
| medhop(754) | DrugBank ID 对 | NLP 投影对照组 | 共享 Compound 主键 |
检索路径上,最常用的三段拼接是:Hetionet(关系骨架)→ drugbank(571)(药物细节)→ gwas-catalog(564)(关联证据增量)——三者主键兼容度最高。
§10 避坑清单:八个已踩过的坑
坑 1:Rephetio 不是数据集名。Rephetio 是研究计划与方法名(repurpose+heterogeneous+network 混成词),数据集叫 Hetionet。文献里 “Project Rephetio” 指整个研究计划(含建模、评审、工具链),“Hetionet v1.0” 才是数据资产。检索 “Rephetio dataset” 会绕路;下载与引用锚点都是 hetio/hetionet + eLife 论文。
坑 2:GcG 是进化速率共变,不是共表达。GcG(gene correlates gene,61,690 条)基于基因进化速率共变 ≥0.75 构建;检索 “Hetionet GTEx coexpression” 不会命中其来源,把它当共表达网络解读(如「两个基因在同一组织中表达量相关」)是方向性错误。GTEx 相关的边是 AeG(anatomy expresses gene)。
坑 3:规模双口径——50,000/19 vs 47,031/29。eLife 官方 digest 写 “50,000 data points from 19 different public databases”,论文正文与数据文件是 29 resources / 47,031 nodes / 2,250,197 edges。以正文与 metanodes.tsv/metaedges.tsv 加总为准;digest 口径只在转述官方导读时提及并存照。
坑 4:Gr>G 是唯一有向边,无向化会丢语义。24 类 metaedge 中只有 Gr>G(gene regulates gene)带方向箭头。把全图转成无向邻接矩阵时调节方向静默丢失;hetio 的 metapath 语法中 CbG→Gr>GaD 与 CbG←Gr>GaD 是两条不同路径(§2.5),做调控方向相关任务前先确认数据结构保留了这个信息。
坑 5:97.4% 是训练集成绩,不是外部验证。Disease Modifying 755 就是训练集正样本本身,AUROC 97.4% 是拟合成绩;外部验证是 DrugCentral 210(85.5%)与 Clinical Trial 5,594(70.0%)。混引 97.4% 当泛化性能是最常见的二手引用错误(§5.2)。
坑 6:v1.0 之后没有 v2。GitHub Releases 只有 v1.0.0 一条;2022-07 的 Neo4j dump 重导出、2019 的 describe 更新、2023 的 CITATION.cff 都是元数据维护,节点与边未变。别找 “Hetionet v2”(不存在),也别把 2022 dump 的文件时间戳误读为数据更新。
坑 7:作者名单双口径——9 人 vs 7 人。eLife 论文页列 9 位作者;数据集的 CITATION.cff 收 7 位(含 ORCID)。引论文按 eLife 页口径,引数据集按 cff 口径;两处混排会被审稿人挑出「作者对不上」。另有正文残留笔误:正文列举节点类型时提及 perturbations,v1.0 的 11 个 metanode 中并无此类型(存照 ②)。
坑 8:GO 注释传播与行级许可。两个工程细节常被忽略:其一,GpBP/GpCC/GpMF 的边数包含 GO 注释传播(父术语上溯),直接当原始注释对做富集分析会重复计数(§3.5);其二,CC0 只覆盖整合本体,每条边的 license 属性标注其源许可(如 CbG 的 10,646 篇文献属性),合规审计时本体与属性分开评估(§6.2)。
坑点使用说明:以上八坑按「检索 → 数据 → 建模 → 许可」的生命周期排列,前四坑发生在拿到数据之前(检索与理解),后四坑发生在使用与引用阶段;附录 H 提供与正文章节的对照索引,引用本条目前建议逐条过一遍附录 C 的证据链表。
§11 总结
11.1 三句话总结
- Hetionet 把 29 个公开数据库整合成 47,031 节点、2,250,197 边的异构知识图谱(11 类节点、24 类关系),以 CC0 公有领域与四格式发布,是「AI-Ready」光谱顶端的快照型数据集。
- Rephetio 在其上演示了 metapath 方法学的完整闭环:1,206 个 metapath 全量评估、123 个 DWPC 特征、31 特征 elastic net 模型,外部验证 AUROC 85.5%(DrugCentral 210)/70.0%(Clinical Trial 5,594)。
- v1.0 冻结使其成为图机器学习教学的稳定基准,同时被 PrimeKG、Open Targets 等一代整合图谱承认为路线源头——数据停在 2017,影响延续至今。
11.2 适合谁
- 药物重定位与适应症扩展团队:755 条 CtD 训练边 + 3,980 个预测清单可直接当种子假设库。
- 图机器学习研究者与教学者:规模适中、类型丰富、版本冻结、无门禁——链接预测与 GNN 实验的标准底座。
- 知识图谱工程团队:metanode/metaedge 类型系统、逐边 license 属性、标识符锚定策略都是可抄的工程范式。
- 数据整合研究者:29 源整合的冲突消解与许可处理是活的案例研究。
11.3 不适合谁
- 需要 2017 年后新知识的团队:无 v2,新药、新 GWAS 增量不在图里——请转 Open Targets 或 PrimeKG。
- 需要患者级/个体级数据的临床研究:本数据集是聚合级知识,无任何患者记录。
- 需要「已知未知」置信度标注的团队:边只有来源与许可属性,没有逐边置信分(除 GcG 的共变值外),可靠性评估要自行结合源库。
11.4 30 秒决策卡
| 你的情况 | 行动 |
|---|---|
| 要立刻下点东西跑通 | GitHub hetio/hetionet 直链 TSV + 附录 E Cypher 骨架,CC0 无需注册 |
| 要做药物重定位预测 | 取 3,980 预测清单(het.io/repurpose)做种子,模型细节见 §4 |
| 要引用本数据集 | 引 eLife 论文 10.7554/eLife.26726(CITATION.cff 官方口径),作者口径分清 9/7(坑 7) |
| 要图机器学习教学集 | v1.0 + hetmatpy/PyG 教程;任务口径与 Rephetio 区分(§7.4) |
| 要最新知识整合 | 改道 PrimeKG / Open Targets(§7.3),Hetionet 只作历史基线 |
| 要查某条边从哪来 | §3.6 来源对照表 + 源库条目(§9.1 上游 8 库) |
11.5 引用速查(三种场景)
- 引用数据集:Hetionet v1.0,GitHub hetio/hetionet + Zenodo 268568,CC0 1.0;官方要求同时引论文。
- 引用论文:Himmelstein DS, et al. Systematic integration of biomedical knowledge prioritizes drugs for repurposing. eLife 2017;6:e26726. doi:10.7554/eLife.26726(9 作者口径)。
- 引用预测清单/方法:同上论文 + het.io/repurpose 交互入口;建模细节锚定 §4 参数与附录 I 检索树。
FAQ(高频问答 58 问)
A. 基础认知
Q1:Hetionet 的名字从哪来?
Heterogeneous(异构)+ network 的混成词,读作 het-ai-o-nuht。配套的方法名 Rephetio 则是 repurpose + heterogeneous + network 的三重混成词(rep-het-ee-oh)。两个名字都由主导者 Himmelstein 团队起用,检索时注意拼写变体(坑 1)。
Q2:Hetionet 和 Rephetio 是一回事吗?
不是。Hetionet 是数据集(47,031 节点 + 2,250,197 边的知识图谱),Rephetio 是跑在这个数据集上的药物重定位方法与研究计划。数据集的引用锚点是 eLife 2017;6:e26726。
Q3:谁建的?
Himmelstein(UCSF 博士生期间主导)牵头,Greene Lab(Casey S. Greene)与 Baranzini Lab(UCSF,Sergio E. Baranzini)合作,论文 9 位作者(数据集 CITATION.cff 收 7 位,双口径见坑 7)。合作网络含法国 Inserm 等。
Q4:还在更新吗?有 v2 吗?
没有 v2。v1.0 于 2017 冻结,此后仓库仅元数据维护(坑 6)。把 2017 之后的知识需求交给 PrimeKG 或 Open Targets。
Q5:可以商用吗?
可以。数据集 CC0 1.0(公有领域),无署名要求、无商业限制;论文 CC BY 4.0 允许商用但需署名。注意行级 license 属性(坑 8)。
Q6: Hetionet 是「AI 数据集」吗?
它比「AI 数据集」的流行早了几年——它是为 edge prediction(边预测)设计的异构图,2017 年就做到了标识符、格式、许可、文档四件套机器可读,是后来所谓 AI-Ready 范式的早期范本。
B. 数据构成
Q7:47,031 个节点怎么数出来的?
metanodes.tsv 给出 11 类节点的逐类计数,加总 47,031;metaedges.tsv 加总 2,250,197;与论文摘要、Table 1/2 三方一致(§2.1)。
Q8:为什么 Disease 只有 137 个?
刻意收紧:保证每个疾病节点有足够密集的关系支撑预测(Compound 1,552 个做 11:1 的供给)。稀疏疾病只会产出噪声预测。候选疾病池来自多个疾病来源的交集筛选。
Q9:Gene 为什么有 20,945 个、还有 1,800 个没连接?
Gene 是全网枢纽类型(参与 16 类关系)。1,800 个未连接基因多为注释有限的新基因,保留它们是为标识符完整性与未来扩展(§2.1)。
Q10:每类节点用什么标识符?
Gene=NCBI Entrez、Disease=DOID、Compound=DrugBank ID、Anatomy=UBERON、功能三件套=GO ID、Pathway=Reactome/KEGG/WikiPathways、Side Effect=UMLS CUI、Pharmacologic Class=NDF-RT(§2.3,附录 G)。
Q11:GcG 的「correlates」到底是什么?
基因进化速率共变 ≥0.75——两个基因在跨物种进化尺度上速率同步。不是共表达(坑 2)。
Q12:GpBP 的 559,504 条边为什么比 GO 原始注释还多?
注释传播(propagation):子术语注释上溯到全部父术语(§3.5)。做富集分析时要反传播。
Q13:哪条边最大、哪条最小?
最大 GpBP 559,504(基因参与生物过程),其次 AeG 526,407;最小 CpD 390(化合物缓解疾病)。
C. 建模与评估
Q14:DWPC 是什么?
Degree-Weighted Path Count:化合物与疾病间沿某 metapath 的路径条数,经两端节点度数的置换校准标准化。朴素路径数会被「高度节点天然路径多」污染,DWPC 把这个混淆剔除(§4.4)。
Q15:1,206 个 metapath 怎么缩到 123 个?
全量扫描 1,206 个长度 2-4 的 metapath → 709 个 FDR<5% 显著 → 按效应量与相关性精选 123 个入模(§4.3)。
Q16:负样本怎么选的?
29,044 个 negatives 从 prior=0 的组合采样(已知非治疗);同时把 179,369 个 prior=0 的 non-treatments 显式排除——它们是「未知」而非「已知非」,混入会污染监督(§8.4)。
Q17:xswap 是什么?
hetio 开源的保度数网络随机化方法(C++,BSD-2):重连边但保持每个节点度数不变,为 DWPC 与 AUROC 提供「度数结构相同、信号随机化」的基线(§5.3)。
Q18:97.4% 这个数字怎么引用才对?
只能作为训练集(Disease Modifying 755)拟合成绩;外部验证引 85.5%(DrugCentral 210)/70.0%(Clinical Trial 5,594)(坑 5)。
Q19:bupropion 案例说明什么?
可解释性样板:排名第 9(99.5 百分位)、概率 2.50 倍、365 条支持路径,路径拆解收敛到 CHRNA3 靶点——与 varenicline 同靶互证(§5.5)。
Q20:3,980 个预测和 586 个已知是什么关系?
3,980 是概率>1% 的预测清单规模;其中 586 个对应已知治疗,用于自查召回质量;其余是候选假设(§4.6)。
D. 获取与工程
Q21:下载入口?
GitHub hetio/hetionet 直链(Git LFS 托管大文件)、Zenodo record 268568、Software Heritage 存档,三条通道全无注册(§6.1)。
Q22:Neo4j 版本怎么导入?
下载官方 dump(neo4j v3 格式)→ 放入 Neo4j 导入目录 → 官方 README 提供导入命令;或用附录 E 骨架从 TSV 直接 LOAD CSV。注意 2022 重导出 dump 与 2017 v1.0 数据内容一致。
Q23:Python 里怎么用?
hetnetpy(图操作)或 hetmatpy(矩阵视图);PyG 教程另有转换脚本。只取局部关系则 pandas 读 TSV 最快。
Q24:一条 Cypher 查询长什么样?
附录 E 给骨架:找「化合物结合的基因参与的通路中含某疾病关联基因」的三跳 metapath。
Q25:引用格式?
引 eLife 论文(doi 10.7554/eLife.26726);CITATION.cff 提供结构化条目(7 作者含 ORCID)。
Q26:想找每条边「为什么存在」的证据?
部分边带文献引用属性(如 CbG 的 10,646 篇),在 TSV 列与 Neo4j 属性里;注意这些属性 gate 在各源许可下(§6.2)。
E. 库内与生态
Q27:Hetionet 和库内 drugbank(571) 条目什么关系?
drugbank 是 Hetionet 的上游源之一(CbG 边的四源之一,且 Compound 节点主键就是 DrugBank ID);需要 DrugBank 完整原始记录时回源库(§9.1)。
Q28:和 open-targets(456) 的区别?
同一路线的代际演进:Open Targets 工业级持续更新,Hetionet 学术快照冻结于 2017;两者共享多个上游源(§7.3)。
Q29:PrimeKG 是它的升级版吗?
PrimeKG(2023)官方文档把 Hetionet 列为精神源头与对照基线,在模态(临床注释等)与规模上扩展,但 metanode/metaedge 式建模范式承自 Hetionet(§7.3)。
Q30:能拿它教 GNN 吗?
能——这正是它的第二生命(§7.4)。PyTorch Geometric、Neo4j 官方教程均以其为示例;注意教学任务的口径与 Rephetio 不同。
F. 口径与延伸认知
Q31:Hetionet 是 AI-Ready 数据集吗?
是范式早期范本(§0):标识符(§2.3)、格式(四格式)、许可(CC0+行级属性)、文档(describe 系列)四件套机器可读,比「AI-Ready」这个词流行早了数年。
Q32:数据里有没有患者级信息?
没有。全部实体是聚合级生物学对象(基因/化合物/疾病等),关系是文献与数据库级证据——任何个体患者记录都不在图里(frontmatter patient_count 为「不适用」的原因)。
Q33:29 个数据库都能列出来吗?
逐边分组清单见附录 K——CbG 四源、DaG 三源、Gp 系列四源等;同一边内多源合并时以边的 source 属性与 describe 文档为准,节点文件的来源列记录实体级出处。
Q34:DWPC 和朴素 path count 的差别有多大?
机制上:朴素计数被高度节点污染(§4.4);经验上:prior 基线 54.1% vs 模型 97.4%(训练)说明度数信息单独不够,而置换校准剔除的是「纯度数假信号」——两者共同保证特征含义。
Q35:metapath 为什么限长 2-4?
长度 2 只跨一层(太浅),长度超过 4 在 11×24 的类型图上组合爆炸且单条路径证据稀释;1,206 个长度 2-4 的 metapath 恰好可全量穷举评估——「全扫」的可能性决定了边界。
G. 工程与复现
Q36:TSV 文件的编码与分隔符?
UTF-8、制表符分隔、带表头;文件名与 metanode/metaedge 缩写一一对应(§2.7)。注意 Gr>G 缩写含 > 字符,脚本处理文件名时留意转义。
Q37:怎么校验下载完整性?
Zenodo record 268568 的 checksums + GitHub LFS 的对象哈希;规模自查用「三方一致」——metanodes.tsv 加总 47,031、metaedges.tsv 加总 2,250,197、与论文摘要比对(§2.1)。
Q38:发现数据问题有勘误渠道吗?
GitHub 仓库 issue 是官方渠道;v1.0 冻结策略下内容性修复以仓库说明与 describe 文档补注形式存在,不改动已发布数据文件。
Q39:Python 版本与依赖?
hetnetpy/hetmatpy 为标准科学栈依赖(pandas/numpy/scipy);教学场景的 PyG 转换脚本独立维护。复现 Rephetio 全流程建议用 rephetio 分析仓库锁定的环境。
Q40:xswap 能单独用在别的图上吗?
能——xswap 是通用保度数随机化方法(C++ 实现,BSD-2),与 Hetionet 解耦;任何网络的置换基线都能用(§5.3、§8.3)。
Q41:教学任务怎么定义才不与 Rephetio 混淆?
教学常用「预测 GiG 互作」或「held-out 边重建」,与 Rephetio 的 CtD 任务在标签、特征、基线上均不同——报告成绩时注明任务口径(§7.4)。
Q42:复现 Rephetio 需要什么资源?
v1.0 数据(Zenodo 268568)+ rephetio 分析仓库;计算量集中在 1,206 个 metapath 的置换校准(每 metapath 1,000 次置换),单机可行但耗时;复现清单见 §5.8。
Q43:Neo4j 版本兼容性?
官方 dump 按发布时的 Neo4j 3.x 格式生成;2022 重导出面向新版兼容。导入前核对 dump 的 Neo4j 版本说明,别拿 v3 dump 硬灌 v5 实例——用官方迁移路径(附录 E)。
Q44:JSON 和 TSV 内容一致吗?
一致,同源自 v1.0;JSON 是全图嵌套视图,TSV 是逐类型平面视图——选格式只看工程便利,不涉及口径差异(§6.1)。
H. 库内联动与选型
Q45:库内还有哪些条目适合连读?
§9.1 的 12 个互链点按三种角色分组(上游源 8 个、方法对照 2 个、下游平行 2 个);入门推荐顺序:drugbank(571) → gwas-catalog(564) → open-targets(456)。
Q46:Hetionet 的边有置信分数吗?
普遍没有——边是「存在/不存在」口径,仅 GcG 携带共变数值、CbG 携带文献引用数;逐边置信度评估需回源库(§11.3)。
Q47:论文的 open peer review 在哪看?
think-lab.github.io 静态存档;145,771 词讨论语料的机器可读包在 dhimmel/thinklytics(§7.2)。
Q48:一屏决策:我该用它、PrimeKG 还是 Open Targets?
要冻结基准+CC0+方法论文配套 → Hetionet;要 2023 模态+临床注释 → PrimeKG;要持续更新+工业管线 → Open Targets(§11.4)。
Q49:Hetionet 支持中文检索吗?
数据本体全英文(实体名与关系均为英文源库原文);本条目提供中文导读与术语对照(术语表 37 条),检索源数据时用英文学名。
Q50:能不能只抽某一层(比如只取药学层)建小图?
可以且常见——按 metaedge 取 TSV 子集(如 CbG+CtD+CrC+CcSE 四件)即得药学子图;注意子图上跑 metapath 时路径会因缺层而断裂,结论只对子图成立。
Q51:图里有不存在/错误的关系吗?
有——文本挖掘类边(DISEASES 系列)天然带噪声,论文对此坦率;Rephetio 的置换校准正是为「在噪声图上找稳健信号」设计;下游使用时按 §3.6 逐边核对源口径。
Q52:怎么把它介绍给非计算背景的合作者?
用 §4.7 的 metapath 句子翻译法——每条路径读成一个中文句子;再配 bupropion 案例(§5.5)讲「证据链如何收敛到靶点」,比讲矩阵更有效。
Q53:Rephetio 的代码在哪,还能跑吗?
分析仓库开源(特征提取/置换校准/训练全流程);Python 科学栈依赖,环境锁定后可跑;复现清单见 §5.8,验收锚点是外部验证 85.5%/70.0% 邻域。
Q54:Hetionet 与 drugcentral(344) 的 PCiC 有什么关系?
PCiC 边的药物类别信息来自 DrugCentral 的 FDA pharmacologic class 字段——drugcentral 是 PCiC 的唯一来源;类别体系为 NDF-RT(附录 G)。
Q55:能不能把 Hetionet 和库内其他图谱条目合并成一张大图?
技术上可行(§9.3 互通矩阵给出主键对接点),但许可与口径各异——合并产物的许可以最严格来源为准,且 DdG/DuG 等文本挖掘边与实验边应有置信区分;不建议无差别合并。
Q56:一句话推销 Hetionet?
「2017 年冻结、CC0 发布、29 库焊接、四格式任取的 47,031×2,250,197 生物医学异构图——它把药物重定位变成了一个可以公开复算的图上问题。」
Q57: DwPC 的「1,000 次置换」可以减吗?
不建议——置换次数决定标准化期望/方差的估计稳定性;降次数省算力但引入特征噪声,复现锚点会漂离 85.5%/70.0%(§5.8)。
Q58:论文 Figure 之外还有官方可视化吗?
het.io 站内提供交互式网络浏览与 repurpose 预测探索页(repurpose-frontend 仓库);教学用图可用附录 P 邻接表自绘。
事实清单(硬事实 46 条)
- Hetionet v1.0 规模:47,031 节点 + 2,250,197 边,整合 29 个公开数据库。
- 11 类 metanode:Anatomy 402、Biological Process 11,381、Cellular Component 1,391、Compound 1,552、Disease 137、Gene 20,945、Molecular Function 2,884、Pathway 1,822、Pharmacologic Class 345、Side Effect 5,734、Symptom 438。
- 未连接节点共 1,874(Gene 1,800、Compound 14、Side Effect 33、Symptom 23、Anatomy 2、Disease 1)。
- 24 类 metaedge;边数前五:GpBP 559,504、AeG 526,407、Gr>G 265,672、GiG 147,164、CcSE 138,944;最小 CpD 390。
- 唯一有向 metaedge:Gr>G(gene regulates gene,265,672 条);其余 23 类按无向处理。
- metapath 语法中 CbG→Gr>GaD 与 CbG←Gr>GaD 是不同路径,方向在 metapath 层面有语义。
- 标识符:Gene=Entrez、Disease=DOID、Compound=DrugBank ID、Anatomy=UBERON、功能=GO、Pathway=Reactome/KEGG/WikiPathways、Side Effect=UMLS CUI、Pharmacologic Class=NDF-RT。
- CbG(11,571 条)= DrugBank+ChEMBL+DrugCentral+BindingDB 四源合并,附带 10,646 篇文献引用属性(license-gated)。
- GcG(61,690 条)基于基因进化速率共变 ≥0.75,非共表达。
- GiG(147,164 条)来自 Human Interactome Database(Rual/Venkatesan/Yu/Rolland 四研究)+ Incomplete Interactome。
- GpBP/GpCC/GpMF 含 GO 注释传播(子术语上溯父术语),GpPW 不含传播。
- CcSE(138,944 条)来自 SIDER 4.1(NLP 说明书挖掘)。
- CrC(6,486 条)= ECFP 指纹 Dice 相似度 ≥0.5。
- PCiC(1,029 条)来自 DrugCentral 的 FDA pharmacologic class。
- CdG/CuG(21,102/18,756 条)来自 LINCS L1000 扰动表达。
- DaG(12,623 条)= GWAS Catalog+DISEASES+DisGeNET 三源合并。
- CtD/CpD(755/390 条)来自团队自建 PharmacotherapyDB v1.0,疾病修饰性与症状缓解性两档策展。
- 论文:eLife 2017;6:e26726,doi 10.7554/eLife.26726,Received 2017-03-11,Published 2017-09-22,PMC5640425。
- Reviewing Editor:Alfonso Valencia(Barcelona Supercomputing Center)。
- 预印本 doi.org/bs4f(bioRxiv 2016);2017-08 起手稿切换 Manubot 工作流。
- eLife digest 写 “50,000 data points from 19 databases”,与正文 29/47,031/2,250,197 双口径(以正文为准)。
- 论文正文提及节点类型 perturbations,v1.0 的 11 个 metanode 无此类型(残留笔误)。
- Rephetio 特征:1 prior + 14 metaedge node degrees + 123 DWPC = 138 特征。
- metapath 漏斗:1,206 全量评估 → 709 个 FDR<5% 显著(覆盖全部 24 类 metaedge)→ 123 个入模。
- DWPC 标准化:每 metapath 抽 1,000 个度数保持置换样本估计期望与方差。
- 模型:elastic net 逻辑回归,138 特征收缩至 31 个非零(含 11 个正系数 DWPC)。
- 训练监督:755 positives(CtD)+ 29,044 negatives(prior=0 采样);179,369 个 prior=0 non-treatments 显式排除。
- 四组 indication sets:Disease Modifying 755(训练)AUROC 97.4%(prior 基线 54.1%);DrugCentral 210(外部)85.5%(基线 62.5%);Clinical Trial 5,594(外部)70.0%;Symptomatic 390(对照)。
- 预测产出:概率>1% 的 3,980 个预测,其中 586 个对应已知治疗;概率缩放到患病率 0.36% 基线。
- 癫痫案例:top100(剔 1 复方)77 anti-ictogenic / 8 unknown / 15 ictogenic;覆盖 PharmacotherapyDB 25 个疾病修饰性抗癫痫药中的 23 个。
- bupropion 案例:对尼古丁依赖排第 9 位(99.5 百分位)、概率为 null 的 2.50 倍、365 条支持路径、机制解释靶向 CHRNA3(与 varenicline 同靶)。
- 许可:数据集 CC0 1.0(CITATION.cff 与 GitHub LICENSE 一致);论文 CC BY 4.0;每条边带 license 属性。
- 获取:GitHub 直链(Git LFS)+ Zenodo record 268568 + Software Heritage(swh:1:dir:7a8ca59f…)。
- 四种格式:TSV(11+24 文件)、JSON、Neo4j dump(官方主推)、hetmatpy 矩阵。
- GitHub Releases 仅 v1.0.0 一条;后维护:describe 2019-04-17、Neo4j dump 重导出 2022-07-10、README 2023-01-31、CITATION.cff 2023-04-03;无 v2。
- CITATION.cff:cff-version 1.2.0、type dataset、license CC0-1.0、7 作者含 ORCID;官方消息字段指明引用 v1.0 请引 Rephetio 论文。
- Thinklab 开放评审:40 位非团队成员、86 discussions、622 comments、191 notes、145,771 词(918,837 字符);2017-07 停运转静态;语料存 dhimmel/thinklytics。
- hetio 组织 9 仓库:hetionet(363 stars/77 forks)、het.io、frontend-components、hetnetpy(103 stars)、hetmatpy、disease-genes-frontend、repurpose-frontend、medline、xswap(C++,BSD-2)。
- Hetionet 无任何个体患者记录——实体为聚合级生物学对象,patient_count 口径为「不适用」。
- 概率缩放基线:预测概率按患病率 0.36% 的现实基线缩放(论文 Methods 口径)。
- 未连接节点 1,874 个为设计保留(标识符完整性与未来扩展),非数据缺陷。
- v1.0 的规模口径从未随仓库维护变化:2019/2022/2023 三次元数据维护均未增删节点与边。
- Rephetio 的任务组合空间:1,552 × 137 = 212,624 个(compound, disease)对全量打分。
- 特征矩阵构成:212,624 × 138;训练监督仅覆盖 755 正 + 29,044 负,其余组合为预测目标。
- Gr>G 的 265,672 条边覆盖 4,634 个源基因(调控者)与 7,048 个目标基因(被调控者)。
- CrC 相似度阈值 0.5 对应 1,042 个源化合物与 1,054 个目标化合物(近似对称的小世界子图)。
术语表(45 条)
| 术语 | 释义 |
|---|---|
| 异构网络(heterogeneous network) | 节点与边均有多种类型的网络;区别于同构图(单一类型) |
| metanode | Hetionet 的节点类型(11 类),如 Gene、Compound、Disease |
| metaedge | Hetionet 的关系类型(24 类),三段缩写「源-谓词-目标」如 CbG |
| metapath | 跨类型路径模板,如 CbG→GpPW→DaG;边预测的特征来源 |
| DWPC | degree-weighted path count,度数加权的路径计数特征(经置换校准) |
| xswap | 保度数的网络随机化方法,产生置换基线网络 |
| 度数(degree) | 节点连边数;图特征中最主要的混淆源 |
| prior | Rephetio 特征之一:既有治疗信念的量化 |
| edge prediction / link prediction | 预测图中尚未存在(或未知)的边,Rephetio 的任务形式 |
| elastic net | L1+L2 混合正则的线性模型;Rephetio 分类器 |
| AUROC | ROC 曲线下面积,分类排序质量指标 |
| FDR | false discovery rate,多重检验校正口径;metapath 筛选阈值 5% |
| indication set | 适应症集合:模型评估用的(化合物,疾病)对分组 |
| disease-modifying | 疾病修饰性治疗——改变疾病进程的指征(CtD);区别于 symptomatic |
| symptomatic / palliates | 症状缓解性指征(CpD),不改变疾病进程 |
| anti-ictogenic / ictogenic | 抗癫痫性 / 促癫痫性(癫痫案例的标注维度) |
| PharmacotherapyDB | 团队自建治疗指征数据库,CtD/CpD 边来源 |
| GO 注释传播(propagation) | 子术语注释上溯全部父术语的 GO 工艺,影响 Gp 系列边数 |
| ECFP | 扩展连接指纹,化合物结构编码;CrC 边的相似度输入 |
| Dice 相似度 | 集合相似度度量,CrC 建边阈值 0.5 |
| LINCS L1000 | 化合物扰动转录组实验平台,CdG/CuG 边来源 |
| GWAS Catalog | 全基因组关联研究目录,DaG 子来源 |
| DisGeNET / DISEASES | 疾病-基因关联聚合库 / 文本挖掘库,DaG 子来源 |
| UMLS CUI | 统一医学语言系统的概念唯一标识符;Side Effect/Symptom 主键 |
| UBERON / DOID / NDF-RT | 解剖本体 / 疾病本体 / FDA 药物类别体系的标识符命名空间 |
| Entrez ID | NCBI 基因数值标识符,Gene 主键 |
| DrugBank ID | 药物标识符,Compound 主键 |
| Neo4j / Cypher | 图数据库及其查询语言;官方主推格式的载体 |
| hetmatpy / hetnetpy | hetio 组织的矩阵视图 / 图操作 Python 库 |
| Git LFS | Git 大文件存储扩展;hetionet 仓库的大文件托管机制 |
| CC0 1.0 | 公有领域贡献许可——数据集本体许可 |
| Manubot | 从 Git 仓库自动生成论文的写作工具链,2017-08 起用于本手稿 |
| Thinklab | 开放写作评审平台;本论文评审期间 145,771 词的公开讨论载体 |
| Software Heritage | 软件源代码长期存档库;Hetionet 以 SWHID 存档 |
| PrimeKG | 2023 年发布的多模态精准医学知识图谱,公开承认承自 Hetionet 范式 |
| Open Targets | 工业级靶点-疾病整合平台,与 Hetionet 共享多上游源 |
| Rephetio | repurpose+heterogeneous+network 混成词的药物重定位方法名(见坑 1) |
| SWHID | Software Heritage 标识符,软件与数据长期存档的全球唯一 ID |
| cff(CITATION.cff) | 机器可读的引用元数据文件格式,v1.2.0 为本文口径 |
| indication | 适应症——药物获批/研究的疾病用途 |
| held-out edge | 评测时从图中抽掉、供模型预测的边(教学任务常用) |
| negative sampling | 负样本采样——边预测任务的标准组件(§4.6 纪律) |
| NDF-RT | 国家药物文件-参考术语,FDA 药物类别体系(PCiC 来源) |
| Bgee | 跨物种基因表达数据库,AeG 等边的组织表达子来源 |
附录
附录 A:条目信息速查卡
| 项 | 值 |
|---|---|
| 条目名 | Hetionet |
| url_name | hetionet |
| 类型 | 异构知识图谱数据集 + 方法论文 + 预测清单(三合一) |
| 论文 | eLife 2017;6:e26726(doi:10.7554/eLife.26726) |
| 团队 | Himmelstein 主导;Greene Lab + Baranzini Lab 合作 |
| 规模 | 47,031 节点(11 类)+ 2,250,197 边(24 类)+ 29 数据源 |
| 许可 | 数据集 CC0 1.0|论文 CC BY 4.0|逐边 license 属性 |
| 版本 | v1.0(2017 冻结,唯一正式版本,无 v2) |
| 存档 | GitHub + Zenodo 268568 + Software Heritage |
| 抓取时点 | 2026-10-04 |
| 库内互链 | drugbank(571)/drugcentral(344)/chembl(572)/sider(92)/disgenet(449)/gwas-catalog(564)/lincs-l1000(399)/gene-ontology(441)/string(414)/dgidb(419)/open-targets(456)/medhop(754) |
附录 B:DAIMS 评估全表
| 维度 | 评分(1-10) | 依据 |
|---|---|---|
| D 可发现性 | 8 | het.io 官网+GitHub+Zenodo DOI+eLife 论文多重入口;但导航偏研究者视角,describe 文档对新用户不显眼;digest 双口径(坑 3)会污染自动化抽取 |
| A 可获取性 | 10 | CC0+公开直链+无注册无申请+三种存档通道;库内可获取性光谱最高档 |
| I 可互操作 | 9 | TSV/JSON/Neo4j/hetmatpy 四格式+标识符体系逐类锚定主流本体;Pathway 三来源 ID 前缀分流需注意 |
| M 元数据质量 | 8 | metanodes/metaedges/describe 文件齐备,数字三方一致;digest 口径漂移(坑 3)与 perturbations 笔误(存照 ②)微降分 |
| S 可持续性 | 8 | GitHub+Zenodo+Software Heritage 三重存档,版本冻结反而利于复现;无积极更新是双刃剑(时效止于 2017) |
| 综合评级 | 8.6/10(高) | 获取性与互操作性近乎满分;可发现性与元数据细节的小瑕疵不构成使用障碍 |
附录 C:逐项证据链自证
| 关键数字 | 来源 | 位置 |
|---|---|---|
| 47,031 / 2,250,197 / 29 | 论文摘要 + Table 1/2 + metanodes.tsv/metaedges.tsv 加总 | eLife 全文 + GitHub 数据文件(三方一致) |
| 11 metanode 逐类计数 | metanodes.tsv | GitHub hetio/hetionet 仓库 |
| 24 metaedge 逐类边数 | metaedges.tsv | GitHub hetio/hetionet 仓库 |
| Received 2017-03-11 / Published 2017-09-22 | eLife 论文页日期字段 | eLife 官网 |
| doi 10.7554/eLife.26726 / PMC5640425 | eLife 页 + PMC | 官方页面 |
| digest 50,000/19 口径 | eLife digest | eLife 页面导读区(存照 ①) |
| 1,206 → 709 → 123 metapath 漏斗 | 论文正文 Methods/Results | eLife 全文 |
| 755+29,044 / 179,369 排除 | 论文 Methods(负样本设计) | eLife 全文 |
| 138 特征 / 31 非零 | 论文 Results + 模型仓库 | eLife 全文 + rephetio 仓库 |
| 97.4% / 85.5% / 70.0% / 54.1% / 62.5% | 论文 Figure 3 | eLife 全文 |
| 3,980 / 586 / 0.36% | 论文 Results(预测清单) | eLife 全文 |
| 77+8+15 / 23 of 25 | 论文 Figure 5A(癫痫案例) | eLife 全文 |
| 第 9 位 / 2.50 倍 / 365 路径 / CHRNA3 | 论文 Results(bupropion 案例) | eLife 全文 |
| CC0 1.0 / cff 1.2.0 / 7 作者 ORCID | CITATION.cff + GitHub LICENSE | GitHub 仓库 |
| Zenodo 268568 / SWHID | 仓库 README / 存档页 | GitHub+Zenodo+SWH |
| 40+86+622+191 / 145,771 词 | 论文 Thinklab 小节 + think-lab 静态存档 | eLife 全文 |
| Releases 仅 v1.0.0 / 维护时间线 | GitHub Releases/Commits | GitHub(抓取时点 2026-10-04) |
附录 D:数据获取决策树
需求是什么?
├── 只想跑通图查询
│ └── GitHub 直链 Neo4j dump → 导入 → 附录 E 骨架(CC0,无注册)
├── 只要某几类关系做分析
│ └── edges/*.tsv 按 metaedge 取文件(11+24 文件各带表头)
├── 要做数值矩阵计算
│ └── hetmatpy(矩阵视图)或 PyG 转换脚本
├── 要药物重定位种子假设
│ └── het.io/repurpose 交互清单(3,980 预测)+ 论文补表
├── 要复现 Rephetio 全流程
│ └── Zenodo 268568(v1.0 定版)+ rephetio 分析仓库 + §4 参数
├── 需要比某类边更全/更新的源数据
│ └── §3.6 对照表回源库(drugbank/chembl/gwas-catalog 等库内条目)
└── 需要 2017 年后的知识
└── Hetionet 无 v2 → 改道 PrimeKG / Open Targets(§7.3)
附录 E:Neo4j 导入与 Cypher 查询骨架
// 骨架一:三跳 metapath —— 化合物结合的基因,其参与的通路中含疾病关联基因
// (metapath 模板:CbG→GpPW←DaG)
MATCH (c:Compound {identifier: 'DB00330'}) // digoxin
MATCH (d:Disease {identifier: 'DOID:9251'}) // Graves' disease
MATCH (c)-[:CbG]-(g1:Gene)-[:GpPW]-(:Pathway)-[:DaG]-(d)
RETURN DISTINCT g1.name AS intermediate_gene, count(*) AS path_count
ORDER BY path_count DESC LIMIT 20;
// 骨架二:带方向的三跳 —— CbG→Gr>GaD 型(保留 Gr>G 的调节方向)
MATCH (c:Compound)-[:CbG]->(g1:Gene)
MATCH (g1)-[r:GrG]->(g2:Gene)-[:DaG]-(d:Disease {name: 'epilepsy syndrome'})
RETURN c.name, g1.name, r.relationship AS regulation, g2.name, d.name
LIMIT 25;
// 骨架三:度数概览 —— 节点活跃度速查(度数混淆自查)
MATCH (n:Gene)-[r]-()
RETURN n.name, count(r) AS degree
ORDER BY degree DESC LIMIT 10;
附录 F:DWPC 计算骨架(伪代码)
输入: 网络 G, metapath M (如 CbG→GpPW→DaG), 源-目标对 (c, d)
1. 路径枚举: 沿 M 遍历 G, 收集 c 到 d 的全部实例化路径
2. 度数加权: 每条路径按途经节点的度数乘积倒数计权
3. 置换校准: 抽取 1,000 个 xswap 保度数随机网络,
每个网络上重复步骤 1-2 得期望 mu 与方差 sigma
4. 标准化: DWPC = (实测加权和 - mu) / sigma
输出: (c, d) 对在 metapath M 上的 DWPC 特征值
——完整实现在 rephetio 分析仓库与 hetmatpy 文档。
附录 G:标识符体系逐类速查
| metanode | 主键 | 命名空间说明 | 外部拼接提示 |
|---|---|---|---|
| Anatomy | UBERON ID | 跨物种解剖本体 | 与 HPO/MA 有映射 |
| Biological Process / Cellular Component / Molecular Function | GO ID | 三分支共用 GO 命名空间 | 注意注释传播(坑 8) |
| Compound | DrugBank ID | 与库内 drugbank(571) 同体系 | ChEMBL ID 需经映射表转换 |
| Disease | DOID | Disease Ontology | 与 ICD/OMIM 有交叉引用 |
| Gene | NCBI Entrez | 数值 ID 稳定,符号会变 | 锚定数字勿锚定符号 |
| Pathway | Reactome/KEGG/WikiPathways ID | 三来源前缀分流 | R-HSA:/hsa:/WP: 前缀 |
| Pharmacologic Class | NDF-RT | FDA 类别体系 | 与 ATC 分类不同体系 |
| Side Effect / Symptom | UMLS CUI | 概念级标识符 | 同一 CUI 可能多别名 |
附录 H:坑点档案(与 §10 对照)
| 坑 | 一句话档案 | 详述 |
|---|---|---|
| 坑 1 | Rephetio 是方法名,Hetionet 才是数据集名 | §10 |
| 坑 2 | GcG=进化速率共变,不是共表达 | §10 / §3.4 |
| 坑 3 | digest 50,000/19 vs 正文 47,031/29 双口径 | §10 / 存照 ① |
| 坑 4 | Gr>G 唯一有向;无向化丢调控语义 | §10 / §2.5 |
| 坑 5 | 97.4% 是训练集成绩;外部验证 85.5%/70.0% | §10 / §5.2 |
| 坑 6 | v1.0 后无 v2;2022 dump 重导出非数据更新 | §10 / §2.4 |
| 坑 7 | 作者 9 人(论文)vs 7 人(cff)双口径 | §10 / §6.3 |
| 坑 8 | GO 传播计数 + CC0 本体与行级许可分层 | §10 / §3.5 / §6.2 |
附录 I:检索决策树
你要什么?
├── 找数据集本体
│ ├── 正确词: "Hetionet" / "hetio" / "Himmelstein eLife 2017"
│ └── 错误词: "Rephetio dataset"(坑 1)/"Hetionet v2"(坑 6)
├── 找方法
│ ├── 关键词: Rephetio / DWPC / metapath / drug repurposing
│ └── 锚点: eLife 2017;6:e26726
├── 找预测结果
│ ├── het.io/repurpose 交互页 + 论文预测清单
│ └── 案例词: epilepsy / bupropion / nicotine dependence
├── 找工具
│ └── hetio 组织 9 仓库(§7.1):hetnetpy/hetmatpy/xswap
└── 找代际对比
└── "Hetionet PrimeKG" / "Hetionet Open Targets" 对照文献
附录 J:11 类 metanode 逐类档案
每类档案:定义 → 规模与标识符 → 在 metapath 中的角色 → 使用注意。
Anatomy(解剖部位)
- 定义:跨物种统一的人体解剖结构条目(UBERON 本体口径)。
- 规模:402 节点,2 个未连接;参与 4 类 metaedge(AdG/AeG/AuG/DlA),是参与边类型第二多的"半枢纽"。
- 角色:空间表达层的中转——疾病经 DlA 落到组织,组织再经 AeG 连基因,构成「疾病—组织—基因」的定位论证链。
- 注意:AdG/AuG 源组织仅 36 个,与 AeG 的 241 个覆盖不对称(§3.1)。
Biological Process(生物过程)
- 定义:GO 本体的生物学过程分支(多步骤生命事件)。
- 规模:11,381 节点,零未连接;仅参与 GpBP 一类边(559,504 条,全网最大 metaedge)。
- 角色:典型的"叶子聚合层"——大量基因经由它汇聚,使过程层成为 metapath 的高流量走廊。
- 注意:边数含 GO 注释传播,富集分析需反传播(坑 8)。
Cellular Component(细胞组分)
- 定义:GO 的细胞定位分支(亚细胞结构)。
- 规模:1,391 节点,零未连接;仅参与 GpCC(73,566 条)。
- 角色:为「药物靶点与疾病基因共享亚细胞定位」类路径提供空间合理性证据。
- 注意:同 GO 传播工艺。
Compound(化合物)
- 定义:具有药理或生物学意义的化学实体,主键 DrugBank ID。
- 规模:1,552 节点,14 个未连接;参与 8 类 metaedge——全网第二枢纽,任何治疗预测的起点端。
- 角色:Rephetio 任务的源端(1,552 × 137 全组合打分)。
- 注意:14 个未连接化合物不产任何预测(无边可走);CrC 阈值 0.5 对指纹版本敏感(§3.2)。
Disease(疾病)
- 定义:Disease Ontology 口径的疾病条目,刻意收紧至 137 个。
- 规模:137 节点,1 个未连接;参与 8 类 metaedge。
- 角色:Rephetio 任务的目标端——77 个有 CtD 覆盖的疾病是训练目标全集。
- 注意:137 ≠ 人类疾病全集,是「关系密度足以支撑预测」的子集(§2.1)。
Gene(基因)
- 定义:NCBI Entrez 口径的人类蛋白编码与功能基因。
- 规模:20,945 节点(占全网 44.5%),1,800 个未连接;参与 16 类 metaedge——全网绝对枢纽。
- 角色:几乎所有跨类型路径的必经中转;GWAS 关联、表达、调控、互作四类证据在基因层交汇。
- 注意:锚定 Entrez 数字 ID 而非符号(§2.3);高度基因的路径计数必须置换校准(§4.4)。
Molecular Function(分子功能)
- 定义:GO 的分子活动分支(单步生化活动)。
- 规模:2,884 节点,零未连接;仅参与 GpMF(97,222 条)。
- 角色:连接靶点功能相似性——「两个疾病关联基因共享分子功能」类证据。
- 注意:同 GO 传播工艺。
Pathway(通路)
- 定义:Reactome / KEGG / WikiPathways 三来源的注释通路。
- 规模:1,822 节点,零未连接;仅参与 GpPW(84,372 条)。
- 角色:通路中介是药理学解释力最强的 metapath 走廊之一(附录 E 骨架一)。
- 注意:三来源 ID 前缀分流(R-HSA:/hsa:/WP:),且 GpPW 不做 GO 式传播(§3.5)。
Pharmacologic Class(药物类别)
- 定义:NDF-RT 口径的 FDA 药物治疗类别。
- 规模:345 节点,零未连接;仅参与 PCiC(1,029 条)。
- 角色:类别迁移路径(附录 F 例 10)——同类药物的适应症先验传导。
- 注意:NDF-RT 与 ATC 是不同体系,别交叉套用(附录 G)。
Side Effect(副作用)
- 定义:UMLS CUI 口径的药物不良反应概念。
- 规模:5,734 节点,33 个未连接;仅参与 CcSE(138,944 条)。
- 角色:「副作用即机制指纹」——共享副作用暗示作用机制重叠,是重定位证据的重要旁路。
- 注意:SIDER 说明书口径的覆盖局限(§3.2)。
Symptom(症状)
- 定义:UMLS/MeSH 口径的临床症状概念。
- 规模:438 节点,23 个未连接;仅参与 DpS(3,357 条)。
- 角色:症状桥梁路径——也是 Rephetio 必须学会降权的干扰通道(§5.1 Symptomatic 对照)。
- 注意:症状(药物端 CcSE)与副作用(疾病端 DpS)概念分属两端,别混(§3.3)。
附录 K:29 数据源 → metaedge 映射清单
按论文口径整理的整合方向(同一边多源合并时以 describe 文档的逐边说明为准):
| metaedge 组 | 数据源(整合方向) |
|---|---|
| CbG | DrugBank、ChEMBL、DrugCentral、BindingDB(四源合并) |
| CtD / CpD | PharmacotherapyDB(团队自建,v1.0) |
| CdG / CuG | LINCS L1000 |
| CrC | ECFP 指纹自算(ECFP/Dice 工艺) |
| CcSE | SIDER 4.1 |
| PCiC | DrugCentral(FDA pharmacologic class) |
| DaG | GWAS Catalog、DISEASES、DisGeNET(三源合并) |
| DdG / DuG / DlA / DpS / DrD | DISEASES 文本挖掘 + GO/DO 语义相似度 + 手工策展(混合) |
| GiG | Human Interactome Database(Rual / Venkatesan / Yu / Rolland)+ Incomplete Interactome + 前作网络 |
| GcG | 跨物种进化速率共变分析(自算) |
| Gr>G | 转录调控数据源(有向调节) |
| GpBP / GpCC / GpMF | Gene Ontology(注释传播) |
| GpPW | Reactome、KEGG、WikiPathways |
| AdG / AeG / AuG | GTEx、Bgee 等组织表达谱(多源整合,逐边比例未在 describe 逐边确认——存照待核 ①) |
节点侧的实体来源另有实体级出处列与 describe 说明;上表覆盖 24 类边的构建输入,与「29 resources」总数(含节点实体来源与辅助数据库)共同构成完整来源口径。
附录 L:CITATION.cff 关键字段存照
抓取时点 2026-10-04 的官方引用文件关键字段(引用数据集时按此文件生成条目):
- cff-version: 1.2.0
- type: dataset
- license: CC0-1.0
- title: Hetionet
- 消息字段(意译):引用 Hetionet v1.0 请引用 Rephetio 论文。
- 7 位作者与 ORCID(cff 口径):
- Daniel S. Himmelstein — 0000-0002-3012-7446
- Antoine Lizee — 0000-0002-1073-3190
- Faisal Alquaddoomi — 0000-0003-4297-8747
- Vincent Rubinetti — 0000-0002-4655-3773
5.(按 cff 排序)Hu(条目以 cff 文件原文为准)— 0000-0001-7870-8242 - Casey S. Greene — 0000-0001-8713-9213
- Sergio E. Baranzini — 0000-0003-0067-194X
- 论文页作者口径(9 人)另含 cff 未收的 Hessler、Brueggeman、Chen、Hadley、Green、Khankhanian 六位——两口径差异即坑 7,引用论文按 eLife 页,引用数据集按本 cff。
- 版本字段指向 v1.0;仓库 README 与 Zenodo record 268568 与本文件一致。
附录 M:数字口径声明(本文统计数字的出处层级)
本文所有统计数字遵循以下出处层级(冲突时逐级覆盖):
- 数据文件层(最高):metanodes.tsv / metaedges.tsv 的加总口径——47,031 / 2,250,197 及逐类明细;规模类数字一律以此为准。
- 论文正文与图表层:Rephetio 全链路数字(1,206 / 709 / 123 / 31 / 755+29,044 / 179,369 / 97.4% / 85.5% / 70.0% / 3,980 / 586 / 77+8+15 / 23 of 25 / 365 / 2.50)出自 eLife 论文正文与 Figure 3/5A。
- 仓库元数据层:GitHub stars/forks(363/77)、Releases 数量、维护时间线、CITATION.cff 字段——均为抓取时点 2026-10-04 的快照值,随时间漂移属正常。
- 存照层(仅注明时使用):digest 的 50,000/19、perturbations 笔误、PMC 多日期序列、作者 9 vs 7 双口径——只在坑点与存照语境出现,不参与统计。
- 禁止口径:任何第三方教程/博客中转引的 Hetionet 数字(如「284 种关系」「5 万节点」等变体)未纳入本文;遇冲突先回到第 1 层核对。
附录 N:检索别名与易混词表
| 检索词 | 性质 | 使用建议 |
|---|---|---|
| Hetionet | 数据集官方名 | 唯一正确的数据集检索词 |
| hetio | GitHub 组织名 | 找工具链时用(9 仓库) |
| Rephetio | 方法/研究计划名 | 找方法学时用;勿加 “dataset” 后缀(坑 1) |
| Project Rephetio | 计划全称 | 出现在论文与博客的历史语境 |
| Hetionet v1.0 / v1.0.0 | 版本号 | Releases 与 Zenodo 的定版标识 |
| Himmelstein Hetionet | 作者+数据集组合词 | 学术检索高效组合 |
| heterogeneous biomedical network | 概念描述词 | 找同类数据集时用 |
| drug repurposing network | 概念描述词 | 应用场景检索 |
| “Hetionet v2” | 错误词 | 不存在(坑 6) |
| Rephetion / Hetionet.io 混拼 | 错误词 | 正确拼写 Hetionet;官网域名 het.io |
| DWPC / metapath / metaedge | 方法术语 | 找实现与教程 |
| xswap | 工具术语 | 找置换基线方法 |
| Hetionet PrimeKG comparison | 对比检索 | 代际演进文献(§7.3) |
| Gr>G / CbG / DaG | metaedge 缩写 | 在 describe 文档与 issue 中检索 |
附录 O:Hetionet 在图机器学习教学中的任务对照
| 教学任务 | 常用口径 | 与 Rephetio 原任务的区别 |
|---|---|---|
| 链接预测(GiG) | held-out 蛋白互作边重建 | 目标边不同(互作 vs 治疗);负采样各自定义 |
| 链接预测(CbG) | 药物-靶点边补全 | 与 DGIdb 等基准重叠,注意口径 |
| 节点分类 | 按 metanode 预测类别 | 用类型标签而非治疗标签 |
| 知识图谱嵌入 | TransE/RotatE 等嵌入训练 | 无 prior 特征、无置换校准 |
| GNN 半监督 | 小规模标注+消息传递 | 与 DWPC 路径特征范式不同 |
| metapath 学习 | HAN/HGT 类模型 | 与 Rephetio 同族但端到端学习 |
教学使用三条提醒:其一,各教程的负采样与划分策略互不相同,成绩不可跨教程比较;其二,教学任务一般不用 PharmacotherapyDB 两档策展,会丢失「疾病修饰 vs 症状缓解」的语义约束(§5.1);其三,任何任务报告都应注明数据版本(v1.0)与抽取日期——仓库元数据虽会更新,数据本体不变,但第三方转换脚本可能引入差异。
附录 P:11 类 metanode 邻接表(相邻 metaedge 一览)
| metanode | 相邻 metaedge(含方向) | 度数口径提示 |
|---|---|---|
| Anatomy | AdG、AeG、AuG、DlA | 半枢纽:四个方向均为叶子型关系 |
| Biological Process | GpBP | 叶子;边数全网最大 |
| Cellular Component | GpCC | 叶子 |
| Compound | CbG、CdG、CpD、CrC、CtD、CuG、CcSE、PCiC | 枢纽:8 类边全覆盖药学语义 |
| Disease | DaG、DdG、DlA、DpS、DrD、DuG、CtD、CpD | 枢纽:预测任务目标端 |
| Gene | GiG、GcG、Gr>G(有向出边为主)、AdG/AeG/AuG、CbG/CdG/CuG、DaG/DdG/DuG、GpBP/GpCC/GpMF/GpPW | 全网绝对枢纽:16 类边 |
| Molecular Function | GpMF | 叶子 |
| Pathway | GpPW | 叶子;无传播工艺 |
| Pharmacologic Class | PCiC | 叶子;NDF-RT 体系 |
| Side Effect | CcSE | 叶子;SIDER 口径 |
| Symptom | DpS | 叶子;与 Side Effect 概念分居两端 |
用法:构造 metapath 前先在本表确认「相邻边是否存在」——如 Symptom 只邻接 DpS,任何包含 Symptom 的 metapath 必然以 DpS 起止;Gene 的 16 类邻接使其可以出现在任何位置。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- iuphar-bps — 共享标签:知识图谱 / 药物发现与化学 / 药物-靶点相互作用 / 化学信息学
- mdad — 共享标签:知识图谱 / 药物发现与化学 / 化学信息学 / 评测基准
- ttd — 共享标签:知识图谱 / 药物发现与化学 / 化学信息学
- davis — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 化学信息学
- kiba — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 化学信息学 / 评测基准
- drugbank — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 化学信息学
- csar — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 化学信息学 / 评测基准
- plumber — 共享标签:药物发现与化学 / 药物-靶点相互作用 / 化学信息学 / 评测基准
- tcmbank — 共享标签:知识图谱 / 药物发现与化学 / 药物-靶点相互作用 / 化学信息学
- pubchem-pcba — 共享标签:药物发现与化学 / 化学信息学 / 评测基准
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

