用于处理协同过滤距离的方法和系统技术方案

技术编号:8593993 阅读:181 留言:0更新日期:2013-04-18 07:11
本发明专利技术公开了本发明专利技术一种用于处理协同过滤距离的方法和系统,涉及计算机技术领域。所述系统包括:N个计算服务器;所述每个参与计算的计算服务器包括:数据读取存储模块;本地数据计算模块;循环通信计算模块;所述循环通信计算模块包括目的计算服务器确认模块;矩阵数据发送接收模块;协同计算模块;整理模块,适于将每个参与计算的计算服务器计算得到的所有协同过滤子矩阵进行统一转换,获得完整的协同过滤矩阵。本发明专利技术解决了只能由单计算服务器计算获得协同过滤距离矩阵的问题,取得了在互联网环境下,可以提高针对海量数据的协同过滤距离矩阵的计算效率,减少计算时间的有益效果。

【技术实现步骤摘要】

本专利技术涉及计算机
,具体涉及一种用于处理协同过滤距离的方法和系统
技术介绍
互联网上的信息资源呈指数膨胀带来了所谓的“信息过载”和“信息迷向”问题,即人们很难找到自己感兴趣的信息,即使找到了一些,也经常混有很多“噪音”。因此出现了面向互联网的信息检索、信息过滤和协同过滤等技术。但信息检索不具有智能性,不能学习用户的兴趣,尤其是对具有特定专业兴趣的用户,输入相同的关键词只能得到相同的检索结果。信息过滤不能对同一主题的过滤结果区分质量好坏,并且随着信息资源的剧增,更有效的过滤需要结合人们的质量评价信息。基于该种需求,出现了推荐系统,推荐系统是为解决信息过载问题而提出的一种智能代理系统,能从大量信息中向用户自动推荐出符合其兴趣偏好或需求的资源。随着互联网的普及和飞速发展,推荐系统已经被广泛应用于各种领域,尤其在电子商务领域,推荐系统得到了越来越多的研究和应用。目前,几乎所有的大型电子商务网站都不同程度的使用了各种形式的推荐系统,比如Amazon、CDNOff> eBay和当当网上书店等。其中,协同过滤技术在当前推荐系统的应用中获得了较大的成功。协同过滤是一类推荐算法。协本文档来自技高网...

【技术保护点】
一种用于处理协同过滤距离的方法,包括:针对至少两个计算服务器,每个参与计算的计算服务器读取并存储相应的分块矩阵数据;所述分块矩阵数据为从原始矩阵数据中分配给所述计算服务器的分块矩阵数据;每个参与计算计算服务器计算本地的分块矩阵数据,获得本地分块矩阵数据的协同过滤距离子矩阵;每个参与计算的计算服务器进行各计算服务器间的循环通信计算,获得本地分块矩阵数据的协同过滤距离子矩阵;所述每个参与计算的计算服务器进行各计算服务器间的循环通信计算,获取协同过滤距离子矩阵具体包括:针对每个参与计算的计算服务器,确认当前计算服务器对应的目的计算服务器;所述目的计算服务器用于接收当前计算服务器发送的本地的矩阵数据;...

