基于事件本体的商品个性化推荐算法仿真

2023-09-04 14:36陈丽珍
计算机仿真 2023年7期
关键词:本体标签准确率

葛 婷,陈丽珍,2

(1.潍坊科技学院 农圣文化研究中心,山东 寿光 262700;2. 山东大学,山东 济南 250100)

1 引言

目前,电子商务已经成为购物的主流。因此,准确的商品推荐成为拉拢用户的重要手段,个性化商品推荐是商品推荐的重中之重[1-3]。常规推荐算法有协同过滤算法、混合推荐算法等。然而,协同过滤算法存在数据量少、需要积累用户才能发挥作用的缺点。混合推荐算法推荐虽然融合多种计算方法,但是有数据难优化的缺点[4,5]。

针对上述问题,张鹏飞[6]等人提出融合标签和多元信息提出的个性化算法,但其在数据稀疏性和冷启动速率方面仍存在问题。马闻锴[7]等人提出的基于标签的推荐算法,但该方法只考虑用户兴趣度与标签问题,未考虑到兴趣随时间变化所标注的兴趣标签也会产生变化。

知识工程中的事件本体在知识的获取、解析中占据重要位置,可有效避免知识体系语义表达不足以及知识结构化低下问题[8]。为此,本文研究基于事件本体的商品个性化推荐算法。通过构建事件本体的商品标签模型,计算用户标注的标签使用频率和标注标签的时间来构建用户兴趣模型,根据用户兴趣模型寻找相似用户,再利用相似用户使用的标签进行模拟分类,选择最优商品推荐给用户。而用户在标注商品标签时存在语义繁多、杂乱无章或者一词多意等弊端,会限制商品个性化推荐的作用,从而使推荐准确率低,用户体验差。从事件本体角度出发,规范商品标签及用户标签的冗余及歧义所带来的个性化推荐困扰,通过商品特征向量和用户偏好等因素,研究用户偏好与商品特征之间的关系,成为了商品个性化推荐的重要因素。

2 算法设计

2.1 事件本体结构

事件本体EO的逻辑结构分为五个元素:EO=〈UECS,LECS,L,Rules,Individuals〉。其中,上层和下层事件类型的层次结构集合分别用UECS和LECS表示;每个事件(类)之间的联系用L表示;推理规则为Rules;实例集合为Individuals。

事件本体模型结构分为上下两层,其中下层包括事件推理与通用的分类,上层包括事件类关系组成的结构如图1所示。

图1 事件本体模型

2.2 基于事件本体的商品标签模型

事件本体的商品标签模型主要体现在电子商务网站的用户可以通过标签自由选择自己喜欢的商品,也会通过网站发生的事件而优先选择想要的商品,比如优惠活动等。而许多电子商务网站会根据用户的喜好分类,比如:“喜爱”、“兴趣”、“共享”等。用户可以将自己喜爱的物品分享给其他人,也可以从其他用户中找到自己喜欢的商品。但用户的所有标签数量都具有差异性,而多数用户只是对自己喜欢的商品添加几个标签,数量较少。为了获得用户的全部兴趣爱好,电子商务网站不止关注用户“喜爱”分类的标签,还需要针对所有分类中的标签。

事件本体的商品标签模型构建主要分为:上层和下层事件类的构建、实物层的事件本体商品优惠与实物分享[9]。上层模型主要是事件类标签数据获取,将事件类商品标签进行分层;下层事件类的模型构建主要基于事件本体商品标签对应的商品属性,通过商品属性的层次关系和对应关系,提高商品推荐效果。实物层是商家通过实物照片分享给用户[10],用户会将实物分享对应到事件标签本体的商品上,又或者通过优惠活动等事件本体让用户可以有更多的参照及选择。

首先将商务社区的用户标注的商品标签及其标注时间数据提取,提取的数据均保存到云盘,然后将提取的标签数据分成用户以及商品标签,用户开始标注的标签元素i可用i((tag1,time1),(tag2,time2),…(tagn,timen))表示,用户i的所有标签数量用n表示,标注时间为time。商品开始标注的标签元素s可用s((tag1,freq1),(tag2,freq2)…(tagm,freqm))表示,商品s没有重复的标签数量用m表示,商品s的标签使用次数用freq表示。将云盘中的标签数据取出,将标签数据输入ICTCLAS3.0分词系统,将词频统计的结果按照词频大小排序分层。

为提高商品推荐效果,将事件标签本体的商品标签通过本体分类信息进行规范化,提升用户的购买体验感,在电子商务网站中,有些用户对的商品标签的标注过于随意,很难规范出标签的层次对应关系,为了构建服装类别的事件本体商品标签种类和属性关系构建如图2所示的模型。

