当前位置: 首页 > 专利查询>清华大学专利>正文

一种用于推荐系统的计算机数据挖掘方法技术方案

技术编号:7917727 阅读:396 留言:0更新日期:2012-10-25 02:43
本发明专利技术涉及一种用于推荐系统的计算机数据挖掘方法,属于计算机数据处理技术领域。首先在计算机的主服务器中初始化用户偏好矩阵和服务项目偏好矩阵,将用户输入的偏好矩阵的行向量分发给计算机中的多个映射器,各映射器分别计算用户偏好矩阵和服务项目偏好矩阵的梯度方向的子方向,并将计算结果发送给计算机中的化简器,化简器对接收的梯度方向的子方向进行累加,并根据用户偏好矩阵和服务项目偏好矩阵的梯度方向矩阵,对用户偏好矩阵和服务项目偏好矩阵进行更新。本发明专利技术方法对已有的PMF算法进行了改进,提高了大规模数据处理能力;采用键值对的数据存储结构储存偏好矩阵,使得占用的储存空间更小,数据读取速度更快。

【技术实现步骤摘要】

本专利技术涉及,属于计算机数据处理

技术介绍
随着互联网的飞速发展,电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费越来越多的时间才能从大量的商品中找到自己想买的商品。这种浏览大量无关信息和商品的过程使得被信息过载问题困扰的消费者不断流失。为了解决这些问题,个性化推荐系统应运而生。个性化推荐系统建立在海量数据挖掘技术的基础之上,通过分析用户的数据,如兴趣和偏好等,提供完全个性化的决策支持和信息服务,提高了电子商务网站的流量转换率。另外,随着互联网信息的爆炸式增长,资讯类网站用户也面临着被海量资讯淹没的困扰。推荐系统在新闻推荐、影视作品推荐和图书推荐等领域的使用提升了用户体验,增加了网站粘性,因此也有较为广泛的应用。常见的推荐系统算法有基于关联规则(Association Rules)的推荐、基于内容的推荐和协同过滤(Collaborative Filtering, CF)三种。其中协同过滤技术在推荐系统中应用最为广泛。但仍然有许多问题亟待解决。整体而言,数据稀疏性(Sparsity)问题和系统延展性(Scalability)问题是所有协同过滤算法所面临的共同挑战。已有技术中,“R. Salakhutdinov and A. Mnih, “Probabilistic MatrixFactorization,,,Advances in Neural Information Processing Systems20 (NIPS’ 07),pp. 1257 - 1264,2008”,公开了一种用于计算机数据挖掘的概率矩阵分解算法(以下简称PMF,Probabilistic Matrix Factorization,)这是近年来提出的基于贝叶斯理论的矩阵分解算法。PMF模型可用于基于评分(ratings)的协同过滤,不但具有良好的系统扩展性(与用户增长成线性比关系),而且在稀疏数据中表现优秀。作为一种线性因子模型,PMF模型中用户的偏好可以表示为由用户对服务项目的偏好因子的线性组合形成的向量。用户对NXM的偏好矩阵R可表示为一个NXD的用户偏好矩阵Ut和一个DXM的商品因子矩阵V的乘积,即R=UtV。训练这样一个模型等同于在给定损失函数的条件下寻找目标矩阵R的最佳D维近似。其次,PMF是基于贝叶斯理论的矩阵分解算法。通过给U、V矩阵赋予合理的先验概率分布,以及根据R ^ UtV关系得到R矩阵的似然函数,可以计算参数矩阵U、V的后验概率分布,最后使用最大后验概率估计法求得U、V矩阵。举例说明假设有N个用户和M个电影,用户对电影的评分值为从I到K的整数。Rij表示用户i对电影j的评分,u G矿⑶和V G Rdxm是用户和电影的潜在特征矩阵。定义可观察的所有评分数据R相对于潜在特征U、V的似然函数为权利要求1. ,其特征在于该方法包括以下步骤 (1)设定一个NXM的偏好矩阵R,其中N为偏好矩阵R的行数,N等于用户个数,M为偏好矩阵R的列数,M等于为用户服务的项目个数; (2)向计算机输入文件,将输入文件转换成映射化简模型中的序列文件,使序列文件中的每一行为偏好矩阵R的一个行向量,偏好矩阵R的每一行的数据结构为行向量下标和键值对数组组成,其中键值对数组包括服务项目编号和用户对该服务项目的偏好; (3)将偏好矩阵R表示为R=UtV,其中Ut为NXD的用户偏好矩阵的转置,N等于用户个数,D为用户服务项目偏好因子个数,V为DXM的服务项目偏好矩阵,M为服务项目个数; (4)在计算机的主服务器中生成用户偏好矩阵U和服务项目偏好矩阵V,其中用户偏好矩阵U的行为用户编号,列为用户偏好因子,初始化时用户偏好因子为任意实数,服务项目偏好矩阵V的行为服务项目编号,列为服务项目偏好因子,并设初始化时服务项目偏好因子为任意实数; (5)将上述偏好矩阵R的行向量分发给计算机中的多个映射器,各映射器根据读取的偏好矩阵R的行向量,分别根据公式全文摘要本专利技术涉及,属于计算机数据处理
首先在计算机的主服务器中初始化用户偏好矩阵和服务项目偏好矩阵,将用户输入的偏好矩阵的行向量分发给计算机中的多个映射器,各映射器分别计算用户偏好矩阵和服务项目偏好矩阵的梯度方向的子方向,并将计算结果发送给计算机中的化简器,化简器对接收的梯度方向的子方向进行累加,并根据用户偏好矩阵和服务项目偏好矩阵的梯度方向矩阵,对用户偏好矩阵和服务项目偏好矩阵进行更新。本专利技术方法对已有的PMF算法进行了改进,提高了大规模数据处理能力;采用键值对的数据存储结构储存偏好矩阵,使得占用的储存空间更小,数据读取速度更快。文档编号G06F17/16GK102750360SQ201210193229公开日2012年10月24日 申请日期2012年6月12日 优先权日2012年6月12日专利技术者丁贵广, 姜晓伟, 王建民, 龙明盛 申请人:清华大学本文档来自技高网
...

