多层网络、时间网络与超图
“一对节点、一条边、一张图”的表示在三种情形下不够用:同一组节点之间有多种关系,关系随时间变化,或相互作用发生在多于两个节点之间。
多层网络
多层网络(multilayer network):由若干层组成,每层是一个网络,同一个物理节点在不同层中的副本称为节点–层(node-layer),层与层之间由层间边相连。所有层节点集合相同、层间边只连接同一节点的不同副本的特殊情形称为多重网络(multiplex network)。
设共有 个节点、 层,第 层的邻接矩阵为 ,层间耦合强度为 。多重网络可以写成一个 的超邻接矩阵(supra-adjacency matrix):
对角块是层内连接,非对角块是层间连接。若层有自然顺序(如时间窗),通常只连接相邻层,非对角块只出现在紧邻对角线的位置。超邻接矩阵让很多单层方法(随机游走、谱分析、模块度)可以直接推广到多层网络。
生物医学中的多层结构:
- 线虫神经系统:化学突触层(有向)与电突触层(无向)共享同一组 302 个神经元;
- 多模态脑网络:结构连接层与功能连接层;
- 时间窗功能网络:每个时间窗一层,多层模块度与“灵活性”见动态功能连接与多层脑网络;
- 多组学网络:同一组基因的 PPI 层、共表达层、调控层。
把多层网络简单地把各层相加成一张加权图(聚合,aggregation),会丢掉“哪种关系”这一信息,有时还会造成错误结论:两个节点在每层都只有一条弱边,聚合后可能看起来连接很强。
时间网络
时间网络(temporal network)中每条边带有时间戳或持续时间,例如医院病房中两人的接触记录 。表示方式有两种:接触序列(事件列表 )和快照序列(按时间窗聚合成一串邻接矩阵 )。时间网络中的路径必须按时间先后前进: 在 9 点接触 、 在 8 点接触 ,病原体不能经 从 传到 ,尽管在聚合图上存在路径 ––。因此聚合图会高估可达性和传播速度(Holme 与 Saramäki,2012)。
超图
超图(hypergraph):每条超边(hyperedge) 是节点集合的一个任意子集,而不只是一对节点。超图可以用 的关联矩阵 表示: 当且仅当节点 属于超边 。
多体相互作用在生物学中很常见:蛋白质复合物由多个亚基共同组成,一个生化反应有多个底物和产物,一次处方同时包含多种药物,多个脑区在同一时刻共同激活。超图有三种常见的降维表示,各有代价:
| 表示 | 做法 | 损失 |
|---|---|---|
| 团展开(clique expansion) | 同一超边内的节点两两连边 | 无法区分“三元复合物”与“三对两两结合”;高估聚集 |
| 星展开 / 二分表示 | 每条超边作为一类新节点,与其成员相连 | 无损,但得到的是二分图,需要二分图方法 |
| 单纯复形(simplicial complex) | 超边的所有子集也视为存在 | 适合拓扑数据分析,但“子集也存在”不一定符合生物学 |
关联矩阵与二分图的双邻接矩阵是同一个对象: 就是“节点–超边”二分图的 。所以超图在计算上总可以先存成二分图(超邻接矩阵与团展开信息丢失的演示见代码示例)。Klamt 等(2009)系统讨论了用超图表示代谢反应和信号网络的必要性:例如反应 只有在 和 同时存在时才发生,普通有向图 、 无法表达这种“与”关系。高阶相互作用的结构与动力学见 Battiston 等(2020)的综述。
多层、时间与超图表示会显著增加需要设定的参数(层间耦合 、时间窗长度、超边的定义阈值)。结论应当在这些参数的合理范围内检查稳健性;当数据本身无法区分“多体相互作用”和“多个两两相互作用”时(例如只有成对的共表达相关),不应把团展开后的结构解释为高阶机制。