图2 基于事件本体的商品标签模型构建

从图2可以看出,当输入“服装”时,会出现“衣服”、“鞋子”、“包包”、“首饰”等品类;“衣服”品类下还会出现“上衣”、“裙子”、“裤子”等,而根据商品特征条件还会出现“风格”、“颜色”、“材质”、“流行元素”等词条。而根据事件本体商品还会出现“优惠”标签,这些都是构建事件本体商品标签模型的基本要素。

2.3 用户偏好模型

为了从商品标签中获取用户的隐性需求和偏好,需要建立用户标签模型,通常是从频率权重因素来计算基于事件本体商品标签的用户偏好。在权重基础上使用标签聚类(TF-IDF)方法计算用户与商品标签的关系程度。

设Y、T、P分别表示用户、标签和商品集合;

1)在y∈Y时,Py、Ty分别是y用户标注的商品和标签集合;

2)在t∈T时,Pt、Yt分别是t标签标注的商品和用过t标签的用户集合;

3)在p∈P时,Tp、Yp分别是标注p商品的标签和用户集合。而Tu(t1y(f1),t2y(f2),…tmy(fm))则表示所有用户的标签集里使用过的一个标签向量[11]。其中标签数为m,用户y的第m个标签和标签频率是tmy、fm。

用TF-IDF公式计算fm,得到tmy(fm)的用户偏好用式(1)描述

tmy(fm)=Tfy(fm)×IDFu(fm)

(1)

标签t的使用频率用Tfy(ft)表示,公式如下

(2)

式中,用户y标注的标签t的数量是count(y,t),p商品被标签t标注过的用户用UserCount(t,p)表示,用户标注的某个标签用k表示,所有用户的所有收藏和使用的标签用式(3)表示

(3)

其中,所有用户为N,所有收藏和使用的标签为nt。将式(2)、(3)带入式(1)可得到用户与商品标签的关系程度,公式如式(4)

(4)

商品每个标签的使用频率也可用式(5)表示

(5)

标签t标注的某产品为q,relate(t,p)的数值直接影响用户对该商品的使用优先级,数值越大,标签t标注的相同商品的用户越多,标签与该商品关系越契合。

2.4 商品个性化推荐

本文提出基于事件-标签-本体的商品个性化推荐算法是通过建立事件本体商品标签与用户偏好模型后,通过计算用户与商品标签之间的关联程度,将所有用户与商品标签进行分类,再将分类好的标签与用户偏好标签匹配,将相似度较高的商品标签标注的商品推荐给用户。

某种商品被标注标签的次数越多,说明这种商品使用次数越多。用户在选择商品时,系统通过获取用户与同类别商品标签两者间的相似度,通过事件(用户)本体,优先计算并找出和用户相同爱好的其他用户,再借助所有同类型用户的标签及爱好利用协同推荐算法选出NN种商品推荐给用户[12]。这样用户得到的商品推荐都是相似度高,与标签和偏好都相匹配的商品。

用式(6)表示用户的标签向量

Ty=tiy(fi)×tiy(timei)

(6)

用式(7)表示商品标签向量

Tp=tjp(relate(tj,p))

(7)

将用向量表示的全部物品和加权后的用户标签进行余弦相似度计算,得到同一类别内的商品pj的标签与用户标签的相似度公式

(8)

为了使商品与用户具有相同偏好,需要设定一个预设阈值e,且e

将商品作为预选推荐,需要先计算用户标签和商品向量的相似度,并且得到的数值大于阈值。当所有预选推荐相似度全部计算完毕,将所有预选推荐商品按照相似度数值从大到小的顺序排列形成TOP推荐,这样所有用户浏览网站时看到的信息就是自己喜欢的或者感兴趣的商品。

3 实验与结果分析

为验证本文算法的有效性将从淘宝网站中的热门标注的商品中选取300个活跃用户进行仿真,主要以服饰类商品为主,总数超过10万个标签。将这些信息用电子文档保存。所需要的实验工具为:八爪鱼采集器、Protégé、Excel、ICTCLA3.0。

3.1 实验参数

本实验将从准确率(P),召回率(R)以及F值三种指标进行比较。F值是P值与R值的调和值,其中准确率、召回率和F值越高,说明所使用的方法推荐性能越好。公式如下

(9)

(10)

F=2PR/(P+R)

(11)

式中,P(y)、D(y)分别是给用户y推荐列表和用户y标注标签的物品集合。

3.2 实验对比分析