【技术保护点】
一种用于推荐系统的计算机数据挖掘方法,其特征在于该方法包括以下步骤:(1)设定一个N×M的偏好矩阵R,其中N为偏好矩阵R的行数,N等于用户个数,M为偏好矩阵R的列数,M等于为用户服务的项目个数;(2)向计算机输入文件,将输入文件转换成映射化简模型中的序列文件,使序列文件中的每一行为偏好矩阵R的一个行向量,偏好矩阵R的每一行的数据结构为:行向量下标和键值对数组组成,其中键值对数组包括服务项目编号和用户对该服务项目的偏好;(3)将偏好矩阵R表示为R=UTV,其中UT为N×D的用户偏好矩阵的转置,N等于用户个数,D为用户服务项目偏好因子个数,V为D×M的服务项目偏好矩阵,M为服务项目个数;(4)在计算机的主服务器中生成用户偏好矩阵U和服务项目偏好矩阵V,其中用户偏好矩阵U的行为用户编号,列为用户偏好因子,初始化时用户偏好因子为任意实数,服务项目偏好矩阵V的行为服务项目编号,列为服务项目偏好因子,并设初始化时服务项目偏好因子为任意实数;(5)将上述偏好矩阵R的行向量分发给计算机中的多个映射器,各映射器根据读取的偏好矩阵R的行向量,分别根据公式:▿Uik=λUUik+Σj=1MIijVj(Rij-g(UiTVj))g′(UiTVj),计算用户偏好矩阵U中每个元素的梯度方向▽Uik,根据公式:Δ(▿Vik)=IijUi(Rij-g(UiTVj))g′(UiTVj),计算服务项目偏好矩阵V中每个元素的梯度方向的子方向Δ(▽Vik),其中,表示用户偏好矩阵U的转置的第i个行向量,Vj表示服务项目偏好矩阵V的第j个行向量,λU是用户指定的用户偏好程度参数,λU为正实数,Uik为用户偏好矩阵U的第i行、第k列的元素,I为指示函数矩阵,若Iij等于0,则表示用户i未对服务项目j产生偏好,若Iij等于1,则表示用户i对服务项目j产生偏好,g是罗杰斯特函数,g’是g函数的一阶导函数:g(x)=11+e-x各映射器将梯度方向▽Uik和梯度方向子方向Δ(▽Vik)分别发送给计算机中的化简器;(6)化简器根据接收的服务项目偏好矩阵V中每个元素的梯度方向的子方向Δ(▽Vik)进行累加,得到矩阵V的每个元素的梯度方向▽Vik,其中λV是用户指定的服务项目偏好程度参数,λV是正实数;(7)化简器构建一个用户偏好矩阵U的梯度方向矩阵▽U,梯度方向矩阵▽U中第i行、第k列的值为步骤(5)计算得到的▽Uik,构建一个服务项目偏好矩阵V的梯度方向矩阵▽V,梯度方向矩阵▽V中第i行、第k列的值为步骤(5)计算得到的▽Vik;并根据用户偏好矩阵U的梯度方向矩阵▽U和服务项目偏好矩阵V的梯度方向矩阵▽V,对用户偏好矩阵U和服务项目偏好矩阵V进行更新,使:U=U-▿UV=V-▿V,完成一次迭代;(8)用户设定一个最大迭代次数,若迭代次数大于或等于最大迭代次数,则得到用户偏好矩阵U和服务项目偏好矩阵V,结束计算;若迭代次数小于最大迭代次数,则重复步骤(3)~步骤(8)。FDA00001754718700013.jpg,FDA00001754718700022.jpg...

【技术特征摘要】

【专利技术属性】
技术研发人员:王建民丁贵广龙明盛姜晓伟
申请(专利权)人:清华大学
类型:发明
国别省市:

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

1