基于重点元素的矩阵分解及微调方法技术

技术编号:13779776 阅读:84 留言:0更新日期:2016-10-04 13:10
本发明专利技术提供了一种基于重点元素的矩阵分解及微调方法。该方法主要包括:采集用户对于商品的评分信息,根据评分信息组成稀疏评分矩阵R;根据稀疏评分矩阵R初始化两个低维矩阵P,Q,将低维矩阵P和Q相乘得到预测矩阵设置基于稀疏评分矩阵R和预测矩阵之间的差值最小化的目标函数;通过迭代过程优化目标函数得到低维矩阵P,Q,以及预测矩阵对预测矩阵进行微调更新,得到最终的预测矩阵。本发明专利技术针对矩阵分解算法中存在的不足,通过对算法的改进,提出了基于重点元素的快速矩阵分解及微调算法,该算法提高了矩阵分解效率和分解速度的同时,提升了推荐的准确性。

【技术实现步骤摘要】

本专利技术涉及矩阵分解
,尤其涉及一种基于重点元素的矩阵分解及微调方法
技术介绍
当今时代,互联网发展迅速,已成为人们生活的重要组成部分和人类文明传播发展的重要载体。这个时代,无论是信息的生产者还是信息的消费者都遇到了很大的挑战。对于信息消费者,从大量信息中找到自己感兴趣的信息是一件非常困难的事情;对于信息生产者,让自己生产的信息脱颖而出,受到广大用户的关注,也是一件困难的事情。个性化推荐系统就是解决这一矛盾的重要工具,推荐系统为不同用户提供不同的服务,带来了由“人找信息”到“信息找人”的转变。主流的推荐算法有三个:基于内容的推荐、基于协同过滤的推荐、混合推荐算法。由于基于协同过滤的推荐算法具有思路简单易于理解、推荐准确度高、适用范围广等优点,使其成为了推荐系统中应用最为广泛的算法。很多情况下,对于已经接触或者有兴趣的商品,用户会以评分的形式把自己对于商品的偏好程度进行显式的反馈,这些评分数据在复杂而巨大的网络环境下显的尤为重要,一方面它简单直接可见的反应了用户对于商品的偏好,另一方面它对于其他用户亦是最直接的参考。用户的评分数据可以用一个规模巨大的矩阵来表示,矩阵中的元素表示某一用户对于特定商品的评分值。由于形成的矩阵中有许多空值,即用户对于商品没有过评分记录,因此该矩阵会是一个大规模的稀疏评分矩阵。利用一定的分析方法将矩阵中的数据填满,并根据填充的数据进行预测推荐是目前评分推荐系统研究的热点和难点问题。基于矩阵分解的推荐算法是一种典型的协同过滤推荐算法,是目前推荐算法研究的前沿领域之一。基于矩阵分解的协同过滤推荐算法可以将用户、物品的特征转换为隐语义两个低维特征矩阵,然后再通过计算用户和物品之间隐语义的相关性进行推荐。基于矩阵分解的推荐模型最早是使用标准的SVD(singular value decomposition,奇异值分解)模型进行分解预测,但是该方法需要事先进行矩阵空值的补全,并且具有相当高的时间复杂度,在大规模数据环境下应用困难,因此一直没能成为主流的矩阵分解方法。2006年,Simon Funk等首先提出改进的SVD方法,首先初始化两个低秩矩阵来表示用户特征和物品特征,然后通过随机梯度下降法对特征矩阵进行优化,使其更接近原始的评分矩阵。这种矩阵分解方法被定义为隐式语义模型,并成为基本的矩阵分解模型。此后对于矩阵分解方法的改进都是在进行基于优化的改进,例如NMF、PMF、以及BPMF模型等,均提高了矩阵分解模型的鲁棒性和推荐效率。矩阵分解算法具有准确度高、可扩展性好等诸多优点。然而在进行低维隐语义矩阵的学习优化过程中,传统算法在计算过程中综合考虑了整个矩阵综合评分对于分解结果的影响,没有考虑到已有评分数据对于分解效果的重点影响因素,因为在矩阵分解初期,可以利用的元素,只有初始的评分数据,因此这些数据应该在分解过程中应该被重点考虑。同时,经过分解后的预测矩阵中评分过渡集中在某个评分区间,这与实际情况的评分分布是不相符的,因此需要运用一定的方法对于预测结果进行整体的微调。
技术实现思路
本专利技术的实施例提供了一种基于重点元素的矩阵分解及微调方法,以实现有效地进行矩阵分解。为了实现上述目的,本专利技术采取了如下技术方案。一种基于重点元素的矩阵分解及微调方法,包括:采集用户对于商品的评分信息,根据所述评分信息组成稀疏评分矩阵R;根据所述稀疏评分矩阵R初始化两个低维矩阵P,Q,将所述低维矩阵P和Q相乘得到预测矩阵设置基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数;通过迭代过程优化所述目标函数得到所述低维矩阵P,Q,以及预测矩阵对所述预测矩阵进行微调更新,得到最终的预测矩阵。进一步地,所述的设置基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数,包括:设所述稀疏评分矩阵R的行向量表示用户,数量为n,行向量表示商品,数量为m,稀疏评分矩阵R中的元素Rij表示用户i对于商品j的评分,所述稀疏评分矩阵R中的空值表示用户没有对该商品进行过评分,所述低维矩阵P和Q的维度为k,k小于n和m; R n * m ≈ P n * k Q k * m = R ^ n * m ]]>表示稀疏评分矩阵R中的空值填满后得到的预测结果,基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数为: min [ d = 1 2 Σ i = 1 n Σ j = 1 m ( R i j - Σ k = 1 f P i k Q k j ) 2 + λ P 2 || P || F + λ Q 2 || Q || F ] ]]>其中,和为防止目标函数过拟合的正则化项,λP和λQ为正则化参数。进一步地,所述的通过迭代过程优化所述目标函数得到所述低维矩阵P,Q,以及预测矩阵包括:所述低维矩阵P,Q初始化为随机的低维矩阵,采用随机梯度下降的优化方法对要优化更新的P和Q分别求偏导得优化的梯度方向,然后沿负梯度方向优化所述低维矩阵P,Q,优化更新公式为:表示设定的学习率;根据所述稀疏评分矩阵R中已经评分的元素对上面的优化更新公式进行继本文档来自技高网
...

