APP下载

基于情感分析的商品推荐系统的设计与实现

2014-04-01

中原工学院学报 2014年3期
关键词:形容词模块算法

(1.中原工学院,郑州 450007;2.郑州航空工业管理学院,郑州 450005)

随着计算机的普及和互联网的迅猛发展,人们已经习惯于通过网络获取信息。然而,海量的信息一方面使用户很难从中发现自己感兴趣的内容,另一方面也使得一些少人问津的信息成为网络中的“暗信息”,无法被一般用户获取,使得信息的利用率反而降低(信息超载)[1]。近年来,随着电子商务应用的逐步深入,以淘宝为首的电子商务企业让中国亿万消费者领略了网络购物所带来的前所未有的方便,顾客可以不受时间、地域的限制,随时随地买到他们想要的任何商品。但是,不断增多的商品类目和数量让用户找到自己真正需要的商品变得越来越困难,如:Amazon上有数百万图书,淘宝上有过亿的商品。对于电子商务网站来说,如果不能准确地为客户展示他们喜欢的商品,而让顾客将时间浪费在浏览自己不感兴趣的商品上,那么最终为顾客糟糕的浏览体验埋单的还是网站自己。而通过个性化推荐技术,能够改善顾客在网络上的浏览体验,不仅让他们能够买到称心如意的商品,而且买得轻松满意,因此个性化推荐被认为是解决信息超载最有效的工具之一[2-3]。

随着Web2.0技术的成熟,个性化推荐系统已不仅仅是一种商业营销手段,更重要的是其可以增进用户黏着性,给电子商务领域带来巨大的商业利益。据VentureBeat统计,Amazon的推荐系统为其提供了35%的商品销售额。与此同时,我国也广泛开展了个性化推荐系统的研究,阿里巴巴、豆瓣、当当、淘宝成为国内业界的翘楚。但总的来说,关于国内个性化商品推荐服务的研究仍处于探索阶段。目前电子商务推荐系统存在的共同问题是:大量的推荐系统要求用户对网站中的各个商品进行“购买评价”,或者对推荐系统给出的结果进行评价;用户在使用网站时,如果兴趣有变化,推荐系统不能自适应地进行相应的调整。

本研究建立了用户评价模型,在用户进行商品检索时,启动推荐系统,分析使用者当前提交的检索关键词,依据推荐引擎的分析,提供给用户最合适的商品列表。本系统不需要使用者提供商品的购买评价,便能够分析使用者当前的购买需求,从而提供最合适的商品信息。本系统旨在帮助消费者检索到有用的产品评价信息,利用语义情感倾向根据用户实际需求推荐最适合的产品,在节省用户时间和精力的同时提高了用户购买产品的满意度。

1 推荐算法

一个完整的推荐系统由3部分组成:收集用户信息的行为记录模块、分析用户喜好的模型分析模块和推荐算法模块。行为记录模块负责记录用户的喜好行为,如:问答、评分、购买、下载、浏览等。问答和打分的信息相对好收集,然而有的用户不愿意向系统提供这类信息,因此就需要通过其他方式对用户的信息进行分析,如购买、下载、浏览等行为。通过用户的行为记录分析用户潜在的喜好商品和喜好程度。模型分析模块能够对用户的行为记录进行分析,并建立模型来描述用户的喜好。推荐算法模块是利用推荐算法从产品集合中筛选出用户感兴趣的产品进行推荐。其中,推荐算法模块是推荐系统中最核心的部分。根据算法可以将推荐系统分为3类:

(1)协同过滤(collaborative filtering)系统。这种系统是利用当前用户或者其他用户对部分项目的已知偏好数据来预测当前用户对其他项目的潜在偏好,或者利用部分用户对当前项目或者其他项目的已知偏好数据来预测其他用户对当前项目的潜在偏好。

(2)基于内容(content-based)的推荐系统,最初的基于内容的推荐是协同过滤技术的延续和发展。依据用户已经选择的产品内容计算用户之间的相似度,进而进行相应的推荐。

(3)混合算法(hybrid filtering)推荐系统。这是将不同推荐类型或推荐算法进行组合产生的新的推荐算法。

结合当前推荐系统的发展趋势,本文采用混合推荐算法。

2 系统设计与实现

本文研究的商品推荐系统,能够在用户输入需要的产品系列和属性后,提供给用户在该属性下广得用户好评的商品列表。

