基于Mahout的电子商务商品推荐系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于Mahout的电子商务商品推荐系统

摘要:针对电子商务网站需要为用户提供快速、准确的商品推荐从而进一步促进商品交易的问题,实现客户与商家双赢,构建一个基于Mahout的电子商务商品推荐系统。通过对Mahout的开发环境、算法等内容的介绍和分析,并结合商品的特点及用户偏好等属性设计实现了基于Mahout 的商品推荐系统。

关键词:电子商务;Mahout;商品推荐;Hadoop

中图分类号:TP393 文献标识码:A 文章编号:

1009-3044(2016)12-0291-02

Abstract: A E-commerce product recommendation system is proposed based on the Mahout due to provide users with e-commerce website for fast,accurate product recommendations and further promote during commodity trading. So it will be in win-win situation. At first,Mahout development environment,algorithms and other content are presented and analyzed. Then,the product recommendation system which based on Mahout combined with product properties,design features and user preferences,etc. is built.

Key words:e-commerce;Mahout;Product

recommendation;Hadoop

随着信息技术的飞速发展和政府对电子商务领域的积

极推动,目前电子商务正以前所未有的速度蓬勃发展。但随着用户和需求的不断增长,电商交易环节中结构化与非结构化数据的存储和处理,用户需求种类的多样化等问题也提出了更高的要求。电子商务交易的商品数量及相关信息等呈爆炸性的增长,如何在这些海量信息中识别出真正有价值的信息也变得越来越困难。尽管Hadoop 软件框架的发展与工具的应用越来越成熟,能够较好地实现对海量数据的存储与计算,但将海量的数据存储在云端只是解决了数据的存储问题,如何满足用户的需求,将云数据转化为对用户有价值的信息并能高效、准确地推荐给用户才是目前电子商务网站亟需解决的关键问题。

自1992年Goldberg D等人提出首个基于协同过滤的推

荐系统[1]以来,电子商务个性化推荐服务得到了快速发展。2008推出的开源Apache Mahout是基于Hadoop分布式框架的机器学习算法库。[2]其中cf. taste包实现了推荐算法引擎,它提供了一套完整的推荐算法工具集,同时规范了数据结构,并标准化了程序开发过程。[3]此外,Mahout还提供了大量

的功能实现,包括聚类、集群、分类、协同过滤和进化程序等数据挖掘算法。通过使用Apache Hadoop库,Mahout可

以有效地扩展到云中。[4]

本文基于Mahout设计开发了一个电子商务商品推荐系统,通过对用户已经产生的浏览记录、购买喜好、价格承受区间、商品内在的相关性等数据的挖掘及过滤,实现自动化、智能化和个性化的信息过滤服务,帮助用户发现所需商品,商家也可利用推荐进一步激发用户的购买欲望。

1 Mahout开发环境

Mahout最初应用的平台是Hadoop集群平台,但是现在经过扩展,Mahout已经不仅仅适用于Hadoop集群云平台,还可以单机运行算法,即与使用Java编写的算法是一样的,而且这个算法还是优化过的。

配置Mahout环境之前必须安装好Java,然后就可进行Maven的安装。因为Mahout是利用Maven来构建和发布项目的。Maven是一个命令行工具,它管理依赖关系、编译代码、形成软件包、生成文档并发布正式版本。如果已经安装了Eclipse,Maven就已经被集成在其中了,可以直接使用Maven配置文件(pom.xml)来配置并导入项目。如果没有安装Eclipse,则首先要到Maven官网http:

///download.cgi下载Maven软件的bin版,解压到/home/mahout/apache-maven-3.1.0,然后设置环境变量。在系统环境变量配置文件中输入:sudo vim /etc/profile 并在其中添加:

export M2=/home/mahout/apache-maven-3.1.0

export PATH=$PATH:$M2

然后使用命令source/etc/profile更新环境变量,输入mvn ?Cversion,则安装完毕。

此外也可以到Mahout官网(http:

///mahout/)下载Mahout-0.7版本,然后解压缩和安装。在终端输入命令:tar ?Czxvf mahout-distribution -0.7.tar.gz解压发布版到

/home/mahout/mahout-distribution-0.7目录中,即可安装成功。

2 基于Mahout的电子商务推荐系统设计

2.1 推荐算法简介

Mahout的推荐算法也称为协同过滤算法模块,主要包括基于项目的分布式协同过滤和使用并行矩阵分解的协同

过滤两种类型。[5]

项目即为电子商务网站中的各种商品。基于项目的协同过滤就是利用项目(商品)之间的相似度来为用户进行项目(商品)的推荐。项目之间的相似度通过不同用户对该项目的评分(即偏好值)来求出,每个项目都有一个用户向量,两个项目之间的相似度便是根据这个用户向量求得的。求得项目之间的相似度,便可以针对用户对项目的评分清单来推荐与清单中极为相似的项目(商品)。两个商品项目之间的相似度计算可以使用诸如Pearson距离、余弦距离、对数似

相关文档
最新文档