CN103605718A - 一种基于hadoop的改进的物品推荐方法 - Google Patents

一种基于hadoop的改进的物品推荐方法 Download PDF

Info

Publication number
CN103605718A
CN103605718A CN201310568662.4A CN201310568662A CN103605718A CN 103605718 A CN103605718 A CN 103605718A CN 201310568662 A CN201310568662 A CN 201310568662A CN 103605718 A CN103605718 A CN 103605718A
Authority
CN
China
Prior art keywords
article
similarity
hadoop
cluster
calculate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201310568662.4A
Other languages
English (en)
Inventor
高阳
王睿
史颖欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
JIANGSU WANWEI AISI NETWORK INTELLIGENT INDUSTRY INNOVATION CENTER Co Ltd
Nanjing University
Original Assignee
JIANGSU WANWEI AISI NETWORK INTELLIGENT INDUSTRY INNOVATION CENTER Co Ltd
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JIANGSU WANWEI AISI NETWORK INTELLIGENT INDUSTRY INNOVATION CENTER Co Ltd, Nanjing University filed Critical JIANGSU WANWEI AISI NETWORK INTELLIGENT INDUSTRY INNOVATION CENTER Co Ltd
Priority to CN201310568662.4A priority Critical patent/CN103605718A/zh
Publication of CN103605718A publication Critical patent/CN103605718A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于hadoop的改进的物品推荐方法,包括如下步骤:将数据存储到分布式数据存储环境中;从用户-物品矩阵中抽取物品集;通过mapreduce利用改进的聚类方法对物品集进行聚类;计算类别内的物品相似度,存储在哈希表中;利用所得到的物品相似度,进行物品推荐。本发明解决在处理海量数据时运行速度和推荐精度的问题。

Description

