1.一种基于用户上下文耦合相似度的概率矩阵分解推荐方法,其特征在于,所述方法包括以下步骤:步骤1.收集大量用户数据,数据包括用户的上下文信息和用户之前选择的项目信息,以此为基础构建数据集;
步骤2.结合用户上下文之间的耦合相似度和可信度构建用户信任关系矩阵,用户上下文的相似性具体计算方法如下所示:上述公式中 是用户ui和用户us在上下文j上的耦合相似度CAVS,且COS(ui,us)∈[0,1],其值越高代表越相似,l是上下文的数量;
耦合属性值相似度CAVS由特征内耦合属性值相似度IaAVS和特征间耦合属性值相似度IeAVS两部分组成,特征j上属性值ui,j和us,j之间的耦合属性值相似度定义为:和 分别为特征内耦合属性值相似度IaAVS和特征间耦合属性值相似度IeAVS;
特征内耦合属性值相似度IaAVS是站在属性值频率分布角度衡量不同属性值的相似度,定义如下:公式中gj(ui,j)和gj(us,j)分别是用户集合中用户上下文特征j上属性值为ui,j和us,j的用户集合;
特征间属性值耦合相似度IeAVS是站在属性间依赖聚合角度衡量不同属性值的相似度,定义如下:ωk是用户上下文特征k的权重,且 ωk∈[0,1],δj|k(ui,j,us,j)是属性值ui,j,us,j在上下文特征j下的特征间耦合属性相似度,定义如下:上式中∩表示上下文j取值为ui,j和us,j的条件下,上下文k的属性值的所有取值集合的交集,Pk|j(w|ui,j)是描述上下文j属性值为ui,j的条件下,上下文k属性值为w的概率分布,定义如下:另外,结合用户的可信度共同计算信任关系,用户的可信性计算方法如下所示:-
其中Ttr(ui,us)表示用户ui对用户us的可信度,d(us)为信任用户us的用户数量,即用户us的的入度,d+(ui)为用户ui信任的用户数量,即用户ui的的出度;
用户信任关系矩阵用Dm×m表示,元素Dis表示用户ui对用户us的信任程度,且Dis∈[0,1],信任度Dis的计算规则如下:(1)如果用户ui和用户us之间有直接的信任关系,即用户ui和用户us是邻居,那么Dis的值为直接信任度DT(ui,us),公式如下:DT(ui,us)=αCOS(ui,us)+(1-α)Ttr(ui,us)(2)如果用户ui和用户us之间没有直接的信任关系,但存在间接的信任关系,即用户ui和用户us之间有共同邻居,那么Dis的值为间接信任度IT(ui,us),公式如下:(3)如果用户ui和用户us之间即没有直接的信任关系,又没有间接的信任关系,那么Dis的值为0;
步骤3.联合用户信任关系矩阵和用户项目矩阵进行概率分解,过程如下:通过步骤1和步骤2获得用户项目矩阵Rm×n和用户信任关系矩阵Dm×m,那么评分矩阵为Dm×n和用户信任关系矩阵Dm×m的条件概率高斯先验分布分别为:其中 是指数函数,如果用户ui对项目vj有过评分,那么它的值为1,否则为0, 表示2
指数函数,当用户ui对用户us有信任关系时, 否则 N(x|u,σ)表示x服从均值为u、方差为σ的高斯分布,设g(x)=1/(1+exp(-x))将 和 的值映射到[0,1]区间内,用户潜在特征U、项目潜在特征V和信任潜在特征Z的先验概率符合高斯分布,因此,U、V和Z的零均值高斯分布如下公式所示:其中σU、σV和σZ表示U、V和Z高斯分布的方差,经过贝叶斯推断,得到U、V和Z的联合对数后验概率满足下式:其中,C是常数,最大化其对数后验等价于最小化如下目标函数:其中, ||·||F是表示Frobenius范数,目标函数E的局部最小值由梯度下降法求得,U、V和Z的梯度更新公式为:步骤4.新用户推荐项目集预测,过程如下:
对于新用户我们没有他们的潜在特征,通过新用户的信任用户采用均值策略融合新用户的潜在特征,新用户潜在特征计算公式如下所示:其中Unew表示新用户的潜在特征,T(Unew)为新用户Unew的信任用户集合,|T(Unew)|为信任用户的数量,Tnew,i为新用户对用户Ui的信任度,计算方法在步骤2中;
在获得新用户的潜在特征后,将新用户的潜在特征向量与项目潜在特征向量进行内积,预测新用户对项目的评分,新用户对所有项目的预测评分为其中Rnew,j表示新用户对项目j的预测评分,j=1,2,...,n,对所有项目按评分从大到小排序,选出前N个作为推荐集推荐给新用户Unew。