当前位置: 首页 > news >正文

深度解析:基于混合专家(MoE)与互信息解耦的多模态知识图谱推理架构

1. 异构特征对齐与初始化

  • 图谱特征structure来源于真实数据集,经过head2id以及relation2id,把实体和关系使用数字表示,然后将这些数字进行Structure Embedding查询并转化成struct_entity_embeddingstruct_relation_embedding。关于维度,在head2idrelation2id后,shape[batch_size],经过Structure Embedding后,shape变为[batch_size, dim][batch_size, r_dim](在本模型中dim = r_dim)。
  • 图像特征来源于预训练的ViT模型的Offline Visual Features,由于Offline Visual Features的维度与structure的维度不一致且差距较大,直接使用Linear映射会导致严重的语义扭曲问题,并且会引入参数增加计算量,所以在本模型中选择使用AvgPool空间池化的方法进行特征映射,并且使用降维后的特征作为img_entity_embedding,并且允许对该特征进行微调。但是由于缺乏表示relation的图像特征,所以img_relation_embedding无法使用图像特征进行表示,所以采用符合正态分布的初始化进行补充。shape经过AvgPool会发生变化[batch_size, visual_features_dim]->[batch_size, img_dim]
  • 文本特征来源于预训练的BERT模型的Offline Text Features,与图像特征类似,本模型选择使用Adaptive AvgPool的方法进行特征映射,并且使用降维后的特征作为txt_entity_embedding,并且允许对该特征进行微调。与图像特征不同的是,这里的空间池化方法是自适应的,该设计的原因是防止BERT的Offline Text Features长度不一致。同样的,也缺乏表示relation的文本特征,所以txt_relation_embedding无法使用文本特征进行表示,所以采用符合正态分布的初始化进行补充。shape经过Adaptive AvgPool会发生变化[batch_size, text_features_dim]->[batch_size, txt_dim]

2. 并行混合专家自适应层

2.1 总述

在这一层中,分别有Structure MoEVisual MoEText MoE三个混合专家网络,每一个混合专家网络内部有num_exps个专家,并且有一个Gate对专家的打分情况进行加权融合。

2.2 X_MoE

2.2.1 Expert

每一个Expert本质上由一个Dropout Layer和一个Linear Layer组成,这些专家同时对entity_embeddingrelation_embedding进行处理,以致力于从不同的角度上学习特征。这些专家的输出经过stackshape变化[batch_size, dim]->[batch_size, dim]--stack-->[batch_size, num_experts, dim]

2.2.2 Gate

Gate本质上也是一个Linear Layer和一个Softmax组成。Linear Layer通过把输入来的entity_embeddingrelation_embedding进行处理,然后输出num_experts个数字表示原始权重,然后经过Softmax后把这num_experts的原始权重映射到[0,1][0, 1][0,1]之间,成为本次混合专家的权重值。shape变化情况为[batch_size, dim]--LinearLayer-->[batch_size, num_experts]--Softmax-->[batch_size, num_experts]

2.2.3 求哈达玛积并输出

当前经过stack后的专家团原始输出的shape[batch_size, num_experts, dim]Gate的输出为[batch_size, num_experts],我们需要对得分进行unsqueeze把得分变为[batch_size, num_experts, 1],然后利用Broadcasting机制实现专家团输出与得分相乘,得到的最终加权后的结果,然后在dim=1的维度上相加,最终得到multiple_outputs [batch_size, dim]

最终返回三个值:

  • multiple_outputs [batch_size, dim]:最终加权后的专家团结果,用于后续的fuse。
  • expert_outputs [batch_size, num_experts, dim]:经过stack后的专家团成员的独立结果,用于后续解耦操作。
  • gate [batch_size, num_experts]gate对于本次样本的打分权重。

3. 自适应融合层

3.1 X_Modal

由于该模型有三种模态,所以在这个部分分别有Structure ModalVisual Modal以及Text Modal

在每一个X_Modal中,有multi个子模块,这些子模块分别由一层RELU一层Linear Layer以及一层Dropout组成。每一个X_Modal的输入就是并行混合专家自适应层的对应的X_MoE的输出中的multiple_outputs [batch_size, dim]

