基于item边CCA对齐的跨域推荐方法
技术领域
本发明涉及基于item边CCA对齐的跨域推荐方法,属于跨域推荐技术领域。
背景技术
推荐问题包含了3个主体user,item,rating,分别表示在特定领域(如电影)中用户user对某一电影item的评分rating,其目标是根据观测的user,item,rating数据,判断未知的user-item的rating。根据推荐算法的研究对象,可以将推荐算法分为基于内容推荐、协同过滤推荐及基于因子分解推荐。其中基于内容推荐类算法,以item的上下文内容为研究对像,通过语义及标签分析,将内容相似的item作为推荐对象;协同过滤推荐算法,例如UserCF和ItemCF,以user-user或item-item的关联为研究对象,分析user-user或item-item的相似性,并将相似性高的user-user或item-item作为推荐的参照,以补全未知rating;基于因子分解的推荐算法,以user-item间的潜在关联因子作为研究对像,通过分析rating矩阵的分解方法,找到user与item的关联因子,并依据该关联因子对未知rating进行预测。
推荐系统面临的难题在于在某一特定领域(如电影)中观测数据的稀疏性,即在观测数据user,item,rating数量较少,会导致对特定user-item的rating预测产生误差。因此,若能综合用户在多个领域的观测数据,对某一领域进行辅助分析,可以提高该领域的推荐精度。对此,跨域推荐算法孕育而生,并逐渐成为推荐系统的研究焦点。跨域推荐问题的思路,如何准确挖掘辅助域与目标域之间的关联,以及如何有效利用域间关联,对目标域的rating进行预测。对此,“迁移学习”成为解决跨域推荐问题的主要方法。其主要实现过程是找到辅助域与目标域中的“共通因子模型”,利用数据挖掘方法将辅助域中的“共通因子模型”进行训练。训练后的共通因子模型转移到目标域中,并在目标域中指导目标域的rating预测。在构建跨域推荐问题的迁移模模型时,有以下几方面难点问题。
1)迁移模型的可描述性:对于跨域推荐问题,其关键问题在于发现域间的共同属性,因此,若迁移模型可准备描述辅助域或目标域的某一属性,则可对域间的迁移模型进行准确匹配。因此,可描述性表达了迁移模型的合理性,可直接影响迁移学习的效果。
2)迁移模型的共通性:为解决此类问题,需要主要在模型的构建过程中,将域间的共同因子作为迁移模型构建目标。若迁移模型所表达的域间的共同因子越准确,则跨域推荐的效果越好。
3)迁移模型的完备性:由于辅助域与目标域所面向的领域不同,因此好的迁移模型,不仅需要准确表达域间的共同因子,而且需要保证共同因子的数据满足辅助推荐的需要。其中充足共同因子数量可充分描述域间的共同轮廓,可有效提高跨域推荐的准确性。
本发明所提出的(基于item边CCA对齐的跨域推荐方法)CIAM算法利用CCA将辅助域与目标域的item边进行对齐,并在目标域进行推荐求解时保留了目标域中的user特征。该方法可提高辅助域item边的辅助作用,并可避免辅助域user边对目标域user边的影响,可有效地提高跨域推荐的准确性。
发明内容
本发明的目的是提出基于item边CCA对齐的跨域推荐方法,以解决EK-PHD滤波器在新生目标强度未知的情况下无法跟踪目标的问题。
基于item边CCA对齐的跨域推荐方法,所述方法包括以下步骤:
步骤一、Item边对齐:通过CCA方法将目标域D
(1)的评分阵R
(1)与辅助域D
(2)的评分阵R
(2)映射入t维CCA空间,从而利用t个对齐因子,将
及
转化为
及
实现目标域的item
(1)与辅助域的item
(2)的对齐;
步骤二、Item边迁移:对原目标域
和原辅助域
进行Item边对齐,实现辅助域与目标域的跨域推荐,对转化后的目标域H
(1)的分解结果进行修正,使H(
1)的UV分解结果中包含辅助域H
(2)对矩阵U和V的影响;在经过CCA对齐及目标域UV分解后,根据下式得到目标域的预测阵
其中,原目标域
与原辅助域
是R
(1)与R
(2)矩阵转化成不含空元素的满阵后的结果,A’是A的转置矩阵,A是选择相关系数最大的t个值所对应的矩阵Σ
A的t个特征向量所构成的矩阵。
进一步的,在步骤一中,具体的,利用UserCF-based或ItemCF-based算法,将R
(1)与R
(2)矩阵转化为不含空元素的满阵,即
或
对于基于CCA的item边对齐方法,将
及
作为两组变量,
则H
(1)及H
(2)为
及
的对齐结果,即将
及
进行线性变换得到H
(1)及H
(2),
其中
因此,
和
分别按a
i和b
i进行线性变换得到
间的相关系数如下相关系数ρ
i如下:
其中,ai和bi分别为矩阵ΣA和ΣB对应的特征向量,hi (1)和hi (2)是H(1)和H(2)的第i个分量,ai’和bi’是向量ai和bi的转置,
根据CCA的基本原理
为Σ
A和Σ
B的特征值,a
i和b
i分别为对应的特征向量,其中Σ
A,Σ
B,ρ
i,a
i和b
i的关系如下:
选择相关系数最大的t个值所对应的t个特征向量构成矩阵A和B,其中A=[a
1,a
2,…,a
t],B=[b
1,b
2,…,b
t],根据式(2)可得到矩阵
及
其中H
(1)与H
(2)的t个列,是由
和
的item边按A和B进行线性组合得到的,矩阵A将c列
映射为t列H
(1),矩阵B将d列
映射为t列H
(2),且H
(1)与H
(2)所对应的t个列具有最大的典型相关性,因此,A和B实现了
和
的item边对齐。
进一步的,在步骤二中,具体的,对
和
进行Item边对齐,准确实现了辅助域与目标域的跨域推荐,将Item边对齐后的目标域H
(1)分解为H
(1)≈U
(1)V
(1)′,辅助域H
(2)分解为H
(2)≈U
(2)V
(2)′,其中
体现了目标域中user对f维user-item隐含因子的关联,蕴含了目标域中user边特征,
体现了辅助域中f维user-item隐含因子对对齐后的t维item的关联,由于H
(2)中的t维item已经过CCA对齐,因此V
(2)直接用作目标域中V矩阵求解的约束,为保留目标域中user边特征,将U
(1)作为目标域H
(1)中U矩阵求解的约束,H
(1)进行UV分解的公式如下:
式(6)分别对U和V求偏导得:
其中γ为步长因子,当e
u,i趋近于0时迭代停止,根据式(7)得到修正的H
(1)阵
由于
到H
(1)经过了A变换,反之利用式(10)实现由
向
的转换。
本发明的主要优点是:
1)本发明所采用的CCA分析,可保证对齐后的item与原辅助域和目标域中的item具有最大的相关性,以提高跨域推荐的合理性。
2)本发明相对于CST算法,仅将辅助域中对齐后的item特征进行迁移,避免了辅助域的user特征对目标域user边的干扰,以提高辅助域item边的协同推荐效果。
3)本发明在UV分解过程中保留了目标域的user边特征,使得item的迁移过程兼顾了辅助域的item特征,并强调了目标域的user特殊性,使推荐结果更接近目标域的真实情况。
附图说明
图1为H(1)与H(2)构成的典型相关阵C;
图2为CIAM算法的整体运行框架。
具体实施方式
下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提出了基于item边CCA对齐的跨域推荐方法的一实施例,所述方法包括以下步骤:
步骤一、Item边对齐:通过CCA方法将目标域D
(1)的评分阵R
(1)与辅助域D
(2)的评分阵R
(2)映射入t维CCA空间,从而利用t个对齐因子,将
及
转化为
及
实现item
(1)与item
(2)的对齐;
步骤二、Item边迁移:对原目标域
和原辅助域
进行Item边对齐,实现辅助域与目标域的跨域推荐,对H
(1)的分解结果进行修正,使H(
1)的UV分解结果中包含辅助域H
(2)对矩阵U和V的影响;在经过CCA对齐及目标域UV分解后,根据下式得到目标域的预测阵
进一步的,本发明借助CCA方法将目标域D
(1)的评分阵R
(1)与辅助域D
(2)的评分阵R
(2)映射入t维CCA空间(对齐空间),从而利用t个对齐因子,将
及
转化为
及
实现item
(1)与item
(2)的对齐。CCA的空间映射需要矩阵R
(1)与R
(2)中的所有元素均为非空元素,然而在推荐系统中矩阵R
(1)与R
(2)大多为稀疏阵,存在大量空元素。对此可利用UserCF-based或ItemCF-based算法,将R
(1)与R
(2)矩阵转化为不含空元素的满阵,即
或
对于基于CCA的item边对齐方法,可将
及
作为两组变量,
则H
(1)及H
(2)为
及
的对齐结果,即将
及
进行线性变换得到H
(1)及H
(2),其中
因此,
和
分别按a
i和b
i进行线性变换得到
间的相关系数如下相关系数ρ
i如下:
相关系数ρ
i体现了
间相关性,因此,为实现item
(1)与item
(2)的对齐,需要找到相关系数ρ最大的t个向量[a
1,a
2,…,a
t]和t个向量[b
1,b
2,…,b
t]对
和
进行变换。根据CCA的基本原理
为Σ
A和Σ
B的特征值,a
i和b
i分别为对应的特征向量。其中Σ
A,Σ
B,ρ
i,a
i和b
i的关系如下:
对此,可选择相关系数最大的t个值所对应的t个特征向量构成矩阵A和B,其中A=[a
1,a
2,…,a
t],B=[b
1,b
2,…,b
t]。根据式(2)可得到矩阵
及
其中H
(1)与H
(2)的t个列,是由
和
的item边按A和B进行线性组合得到的。矩阵A将c列
映射为t列H
(1),矩阵B将d列
映射为t列H
(2),且H
(1)与H
(2)所对应的t个列具有最大的典型相关性。因此,A和B实现了
和
的item边对齐。H
(1)与H
(2)的典型相关阵C如图1所示,C由4个子相关矩阵构成,其中H
(1)-H
(1)和H
(2)-H
(2)的相关矩阵均为单位阵,H
(1)-H
(2)和H
(2)-H
(1)的相关矩阵相等均为对角阵。例如图1中由C
2,2,C
2,t+2,C
t+2,2,C
t+2,t+2构成
的典型相关阵C2,其相关系数为ρ
2。
进一步的,在步骤二中,具体的,对
和
进行Item边对齐,即可准确实现辅助域与目标域的跨域推荐。为考虑辅助域H
(2)对目标域的影响H
(1),需要对H
(1)的分解结果进行修正,使H
(1)的UV分解结果中包含辅助域H
(2)对矩阵U和V的影响。在Item边对齐后的目标域H
(1)可分解为H
(1)≈U
(1)V
(1)′,辅助域H
(2)可分解为H
(2)≈U
(2)V
(2)′,其中
体现了目标域中user对f维user-item隐含因子的关联,蕴含了目标域中user边特征,
体现了辅助域中f维user-item隐含因子对对齐后的t维item的关联。由于H
(2)中的t维item已经过CCA对齐,因此V
(2)可直接用作目标域中V矩阵求解的约束。为保留目标域中user边特征,需要将U
(1)作为目标域H
(1)中U矩阵求解的约束。H
(1)进行UV分解的其公式如下:
式(6)分别对U和V求偏导得:
其中γ为步长因子,当e
u,i趋近于0时迭代停止。根据式(7)可得到修正的H(1)阵
由于
到H(1)经过了A变换,反之可利用式(10)实现由
向
的转换。
本发明还提出了另一个实施例对上一实施例进行了优化:
在经过CCA对齐及目标域UV分解后,可根据式(10)得到目标域的预测阵
本发明所设计的CIAM算法,计算过程如图2所示。其中,
和
分别为原目标域与原辅助域,CCA实现了
和
的item边对齐。H
(1)与H
(2)分别为对齐后的
和
对H
(1)与H
(2)进行UV分解可得到
和
由于H
(1)与H
(2)已被对齐,因此V
(1)和V
(2)为同态的Item特征矩阵。为考虑辅助域对目标域的影响,可以将矩阵V
(2)及U
(1)作为H
(1)分解约束,并对H
(1)进行UV分解得到新的U和V矩阵及修正的H
(1)阵
由于A为奇异阵,因此,可利用式(10)实现由
向
的转换。
本方法的重要之处在于V
(1)与V
(2)的相似性,即目标域与辅助域的关联性。当V
(1)与V
(2)的相似越弱时
与
的偏差越大,说明
作为辅助域会增加
推荐的多相性;当V
(1)与V
(2)的相似越强时,
与
的偏差越小,说明辅助域
与目标域
相关性越强,
的可信度越高。因此若以可信度作为推荐的目标,可以利用式(11)替换将式(6)。
利用式(11)所得的式(12)
可提高预测的可信度。
本发明方法法中的参数在于Item边对齐因子个数t,及user-item隐含因子个数f。其中t为辅助域与目标域Item边对齐后的维度。f为目标域中user-item进行UV分解的隐含因子个数,因此需要满足f≤t,t≤c,t≤d其中c为目标域中item的数量,d为辅助域中item的数量。对发明算法,t=floor(min{c,d}),f的选择需要参考t个典型相关系数ρ1,ρ2,…,ρt。对f的选择如下: