协同过滤算法优化在推荐系统中的应用

  • 格式:pdf
  • 大小:745.96 KB
  • 文档页数:5

DOI:10.3969/j issn.1006—6403 2015.02.004 协同过滤算法优化在推荐系统中的应用 

[韩高朱正键刘思泳] 

关键词: 电子商务推荐系统协同过滤情感性需求 韩高 男,中国移动广东公司珠海分公司网络维护中心,硕士,西安电子科技大 

学,通信与信息系统,主要研究方向:移动通信网络。 朱正键刘思泳 中国移动通信集团广东有限公司珠海分公司。 

引言 集个性化、精细化、自动化优势于一体的智能推荐系 其高效推送针对性产品的能力被广大电商相继采用。 智能推荐系统的主流实现方式是通过协同过滤算法, 户决策购物阶段以推送实物产品形式实现自动营销。 本次智能数据挖掘应用以基于产品的协同过滤开 在前人研究的基础上,继承该算法自适应性强、不 领域知识、能跨类型推荐等优势;同时在如何处理用 为的时效性、保证推荐商品的新颖性、处理新客户的 动问题上提出适合珠海移动本地电商网站——“惠生 的整体解决方案。 

智能数据挖掘的模型设计 如图1所示,智能推荐系统分为两个部分:离线部分 线部分。离线部分由数据的准备和数据挖掘算法的实 成。数据的准备包括从web数据库的暂存log文件中 用户操作行为记录,从信息数据库中提取用户个人属 

性和产品信息。专门数据挖掘算法的实现包括基于用户个 人属性的类别分类和基于产品被浏览的协同过滤算法相关 表生成和基于产品被购买的协同过滤相关表生成;在线部 分是调动离线部分生成的产品相关表和用户类别分类,结 合用户实时的动态操作和一定程度上的人工干预推荐形式 (产品销售周期、产品库存、用户的操作深度、冷启动问 题),最终生成推荐产品的列表。 

;线翔i分 

梧关曩l 相关寰 相关囊N 

—_ —一 ・= —_一一 

—- 

图1推荐系统结构图 

撼耐将 基基求 圜 吾=营=与一应鬲一 日粤协同过滤算法优化在推荐系统中的应用 

本次智能推荐系统旨在基于目前协同过滤算法已有 的自适应性强、不需要领域知识、能跨类型推荐等优势 上,考虑到“惠生活”电商平台以本地服务类团购和移动 自有业务为主,具有商品周期性短、库存少,新用户占比 多,被活动类吸引用户占比大等特点。强调推荐系统优先 推荐处于旺季的产品;不推荐零库存产品;随用户操作深 入调整相关性,满足推荐的新颖性或专业性需求;新用户 冷启动等问题。下面着重讨论基于产品的协同过滤算法推 荐和优化方案的实现. 2.1相关定义 (1)定义操作事务项 设 为用户访问操作事务项,每条操作记录16L包括: 用户主机 地址,. ,用户lD号1.uid,浏览产品 为 

readP.id,浏览时间rtime,评价产品 为estp.id,评 价时间为etime;若没有用户的 则可以随意分发标识 符给用户作为 d。Log文件中关于用户操作的还包括: 请求方法、Jp 7'或G 、传递文件的大小等。由于这 些信息对建模没作用,故在数据精化去冗余处理的时候就 被系统处理掉。一般浏览行为和购买行为 lk=<uid,readPk.id,rtime ̄> 

其中 ∈L, .uid =uid readPk.id=readP.id,rtimek=rtime (1) =<lk.uid,estpk.id,etimek> 其中 , .uid=uM estp .id=CStp.id,etimek=etime (2) (2)定义有效浏览和评价行为事务项 基于用户浏览行为做产品推荐,需要让行为数据给 协同过滤算法所用。不但要准确定义用户在一次操作中的 事务项,更要准确定义有效浏览操作。对于用户的浏览行 为,定义用户从开始浏览网站(时间定义为starttime )到关闭网站超过3分钟,或者停止操作超过3分钟(时间 定义为P dtime)为一次完成网站体验。 

L.starttime rtimek L. dtime (3) (3)协同过滤核心算法实现 本智能推荐系统系统采用余弦公式计算产品间的相 关性。首先寻找产品a与产品b的共同评价客户群:再以产 品a的评价作向量 , 同理。产品a与产品b的相关系数 计算公式如下: 

cos(a,6) a.b (4) 

余弦计算相关性在虽然高效且准确地反映了产品之 间受同类用户喜爱程度。但公式并无考虑不同用户自身的 评分松紧张度。为了弥补这方面的忽略,在原有公式的基 础上采用用户评分与用户平均评分的差异作为相关性计算 公式。设C为同时评价产品a和产品b的用户集, 为用 户C对商品a的评分, 用户集C的平均评分。 

s(a,6 = ∑( f∈C ’ (5) 

本次推荐系统所部署的电子商务平台主营线下服务 性商品。产品更新速度快,销售周期短等问题较一般电商 平台突出。上述情况衍生出数据矩阵稀疏情况也将更为凸 显。基于协同过滤算法的推荐系统,至少需要两个用户评 价了两个以上相同产品才能计算,而实际上用户可能因为 无评价而与相似的用户失之交臂,系统无法作出任何推 荐。 系统采用平滑的数据矩阵填充方法解决上述问题, 用户C对产品a的平滑评价值为评价的矩阵元素,形式化 的表示如下: 

v: ± ± ± (6) 2 

其中, 是用户C对于所有项目评价均值:屹是用户 C的评价偏移均值。其中,1,’是所有用户对项目a的评价 均值:吃是产品a的评价偏移均值: 

2o"1 5.02’广东通信技术 

国 圄 围 国 圆 

1 3 运营与应用 …f rVc,t

()1 好,增加同类商品的曝光机会,激发长尾价值。而对于主 

d— I71l 营线下服务业务的电商平台,其用户需求从实物消费转向 

2∑ccC ( 一 

刀 黹簧似仫 

; 

L、 蠹 _刖以,艾 

lCl 最终导向用户在参与购买产品的行为中不仅仅对一类产品 其中,lTI和lCI为系统中用户数和项目数。最后一步 感兴趣。为此,在实现推荐的时候,记录用户访问时间内 计算商品的预测值,对用户群C所有已经评价的项目与要 有效浏览产品的类别数有利于用于调整商品推荐的方向。 预测的项目i之间的相似度后,过滤出前K个最大的产品C, 当用户浏览产品类别数超过用户购买产品前平均浏览产品 然后计算这些值的和,每个值都以相似度为权。具体公式 类别数,则推荐系统根据设置降低相关性阈值,从而提升 如下: 推荐的新颖性,当用户浏览产品类别数未超过用户购买产 

It々业I_土o ・ 量 浏览产品类别数则调高相关性阈值,提升推荐的 l‘一(Isob\) 、b I I})ttme >A Ej pt mes)I 

aeC 一 一 ,厂(I.pclu s'ter>>A VEI.pcluster): 

2.2待解决的问题 C(),2,j ce leve, inco 触门c /eve, 

(1)新用户的冷启动问题 (,.pcluster<<A VE1.cluster): 新用户往往由于缺乏数据导致推荐系统无法对其进("onfidence level=maxconfidence level 行产品推荐。一般的处理方式是通过推荐热销产品代替个 最小置信值和最大置信值系统默认设置为0.4gl30.9, 

性化推荐。这次推荐系统在沿用上述理论的基础上,通过 同时支持通过后台人工干预设置。 聚类算法对用户信息进行类别划分,再根据同类别用户的 2.3在线处理模块 

热销产品向新用户推荐。对于无法获取用户信息的新用户 (1)推荐结果调度与实施模块: 

的则推荐大众热销产品。 最终推荐系统将对电商平台的首页、产品展示页、 

对于有信息的新用户实施同类用户的热门推荐: 用户已购买产品后推荐产品页进行个性化产品的推荐,其 

Recommand<P.id>={max(c,k)l ,Ucluster} 中不同页面推荐需求不一,其推荐程序如下: 

其中c∈ , ter,1 k (11) 2-3・1惠生活首页的产品推荐栏算法: ①If用户有评价信息 对于无信息新用户实施大众推荐: ②根据算法推荐用户喜好产品 

Recommand<P.id { 似(p.id,k)l }1 k ③If用户有注册信息无评价信息 

(12) ④通过聚类算法生成的规则判断用户所属UcIuster (2)商品销量与生命周期管理 ⑤根据所属分类获取热销产  ̄lJRecommand< 推荐系统以通过提高产品的曝光率,拉动客户消费P.id>={max(p.id.k)lT,Ucluster} 

提升营业额为目的。考虑到在实际运营中会遇到零库存或 ⑥剔除用户已购买、零库存、处于淡季的产品选取 商品存在显著的淡旺季周期等严重影响推荐情况等因素, 最热销的k项产品。 本系统将自动过滤该商品的推荐。 ⑦生成最终推荐产品列表 (3)线下服务类产品的推荐问题 ⑧If用户无注册信息