1.一种基于自适应解纠缠的跨域推荐方法,其特征在于包括以下步骤:
S1、数据获取:获取源域和目标域的历史交互数据,并分析选出源域和目标域的重叠用户,基于上述重叠用户,从源域和目标域中分别提取出对应的用户‑项目交互数据;
S2、构建用户‑项目交互图:使用源域和目标域的重叠用户及其项目交互数据,构建源域、目标域和共享域的用户‑项目交互图,所述用户‑项目交互图为异构二部图,用户‑项目交互图包括用户类型节点和项目类型节点,其中,源域和目标域的交互图分别使用各自域内的用户和项目,共享域的交互图包括源域和目标域的用户与项目;
S3、用户和项目表示初始化:针对源域和目标域分别进行初始化用户表示和项目表示,针对共享域仅进行初始化用户表示,其项目表示结合源域和目标域的项目表示;
S4、变分双向图编码VBGE:使用变分双向图编码VBGE分别对源域、目标域和共享域的交互图进行编码,通过VBGE进行信息传播,生成用户和项目的近似后验分布,并通过汇总同质信息来生成用户和项目的隐变量表示,捕捉源域和目标域之间的知识;
S5、自适应解纠缠:采用自适应解纠缠技术,将源域用户表示与共享域相同用户表示中的共享信息与域特有信息分离,获得源域用户的共享信息维度;
S6、共享信息增强:采用共享信息增强技术,通过源域与共享域解纠缠出的共享信息增强目标域用户表示,同时通过目标域与共享域解纠缠出的共享信息增强源域用户表示,提升目标域和源域的推荐效果;
S7、个性化推荐:将最终得到的用户表示与项目表示进行点积计算,得出用户对项目的兴趣度,根据该兴趣度为用户提供个性化的推荐。
2.根据权利要求1所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S2中,针对源域和目标域的交互图,用户为重叠用户,项目分别为各自域内的项目;针对共享域的交互图,用户为重叠用户,项目由源域和目标域的项目组成。
3.根据权利要求2所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S4中,VBGE通过两步信息传播机制对用户‑项目交互图进行编码,包括以下步骤:S401、同质信息传播:由于用户‑项目交互图为异构二部图,VBGE采用两步信息传播机制,在同质邻居之间传播信息,以生成中间表示;
S402、中间表示计算:针对源域的用户表示,计算其基于2‑hop邻居的中间表示X其中,Norm(·)为行归一化操作,A 为源域用户‑项目交互矩阵,δ(·)为LeakyReLU激活函数, 为可学习参数矩阵;
S403、隐变量分布建模:基于中间表示 计算用户的潜在变量分布:
其中, 为拼接操作,φ(·)为Softplus函数, 和 为可学习参
数矩阵, 和 分别为用户表示的均值和标准差;
S404、隐变量采样:利用重参数化技巧reparameterization trick采样用户的隐变量表示:其中, 为用户的源域特定表示,用于捕获该域的用户特征。
4.根据权利要求3所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S5中,利用公式(5)和(6)进行计算,并通过阈值确定共享信息所在的维度:其中, 为用户的表示分布,DKL为求KL散度操作,δi为用户之间各维度的KL散度,τ为阈值;通过δi<τ,确定用户共享信息所在的维度以及维度数。
5.根据权利要求4所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S6中,首先针对源域或目标域的用户的表示分布和共享域中对应的表示分布根据确定的可共享维度求均值,得到平均的用户表示分布,再对该用户表示分布进行重采样得到可共享的用户信息的具体表示,然后将该用户信息与对应的用户表示相加以增强用户表示所包含的信息。
6.根据权利要求5所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S6中,共享信息增强的过程描述如公式(7)和(8)所示:其中,μ为分布的均值,σ为分布的标准差,∈i为从标准正态分布 中采样的噪声项,zi为对分布采样的结果;mask表示掩码,用于指明可共享维度,user_share为解纠缠出的可共享信息。
7.根据权利要求6所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S7中,首先采用加权求和的方式将用户解纠缠出的共享表示和领域特定表示融合,在用户表示和项目表示生成后,采用点积计算衡量用户对项目的兴趣度,然后对兴趣度进行归一化处理,采用sigmoid激活函数进行非线性变换,确保计算出的兴趣度适用于排序推荐,最后根据归一化后的兴趣度,对所有候选项目进行排序,选取兴趣度最高的前N个项目作为推荐结果。
8.根据权利要求7所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:所述步骤S7包括以下步骤:S701、用户表示的生成:在跨域推荐场景下,用户表示由共享表示和领域特定表示组成,采用加权求和的方式进行融合,以充分利用跨领域信息并保持领域个性化,其中,用户表示的计算公式如下所示:其中,Eu表示最终的用户表示向量; 表示解耦出的用户共享表示,代表用户在所有领域中的公共兴趣信息; 表示用户在当前目标领域中的原始个性化表示,代表用户在该领域的特定偏好;
S702、计算用户对项目的兴趣度:在用户表示Eu生成后,获取相应的项目表示,并采用点积计算衡量用户对项目的兴趣度:Ei=E[i] (10)s(u,i)=Eu·Ei (11)其中, 为模型训练得到的项目表示矩阵,N为项目总数,d为嵌入维度;i为项目的索引,Ei为项目i的表示向量;s(u,i)表示用户u对项目i的兴趣度;
S703、归一化处理:对兴趣度进行归一化处理,确保计算出的兴趣度s(u,i)适于排序推荐,采用sigmoid激活函数进行非线性变换:使兴趣度的数值范围在(0,1)之间;
S704、个性化推荐:根据归一化后的兴趣度 对所有候选项目进行排序,选取兴趣度最高的前N个项目作为推荐结果,即:然后,将排名最高的N个项目推荐给用户,实现个性化推荐。
9.根据权利要求1‑8任一项所述的一种基于自适应解纠缠的跨域推荐方法,其特征在于:在步骤S1中,重叠用户指在源域和目标域中均出现过的用户。