选取传统的基于标签和多元信息的个性化推荐算法、基于标签的个性化推荐算法与本文算法进行对比,分别计算三种方法的P和R值,所得到的直观图如图3、4所示。其中,T值是预选推荐商品按照相似度数值从大到小的顺序得到的TOP-T推荐商品的数值。

图3 不同T值下的P值对比

分析图3、图4可知,随着TOP-T推荐数值的增高准确率随之增加,本文算法最为突出。但是TOP-T小于12时,本文算法与基于标签的算法的P值和R值相同,且三种算法的准确率都比较低,有可能是用户在搜索截然不同的两种商品时描述某商品的属性特征有可能是相同的,商品标签的品类特征也可能因为用户描述不准确被归类到相似属性特征类,最后推荐给兴趣不同的用户,从而降低推荐的准确率。而实际情况下,很多用户都是通过识别图片、优惠活动等更加直观地找到用户的兴趣商品,在此方向进行研究,会大大提高基于事件本体的商品推荐的准确率。

图4 不同T值下的R值对比

随着T值的增加,所有算法的P、R值都有所提高,而本文算法的效率最高,提升效率最低的是基于标签和多元信息的算法。在T<12时,本文算法与基于标签的算法准确率相同。T>12时,本文算法快速提升,均比其它办法准确率高,基于标签和多元信息的算法准确率提升缓慢。由于本文算法在考虑标签使用频率和标注时间基础上,通过事件本体的商品进行用户推荐,在短时间内没有变化的情况下,需要更加关注事件本体的商品对用户偏好的影响。

图5为利用三种算法得到的F值对比图。

图5 不同T值下的F值对比

综合图3、4、5三张对比图可知,由于TOP-T值较少导致三种算法的准确率、召回率以及F值都比较低,但随着T值的增加,三种算法的曲线都呈上升趋势,尤其本文算法上升较为明显。在T<12时,本文算法与基于标签的算法的曲线变化几乎相同;T>12时,基于标签的算法虽然继续快速增加,但是与本文算法提升速率相比仍然处在劣势。总体来说,本文算法的F值在三种办法中数值最高,推荐的效果更好。实验进一步印证了本文算法的可行性。

对于个性化推荐的商品,用户通常更容易接受推荐列表中靠前的内容,由此采用排名前16位的推荐商品进行分析与评价,利用平均排序度进行三种算法的推荐对比试验,试验结果如图6所示。

图6 推荐平均排序度对比结果

由图6可知,随着T值的增加,三种推荐算法的平均排序度随之呈逐渐增加趋势,导致商品推荐的排序下降,虽然本文算法平均排序度呈微弱下降趋势,但是与两种对比算法相比,本文算法的商品个性化推荐平均排序依旧靠前,表明本文算法能够有效为用户推荐具有个性化需求的商品。

目前社会处于一个多元化的时代,用户应接受符合自身需求的商品,推荐的商品需要多样且符合用户需求,以商品个性化推荐的丰富度进行对比试验,结果如图7所示。

图7 商品推荐丰富度对比示意图

由图7可知,随着T值的增加,三种算法的推荐商品的丰富度均呈上升趋势,当推荐商品数量较少的时候,对于推荐商品丰富度区别并不明显,随着商品数量逐渐增多,丰富度的区别越来越明显,结果显示,本文算法所推荐的商品最丰富最高,更符合当下用户对于商品的个性化的需求。

表1是基于三种算法仿真结果,测试的商品推荐数均为15604,而本法的准确总数为70,其它方法的推荐总数为55、46,说明本文算法更有优越性,更能满足用户需求。

表1 推荐办法仿真结果

4 结论

本文提出了基于事件本体的商品个性化推荐算法,根据用户标注的标签信息与用户偏好进行商品个性化推荐计算。同时通过计算基于事件本体的商品标签相似度,找到相似度最高的TOP-T推荐给用户。通过实验也发现随着T值的提高,本文算法比传统算法的准确率更高,个性化推荐效果更好更好。

但由于存在用户在标注标签时用词随意、语义模糊、数据量较大等弊端,在推荐时需要大量数据计算来规范标签语义,这本身是一项复杂的工程,目前没有合适的解决方法,还需深入研究。

猜你喜欢
本体标签准确率
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
2015—2017 年宁夏各天气预报参考产品质量检验分析
无惧标签 Alfa Romeo Giulia 200HP
高速公路车牌识别标识站准确率验证法
不害怕撕掉标签的人,都活出了真正的漂亮
基于本体的机械产品工艺知识表示
标签化伤害了谁
《我应该感到自豪才对》的本体性教学内容及启示
基于多进制查询树的多标签识别方法