首页>博客>行业科普>疾病关联与药物发现:图数据库在医学科研中的三层建模路径
疾病关联与药物发现:图数据库在医学科研中的三层建模路径

一个研究团队把三百万篇文献摘要灌进图数据库,抽出两百多万条基因与疾病的关联,几秒钟就跑出一条路径:候选药物 A 作用于靶点 B,B 参与通路 C,C 与疾病 D 相关。四跳走通,图上是一条完整的链,报告写出来很漂亮。
评审会上有人问了一句:这四跳里,哪几跳有实验证据?回头逐条核对,第一跳来自药物数据库的结构化注释,第二跳来自通路数据库,第三跳只有一篇 2009 年的综述,原文用的词是「可能参与」。路径是存在的,证据是断的。
这是医学科研做图数据库时最典型的分歧点。图数据库能把数据连起来,这件事本身不稀奇,任何一张关联表都能做到;难的是让每一条边都带着自己的来源与强度,让走路径的人知道哪一跳可以当结论、哪一跳只能当线索。这篇文章讲的,就是这件事在建模上要分哪三层,以及为什么缺一层都不行。
一、医学科研的数据本来就是关系形状
一个疾病相关的判断,通常要串起五六类数据:某个基因编码的蛋白、它在哪条通路里、这条通路与什么表型相关、哪个药物作用在这个靶点上、有没有临床数据验证过、结论出自哪篇文献。这些数据分散在文献库、公共注释库、组学数据、电子病历和专利里,格式互不兼容,但它们的结构是同一件事——实体,以及实体之间的关系。
用表格存也能存:一张基因表、一张疾病表、一张药物表、一张关联表。但查「某药经过哪些通路可能影响某疾病」,就要在关联表之间反复连接,每加一跳多一层,而这类科研问题天然是三到五跳。这不是性能优化能解决的问题,是数据模型和问题形状不匹配。
| 数据源 | 典型内容 | 能提供哪类关系 | 主要问题 |
|---|---|---|---|
| 文献摘要库 | 期刊摘要与题录 | 基因-疾病、药物-靶点的共现关系 | 共现不等于因果,覆盖率随时间增长 |
| 公共注释库 | 药物、疾病、通路、蛋白、变异等专业库 | 已审编的靶向、编码、通路成员、变异-疾病 | 命名与粒度不统一,更新节奏各异 |
| 组学与实验数据 | 转录组、蛋白互作、高通量筛选 | 表达相关、物理互作、体外活性 | 物种、细胞系、实验条件差异大 |
| 临床与真实世界数据 | 病历、队列、不良反应上报 | 用药与结局、不良反应、适应症外使用 | 隐私合规、混杂因素多、口径不一 |
| 专利与试验登记 | 专利申请、临床注册 | 在研方向、终止与失败记录 | 结构化程度低,阴性结果常缺失 |
四类数据的共同点是:它们描述的都是「谁和谁有关系,以及这个关系有多可信」。后半句尤其关键,第三节整节都在讲它;前半句则决定了建模对象是点和边,而不是行列——这正是图数据库在医学科研里的位置。至于关系数据与图模型在查询深度上的本质差别,四种存储路线的对比里有更细的账可算。
二、第一层:实体与关系,先定本体再动手
本体设计常被当成学术洁癖,其实它决定两件很实际的事:查询能不能收敛,不同来源的数据能不能对上。
| 图元素 | 含义 | 方向 | 必带属性 | 常见错误 |
|---|---|---|---|---|
| 点:基因/蛋白 | 基因、转录本、蛋白 | — | 物种、标识符体系 | 不同库用不同 ID,未做映射 |
| 点:变异位点 | 突变、多态性位点 | — | 基因组坐标、参考版本 | 坐标版本缺失,跨库对不上 |
| 点:通路 | 信号通路、代谢通路、生物过程 | — | 通路层级、来源库 | 通路粒度混用,粗细分不清 |
| 点:疾病 | 疾病、亚型、表型 | — | 疾病编码体系、亚型关系 | 只建疾病不建亚型,关联被稀释 |
| 点:药物 | 化合物、生物制剂 | — | 作用机制类别、研发阶段 | 化合物与商品名混为一谈 |
| 边:编码 | 基因编码蛋白 | 基因→蛋白 | 证据来源 | 把同义蛋白建成多个点 |
| 边:参与 | 蛋白参与通路 | 蛋白→通路 | 物种、实验方法 | 方向反写,变成通路作用于蛋白 |
| 边:靶向 | 药物作用于靶点 | 药物→靶点 | 亲和力、作用方式(激动/抑制) | 只存「有关系」,不存作用方向 |
| 边:关联 | 基因或变异与疾病相关 | 基因→疾病 | 证据等级、样本类型 | 把易感性与致病性混为一谈 |
| 边:共现 | 同一文献中出现 | 双向 | 文献数、首次出现年份 | 直接当因果边使用 |
三条经验值得记住。
边必须有方向。药物到靶点是「作用」,靶点到药物是「被注释」,两者语义不同。方向一旦混乱,后面所有路径推理都会失去意义——一条反向拼出来的机制链,读起来通顺,逻辑上是错的。
物种必须进属性。小鼠敲除实验得到的结论,不能直接等同于人类结论。这不是严谨与否的问题,很多候选药物最终失败正是栽在这一步。物种放在边属性上,查询时才能一句限定「只走人体数据」。
实体类型会持续增加。新的变异位点、新的表型词条、新的生物标志物每年都在出现。如果每加一种类型都要停机改结构,图谱永远建不完。悦数图数据库的动态 Schema 支持在不中断服务的情况下新增点边类型,这一点在长期演进的科研图谱上不是便利功能,而是能否持续维护的前提。
三、第二层:证据与置信,每条边都要能回答凭什么
这一层是医学科研图谱与商业图谱最大的差别,也是最容易被跳过的一层。
| 等级 | 证据来源 | 判定标准 | 可支撑的结论 | 入图处理 |
|---|---|---|---|---|
| A | 人体临床或人体样本 | 有对照、有样本量、结果可复现 | 可作结论性依据 | 全额权重,路径默认放行 |
| B | 动物或体外功能实验 | 有明确实验方法与表型读出 | 可作机制假设支撑 | 加权放行,需标注物种与体系 |
| C | 公共库人工审编注释 | 有策展记录与引用来源 | 可作候选线索 | 需二次核验后使用 |
| D | 文献共现、文本挖掘、计算预测 | 仅统计或模型推断 | 只能用于候选生成 | 默认不进结论路径 |
一张真实的生物医学图谱里,D 级边往往占到八成以上,A 级边可能只有百分之几。问题就在这里:如果边不标等级,路径搜索会自然偏向边数量最多的那一层,也就是证据最弱的那一层。这不是算法出错,是数据没有告诉它该信谁。
所以查询里必须把证据等级写成遍历条件。「只走 A、B 级边」和「允许走 D 级边」,得到的是两种结论强度完全不同的结果——前者可以写进研究结论,后者只能写进候选清单。
这段语句的价值不在语法,而在它把「证据够不够」变成了一个可执行的条件,而不是评审会后逐条翻文献才发现的问题。
还有一类证据常被整个行业忽略:阴性证据。临床试验终止、敲除后无表型、体外筛选无效——这些「不成立」也是知识,而且是排除错误假设时最省时间的那部分。图谱里不存阴性结果,推理就只会不断产生新假设,永远不收敛。做法是把阴性结论建成独立的证据类型,带上试验规模与条件,让查询自己决定是否采信。
四、第三层:机制与推理,多跳路径怎么变成可验证假设
前两层做完,图谱才具备推理的条件。药物发现里真正有用的路径其实只有几条固定形状,把它们固化成模板,比让算法自由发挥可靠得多。
| 路径模板 | 结构 | 依赖的证据 | 常见误判 |
|---|---|---|---|
| 经典机制链 | 药物→靶点→通路→疾病 | 靶向为 A/B 级,通路关联为 B 级以上 | 通路泛指,一条通路挂上千个疾病 |
| 靶点旁路 | 药物→靶点→基因→疾病 | 需蛋白互作或共表达支撑 | 共表达当物理互作 |
| 表型相似 | 药物→副作用→表型→疾病 | 副作用数据来自人体,可信度较高 | 把发生率极低的副作用当共性 |
| 网络邻近 | 药物靶点集与疾病基因集的距离 | 需完整互作网络与统一距离口径 | 距离口径不同,结论不可比 |
| 反向查找 | 疾病→致病基因→已有药物 | 致病基因需 A 级以上证据 | 把易感基因当致病基因 |
超级节点是这套推理里最真实的坑。生物网络中存在度数上千的枢纽节点,几乎所有四跳路径都会经过它们。结果是「任何药物都和任何疾病相关」——每个候选都能找到一条看起来合理的链。可用的做法有三条:对枢纽节点的邻居做度数惩罚,限制单条路径经过枢纽的次数,以及给路径长度设上限,超过五跳之后机制解释力会急剧下降。
方向一致性也常被忽略。机制链要有方向感:药物作用于靶点、靶点影响通路,这是作用方向;反过来只能算注释关系。一条从头到尾方向拧着走的路径,往往在生物学上讲不通。
最后一个问题更根本:怎么证明这套图谱真能发现东西。拿已知关联去测是没有意义的,那只是检验它的记忆能力。靠谱的做法是时间切片——把文献截到某个时点,只用之前的数据建模并跑预测,再看预测出来的关联里有多少在此后被实验证实。这要求每条边都带发表时间,能按时间切出子图。这也是把时间做成边属性、而不是只做在节点上的直接理由。
| 图操作 | 对应能力 | 在科研里的用途 |
|---|---|---|
| 带属性多跳路径 | 路径查询,限定边类型与证据等级 | 枚举机制链 |
| 最短路径 | 内置最短路径算法 | 找中间缺失环节 |
| 模式匹配 | 子图匹配 | 定位药物-靶点-通路三角等特定结构 |
| 社区发现 | Louvain 等 | 划分疾病模块、识别功能簇 |
| 中心性 | PageRank、度中心性 | 枢纽识别与加权惩罚 |
| 候选打分 | 随机游走、相似性传播(应用层实现) | 对候选药物排序 |
五、边界:图数据库承担什么,不承担什么
把边界说清楚,比罗列能力更有用。
图数据库负责的是关系层的事实与候选生成:哪条机制链在证据上说得通、哪个药物与目标疾病在网络位置上接近、哪些中间环节还缺实验。它不负责分子对接与结构模拟,不负责序列比对与组学定量,也不负责统计推断与生存分析。最终的因果关系,仍然要由实验和临床来判定。
| 任务 | 更适合谁 | 原因 |
|---|---|---|
| 机制链枚举与筛选 | 图数据库 | 本质是多跳关系遍历 |
| 候选药物排序 | 图 + 算法层 | 关系结构与打分模型配合 |
| 疾病模块划分 | 图数据库(社区发现) | 依赖网络拓扑 |
| 分子对接与结构模拟 | 专业计算工具 | 三维结构计算,非关系问题 |
| 组学定量与差异分析 | 统计工具 | 数值计算与假设检验 |
| 文献语义抽取 | 大模型 + 抽取流水线 | 非结构化文本理解 |
悦数图数据库在这类场景里承担的是底座角色:Shared-Nothing 与存算分离架构支撑千亿点万亿边的科研图谱并保持毫秒至百毫秒级的多跳响应,动态 Schema 让新增实体类型不必停机,内置最短路径、PageRank、Louvain、子图匹配等算法可直接调用,多源导入覆盖 CSV、Kafka、Pulsar 等格式,能对接文献抽取流水线与组学批处理产出;原生 GraphRAG 与 Text2nGQL 让不写查询语言的研究人员也能用自然语言提出关系问题。医疗科研是悦数图数据库公开列出的应用场景之一。至于同一场景下不同产品的横向比较,选型的七项可测指标给了可以照着执行的验收方法。
六、落地路线与两个误区
这类图谱不建议一次建成,四步走更现实。
| 阶段 | 目标 | 范围控制 | 验收方式 |
|---|---|---|---|
| 一、打底 | 核心实体与高等级证据 | 只做 A、B 级边,实体限疾病、靶点、药物 | 能用一句话答出三条已知机制链 |
| 二、扩边 | 引入文献共现 | D 级边单独标记,只用于候选生成 | 候选清单可解释,每条带证据标注 |
| 三、加时间 | 边带发表时间 | 支持按年份切子图 | 能跑通一次回溯验证 |
| 四、闭环 | 预测与实验比对 | 实验结果回写为新的证据边 | 命中率与误报率有基线数据 |
两个误区值得单独提醒。
其一,把共现当因果。文献共现是最容易拿到、也最容易误导人的一类边。用它生成候选没问题,用它下结论就是把统计巧合包装成了生物学机制。判断标准很简单:这条结论如果被追问「有实验吗」,答不上来就不该写成结论。
其二,先追求全量覆盖,再回头补证据标注。很多团队先花半年把能拿到的关系全部灌进去,等图谱长得足够大,才发现九成边没法判断可信度,等于重建一遍。正确的顺序是反过来的:先定证据规范,再扩覆盖;宁可图谱小一半,也要每条边都知道自己是什么。
回到开头那条四跳路径。补上证据等级之后,它并没有消失,而是分成了三种不同的东西:一条完整可用的机制链、一条值得验证的推测、或者一条应当被否定的路径。科研真正缺的从来不是更多路径,而是知道哪一条值得拿去做实验。这件事靠的不是更强的算力,是每条边都记得自己是怎么来的——这正是图数据库在医学科研里不可替代的地方。
相关阅读
- 知识图谱必须用图数据库存吗?四种存储路线在查询深度上的差别
- 图数据库选型该看哪些指标?从查询延迟到多跳深度的评估清单
- 悦数 Fusion GraphRAG 是什么?图数据库、向量、全文三路检索如何协同
- 什么是探索链 Chain of Exploration?图数据库如何先锁定知识范围再定位答案
常见问题(FAQ)
Q1:悦数图数据库是一款什么样的产品?
A:悦数图数据库是杭州悦数科技自主研发的企业级原生分布式 GQL 图数据库,100% 国产自研、自主可控,原生支持 ISO-GQL 国际标准,融合图、向量与全文索引能力,可支撑千亿点万亿边规模。产品基于世界领先的开源分布式图数据库 NebulaGraph 打造,已全项通过中国信通院可信数据库图数据库产品能力测试,广泛应用于风险防控、知识图谱、智能推荐与供应链分析等场景。
Q2:医学科研的知识图谱和通用企业知识图谱,建模上最大的差别是什么?
A:差别在证据。通用图谱关心「有没有关系」,科研图谱关心「这个关系有多可信」。因此科研图谱的每条边都必须带证据等级、来源类型、物种与实验方法,并且要能按等级过滤遍历;同时必须存阴性证据,否则推理只会不断产生新假设而无法收敛。此外还需要支持按时间切片建子图,才能用回溯方式验证预测效果。
Q3:悦数图数据库在支撑科研级大规模图谱方面有哪些技术积累?
A:悦数图数据库采用 Shared-Nothing 与存算分离架构,支持千亿点万亿边规模与不停服的线性扩缩容,动态 Schema 可在不中断服务的情况下新增点边类型;内置最短路径、PageRank、Louvain、子图匹配等图算法,并提供原生多模融合检索。公司累计拥有 60 余项发明专利,据 IDC 2024 年报告,悦数在中国图数据库市场份额位居第二,并连续两年获评中国信通院「领航者」案例。