一种基于hadoop的改进的物品推荐方法
技术领域
本发明涉及一种基于hadoop的改进的物品推荐方法。
背景技术
协同过滤是一个非常成功的构建推荐系统的方法。通过一系列具有相同的体验或者偏好的用户群体的经历来为特定用户进行推荐。每一个个体对于推荐的结果给予一定的回应和评判,这些反馈结果同样也被拿来用到对于其他用户的咨询筛选过程中。通过对特定用户进行系统的评估和推测,协同过滤系统可以对这些用户进行适合的推荐。这一思路和方法广泛的运用于电子商务,数据分析,远景预测等各个领域,并取得了很有成效的商业效果。无论是亚马逊脸谱,还是淘宝豆瓣,在各个领域,我们都可以看到其广泛的应用场景。因此,如何更有效更直接快速的进行推荐和预测,成为了一个很热门且很值得研究的问题。准确且快速的推荐,可以给予用户更好的行为体验,从而在各个方面提高一些商业网站的利润及利益。但是随着用户的增多,数据量的增大,如何达到快速和准确的目标,目前的协同过滤算法仍需要在各方面进行自身的改进和优化。
针对数据量增大的问题,传统的协同过滤推荐方法可以对物品进行聚类,以此缩小推荐过程中的计算量。但是传统的聚类方法可能会需要大量的迭代次数,从而使得整体的运行时间非常的长,因此一般情况下只是适用于较小的数据集。如果其用来处理海量数据,可能会导致内存泄露等问题。
另一方面,协同过滤算法中利用用户-物品矩阵中的频度进行相似度计算,难以准确的反映出物品的相似程度。而基于物品属性特征的相似度计算可以准确的反应物品的行为,但是欠缺用户行为对它进行的修正。所以对于基于协同过滤的推荐系统,需要一种改进方法,更加准确的结合物品各方面的特征,从而得出更加准确的推荐结果。
发明内容
发明目的:针对上述现有技术存在的问题和不足,本发明的目的是提供一种基于hadoop的改进的物品推荐方法,解决在处理海量数据时运行速度和推荐精度的问题。
技术方案:为实现上述发明目的,本发明采用的技术方案为一种基于hadoop的改进的物品推荐方法,包括如下步骤:
(1)将数据存储到分布式数据存储环境中;
(2)从用户-物品矩阵中抽取物品集;
(3)通过mapreduce利用改进的聚类方法对物品集进行聚类;
(4)计算类别内的物品相似度,存储在哈希表中;
(5)利用所得到的物品相似度,进行物品推荐。
所述数据跟“用户-物品矩阵”可以视为相同概念,一个数据即为用户-物品矩阵中的一个值。
进一步的,所述步骤(3)中,用map函数计算每个物品到所有聚类中心的距离,用reduce函数计算所有聚类中心的修正值,直到聚类中心保持不变,完成迭代。
进一步的,迭代过程具体为:
1)选择k个类的初始中心;
2)在Hadoop平台各个节点的Mapper端计算每个数据对象到所有初始中心的距离;
3)在所述Mapper端选择距离最小的中心点,将局部数据发送到Hadoop平台各个节点的Combiner端;
4)在所述Combiner端把属于同一中心点的数据对象集合在一起,计算属于同一中心点的数据对象的和,将所有同一聚类的局部数据发送到Hadoop平台各个节点的Reducer端;
5)在所述Reducer端汇总所有聚类的局部数据,计算所有聚类的新中心;
6)重复执行步骤2)至5),直到对于所有的k个聚类中心保持不变,则迭代结束,得到聚类结果,否则继续迭代。
进一步的,所述步骤(3)和(4)中,距离和物品相似度均采用一种基于内容的配对相似度(COS: Coupled Similarity),其计算方法为在对物品的每个属性计算属性内相似度和属性间相似度两个相似度后相乘,再累加所有属性上的相似度。其中,属性内相似度,即对于不同物品的同一属性计算相似度,表示了属性不同值之间的共现程度;属性间相似度,是对于某一属性不同值之间的相似度,由与该属性同时出现的其他属性的不同值的相似度来度量,即对于多属性的物品,表示了属性之间的共现程度。为简单起见作出如下说明:对于用N个属性描述的物品,两个物品越是相似,则会有越多的属性取相同值,这就是属性内相似,相似度的取值趋向于1,即完全相同;而对于一个属性两个物品出现的不同取值,两个物品越是相似,则说明在其他属性上就有越多取相同属性的取值,则可以认为这个有不同取值的属性的两个取值也具有一定的相似度,否则取值趋向于无关,即趋向于0。
进一步的,所述步骤(5)中的物品推荐,可以选用传统的item-based的(基于物品的)协同过滤算法,将物品相似度替换为前述的配对相似度(COS)。
有益效果:本发明通过mapreduce进行的并行化和聚类,减少同样数据规模下系统运行的时间,提高运算效率;通过改进的相似度计算方法,更加准确的描述的物品之间的联系,得到了更好的推荐效果。
附图说明
图1为本发明方法的流程图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,下面详细说明本发明方法的步骤:
步骤1,将数据存储到分布式数据存储环境中;
步骤2,从用户-物品矩阵中抽取中物品集,将物品转化成向量形式,向量内容为该物品的所有属性特征;
步骤3,通过mapreduce利用改进的聚类方法(CK-modes)对物品集进行聚类,其具体步骤为:
迭代过程具体为:
(3.1)选择k个类的初始中心;
(3.2)在Hadoop平台各个节点的Mapper端计算每个数据对象到所有初始中心的距离;
(3.3)在所述Mapper端选择距离最小的中心点,将局部数据发送到Hadoop平台各个节点的Combiner端;
(3.4)在所述Combiner端把属于同一中心点的数据对象集合在一起,计算属于同一中心点的数据对象的和,将所有同一聚类的局部数据发送到Hadoop平台各个节点的Reducer端;
(3.5)在所述Reducer端汇总所有聚类的局部数据,计算所有聚类的新中心;
(3.6)重复执行步骤(3.2)至(3.5),直到对于所有的k个聚类中心保持不变,则迭代结束,得到聚类结果,否则继续迭代。
其中距离由COS得出,计算公式如下:
Figure 507741DEST_PATH_IMAGE001
u表示一个用户,
Figure 70965DEST_PATH_IMAGE002
表示两个不同物品,这两个物品用户u都有记录。物品有n个属性,x,y表示物品在属性j上的取值,
Figure 842612DEST_PATH_IMAGE003
表示属性内相似度,
Figure 855568DEST_PATH_IMAGE004
表示属性间相似度。该公式表示,两个物品之间的相似度,由两个物品所有属性上的相似度累加得出,而每个属性上的相似度由属性内相似度乘以属性间相似度得出。
Figure 800390DEST_PATH_IMAGE005
其中
Figure 152874DEST_PATH_IMAGE006
表示物品x在属性j上的取值在所有物品中出现的次数,
Figure 157739DEST_PATH_IMAGE007
表示物品y在属性j上的取值在所有物品中出现的次数。
Figure 657990DEST_PATH_IMAGE008
其中
Figure 78607DEST_PATH_IMAGE009
为权值,
Figure 789260DEST_PATH_IMAGE011
表示对于物品x,在属性j上的取值为x,所有在属性j上有x取值的物品,考虑它们在属性k上的取值,将这些物品在属性k上的取值求交集,即为
Figure 714491DEST_PATH_IMAGE011
。以这一取值为基础,在所有物品的属性k上所出现取值的交集,
Figure 1116DEST_PATH_IMAGE012
的定义与前述一致;
步骤4,计算类别内的物品相似度,存储在哈希表中;
步骤5,利用所得到的物品相似度,进行物品推荐,公式为:
Figure 62613DEST_PATH_IMAGE013
u表示用户,
Figure 412210DEST_PATH_IMAGE014
表示待推荐物品,N为所有物品,
Figure 887054DEST_PATH_IMAGE015
为某其他物品,
Figure 915053DEST_PATH_IMAGE016
为用户u对
Figure 158952DEST_PATH_IMAGE015
的评分,
Figure 410942DEST_PATH_IMAGE017
表示用户u对所有物品的平均评分。