本系统流程归纳为4个阶段:数据采集、语料预处理、情感分析及检索。首先利用数据采集模块从淘宝和百度有啊中抓取手机标准类目下的商品及评价信息5 000条,并对这些数据进行处理,挑选出合适的商品信息(评价数超过500条的商品),共2 389件商品,将这些商品信息进行分词等预处理,抽取出情感词以及其他特征项,并给这些特征项加权,其中情感词在情感分析之后给予其情感值作为该情感特征项的权值,最后给用户提供最适合的商品列表,如图1所示。

图1 推荐系统模块图

(1)数据采集模块。本系统利用开源网络爬虫nutch从百度有啊、淘宝中抓取评价数据,针对网站的个性化差异,使用正则表达式融合vips算法实现个性化的抽取,可以直接从网页的相关结构块中抽取出需要的商品属性信息以及商品评价信息。

(2)语料预处理模块。该模块首先对抓取到的数据进行分词及词性标注,并利用淘宝类目属性值挖掘出评价中的商品属性,组成属性信息模板key:{values}格式,其中key代表商品评论中获取的商品属性信息,例如“屏幕”、“操作系统”等,values代表商品评价中抽取的属性值集合,属性值包括形容词、名词。

(3)情感分析模块。为了推荐给用户最需要、评价最好的商品,需要对属性值进行情感分析,提取好评商品。本文基于HowNet的情感词表判断评论中形容词的情感倾向性。HowNet提供的情感词库中含有褒义词3 866个,贬义词3 261个。本文从情感词库中挑选出成对出现,并适用于手机评论的情感基准词共40对,如:{高,低}、{差,好}、{正品、假货}、{漂亮、丑}、{好,坏}、{完美、瑕疵}等,通过计算预处理阶段提取出来的形容词特征项与基准词集合间的语义距离,确定形容词特征项的情感倾向性,并作为该形容词特征项的权值。处理流程如图2所示。

评价语句中的形容词与情感基准词之间的语义相似度计算公式为

其中,word为当前需要计算情感倾向性的形容词;Sim(word,Cwordi)为形容词word与褒义基准词i之间的相似度;Sim(word,Dwordi)为形容词word与贬义基准词i之间的相似度;Plarity(word)为形容词word的情感倾向权值。

(4)检索模块。本系统采用基于向量空间模型的方法进行信息检索,即将每个商品信息表示为特征空间的一个向量,di={(ti1,wi1),(ti2,wi2),…,(tin,win)},其中:di为第i个商品;tin为商品中的特征项,本文采用的是商品属性;win为特征项tin的权重,表示tin

图2 情感分析流程图

在文本中的重要程度。其中权重是根据特征项在商品评论中出现的频率、情感倾向性计算得到的,本文采用了TFIDF计算特征项权重,而情感倾向性作为权重的正负极。

3 结 语

本文从淘宝和百度有啊中采集了手机类目下的商品及商品评论数据集,在该数据集的基础上阐述了基于情感分析的商品推荐系统的设计与实现过程,下一步将对淘宝中商品评论的标签数据进行分析及利用,以改善推荐系统的推荐效果。

参考文献:

[1] 王立才,孟祥武,张玉洁. 上下文感知推荐系统[J].软件学报,2012,23(1):1-20.

[2] Zeng Chun, Xing Chun-xiao, Zhou Li-zhu. A Survey of Personalization Technology[J]. Journal of Software, 2002,13(10):1952-1961.

[3] Adomavicius G, Tuzhilin A. Personalization Technologies: a Process-oriented Perspective[J]. Communications of the ACM, 2005, 48(10):83-90.

[4] 董振东, 董强. 《知网》语义词典HowNet.txt[EB/OL].[2013-05-01]. http://www.keenage.com.

[5] 刘群, 李素建. 基于知网的词汇相似度计算[EB/OL].[2013-05-01]. http://www.keenage.com.

[6] Peter D T. Similarity of Semantic Relations [J]. Computational Linguistics Journal, 2006, 32(3): 379-416.

[7] Peter D T. Mining the Web for Synonyms: PMI-IR Versus LSA on TOEFL[C/OL]//Proceedings of the 12th European Conference on Machin-learning.[2013-04-29]. http://cogprints.org/1796/5/ECML 2001.pdf.

[8] 刘建国,周涛,汪秉宏.个性化推荐系统的研究进展[J]. 自然科学进展, 2009,19(1):1-15.

猜你喜欢

形容词模块算法
28通道收发处理模块设计
“选修3—3”模块的复习备考
认识形容词
Travellng thg World Full—time for Rree
进位加法的两种算法
一种改进的整周模糊度去相关算法
一种基于L-M算法的RANSAC图像拼接算法
形容词
集成水空中冷器的进气模块