💡 架构设计动机(Why Multi?):这种并行multi个子模块的设计,借鉴了深度学习中的“多视角表征(Multi-View)”与“多头机制(Multi-Head)”思想,其核心优势在于: 1.多维语义解耦:知识图谱实体往往具备极其丰富的多重语义。单一的线性层容易导致特征表达同质化,而并行的multi个子模块能够将输入的单一向量投影到multi个不同的语义子空间中,从多维度全面挖掘模态的内在特征。 2.细粒度的注意力分配:为后续的Attention Scorer提供了更丰富的特征候选池。使得注意力机制不仅能在“模态与模态之间”分配权重,更能精准下钻到“同一模态的不同语义切面”进行动态打分,极大增强了模型应对复杂推理任务的表达能力。 3.提升特征鲁棒性:结合模块内部的Dropout层,多分支并行的结构避免了单点故障引起的特征丢失,提高了模型在面对噪声数据时的容错率。

3.2 动态模态注意力模块

该模块中含有模态数个multiAttention Scorer Block。第iAttention Scorer Block用于处理第i个所有的X_Modal[i]的输出,即第iAttention Scorer Block处理分别来自Structure Modal[i]Visual Modal[i]Text Modal[i]的输出,他们的输出shape[batch_size, dim]

3.2.1 Attention Scorer Block

Attention Scorer Block的本质就是一个Linear Layer以及一些shape变换操作,最终求一个哈达玛积的模块。

三路数据到达Attention Scorer Block后,首先会被stackdim=1上组合到一起,组合后[batch_size, 3, dim]。然后经过Attention Scorer得到一个值,然后进行Softmax[batch_size, 3, dim]->[batch_size, 3, 1]--squeeze-->[batch_size, 3]--softmax-->[batch_size, 3]--unsqueeze-->[batch_size, 3, 1],其中经过softmax后的得分我们称为attention_weights [batch_size, 3],然后最终得分在与stack后的结果[batch_size, 3, dim]利用Broadcasting机制进行哈达玛积,最终得到的结果[batch_size, 3, dim]dim=1求和得到最终融合结果[batch_size, dim]

然后把multiAttention Scorer Block的最终融合结果[batch_size, dim]dim=1上继续stack,堆叠后[batch_size, multi, dim],然后在dim=1上直接求和得到融合后的最终结果x_mm [batch_size, dim]

最终返回两个值:

  • x_mm [batch_size, dim]:最终三个模态融合后的结果。
  • attention weights [batch_size, 3]:最后一个Attention Scorer Block的权重值。

4. 互信息估计器

从输入的数据来看,互信息估计器接受的数据分别来源于并行混合专家自适应层的对应模态的expert_outputs [batch_size, num_experts, dim],即经过stack后的专家团成员的独立结果。互信息估计器就是利用各个模态下的专家团成员的独立结果,来计算互信息的。

4.1 理论基础

4.1.1 互信息

互信息I(X;Y)I(X; Y)I(X;Y)衡量得失两个随机变量XXXYYY之间的相关性,或者说“已知XXX的情况下,YYY的不确定性减少了多少”。

公式为:
I(X;Y)=Ep(x,y)[logp(x,y)p(x)p(y)] I(X; Y)=\mathbb{E}_{p(x, y)}[log\frac{p(x, y)}{p(x)p(y)}]I(X;Y)=Ep(x,y)[logp(x)p(y)p(x,y)]

  • p(x,y)p(x, y)p(x,y)XXXYYY的联合分布(他们同时出现的概率,即正样本对)。
  • p(x)p(y)p(x)p(y)p(x)p(y)是边缘分布的乘积(假设他们完全独立,对应代码里打乱顺序拼接在一起的负样本对)。

XXXYYY表示两个不同的专家提取的特征,如果I(X;Y)I(X; Y)I(X;Y)很高,说明两个专家学到的东西高度重合(表征塌陷)。我们要在Loss里减去这个值,强迫他们正交(解耦)。

