1引言近年来,随着通信网络、电子交易平台和社会化媒体技术的快速发展,在网络平台上产生了大量的信息。对于消费者而言,信息缺乏无法理性决策,信息过量同样会使决策陷入困境,因此有必要提高消费者信息查询
和分析的效率。通过推荐系统及其导航功能,决策者能在大量的网络商品信息中快速搜寻满足自身需求的商品,节约信息搜寻的成本,这在一定程度上有助于消费考虑对象关联关系的多样化商品推荐方法
游运1,2,3,万常选1,3,陈煌烨1,3
YOU Yun 1,2,3,WAN Changxuan 1,3,CHEN Huangye 1,3
1.江西财经大学信息管理学院,南昌330013
2.东华理工大学理学院,南昌330013
3.江西财经大学数据与知识工程江西省高校重点实验室,南昌330013
1.School of Information Technology,Jiangxi University of Finance and Economics,Nanchang 330013,China
2.School of Science,East China University of Technology,Nanchang 330013,China
3.Jiangxi Key Laboratory of Data and Knowledge Engineering,Jiangxi University of Finance and Economics,Nanchang 330013,China
YOU Yun,WAN Changxuan,CHEN Huangye.Diversified commodity recommendation method considering corre-lation between objects.Computer Engineering and Applications,2018,54(7):70-76.
Abstract :In view of the fact that background data source of recommended objects is single and commodity recommendation lacks diversity in traditional recommendation systems,this paper puts forward a diversified commodity recommendation algorithm.The relationship between objects is divided into three categories,which is respectively complementary correlation,similarity correlation and scenario correlation.It analyzes these correlations between customer interest ontology and recommended commodities,as a result,deduces commodity recommendation list of the customer.The experimental results show that compared with traditional recommendation method only to consider similarity correlation,the algorithm enriches the type of recommended commodities,optimizes recommendation list and further meets consumers ’demand for complementary or scene correlation commodities.
Key words :semantic association;commodity recommendation;ontology;relational data
摘要:针对社会化商品推荐中推荐对象背景数据单一、推荐结果缺乏多样性等问题,提出了一种基于推荐对象间关联关系的多样性推荐算法。在领域本体建模的基础上,将推荐对象之间的关联分为三类,即互补关联、相似关联和情景关联,分析推荐商品与消费者兴趣本体之间的综合商品相似度,综合商品互补度和商品情景关联度,最后根据算法得出各商品推荐度及推荐列表。实验结果表明,该方法与传统的推荐方法相比,在一定程度上丰富了推荐商品的类型,优化了推荐列表排名,进一步满足了消费者对互补性商品及情景关联性商品的推荐需求。
关键词:语义关联;商品推荐;本体;关联数据
文献标志码:A 中图分类号:TP391doi :10.3778/j.issn.1002-8331.1701-0383
基金项目:国家自然科学基金(No.61562032);江西省自然科学基金重大项目(No.20152ACB20003)。
作者简介:游运(1979—),女,博士研究生,讲师,研究领域为数据挖掘、情感分析,E-mail :youyun_rose@163 ;万常选(1962—),
男,博士,教授,研究领域为情感计算、数据挖掘和信息检索;陈煌烨(1991—),男,硕士研究生,研究领域为数据挖掘和情感分析。
收稿日期:2017-02-06修回日期:2017-05-09文章编号:1002-8331(2018)07-0070-07
CNKI 网络优先出版:2017-08-03,knski/kcms/detail/11.2127.TP.20170803.1625.002.html
⦾大数据与云计算⦾
者摆脱由于“信息过载”所带来的决策困境。在实际应用过程中,这些推荐系统一般包括基于推荐对象相似度(知识推理)的推荐方法、基于用户兴趣的协同过滤方法、基于推荐对象关联挖掘的推荐方法或者这几种方法相结合的推荐[1-3]。基于推荐对象的相似度(知识推理)的推荐策略避免了协同过滤推荐的最初评价问题和数据稀疏性问题,但是当前基于推荐对象相似度(知识推理)的推荐方法存在两个缺点:一是在进行相似度算法的设计时,由于该算法本身的局限性,导致只有与消费者已购买商品有相同属性的对象才可能被最终推荐,这将导致推荐列表中对象类型过于单一;二是没有考虑到消费者对互补性商品和情景关联性商品的需求,忽视了消费者可能存在的对互补商品或情景相关商品的推荐需求,比如,在商品购买过程中,潜在的消费者更倾向于选择那些与自己已购买过的商品功能互补或情景关联的商品(如曾经购买过打印机的用户,随后更有可能会需要购买打印墨盒)。
针对以上存在的问题,文中从推荐商品之间的关联类型出发,综合考虑商品相似关联、情景关联和互补关联三种关联类型,提出了一种综合推荐商品间多种关联关系的多样化推荐算法。算法首先从语义关联实例的角度,进行基于领域本体的项目建模,通过分析用户兴趣本体,并对其进行偏好扩散,得到与用户兴趣本体可能存在关联关系的其他商品对象集,形成推荐候选集。其次分析用户兴趣本体与推荐候选集中各商品实例之间的综合相似度;再次分别分析用户兴趣本体与推荐候选集中各商品实例之间的层次互补度和商品互补关联度,两者综合得出推荐候选集中各商品实例的综合互补度;最后结合关联规则考察用户兴趣本体与推荐候选集中各商品实例之间情景关联特征,并结合对象间的综合相似度、综合互补度和潜在消费者兴趣度,计算得出该消费者的多样化商品推荐列表。
2相关研究
推荐系统按照所使用的数据来分类,可以分为内容过滤[4-5]、协同过滤[6-7]和社会化推荐系统等。已有的社会化推荐算法虽然取得了一定的推荐效果,但它们大都是根据用户间社会网络关系和推荐商品直接的相似性进行研究,因此在一定程度上忽略了推荐商品之间互补关联和情景关联以及用户偏好与推荐商品之间关联的重要性。
2.1基于本体的建模
本体是一种常用的建模方法,它主要是通过规范的知识结构、合理的层次划分,来进行知识的共享复用
和逻辑推理[8]。文献[9-10]通过对推荐对象的相关领域知识的分析,建立领域本体模型,但建模时仅考虑了对象之间层次关系,忽略了推荐对象之间的属性语义关联。这将导致用户兴趣本体与推荐对象实例之间相似度计算的准确性受到影响。文献[11]利用不同领域中的语义本体信息和关联数据库,分析了音乐领域和建筑领域中的不同对象及这些对象之间的语义关联关系,构建了一个有向图,即跨领域的语义概念模型,并在该有向图的基础上,分析不同领域对象之间的语义关联关系并进行知识推理,将不同领域的对象或知识推荐给消费者,实现跨领域的推荐。文献[12]全面考虑推荐对象层次关系和属性关系,并通过电影实例之间的语义关联来改进实例的相似度计算算法,但忽略了互补关联对象的推荐。
2.2多样性选择算法
大多商品推荐系统主要考虑属性相似的对象的推荐,从而导致推荐对象种类单一。多样性匮乏的推荐结果导致了消费者已购买、已熟悉的商品的重复推荐,而忽视了购买行为之后的情景关联性商品、互补性商品的实际推荐需求。朱郁筱等[13]对推荐系统的性能指标进行了归纳,认为推荐系统的好坏不仅要考虑准确率等传统指标,还要考虑其他指标,并特别强调了推荐的多样性指标及推荐商品在推荐列表中合理排序的重要性;文献[14]针对推荐的多样性问题,通过引入模糊相似测量等方法来提高基于内容过滤算法的有效性。薛福亮等[15]提出基于Vague理论和商品相似性计算的商品多样性选择算法,以提高推荐结果的多样性。文献[16]通过用户的需求调查和多领域知识的综合分析,将多源关联数据作为背景数据提出了基于多源关联知识的推荐系统,以实现推荐结果的准确性和有效性,但其并未从推荐对象间互
补性关联和情景关联的角度来进行问题的综合分析。
在商品销售过程中,消费者购买了一件商品之后,可能会再一次购买相似的商品,更可能会购买与之具有功能互补或情景关联的商品。能否满足消费者对这些互补性和情景关联性商品的推荐需求,增加推荐商品的多样性,是当前的推荐方法务必考虑的问题,而这也将影响推荐结果的有效性。
3问题描述
3.1领域本体建模
本部分采用基于领域本体(Domain Ontology)的方法分别对商品(Commodities)和潜在消费者(Customers)进行建模,建立了领域本体Dom_O和潜在消费者模型PC_Model。
可以将商品领域本体表示为:Dom_O={G,RH, RP,RS,RC,P}。其中G代表领域中具有一定层级结构的信息的集合;RH指信息或者商品之间的层级结构关联;RP指概念之间的属性关联或实例之间的属性关联,这些关联将不同的概念和不同的实例组织起来,形
成一个有机整体;RC 指概念之间或实例之间的互补关系;RS 指概念之间或实例之间的情景关系;P 指商品实例集合,代表某个类别的具体实体集合。为了后面论述的需要,本文以家装商品为例,绘制家装领域本体片段(如图1所示),将家装领域本体中的类别、商品实例及其关联以图形的形式呈现出来。可以将潜在消费者(Customers )模型形式化表示为一个三元组:Customers_Model =(Customers_Info ,Cus-tomers_DOI ,Customers_Onto )。Customers_Info 代表消费者基本信息,表示为Cus-tomers_Info ={CustomersID ,CName ,CSex ,CBirth ,CPro-fession },用来表示消费者基本信息。Customers_Onto 代表用户兴趣本体,表示为Customers_Onto ={C ,RN ,RP ,P },其中C 表示消费者感兴趣的概念集合,RN 表示消费者之间的社交网络关系(Social Network Relationship ),RP 指概念之间或消费者之间的属性关系,P 代表用户感兴趣的商品实例集合。Customers_DOI 代表消费者兴趣度,表示为Customers _DOI ={CustomersID ,p i ,D i (t ),t },其中p i (1≤i ≤n )用来表示消费者兴趣本体P 中的第i 个商品实例,D i (t )(-1≤D i (t )≤1)表示在t 时刻消费者对商品实例p i 的偏好值,当消费者对该商品有兴趣,则D i (t )为正值,否则为负值。随着时间的变化,D i (t )的值会发生变化。3.2基于商品之间关联关系的商品推荐算法本文基于领域本体中商品实例之间的语义关联关系,分析了商品之间的相似关联、互补关联和情景关联,提出了基于商品之间关联关系的多样化推荐算法。3.2.1商品相似度计算商品的相似关联是指商品之间由于类别、功能和属性等相同或相近而产生的关联关系。可根据领域本体中商品实例之间的层次关系计算对应的层次相似度,根据商品实例之间的属性特征计算对应的属性相似度,最后综合得出商品实例的综合相似度。若商品实例p i 和p j 属于同一个类或相似类的实例,则称p i 和p j 之间存在层次相似关联。
商品实例层次相交路径所在分支的深度越深,节点离最近的公共类越远,它们之间的层次相似度也越小。
最近公共类的深度越深,商品实例p i 和p j 越具体,它们
之间的层次相似度也越大。d (p i )和d (p j )表示商品实
例p i 和p j 的深度,d (A )为层次相交关联中相交节点的
深度,D 表示对应的总深度,则商品实例p i 和p j 之间
的层次相似度表示为:
Sim HJA ()p i ,p j =d ()A []d ()p i -d ()A []d ()p j -d ()A +D
(1)若商品实例p i 和p j 分别有x 和y 个属性,具有k 个相似的属性,则称p i 和p j 之间存在属性相交关联,体现实例之间的属性相似性。当两个商品实例相同的属
性越多,则k 越大,说明两个商品实例类别越相近;而商
品实例之间属性值越相似,则语义关联长度L (PJA
i )越
小,两个商品实例的属性相似度越大。由于商品实例属性多为标称属性,因此两个商品的属性相似性可结合匹配率来计算。假设两个商品实例的
属性值标准化后分别是()p i 1,p i 2,…,p ix 和()p j 1,p j 2,…,p jy ,
其中k 是匹配属性数目,则商品实例p i 和p j 之间的属
性相似度表示为:
Sim PJA ()p i ,p j =2x +y ∑l =1k
1L ()
PJA l (2)
设层次相似度的权重为ε(0≤ε≤1),属性相似度的权重为φ(0≤φ≤1),且ε+φ=1,则本体中任意两个商品实例p i 和p j 的综合商品相似度为:
Sim HP ()p i ,p j =εSim HJA ()p i ,p j +φSim PJA ()p i ,p j (3)在计算时,可以根据具体应用需要调整公式(3)中的参数。
3.2.2商品互补度计算
商品的互补关联是指商品实例p i 和p j 之间由于功能上存在互补关系而产生的关联关系,比如打印机和
墨盒之间就存在互补关联。通过层次语义互补度、商品互补关联度和商品相似度可计算出商品实例p i 和p j 之间
综合商品互补度。若商品实例p i 和p j 分别属于最近互
补类C i 和C j ,商品实例p k 属于互补类C j ,相交类A 为商品实例p i 和p j 的最近共同祖先,则称p i 和p j 及
p i 和p k 之间存在互补关联,如图2所示。
对于存在层次互补关联的商品实例p i 和p j ,如图2所示。对应的最近互补类C i 和C j 深度越深,商品实例p i 和p j 越具体,层次互补度也越大。同时,
商品实例
图1家装领域本体片段
p i 和p j 的深度越深,节点互补类C i 和C j 越远,节点之间的层次互补度也越小。d (p i )和d (p j )表示商品实例p i 和p j 的深度,d (C i )和d (C j )为最近互补类C i 和C j 的深度,D 表示总深度,则商品实例p i 和p j 之间的层次互补度表示为:Com HJA ()p i ,p j =min
()d ()C i ,d ()C j +1
[]d ()p i -d ()C i []d ()p j -d ()C j +D (4)假设商品销售过程中,商品实例p i 和p j 之间存在对应关联规则p i ⇒p j 或p j ⇒p i ,支持度Dsup ()p i ⇒p j ≥α或Dsup ()p j ⇒p i ≥α,且置信度Dconf ()p i ⇒p j ≥β或Dconf ()p j ⇒p i ≥β,α和β分别为对应阈值,则商品实例p i 和p j 之间的商品互补关联度可表示为:Com PJA ()p i ,p j =Dsup ()p i ⇒p j +Dconf ()p i ⇒p j -Dsup ()p i ⇒p j ×Dconf ()p i ⇒p j (5)Com PJA ()p j ,p i =Dsup ()p j ⇒p i +Dconf ()p j ⇒p i -Dsup ()p j ⇒p i ×Dconf ()p j ⇒p i (6)
假设商品销售过程中,商品实例p i 和p k 之间有对应
关联规则p i ⇒p k 或p k ⇒p i ,但支持度Dsup ()p i ⇒p k <α或Dsup ()p k ⇒p i <α,且置信度Dconf ()p i ⇒p k <β或Dconf ()p k ⇒p i <β,α和β分别为对应阈值,则商品实例p i 和p k 之间的商品互补关联度表示为:Com PJA ()p i ,p k =Com PJA ()p i ,p j ×Sim HP (p j ,p k )(7)Com PJA ()p k ,p i =Com PJA ()p j ,p i ×Sim HP (p j ,p k )(8)
商品互补关联度与对应商品的置信度和支持度有关。系统发现的关联规则在过去可能具有较高的置信度或支持度,但随着时间的推移对应的值可能会发生变化,从而导致在实际应用中,商品互补关联度会随时间推移而发生变化。设层次语义互补度的权重为μ(0≤μ≤1),属性相似度的权重为ω(0≤ω≤1),且μ+ω=1,则本体中任意两个商品实例p i 和p j 的综合商品互补度为:Com HP ()p i ,p j =
μCom HJA ()p i ,p j +ωCom PJA ()p i ,p j (9)
Com HP ()p j ,p i =
μCom HJA ()p j ,p i +ωCom PJA ()p j ,p i (10)
在计算时,可以根据具体应用需要调整式(9)、式
(10)中的参数。
3.2.3商品情景关联度计算
商品的情景关联是指某些商品可能需要在同一情
景或场合下同时出现而产生的关联关系,比如沙发和茶
几之间则存在情景关联。若商品实例p i 和p j 是属于不同领域本体的实例,在商品销售过程中,支持度Dsup (p i ⇒p j )≥α或Dsup ()p j ⇒p i ≥α,且置信度Dconf ()p i ⇒p j ≥β或Dconf ()p j ⇒p i ≥β,α和β分别为对应阈值,则称p i 、p j 之间存在商品情景关联。商品实例p i 和p j 之间的商品情景关联度可表示为:
Sce PJA ()p i ,p j =Dsup ()p i ⇒p j ×Dconf ()p i ⇒p j (11)
Sce PJA ()p j ,p i =Dsup ()p j ⇒p i ×Dconf ()p j ⇒p i (12)商品情景关联度与当前商品实例的置信度和支持度相关。系统发现的规则在过去可能具有较高的置信度或支持度,但随着时间的推移对应的值可能会发生变
化。因而在商品推荐过程中,应考虑商品情景关联度的时效性。
若已知综合商品相似度、综合商品互补度和商品情
景关联度,则可计算该商品的推荐度:
R j ()p i ,p j =ζSim HP ()p i ,p j +ψCom HP ()p i ,p j +
ϑSce PJA ()p i ,p j (13)
其中,ζ+ψ+ϑ=1(0≤ζ≤1,0≤ψ≤1,)0≤ϑ≤1。
4基于商品间关联关系的推荐算法
根据消费者兴趣本体Customers_Onto 和消费者兴
趣度Customers_DOI ,基于本文第3章提出的基于商品
间关联关系的多样化推荐算法对消费者维与商品维(Customers*Commodities )进行匹配。该推荐算法根据领域本体中商品之间的语义关联,对消费者兴趣本体进
行偏好扩散,可以发现更多语义相似、互补和情景关联的商品实例,然后通过综合商品实例之间的相似关联、
互补关联和情景关联,计算商品推荐度,并结合消费者
兴趣度的高低产生商品实例推荐列表。基于商品实例关联关系的多样化商品推荐方法包含以下几点:第一,结合领域知识对消费者兴趣本体Customers_
Onto 进行偏好扩散,搜寻更多与消费者模型中商品实例存在相似关联、互补关联和情景关联的商品实例,形成
推荐商品候选集。该方法可使推荐结果不仅包含与消费者兴趣本体相似的商品,还包含与之存在功能互补或情景关联的商品,发现消费者多种潜在购买需求,
改善
产品实例图2p i 和p j 、p k 之间的层次互补关联
推荐的效果,其步骤如下:(1)根据消费者兴趣本体Customers_DOI 中的商品编号CustomersID ,在领域本体Dom_O 中搜寻所有已评分的商品实例。(2)根据商品实例之间的相似关联、互补关联和情景关联并结合商品实际销售中的关联规则数据,在领域本体Dom_O 中出与Customers_Onto 中的已评分商品实例有关联的所有商品,形成推荐商品候选集CS ,分别记为P Sim ={}p 1Sim ,p 2Sim ,…,p n 1Sim ,P Com ={p 1Com ,p 2Com ,⋯,}p n 2Com 和P Sce ={}p 1Sce ,p 2Sce ,…,p n 3Sce 。第二,根据商品实例与Customers_Onto 中的已评分商品的相似关联、互补关联和情景关联预测消费者对该商品兴趣度,其计算步骤如下:(1)针对某商品实例与用户兴趣本体的不同关联类型,根据式(1)~(3),计算商品实例p i Sim (p i Sim ∈P Sim )与实例p j (p j ∈Customers _Onto )的综合商品相似度Sim HP ()p i Sim ,p j ;根据式(4)~(10),计算商品实例p i Com (p i Com ∈P Com )与实例p j (p j ∈Customers _Onto )的综合商品互补度Com HP ()p i Com ,p j ;根据式(11)和式(12),计算商品
实例p i Sce (p i Sce ∈P Sce )与实例p j (p j ∈Customers _Onto )的商品情景关联度Com HP ()p i Com ,p j 。(2)分别根据商品实例p i 类型与消费者兴趣本体p j (p j ∈Customers _Onto )的综合商品相似度、综合商品互补度和商品情景关联度,来预测消费者对该商品实例的兴趣度D (p i ),计算公式为:D ()p i =∑j =1n
R
j ()p i ,p j ×D ()p j =
ζ∑j =1n Sim HP ()p i ,p j ×D ()p j +ψ∑j =1
n Com HP ()p i ,p j ×D ()p j +ϑ∑j =1n Sce PJA ()p i ,p j ×D ()p j (14)
其中,ζ+ψ+ϑ=1(0≤ζ≤1,0≤ψ≤1,0≤ϑ≤1)。(3)根据预测兴趣度的高低产生基于关联数据的推荐列表Top-N 。在该算法中,由于可以在领域本体建模的基础上,依据消费者兴趣本体对当前商品集进行过滤,获取推荐商品候选集,这将提高算法的计算速度,该算法的计算复杂度为O (n ln n )。5实验与结果分析本章将利用“天猫”商城中某知名家装店铺的畅销商品及其交易数据进行实验设计,并对实验结果进行对比分析,以评估基于推荐对象间关联关系的商品推荐算
法的有效性。本实验数据的爬取、处理及最终计算主要采用Python 语言编程实现。实验数据集中包含了
该店铺2015年3月到2017年3月期间畅销商品的基本信息,
与之相关的消费者及其购买信息,产品涉及了床、床垫、餐边柜、餐椅、书桌、衣帽架、茶几、壁画等多种商品类别,不同类别的商品基本属性有所不同。购买信息主要包括消费者昵称、购买商品ID 、时间、评分等内容。5.1实验设计
在实验中,着重考察推荐商品候选集CS 中商品与
消费者兴趣本体Customers_DOI 中商品的关联和消费者的兴趣偏好对商品推荐列表排序及推荐效果的影响。假设某消费者小明(CustomersID =1)在当前时刻t 买过两件商品p 1(商品型号:CP1A-A ,商品类别:床)和p 2
(商品型号:LA202-S ,商品类别:餐桌),根据评分确定其对这两种商品的兴趣值分别为0.8和0.2,小明的消费者模型可以表示为Customers_Model =(Customers_Info ,Customers _DOI ,Customers _Onto ),其中Customers Info ={“1”,“小明”,“男”,“30”,“教师”},Customers DOI ={(1,p 1,0.8,t ),(1,p 2,0.2,t )}。
根据小明的消费者模型,结合本文的推荐算法,给
出将为小明推荐的商品序列。
首先,对消费者兴趣本体Customers_Onto 进行偏好
扩散,根据3.1节建立的领域本体模型在数据集中出与Customers_Onto 中商品p 1和p 2存在关联关系的其他商品,形成推荐商品候选集CS ={p i },其中i =3,4,…,75。在该候选集中包含了该店铺2015年3月到
2017年3月期间畅销的73种商品。包含p 1、p 2在内的东华理工大学怎么样
这75种产品有床、床垫、餐边柜、餐椅、书桌等16种商品类别,实验将涉及这些商品的基本信息,以及与之相关
的21524位消费者及其98284条购买订单信息。在本
实验中为使描述简化,对这75种商品进行了重新编号,
商品编号及类别信息如表1所示。
其次,根据式(1)~(3)计算推荐商品候选集CS 中商品与Customers_Model 中两个商品p 1和p 2的综合相
似度,其中ε=0.5,φ=0.5;根据式(4)~(10),计算偏好
扩散后的商品实例与Customers_Model 中两个商品实
例p 1和p 2的综合商品互补度,式(10)中取μ=0.5,ω=0.5;根据式(11)和式(12),计算偏好扩散后的商品编号p 1p 2p 3~p 6p 7~p 10p 11p 12~p 14类别床餐桌餐边柜餐椅餐桌电视柜编号p 15p 16~p 19p 20~p 27p 28~p 34p 35~p 41p 42~p 46类别储物柜穿衣镜床床垫床头柜组合编号p 47~p 50p 51~p 54p 55~p 60p 61~p 69p 70~p 71p 72~p 75类别
地柜
沙发书桌
衣柜
衣帽架妆台表1商品编号及类别说明