基于协同过滤算法的电子商务网站个性化推荐系统设计


文章编号 : 167121742 (2007) 增20161207 基于协同过滤算法的电子商务网站个性化推荐系统设计 王纪辉 3 ,  赵卓宁 (成都信息工程学院电子商务系 ,四川 成都 610225)   摘要 :针对电子商务网站经营需要 ,构建了个性化推荐系统的逻辑模型 ,并采用对商品特征无依赖性的协同过 滤推荐算法设计了个性化推荐引擎 ,对提高电子商务网站个性推荐效率有一定的参考价值。 关  键 词 :电子商务 ;协同过滤 ;个性化推荐系统 中图分类号 : TP393       文献标识码 :A 3 成都信息工程学院电子商务系信息管理与信息系统专业 2003 级 1 班 1  引言 随着企业对个人(B2C) 的电子商务广泛开展 ,电子商务网站普遍实施了个性化经营战略。个性化是相对于 标准化而言的 ,是指对事物的特殊性的描述。根据用户的不同需求 ,将用户感兴趣的信息主动地推荐给用户。在 电子商务网站中 ,个性化推荐系统充当着现实世界中导购员的角色。应用个性化推荐系统后 ,网站一般能够提高 2 %~8 %的利润。个性化推荐系统主要从以下几方面提高网站销售能力 : ①向浏览者推荐其感兴趣的商品 ,激发 购买欲望促成购买 ; ②实施交叉销售 ,从推荐列表向浏览者提供相关商品信息 ,提醒浏览者还需购买的商品 ; ③实 施差异化销售 ,根据留言和反馈信息获得浏览者的需求 ,运营商将更多符合用户偏好的特色商品上架 ,以区别于 其他电子商务网站的销售服务。④通过个性化的服务 ,以电子邮件、短信等方式向浏览者推荐符合他们兴趣商 品 ,提醒用户访问网站进行购买。而要实现提高网络营销的效益 ,维护顾客忠诚度 ,个性化推荐系统的实际推荐 信息与客户需求的吻合度是关键。 2  个性化推荐综述 211  个性化推荐研究综述   在 CN KI 中 ,2000 - 2006 年共发表个性化推荐研究论文 68 篇 ,其中 13 篇是研究电子商务领域个性化推荐 的。从电子商务应用的角度讲 ,这些研究分布在 4 个领域 ,见表 1。 表 1  个性化推荐的研究分类 领域 研究目的 基本思想 优势 应用领域 作者(时间) 商品/ 产品 提高客户满意度 ,增 加销售额 ,获得更多 经济利益。 根据用户输入挖掘、分析用户兴趣和商 品特征 ,建立模型 ,通过推荐算法求出 最符合用户兴趣的 N 个商品推荐给用 户。 推荐的商品/ 产品符合 用户兴趣 ,结果具有关 联性 ,为用户购买提供 更多参考。 常规电子商务 网 站、C2C 购 物 平 台、B2C 购物平台 周娜、廖文和、 杨浩、赵家 伟 (2004) 等 Web 浏览 实现 用 户 个 性 化 浏 览 ,提高网站点击率 和用户满意度。研究 可用于搜索引擎和文 档信息检索系统。 挖掘用户历史浏览信息 ,结合分析用户 页面特征建立用户模型 ,分析文档库文 档建立文档模型 ,通过相似度对比。 能准确推荐出符合用 户兴趣的相关页面 ,为 用户浏览提供便利。 个性化网页浏 览、搜索引擎 苏贵 阳、王永 成、马 颖 华 (2003) 等 信息/ 情 报管理 更有效的利用信息/ 情报资源 ,为用户决 策提供可靠的信息/ 情报支持。 根据用户的输入请求 ,利用信息检索和 信息过滤技术提取特征建立模型计算 出符合用户需求的信息/ 情报。 推荐的信息/ 情报数据 符合用户需求或与用 户的需求相似。 数字 图 书 馆、 专家 系 统、阅 读类 网 站、聊 天机器人 高凤 荣、马文 峰、 王 珊 (2003) 等 服务/ 业 务定制 维持 和 提 升 客 户 关 系 ,提高服务/ 业务收 益。 分析用户信息 ,挖掘用户历史记录 ,建 立用户模型 ,找到与用户模型相匹配的 或用户感兴趣的服务/ 业务推荐给用 户。服务/ 业务被用户定制后 ,根据协 议为用户提供相应服务。 能为用户提供符合用 户兴趣和用户自身特 征的服务/ 业务 , 并 通 过保持与用户的沟通 提高服务质量。 图书 馆 服 务、 旅游 管 理、银 行业务等 罗凤莉 (2006) 等 第 22 卷增刊 2007 年 8 月 成  都 信 息 工 程 学 院 学 报 JOURNAL OF CHENGDU UNIVERSITY OF INFORMATION TECHNOLOGY Vol. 22 Suppl. Aug. 2007 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 212  主要的个性化推荐算法 表 2  推荐算法综合描述 推荐技术 依赖数据 用户输入 推荐过程 协同过滤推荐 用户 集 合 U 对 商品集合 I 的评 价 个人用户 u 对商 品集合中部分商 品的评价 从用户集合中识别与个人用户 u 兴趣相 似的用户 ,以这些用户对商品 i 的评价为 依据作出推断 关联规则推荐 用户 集 合 U 对 的 I 浏览或者购 买历史记录 个人用户 u 对商 品集合中部分商 品的评价 从用户集合中与个人用户 u 购买相同商 品的用户 ,产生频繁项集 , 产生关联规则 , 根据规则产生推荐。 基于内容的推荐 商品集合 I 中的 商品特征描述 个人用户 u 对商 品集合中商品的 评价 产生一个与个人用户 u 的评价相应的分 类 ,并将其应用于商品 i 基于效用的推荐 商品集合 I 中商 品的特征描述 个人用户 u 的兴 趣效用函数 将兴趣效用函数应用于商品并决定商品 i 的等级 基于知识的推荐 商品集合 I 中商 品的 特 征 描 述 , 及这些商品如何 满足需要的知识 关于个人用户的 需要或兴趣的描 述 推断出商品 i 与个人用户需要之间的匹配 推荐算法是个性化推荐系统的核心 ,贯穿于用户输入推荐请求到推荐结果输出的全过程。在电子商务网站 中 ,简单推荐是依据用户注册档案中喜好的关键字进行匹配 ,来推荐相关的个性化商品。高级推荐是动态适应顾 客的在线状态 ,根据顾客浏览的上下文环境以及点击流的分析 ,来调整推荐方案 ,拟合顾客需求 ,实现个性化推 荐。 目前 ,主要的个性化推荐算法有协同过滤推荐、基于规则的推荐、基于人口的推荐、基于内容的推荐、基于效 用的推荐、基于知识的推荐等 ,其中协同过滤和基于关联规则的推荐技术应用较广。以上推荐技术综合列表如表 2。表中 I 是商品集合 , U 是已知兴趣偏好的用户集合 , u 是需要进行推荐的个人用户 , i 是能预测个人用户兴趣 的商品。 3  个性化推荐系统分析 311  需求分析 31111  业务需求分析 电子商务网站有两个方面需要个性化推荐系统 ,即改善客户关系和提高网站的销售能力。①改善客户关系。 个性化推荐系统要能够在用户的使用过程中尽可能的满足用户的需求 ,实时地和用户保持互动和联系 ,及时获得 用户的需求并做出响应 ,能根据用户的反馈信息进行学习和自我完善。 ②提高网站的销售能力。能够吸引更多 客户购买 ;在用户购买时实施交叉销售 ,用户的推荐请求 ,给出最适合于用户的商品 ,并推荐其他相关的商品 ;为 网站对商品进行更新提供信息支持 ,辅助网站及时推出有热销潜力的特色商品 ,实现与其他网站的差异化销售。 31112  用户需求分析 用户访问电子商务网站的主要目的是寻找并购买需要的商品。其需求主要表现在 : ①用户在网站中要能够 顺利地寻找到所需要的商品 ,根据对商品信息的了解、系统的推荐程度和其他人的评价等决定是否购买。②用户 能根据自己的认识对商品进行评分和评价。评分是一些个性化推荐算法的数据基础 ,应该鼓励用户对商品进行 评分。评分或评价也是用户做出购买决定的参考。 ③系统服务定制。用户能选择并享受系统设定的个性化服 务 ,这些服务是管理员分析用户的兴趣对系统进行的功能设置。 312  业务分析 用户访问电子商务网站的主要目的是选择购买符合自己需求商品 ,整个业务流程从登录网站到购买商品生 成订单结束。从什么渠道怎么支付如何获得商品实体是在网站外部完成的 ,不在网站上的业务流程之内。 261 成  都 信 息 工 程 学 院 学 报            第 22 卷 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net   图 1  电子商务网站业务流程图   图 3  第一层数据流图   用户在网站上的具体业务流程描述如图 1 所示。 从图中看出 ,影响用户购买的主要步骤在是否能找到 满意的商品 ,用户在这方面的决策也是最重要的。在 这个步骤中 ,能否提高用户的搜索效率、帮助用户找到 满意的商品显得尤为关键。个性化推荐系统的主要作 用应该体现在这个步骤中。 313  数据流分析 31311  系统上下文图 个性化推荐系统接受用户的行为数据 ,根据用户 的不同输入输出不同的推荐信息。系统的外部实体主 要有用户(浏览者) 和系统管理员如图 2 所示。 31312  数据流图(DFD1 层) 主要处理分析 个性化推荐系统主要有以下处理过程 :用户定制 服务、行为记录、个性化推荐、购买商品、对商品评分 等。第一层数据流图可如图 3 所示。 用户根据系统设置的服务进行服务的定制。系统 获得用户选择的服务项目编号 ,查询数据库是否设置 并开通该服务 ,如果是保存用户定制到用户定制表中 ; 否则返回错误信息。用户定制 DFD 如图 4 所示。 用户在个性化推荐系统中的浏览行为 ,如点击链 接、查看商品信息等都会被记录到日志中 ,也能被系统 记录 ,作为挖掘用户兴趣的信息。用户行为记录过程 的 DFD 如图 5 所示。 “个性化推荐”处理中 ,系统通过“输入”处理从 ses2 sion 或缓存中读取用户编号 ,根据用户编号和请求信息 对数据库相关信息进行挖掘处理后 ,应用推荐算法对 用户、其他用户和商品信息比较求出推荐集 ,由“输出” 处理对推荐集格式化(如添加链接) 输出推荐结果。如 图 6 所示。 图 2  推荐系统顶层数据流图 图 4  用户定制 DFD 图 图 5  行为记录 DFD 图 361增刊        王纪辉等 :基于协同过滤算法的电子商务网站个性化推荐系统设计 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 图 6  商品推荐的 DFD 图 4  个性化推荐系统结构设计 个性化推荐系统逻辑框架由表现层、逻辑层、数据层构成。其中逻辑层主要由行为记录模块、业务逻辑 (接 口) 、推荐算法、页面模块组成如图 7 所示。 图 7  系统逻辑框架 其中 :个性化推荐引擎由页面模板与推荐算法构成 ,推荐算法实现提取与需求拟合的信息 ;页面模板采用 XML 技术 ,实现个性化页面的呈现。另外 ,行为记录模块记录用户的点击流信息与评价信息 ;业务逻辑(接口) 与 相应的购物流程相连接。 5  个性化推荐引擎设计 511  推荐算法采用协同过滤算法   协同过滤技术基本思想是基于评分相似的最近邻居的评分数据向目标用户产生推荐 ,推荐算法处理的基础 数据是不同用户对项目的评价。评价可以是布尔型的也可以是实数 ,数值的大小代表喜欢的程度 ,也称为评分。 协同过滤有利于判断符合用户兴趣的商品。例如在用户评价表中共有 M 个用户对 N 个商品进行了评分 ,要在 M 个商品项中找出符合用户兴趣的 S 个项向用户推荐。在对算法过程 ,可以分为以下几个阶段 : 461 成  都 信 息 工 程 学 院 学 报            第 22 卷 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net (1) 根据用户评价表 ,建立评价矩阵 ,如表 3 所示。 表 3  用户评价矩阵 商品  用户 Iterm1 Iterm2 ⋯⋯ ItermJ ⋯⋯ Iterm N User C Rc1 Rc2 ⋯⋯ ? ⋯⋯ Rcn User1 R 11 R 12 ⋯⋯ R 1 j ⋯⋯ R 1 n User2 R 21 R 22 ⋯⋯ R 2 j ⋯⋯ R 2 n ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ User I R i1 R i2 ⋯⋯ R ij ⋯⋯ R in ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ User M R m1 R m2 ⋯⋯ R mj ⋯⋯ R mn 表的纵向表示商品 ,User C 为当前用户 ,表的横向表示商品项。用户和商品的交叉点是用户对商品的评分。 (2) 基于用户对商品评分 ,计算 User C 与 User1 到 User N 的兴趣相似度。兴趣的相似在这被定义为用户对 商品的评分较为接近。相似度越高说明用户兴趣越接近。相似度通常采用向量空间模型的余弦值算法计算。 向量空间模型 (Vector Space Model , VSM) ,把用户兴趣的每个特征看作一个项 ,特征频度作为一个权 (Weight) ,含有 N 个特征的用户兴趣即被抽象为 N 维坐标系中的一个向量。应用到此问题中 ,就把商品项作为 用户兴趣特征 ,用户对商品感兴趣的程度以用户评分 R 来表示 ,则余弦值相似度计算用户兴趣之间的相似度公 式为 :  S i m ( i , j) = cosθ= ∑R i R j/ ( ∑R2 i · ∑R2 j ) 由于余弦相似性考虑不到不同用户评分尺度的问题 ,后来推出了改进的余弦值相似度算法。改进的余弦相 似度算法加入了用户对项目的平均评分 ,通过减去用户评分减去平均评分来改善余弦值算法的缺陷。改进后的 余弦相似度计算公式为 :  S i m ( i , j) = cosθ= ∑( R i - R) ·( R j - R) / ( ∑( R i - R) 2· ∑( R j - R) 2) 其中 Ri 是用户 i 对项目的评分 , R j 是用户 j 对项目的评分 , R 表示用户 i 和 j 对所有项目的平均评分。 所有用户与当前用户 UserC 的相似度如表 4 所示。 表 4  相似度比较结果表 用户 相似度 用户 相似度 User1 Sim( c ,1) User I Sim( c , i) User2 Sim( c ,2) ⋯⋯ ⋯⋯ ⋯⋯ ⋯⋯ User M Sim( c , m) (3) 根据计算出的用户相似度 ,选择相似度高的前几个作为邻居用户。邻居的个数有 2 种设置方式 : ①Top2N 方式。根据项目和用户的数量 ,按照一定比例选取与当前用户相似度最高的前 N 个用户作为邻居 集。 ②设置相似度阈值。根据经验或实验数据 ,设置阈值 S h ,对所有相似度大于 S h 的用户均能加入邻居集。 (4) 判断是否向用户推荐商品 ItermJ 。是否推荐商品项 ,要根据用户的兴趣度即用户对商品的评分来判断。 在未知用户评分但得知邻居评分时 ,可以根据邻居评分来预测用户对该项商品的评分 ,公式为 :  Pcj = Rc + ∑si m ( c , i) ·( R ij - R i) 其中 Pcj表示用户对商品项 ItermJ 的预测评分 , Rc 表示用户对所有商品集中的平均评分 ,sim ( c , i) 表示当 前用户 User C 与邻居 i 的相似度 , R ij表示邻居 i 对商品项 ItermJ 的评分 , R i 表示邻居 i 对所有商品的平均评分。 (5) 循环执行(4) 对商品集中所有商品进行评价 ,将用户评分降序排列 ,取出前 N 项 ( Top2N) 进行推荐。根 据以上过程分析 ,用流程图如图 8 所示。 512  推荐引擎的推荐策略 推荐引擎实现了 4 种不同的推荐策略。 561增刊        王纪辉等 :基于协同过滤算法的电子商务网站个性化推荐系统设计 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net (1) 用户请求推荐 :用户请求推荐是根据用户的输入和兴趣偏好实现最符合用户需求的推荐。这是最基本的 个性化推荐服务。设用户的兴趣度为 I ,系统内定义一个阈值 Ih 。根据相似度算法求出的结果集进行降序处理 后 ,取出 Sim( u , v) > Ih ,由系统推荐给用户。也可以设定为 Top2N 的方式 ,取出结果集中的前 N 个商品进行推 荐。 (2) 热门商品推荐 :根据所有用户的偏好 ,给出当前最热门的同类别商品的推荐。这种推荐不考虑当前用户 的兴趣偏好。这类推荐是由商品的热销程度决定的。当商品被订购 1 个单位时 ,商品信息表中的商品热销程度 数值自动加 1。 图 8  协同过滤数据流程图 推荐引擎查询数据库中商品热销程度最高的 Top2N 记录推荐给用户。 (3) 最新商品推荐 :将本站中同类别的最新的商品推荐给用户。这种推荐不考虑当前用户的兴趣偏好。商品 的“新”的程度是用商品被摆上购物架的时间来衡量的。管理员把一件商品上架的同时 ,系统获取当前时间并记 录在商品信息中。推荐引擎查询数据库中商品上架时间最晚的 Top2N 记录推荐给用户。 (4) 个性化定制推荐 :根据用户定制的服务 ,将用户定制的商品信息推荐给用户。在准确识别了用户的身份 和定制的服务类型后 ,根据用户定制服务的不同 ,系统做出不同的推荐响应。 6  结论 在分析电子商务网站业务数据流的基础上 ,应用协同过滤算法实现了面向商品评价的个性化推荐系统 ,在 WindowsXP + Apache2125 + PHP51211 + MySQL510122 + Zend Optimizer 31011 环境下设计实现了该系统。测 试数据是 2007 年 5 月 25 日至 2007 年 6 月 5 日先后加入数据库的 200 条书籍记录。为获得较为客观的数据 ,将 系统在局域网进行了发布 ,通过邮件、QQ、MSN 宣传等鼓励注册并对商品进行评价。截止 2007 年 6 月 10 日 ,注 册并对商品做出评价的用户 52 个 ,用户按照 1~5 的实数值对商品进行评价 ,评价记录 1562 条。经全库查询 ,数 661 成  都 信 息 工 程 学 院 学 报            第 22 卷 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 据库中共有与“Java”相关的商品 42 件。经过对数据库中用户评价表的查询统计 :在推荐结果中排在第一位《实 时 Java 平台编程》的共有用户评分 26 条 ,平均得分 4105 分 ;在推荐结果中排在最后一位的《Java 与 SOAP》共有 用户评分 13 条 ,平均得分 3. 34 分。对未进入推荐结果的包含“Java”信息的商品随机取 2 个 ,《Java 程序设计与 应用》和《Java 与 XSL T》。统计结果显示 :《Java 程序设计与应用》共有用户评价 9 条 ,平均得分 2100 分 ;《Java 与 XSL T》只有 4 人进行了评价 ,平均得分 115 分。对不包含“Java”字样信息的商品随机取 2 个 ,《C/ C + + 函数查询 词典》和《C++ Primer Plus (第五版)(中文版) 》。评价信息统计结果为 :《C/ C + + 函数查询词典》共有用户评价 18 次 ,平均评分 3142 分 ;《C ++ Primer Plus (第五版)(中文版) 》共有用户评价 31 次 ,平均评分 4181 分。如表 5 所示。 表 5  样品统计表 商品 含有“Java” 被推荐 评分次数 平均评分 《实时 Java 平台编程》 是 是 26 4105 《Java 与 SOAP》 是 是 13 3134 《Java 程序设计与应用》 是 否 9 2100 《Java 与 XSL T》 是 否 4 1155 《C/ C + + 函数查询词典》 否 否 18 3143 《C++ Primer Plus (第五版)(中文版) 》 否 否 31 4181 对表 5 中信息进行分析可以看出 : (1) 评分次数较少和平均评分较低的商品没有被系统推荐 ,系统推荐正确性。 (2) 不符合用户要求的商品 ,尽管评分次数很多、评分很高仍然不会被推荐。 参考文献 : [1 ]  周娜 ,廖文和 ,杨浩. 基于分类和关联规则的个性化产品推荐系统[J]. 高技术通讯 ,2004 ,11:51 - 55. [2 ]  苏贵阳 ,王永成 ,马颖华. 个性化浏览中网页推荐的结构模型[J]. 计算机科学 ,2003 ,30 (4) :99 - 101. [3 ]  高凤荣 ,马文峰 ,王珊. 数字图书馆个性化推荐系统研究[J]. 情报理论与实践 ,2003 ,26 (4) :361 - 362. [4 ]  马丽华. 高校图书馆个性化信息服务的定制模式[J]. 科技情报开发与经济 ,2006 ,16 (20) :25 - 27. [5 ]  欧力奇. 协同过滤在电子商务系统中的应用[D]. 西安 :西北大学 ,2006. [6 ]  Good.N , Schafer.J.B , Konstan.J , Borchers.A , Sarwar.B , Herlocker.J , RiedI,J. Combining Collaborative Filtering with Personal Agents for Better recommendationgs[C]. Proceedings ofAAAI’99 , 1999. [7 ]  吴昕方. 基于特征的个性化电子商务网站推荐系统的研究与实现[D]. 长春 :东北师范大学 ,2006. [8 ]  张李义. 电子商务概论[M]. 武汉 :武汉大学出版社 ,2002. [9 ]  Ricardo Baeza2Yates , Berthier Ribeiro2Neto , 王知津 , 贾福新 , 郑红军译. 现代信息检索[M]. 北京 :机械工 业出版社 ,2005. [10 ]  赵智 ,时兵. 改进的个性化推荐算法[J]. 长春大学学报 ,2005 ,15 (6) :26 - 28. Design of E2commerce website’s Personalized Recommendation System based on Agricultural logistics WAN G Ji2hui ,  ZHAO Zhuo2ning (Dept. of E2commercial Affairs , CU IT , Chengdu 610225 , China) Abstract :The logic model of the Personalized Recommendation System with the requirement of E2commerce website isestablished. An engine of the personalized recommendation system is designed based on the agriculture logistics which is independent from the merchandise’s basic character. This design is useful to the improvement of the E2com2 merce website’s operating performance. Key words : electronic commerce ; agriculture logistics ; agriculture modernization 761增刊        王纪辉等 :基于协同过滤算法的电子商务网站个性化推荐系统设计 © 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
还剩6页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享pdf获得金币 ] 2 人已下载

下载pdf