4.1.2 CLUB(变分互信息上限)

真实世界中,高维特征的真实分布p(x,y)p(x, y)p(x,y)我们不知道!直接算不出来。

CLUB(Contrastive Log-ratio Upper Bound 对比对数率上界)提出了用一个神经网络qθ(y∣x)q_{\theta}(y|x)qθ(yx)去逼近真实的条件分布p(y∣x)p(y|x)p(yx),从而求出互信息的上界。

公式为:
I(X;Y)≤Ep(x,y)[log(qθ(y∣x))]−Ep(x)p(y)[log(qθ(y∣x))] I(X;Y)≤\mathbb{E}_{p(x,y)}[log(q_\theta(y|x))]-\mathbb{E}_{p(x)p(y)}[log(q_\theta(y|x))]I(X;Y)Ep(x,y)[log(qθ(yx))]Ep(x)p(y)[log(qθ(yx))]

  • Ep(x,y)[log(qθ(y∣x))]\mathbb{E}_{p(x,y)}[log(q_\theta(y|x))]Ep(x,y)[log(qθ(yx))]:正样本对对数似然positive
  • Ep(x)p(y)[log(qθ(y∣x))]\mathbb{E}_{p(x)p(y)}[log(q_\theta(y|x))]Ep(x)p(y)[log(qθ(yx))]:负样本对对数似然negative
  • 两者的差值求平均就是变分互信息上限。

高斯分布的概率密度函数 (PDF) 公式是:
P(y∣x)=12πσ2exp⁡(−(y−μ)22σ2) P(y|x) = \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left( -\frac{(y-\mu)^2}{2\sigma^2} \right)P(yx)=2πσ21exp(2σ2(yμ)2)

两边同时取对数(Log-likelihood,对数似然),并且忽略常数项log⁡(12πσ2)\log(\frac{1}{\sqrt{2\pi\sigma^2}})log(2πσ21),我们就得到了核心指数部分:
log⁡P(y∣x)∝−(y−μ)22σ2 \log P(y|x) \propto -\frac{(y-\mu)^2}{2\sigma^2}logP(yx)2σ2(yμ)2

  1. mu=μ\muμ(由self.p_mu网络预测)
  2. logvar.exp()=elog⁡σ2=σ2e^{\log\sigma^2} = \sigma^2elogσ2=σ2(方差,由self.p_logvar网络预测)
  3. (mu - y_samples)**2 / logvar.exp()=(y−μ)2σ2\frac{(y-\mu)^2}{\sigma^2}σ2(yμ)2
  4. 最后在forward的结尾return upper_bound / 2.0。这里的除以 2.0,完美对应了高斯分布公式分母里的那个2σ22\sigma^22σ2中的2

这就是为什么神经网络只需输出均值和方差,就能通过高斯假设计算出概率!

4.2 互信息估计器

每次会随机选择两个专家x和专家y。即对于Structure MoEText MoE以及Visual MoE的专家团中分别选择专家x和专家y。然后输入他们的专家团的独立信息expert_outputs [batch_size, num_experts, dim]。然后单独取这两个专家的信息,shape[batch_size, dim]

通过随机打乱索引,把原本不配对的 X 和 Y 强行凑在一起,以此来构造【负样本对】。

通过变分推断网络1(均值方差)变分推断网络2(对数方差)对于输入的X[batch_size, dim]分别预测mulogvar。然后计算【正样本对】的对数似然和【负样本对】的对数似然[batch_size, dim]。然后就可以计算互信息上界upper_bound