Claims (4)

1.一种基于hadoop的改进的物品推荐方法,包括如下步骤:
(1)将数据存储到分布式数据存储环境中;
(2)从用户-物品矩阵中抽取物品集;
(3)通过mapreduce利用改进的聚类方法对物品集进行聚类;
(4)计算类别内的物品相似度,存储在哈希表中;
(5)利用所得到的物品相似度,进行物品推荐。
2.根据权利要求1所述一种基于hadoop的改进的物品推荐方法,其特征在于:所述步骤(3)中的聚类过程,用map函数计算每个物品到所有聚类中心的距离,用reduce函数计算所有聚类中心的修正值,直到聚类中心保持不变,完成迭代。
3.根据权利要求2所述一种基于hadoop的改进的物品推荐方法,其特征在于:所述步骤(3)和(4)中,距离和物品相似度均采用一种基于内容的配对相似度,其计算方法为在对物品的每个属性计算属性内相似度和属性间相似度两个相似度后相乘,再累加所有属性上的相似度。
4.根据权利要求2所述一种基于hadoop的改进的物品推荐方法,其特征在于:所述迭代包括如下步骤:
1)选择k个类的初始中心;
2)在Hadoop平台各个节点的Mapper端计算每个数据对象到所有初始中心的距离;
3)在所述Mapper端选择距离最小的中心点,将局部数据发送到Hadoop平台各个节点的Combiner端;
4)在所述Combiner端把属于同一中心点的数据对象集合在一起,计算属于同一中心点的数据对象的和,将所有同一聚类的局部数据发送到Hadoop平台各个节点的Reducer端;
5)在所述Reducer端汇总所有聚类的局部数据,计算所有聚类的新中心;
6)重复执行步骤2)至5),直到对于所有的k个聚类中心保持不变,则迭代结束,得到聚类结果,否则继续迭代。
CN201310568662.4A 2013-11-15 2013-11-15 一种基于hadoop的改进的物品推荐方法 Pending CN103605718A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310568662.4A CN103605718A (zh) 2013-11-15 2013-11-15 一种基于hadoop的改进的物品推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310568662.4A CN103605718A (zh) 2013-11-15 2013-11-15 一种基于hadoop的改进的物品推荐方法

Publications (1)

Publication Number Publication Date
CN103605718A true CN103605718A (zh) 2014-02-26

Family

ID=50123941

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310568662.4A Pending CN103605718A (zh) 2013-11-15 2013-11-15 一种基于hadoop的改进的物品推荐方法

Country Status (1)