【技术特征摘要】
1.一种用于处理协同过滤距离的方法,包括 针对至少两个计算服务器,每个参与计算的计算服务器读取并存储相应的分块矩阵数据;所述分块矩阵数据为从原始矩阵数据中分配给所述计算服务器的分块矩阵数据; 每个参与计算计算服务器计算本地的分块矩阵数据,获得本地分块矩阵数据的协同过滤距离子矩阵; 每个参与计算的计算服务器进行各计算服务器间的循环通信计算,获得本地分块矩阵数据的协同过滤距离子矩阵;所述每个参与计算的计算服务器进行各计算服务器间的循环通信计算,获取协同过滤距离子矩阵具体包括 针对每个参与计算的计算服务器,确认当前计算服务器对应的目的计算服务器;所述目的计算服务器用于接收当前计算服务器发送的本地的矩阵数据; 每个参与计算的计算服务器发送本地的分块矩阵数据至目的计算服务器,并接收其他计算服务器发送的分块矩阵数据;所述其他计算服务器为将当前计算服务器确认为目的服务器的计算服务器; 每个接收到分块矩阵数据的计算服务器,结合本地的分块矩阵数据,计算获得本地的分块矩阵数据和接收到的分块矩阵数据之间的协同过滤距离子矩阵; 将每个参与计算的计算服务器计算得到的所有协同过滤子矩阵进行统一转换,获得完整的协同过滤矩阵。2.如权利要求1所述的方法,其特征在于,所述针对每个参与计算的计算服务器,确认当前计算服务器对应的目的计算服务器包括 所述针对每个参与计算的计算服务器,根据当前的循环通信计算轮次、当前计算服务器的标识和计算服务器的总个数,确认当前计算服务器对应的目的计算服务器。3.如权利要求2所述的方法,其特征在于,所述针对每个参与计算的计算服务器,根据当前的循环通信计算轮次、当前计算服务器的标识和计算服务器的总个数,确认当前计算服务器对应的目的计算服务器包括 将当前各计算服务器间进行循环通信计算的轮次P,与计算服务器的总个数N的一半N/2进行比较; 如果比较结果符合预设条件,则每个参与计算的计算服务器,根据当前计算服务器的标识i和轮次P,针对N进行取模运算得到结果U,将与u对应的计算服务器作为当前计算服务器的目标计算服务器; 如果比较结果不符合预设条件,则结束获得协同过滤距离子矩阵的计算。4.如权利要求3所述的方法,其特征在于,所述将当前各计算服务器间进行循环通信计算的轮次P,与计算服务器的总个数N的一半N/2进行比较之后还包括 判断计算服务器的总个数N是否为偶数; 如果计算服务器的总个数N为偶数,则判断当前通信轮次P是否为最后一轮通信; 如果当前轮次P是最后一轮通信,则每个参与计算的计算服务器,判断其标识i是否小于 N/2 ; 如果标识i小于N/2,则标识i小于N/2的计算服务器,进入根据当前计算服务器的标识i和轮次P,针对N进行取模运算得到结果U,将与u对应的计算服务器作为当前计算服务器的目标计算服务器的过程;如果标识i不小于N/2,则进入判断当前各计算服务器间进行循环通信计算的轮次p,是否小于计算服务器的总个数N的一半N/2的过程; 如果当前轮次P是最后一轮通信,则进入每个参与计算的计算服务器,根据当前计算服务器的标识i和轮次P,针对N进行取模运算得到结果U,将与u对应的计算服务器作为当前计算服务器的目标计算服务器的过程; 如果计算服务器的总个数N为奇数,则进入每个参与计算的计算服务器,根据当前计算服务器的标识i和轮次P,针对N进行取模运算得到结果U,将与u对应的计算服务器作为当前计算服务器的目标计算服务器的过程。5.如权利要求3或4所述的方法,其特征在于, 当所述轮次从O开始计数,计算服务器的标识i从O开始标识,则所述根据当前计算服务器的标识i和轮次P,针对N进行取模运算得到结果u包括 将当前计算服务器的标识i和轮次P,代入公式(i+P+1) % N计算得到结果u ; 当所述轮次从I开始计数,计算服务器的标识i从O开始标识,则所述根据当前计算服务器的标识i和轮次P,针对N进行取模运算得到结果u包括 将当前计算服务器的标识i和轮次P,代入公式(i+P) % N计算得到结果U。6.如权利要求1所述的方法,其特征在于,所述每个参与计算的计算服务器进行各计算服务器间的循环通信计算包括 每个参与计算的计算服务器采用讯息传递接口发送函数MPI_send和讯息传递接口接收函数MPI_rec...

【专利技术属性】
技术研发人员:齐路何锐邦唐会军
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:

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

1