5. Multi_MoE

  • 获取headrelation的ID[batch_size]
  • 实体特征查表X_head = self.X_entity_embedding(head)[batch_size, dim]
  • 经过X_MoE,得到e_embed即MoE加权后的综合意见[batch_size, dim]以及未经融合的专家团的独立专家意见结合disen_X[batch_size, num_experts, dim]
  • 关系特征查表本质上是对关系IDrelation [batch_size]经过relation_embedding的查询将relation映射成r_embed [batch_size, r_dim](r_dim=dim)。然后r_img_embed, r_txt_embed = r_embed, r_embed。这属于一种参数共享策略,因为关系作为抽象谓词,本身存在模态缺失问题。
  • e_embedr_embed分别传入Adapt Fusion Layer得到融合后的e_mm_embedr_mm_embed
  • 计算预测得分,原理是head×relation=tailhead \times relation = tailhead×relation=tailpred_s = e_embed * r_embed, pred_s [batch_size, dim]。得到pred_s, pred_i, pred_d, pred_mm
  • 得到所有实体的权重all_s, all_v, all_t [num_entities, dim],并且把这三个实体的Embedding经过AdaptFusion Layer,获得三种模态融合后的融合实体Embeddingall_f [num_entities, dim]
  • 然后将预测出的pred_X [batch_size, dim]all_X.transpose(1, 0) [dim, num_entities]相乘,得到新的pred_X_score [batch_size, num_entities]。此时pred_X_score中的每一个batch中的num_entities个数字就表示该head * relation对应所有实体的可能性,然后再对pred_X_score进行Sigmoid处理将每一个可能性映射到[0,1][0, 1][0,1]之间。
http://www.jsqmd.com/news/453674/

相关文章:

  • 类和对象(一)
  • Java 如何从PLC 读取数据
  • JavaSE
  • 基于javaweb和mysql的ssm公开课记录管理系统(java+ssm+html+javascript+jsp+mysql)
  • SolonCode v0.0.20 发布 - 编程智能体(新增子代理和浏览器能力)
  • C++27 <mdspan>与USTRUCT内存布局冲突?UE6.5.3已静默修复但未文档化!附3行Patch代码+UnrealBuildTool自定义规则注入教程
  • 速冻机修正版
  • 地球系统模式——CESM
  • 全国铸造材料厂家实力测评!2026最新专业推荐榜单揭晓 - 深度智识库
  • RDPWrap-v1.6.2 + rdpwup-8 + RDP-win10系统远程多用户登录连接
  • 合作流程清晰简单的被芯生产工厂
  • 我的第一篇博客文章!
  • Agentic RAG:当检索增强生成遇上智能体,如何解决长尾知识的精准响应?
  • 2026年国内伺服刀塔实力厂家:谁在领跑精密加工核心部件国产替代? - 品牌推荐大师1
  • WebGoat JWT 密钥伪造关卡通关实战 | JWT 爆破与伪造全流程(第十一关)
  • 专业的初升高怎么学供应商
  • 2026年 吸塑制品厂家推荐排行榜:吸塑盒定制、吸塑托盘、食品吸塑盒、PET/PVC吸塑包装,专业源头工厂实力解析与口碑之选 - 品牌企业推荐师(官方)
  • 互联网大厂Java求职者面试实录:严肃面试官与搞笑谢飞机
  • 大模型压缩技术:知识蒸馏
  • 城市轨道交通网络客流大数据可视化系统【附源码】
  • 小龙虾OpenClaw免费无限量调用GLM-5和Qwen3.5-397B-A17B
  • 2026年口碑好的国际搬家专业公司推荐,全程无忧服务解析 - 工业设备
  • 专科生也能用!好评如潮的AI论文网站 —— 千笔·专业论文写作工具
  • 如何评估AI沉浸式体验系统的架构合理性?架构师给出5个指标
  • 基于python的社交媒体大数据挖掘与分析 【附源码】
  • 大模型压缩技术:模型架构调整
  • 2026年选购滚轮架聚氨酯胶轮,靠谱的聚氨酯胶轮生产厂有哪些 - 工业品牌热点
  • 2026年现浇阁楼专业厂家推荐:武汉锐贤钢结构工程有限公司,湖北现浇阁楼全系解决方案 - 品牌推荐官
  • 03 MATLAB/Simulimk 低压用户型电能路由器仿真模型(光伏发电+储能+逆变孤网运行)
  • 2026年盘点贵阳动漫游戏开发培训,专业靠谱机构推荐哪家 - 工业品网