Country Link
CN (1) CN103605718A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104408642A (zh) * 2014-10-29 2015-03-11 云南大学 一种基于用户体验质量的广告制作方法
CN106227881A (zh) * 2016-08-04 2016-12-14 腾讯科技(深圳)有限公司 一种信息处理方法及服务器
CN106547919A (zh) * 2016-12-06 2017-03-29 广东工业大学 一种海量数字信息的分布式推荐方法
CN108052485A (zh) * 2017-12-15 2018-05-18 东软集团股份有限公司 向量相似度的分布式计算方法和装置,存储介质和节点
CN109783643A (zh) * 2019-01-09 2019-05-21 北京一览群智数据科技有限责任公司 一种近似语句推荐方法及装置
CN110309143A (zh) * 2018-03-21 2019-10-08 华为技术有限公司 数据相似度确定方法、装置及处理设备
CN111522867A (zh) * 2020-03-23 2020-08-11 西南科技大学 炸药配方快速筛选与推荐方法及其系统
CN113254780A (zh) * 2021-06-08 2021-08-13 武汉卓尔数字传媒科技有限公司 信息处理的方法、装置、电子设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957968A (zh) * 2010-08-31 2011-01-26 南京财经大学 基于Hadoop的网上交易服务聚合方法
EP2463818A1 (en) * 2010-12-07 2012-06-13 Digital Foodie Oy A method for creating computer generated shopping list
CN103116639A (zh) * 2013-02-20 2013-05-22 新浪网技术(中国)有限公司 基于用户-物品二分图模型的物品推荐方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957968A (zh) * 2010-08-31 2011-01-26 南京财经大学 基于Hadoop的网上交易服务聚合方法
EP2463818A1 (en) * 2010-12-07 2012-06-13 Digital Foodie Oy A method for creating computer generated shopping list
CN103116639A (zh) * 2013-02-20 2013-05-22 新浪网技术(中国)有限公司 基于用户-物品二分图模型的物品推荐方法及系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
向小军 等: "基于 Hadoop 平台的海量文本分类的并行化", 《计算机科学》, vol. 38, no. 10, 15 October 2011 (2011-10-15), pages 184 - 188 *
肖强 等: "Hadoop 环境下的分布式协同过滤算法设计与实现", 《现代图书情报技术》, no. 1, 25 January 2013 (2013-01-25), pages 83 - 89 *
赵卫中 等: "基于云计算平台Hadoop的并行k-means聚类算法设计研究", 《计算机科学》, vol. 38, no. 10, 15 October 2011 (2011-10-15) *
金龑: "协同过滤算法及其并行化研究", 《中国优秀硕士学位论文全文数据库 信息科技辑(月刊)》, no. 11, 15 November 2012 (2012-11-15), pages 138 - 4 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104408642B (zh) * 2014-10-29 2017-09-12 云南大学 一种基于用户体验质量的广告制作方法
CN104408642A (zh) * 2014-10-29 2015-03-11 云南大学 一种基于用户体验质量的广告制作方法
CN106227881A (zh) * 2016-08-04 2016-12-14 腾讯科技(深圳)有限公司 一种信息处理方法及服务器
CN106547919B (zh) * 2016-12-06 2018-07-24 广东工业大学 一种海量数字信息的分布式推荐方法
CN106547919A (zh) * 2016-12-06 2017-03-29 广东工业大学 一种海量数字信息的分布式推荐方法
CN108052485B (zh) * 2017-12-15 2021-05-07 东软集团股份有限公司 向量相似度的分布式计算方法和装置,存储介质和节点
CN108052485A (zh) * 2017-12-15 2018-05-18 东软集团股份有限公司 向量相似度的分布式计算方法和装置,存储介质和节点
CN110309143A (zh) * 2018-03-21 2019-10-08 华为技术有限公司 数据相似度确定方法、装置及处理设备
CN110309143B (zh) * 2018-03-21 2021-10-22 华为技术有限公司 数据相似度确定方法、装置及处理设备
CN109783643A (zh) * 2019-01-09 2019-05-21 北京一览群智数据科技有限责任公司 一种近似语句推荐方法及装置
CN111522867A (zh) * 2020-03-23 2020-08-11 西南科技大学 炸药配方快速筛选与推荐方法及其系统
CN111522867B (zh) * 2020-03-23 2023-11-10 西南科技大学 炸药配方快速筛选与推荐方法及其系统
CN113254780A (zh) * 2021-06-08 2021-08-13 武汉卓尔数字传媒科技有限公司 信息处理的方法、装置、电子设备及计算机存储介质

Similar Documents

Publication Publication Date Title
CN103605718A (zh) 一种基于hadoop的改进的物品推荐方法
Xu et al. A novel POI recommendation method based on trust relationship and spatial–temporal factors
WO2021109464A1 (zh) 一种面向大规模用户的个性化教学资源推荐方法
CN104463637A (zh) 一种基于电商平台的商品推荐方法、装置及服务器
TW201501059A (zh) 訊息推薦方法及裝置
CN103530416B (zh) 项目数据预测评分库的生成、项目数据的推送方法和系统
CN105023178B (zh) 一种基于本体的电子商务推荐方法
CN104598450A (zh) 一种网络舆情事件的热度分析方法及系统
CN107329994A (zh) 一种基于用户特征的改进协同过滤推荐方法
CN110335123B (zh) 基于社交电商平台的商品推荐方法、系统、计算机可读介质以及装置
TW201905736A (zh) 資訊推送方法及系統
CN104636371A (zh) 信息推荐方法及设备
CN104199872A (zh) 一种信息推荐的方法以及装置
CN101957968A (zh) 基于Hadoop的网上交易服务聚合方法
CN106776859A (zh) 基于用户偏好的移动应用App推荐系统
CN104809637A (zh) 计算机实现的商品推荐方法及系统
CN110197404A (zh) 可降低流行度偏差的个性化长尾商品推荐方法和系统
CN103150667A (zh) 一种基于本体结构的个性化推荐方法
CN105335368A (zh) 一种产品聚类方法及装置
CN104992352A (zh) 一种个性化资源检索方法
CN106980639B (zh) 短文本数据聚合系统及方法
CN104102662A (zh) 一种用户兴趣偏好相似度确定方法及装置
CN109857928A (zh) 基于多元信用评估的用户偏好预测方法
Yao et al. Community detection based on variable vertex influence
Cho et al. Clustering method using weighted preference based on RFM score for personalized recommendation system in u-commerce

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140226