【技术保护点】
一种基于重点元素的矩阵分解及微调方法,其特征在于,包括:采集用户对于商品的评分信息,根据所述评分信息组成稀疏评分矩阵R;根据所述稀疏评分矩阵R初始化两个低维矩阵P,Q,将所述低维矩阵P和Q相乘得到预测矩阵设置基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数;通过迭代过程优化所述目标函数得到所述低维矩阵P,Q,以及预测矩阵对所述预测矩阵进行微调更新,得到最终的预测矩阵。

【技术特征摘要】
1.一种基于重点元素的矩阵分解及微调方法,其特征在于,包括:采集用户对于商品的评分信息,根据所述评分信息组成稀疏评分矩阵R;根据所述稀疏评分矩阵R初始化两个低维矩阵P,Q,将所述低维矩阵P和Q相乘得到预测矩阵设置基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数;通过迭代过程优化所述目标函数得到所述低维矩阵P,Q,以及预测矩阵对所述预测矩阵进行微调更新,得到最终的预测矩阵。2.根据权利要求1所述的方法,其特征在于,所述的设置基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数,包括:设所述稀疏评分矩阵R的行向量表示用户,数量为n,行向量表示商品,数量为m,稀疏评分矩阵R中的元素Rij表示用户i对于商品j的评分,所述稀疏评分矩阵R中的空值表示用户没有对该商品进行过评分,所述低维矩阵P和Q的维度为k,k小于n和m; R n * m ≈ P n * k Q k * m = R ^ n * m ]]>表示稀疏评分矩阵R中的空值填满后得到的预测结果,基于所述稀疏评分矩阵R和所述预测矩阵之间的差值最小化的目标函数为: min [ d = 1 2 Σ i = 1 n Σ j = 1 m ( R i j - Σ k = 1 f P i k Q k j ) 2 + λ P 2 | | P | | F + λ Q 2 | | Q | | F ] ]]>其中,和为防止目标函数过拟合的正则化项,λP和λQ为正则化参数。3.根据权利要求2所述的方法,其特征在于...

【专利技术属性】
技术研发人员:刘云张致远熊菲
申请(专利权)人:北京交通大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1