CHARM 把图结构喂给了 LLM,顺便解决了零样本跨域迁移

做图学习的人这几年一直有两股力在拉扯。一边是 GNN 这条路,模型越做越深,但换一个图就得重新训或者至少做下游适配,零样本迁移基本没戏。另一边是 LLM,语言模型在文本、代码、图像上大杀四方,但是扔给它一个带结构关系的图——比如社交网络上的用户节点同时带着头像和简介——它就不知道怎么把「A 节点连了 B 和 C」翻译成自己能理解的东西。

昨天 arxiv 上挂出来的这篇 CHARM,刚好在打这个口子。

论文全名是「CHARM: A Multimodal Graph Foundation Model with Hierarchical Context Modeling for Zero-Shot Transfer」,来自 Ankang Yang、Jitao Zhao、Di Jin 等人。核心思路一句话说就是:别让模型只看孤立的节点,而是给它一个分层的「图上下文」——既包含节点本身的文本和图像,也包含它跟邻居怎么连、邻居长什么样——然后把这些转成图 token,喂给 LLM,让 LLM 替你做判断。

这样做的好处是,模型在训练时见过的图类型,跟推理时遇到的图,可以完全不一样。你拿电商知识图谱训完的 CHARM,可以直接扔到学术引用网络或者社会关系图上做节点分类或链接预测,不需要目标域的微调。这就是零样本跨域迁移,也是他们强调的「zero-shot transfer」的关键实验设置。

为什么这件事以前做不了

之前也不是没人试过让图模型跨域。GNN 路线的问题是,GNN 学到的节点表征严重依赖训练时图的结构分布,图一换,分布就漂了。而且大多数 GNN-based 的图基础模型(GFM)都需要下游适配,到新图上还得小训几步。LLM 路线的问题则是,大部分工作只处理纯文本图,或者只在一个领域里做,没见过真实世界那种一个节点又带图片又带描述的多模态情况。CHARM 在摘要里点出了两个核心挑战:模型既要学到每个单模态的通用知识,又要捕获跨模态的关联;同时,在完全没有目标域数据的情况下,怎么把跟域绑定的节点表征抽成域无关的高层概念。

它的解法是引入层次化图上下文。具体来说,CHARM 里的每一层上下文不只编码节点本身的嵌入,还把节点属性(文本、图像)、局部结构(跟谁相连)、邻居属性都编码进一个统一表示。然后通过一个 modality-aware graph context encoder,把这些多模态信息跟图结构整合到一起,再转成 LLM 能吃的 token。LLM 本身不需要重新训练——它只是用预训练的语言理解能力来做任务头的推理。

在训练阶段,CHARM 把一个图切成一批多模态的、有结构上下文的 token 序列,LLM 在这些 token 上做分类、预测之类的任务;推理阶段,拿一个全新的图来,照样可以走一遍这个编码流水线,输出一样格式的 token,同一个 LLM 头照跑不误。

价值在哪

我自己的判断是,CHARM 在 zero-shot 多模态图任务上确实刷了 benchmark,论文里报了提升。而且它给了一个比较干净的范式:把结构化数据转成 LLM 能消化的中间表示,不用让 LLM 硬学图结构。这跟现在很多 Agent 工具把 API 调用文档、工具签名转成文本或 token 给 LLM 用的思路是一脉相承的。

论文没有直接放代码仓库链接,但这个方向的模型一旦开源,对做推荐系统、知识图谱、社交网络分析的小团队是实打实的利好——不需要自己囤一大堆多模态训练数据和一个专门的 GNN 推理管线,一个 LLM 加一个编码器就能干活。当然,前提是编码器的计算开销可控,以及 LLM 的推理成本没高到抵消掉它省下的训练成本。

还剩下哪些问题

这类 paper 读到最后,我最想知道的那几个事还没写到摘要里来:图上下文的 token 化到底消耗多少 LLM 上下文窗口?层次化建模在不同规模图上的推理延迟有多大?以及最关键的一点——零样本的「零」到底有多零:是同一个领域不同图的迁移,还是真的跨领域(比如从社交网络到分子图)?这些得等读完全文再判断。

但至少 CHARM 是我最近看到比较顺眼的图基础模型工作,跟那种换个注意力机制刷一点的不一样——它认真在想:图模型要真的能用起来,就不能每个客户的数据都训一遍。