一种新的基于用户交易记录的个性化搜索方法

2016-01-05 15:27许凯柳先辉
电脑知识与技术 2015年31期

许凯 柳先辉

摘要:本文针对B2B领域的用户搜索排序提出了一种新的方法,实现基于用户交易记录的个性化搜索排序。利用用户历史交易记录构建交易有向图,根据有向图构建转移矩阵,利用Pagerank1网页重要度传递思想计算商户的可信度。用户的搜索根据模糊匹配得到初步结果,根据商户可信度与用户偏好进行排序,即可得到搜索结果。另外对转移矩阵增加了回馈系数和修正系数,可以有效地防止B2B商家为了高信用度而进行相互刷单交易行为。

关键词:商户可信度;搜索排序;转移矩阵;个性化搜索

中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2015)31-0156-04

A New Kind of Personalized Search Method Based on User Transaction Records

XU Kai, LIU Xian-hui

(Research Center of CAD, Tongji University, Shanghai 201804,China)

Abstract: In this paper, we proposed a new method which is used in B2B search results ranking. We could implement personalized search results ranking based on the user transaction records. We using user transaction records to build trading directed graph, building transfer matrix based on trading directed graph, and calculating the credibility of users by using the thought of Pagerank1. We could get preliminary search results according to the keywords matching,

And we ranking the results one the basis of the credibility of users and the users preference. In addition we add Feedback coefficient and the correction coefficient into transfer matrix, which could effectively prevent the behavior that doing malicious trades to get high credibility.

Key words: user credibility; search ranking; transfer matrix; personalized search

1概述

互联网的发明将人类带入了信息化社会,对个人生活方式、企业的经营模式都产生了深刻的影响。互联网渐渐深入我们生活中的每一个环节,使得电子商务得到了迅猛发展,给传统的企业销售模式、个人购物方式带来了深刻影响。2015年阿里巴巴、京东的成功上市让我们看到了电子商务的巨大潜力。对个人来说,电子商务让我们的生活更加便捷,选购商品的时候有了更多的选择。对企业而言,电子商务直接变革了多数企业的运营模式。B2B平台让企业可以更大范围的寻找合作伙伴,B2C平台让企业可以直接向消费者销售商品。但是现有的电子商务的技术水平以及电商运营模式,制约了电子商务的进一步快速发展。电子商务的进一步发展对电商提出了更多的新的要求,例如商品的质量、售后,以及配送的及时性等等。其中,最为突出的问题在于商品的选购、合作商家的选定。

在B2B平台中,公司在寻找合作伙伴的时候会有很多候选公司,但是这些候选公司的公司资产情况参差不齐,另外由于电子商务的虚拟性,候选公司的产品质量也没办法直观的定性评测,候选公司的实际生产能力也需要进一步人工核实。因此在B2B平台中,用户很希望有一种推荐系统,或者一种类似企业可信度的一种量化指标,使得商户在搜索合作伙伴的时候优先考量信用度高的公司,这样就可以极大提高B2B平台用户的使用效率。

2算法背景介绍

本文提出本的算法是为了解决现实工程中实际的问题,由于B2B领域搜索问题一直鲜有人研究,先行多数B2B平台的搜索主要分为两种2。第一种站外搜索:B2B平台允许第三方搜索引擎(如百度,谷歌)获取其产品数据,用户可以通过第三方搜索引擎进入对应的产品页面;第二种主要是站内搜索,现行多数B2B平台只是进行关键字模糊匹配,然后按照交易额度、好评度等几个维度进行简单排序。

在我们的工程中,为了解决在现行众多中小企业中存在的企业间多为小范围内合作,总体生产效率不高问题,我们构建一个B2B平台,提供商务以及产品交易,使得众多制造业企业可以在该平台下搜索寻找自己的合作伙伴,充分发挥制造业企业集群的优势,促进区域合作,实现双赢。我们平台用户使用搜索引擎来搜寻合作伙伴公司,然后进行合作协商。这要求平台的搜索具有如下功能:

1) 优先推荐可信度高的企业;

2) 优先推荐曾经有合作的商家;

3) 性能高,在小型服务器上可以满足万次每秒的搜索。

为了满足以上要求,本文在这里提出一种新的基于用户历史交易信息搜索模型。该模型以商户的可信度为基准来衡量商家的可信度,并通过对不同商家的可信度进行调整来实现个性化搜索。下文将介绍本搜索模型,以及可信度算法的具体实现。

3 基于历史交易记录的搜索

3.1搜索模型

图1 搜索模型

本文所提出的搜索模型如图1所示。具体的搜索过程为:

1)服务器接收到A用户的搜索请求,返回所有基于搜索关键字模糊匹配商家集合Raw_results。

2)服务器从商户可信度数据库中检索所有Raw_results中的商户可信度分数,并返回含有每个商户可信度信息的商家集合Raw_results_with_marks。

3)服务器读取A用户的历史交易信息,以及A用户的偏好信息,对Raw_results_with_marks中的各个商家的可信度进行调整排序返回最终商家搜索集合Final_results。

4)服务器根据Final_results中的排名信息,生成动态网页搜索结果,呈现给A用户。

综上所述,在上述搜索模型中,核心就是商户可信度数据库的建立。

3.2 建立商户可信度排名数据库

3.2.1商户可信度的定义以及算法主要思想

商户可信度,顾名思义表明该商户在本平台上的一个可信赖度。该信赖度的计算应该是一个动态过程;即随着商户交易总额度提升而提升(奖励),随着商户的退货量总量的增加而降低(惩罚)。

为了给每一个商家用户赋予一个可信度,我们根据历史交易数据为每一个电子商务平台商户计算其可信度。该算法总体思想如下:

一个可信度高的商家A购买商家B的服务,并且A给予B好评,那么商家B应该从A那里获得较高的可信度奖励,那么商家B的可信度会大幅度增加。

在电商平台上众多普通可信度商家都购买B商家提供的服务,并且给予好评,那么商家B应该获得较多的可信度奖励,商家B的可信度也会大幅度增加。

1) 一个可信度高的商家A购买商家C的服务,并且A给予C差评,那么商家C的可信度就会大幅度降低。

2) 众多小商家购买商家C的服务,并且给予C差评,那么商家C的可信度也会大幅度降低。

为计算所有商户的可信度,我们首先要获取一定时间间隔内的平台所有商户的交易信息。为了简化模型降低复杂度,我们采取分别计算每位商户的好评可信度、中评可信度、差评可信度,然后经过加权平均即可得到平台每位商户综合可信度。

3.2.2 商户可信度的计算

3.2.2.1 交易记录的分组

读取历史交易记录,以每一条交易记录为一次交易行为。

交易记录应该包括交易双方ID,交易双方的相互评论情况。

首先我们读取所有用户的交易记录,按照好中差评论分为3组,然后依次计算每个分组下的商户可信度。

3.2.2.2 转移矩阵构建

在上个章节,我们定义了可信度的计算方法,这里我们给出具体实现。

首先根据交易记录我们可以画出有向图如图2所示.

图 2 一个简单的有向图

通过上图我们可以看出可信度的转移过程,由于甲方购买乙方的服务,那么交易完成后甲方的可信度就会按照一定的权重转移给乙方。而转移矩阵就是可信度的转移权重的向量组。定义R为A商家可信度,T(i)为所有交易记录中购买过A商家服务的合作商家其总数量为设为N,B(u)为对应T(i)中的每个商家购买A商家服务的资金占其自身总交易量的一个权重。那么可信度的一个简单的模型如下所示:

但是在电子商务平台中,这种简单的可信度计算远不能达到实用要求,原因主要在于:

1) 有些商家自身不提供服务,在平台一直是扮演消费者角色,这样他自身的可信度不会有任何提高

2) 如有商家恶意刷单,会导致可信度排名异常高

基于以上要求,我们采用以下方法计算可信度的转移

1) 增加买家回馈系数α,回馈系数是商家A购买了商家B的产品服务,那么系统可以根据商家B的可信度,适量的增加商家A的可信度。这样平台老商家用户即使不出售产品服务,也可以获得适当可信度的提升。如图3所示,在更新完B C 商家的可信度后,还要更新A商家的可信度。

2) 增加权值修正系数β,权值修正系数主要是为了防范可信度富集累效应,因为如若一个可信度比较高的商家C,只购买过商家D的产品服务,按照之前的可信度计算方法,C的可信度会被近乎100%传递给D,这样容易导致D的可信度过高。另外修正系数可以防止几个用户之间的恶意刷单行为,这些恶意用户之间的交易有向图为孤立的连通环,增加修正系数后可以打破这种孤立的连通环,其思想方法与Page Lawrence 解决Rank Sink4的问题一致。另外增加权值修正可以极大的方便我们的可信度的计算实现。

那么定义R为A商家可信度,重定义E(i)为平台所有商家其总数量为设为N,B(u)为对应T(i)中的每个商家购买A商家服务的资金占其自身总交易量的一个权重,那么B(u)是一个总和为1的N*1的向量。E是一个N*1单位向量。

图3 增加反馈系数的连通图

3.2.2.3 平台可信度的计算读取好评交易记录 ,构建可信度向量A 。

A为1*N维向量,N为平台总用户量,给平台每位用户都分配唯一向量下标n。我们可以根据下标来获取特定用户的可信度向量。初始值全部为1。构建交易状态转移矩阵B ,B为N*N矩阵 初始值0。代表B的第i行,第j列的数字,读取所有好评交易记录,假设如果a商家购买b商家服务,购买金额为m元,则

对B每一行进行归一化以及利用权值修正系数β修正矩阵,

代表B矩阵的第i行

迭代收敛使得;我们可以使用下列方法增快迭代速度5:

算法:计算好評可信度

s0为N*1维向量,初始值全为1

σ=0.1

Loop:

While:

对于一个中等B2B商务平台,大概是百万级用户,通常迭代30次就可以收敛,计算复杂度凭借现代PC机性能,很快就可以计算得出结果。

得到好评可信度A0,我们再次分别建立转移矩阵B1、B2按照上述步骤以好评可信度A0为初始向量,迭代相乘直至收敛得到基于中评可信度A1向量,基于差评记录的可信度A2向量。至此,我们得到了分别基于交易记录中好中差评论的可信度A0,A1,A2 三个可信度向量。下一步为了整合所有可信度排名信息,在这里提出惩罚参数γ,因为获得中差评的商家,可信度会有所降低。因此平台可信度可以用以下公式获得:

[A=A0A1A2*γ0γ1γ2]

3.2.3 基于用户交易记录的搜索算法

可信度数据库构建完成后,为了实现针对特定用户推荐其感兴趣的商家,在得到模糊匹配商家集合后我们要对其可信度进行修正,优先推荐与用户交易过的商家,以及用户收藏过的商家。在这里使用用户偏好系数[l]来修正可信度。用户偏好系数是对一次模糊搜索结果所得到商家可信度的一个修正。对每一个用户,扫描其交易记录以及收藏夹,生成一个各自的偏好系数向量。对交易过、收藏过的商家用户偏好系数设置为一个大于1的常数。这样搜索结果最终的可信度可以表示为: ,最终对其按照可信度进行排名后,即可返回商家搜索结果。

4 搜索结果分析

本小节将展示基于本文提出的方法,对所得的基于可信度的商家排序结果与现行B2B搜索排序中流行的基于好评度、总交易量等所得到的商家排序结果对比。

4.1验证数据库的选取

由于现行的B2B平台例如阿里巴巴、中国制造网等不对外提供交易数据,所以我们使用自行生成的B2B交易单来验证我们的算法。

我们模拟B2B商家的交易行为,我们选取500名商家作为模拟样本总数。交易量主要集中在前100名左右,评分好中差评论数量比例接近10:2:1。

交易记录生成主要格式

买家ID 卖家ID 交易金额 评分(1-3)

0001 0002 100 1

0002 0011 89 3

4.2结果对比

交易记录的各方面信息

图4 原始数据特性

现有的排序指标:交易总量、好评率、交易总额等都无法全面反映该商家的一个综合信息,如图4所示。

基于上述文中提出的算法,我们计算该平台的可信度选取α=0.1 β=0.9 计算后得:

图5 商户可信度分布

结果分析:

由图5的点集分布我们可以看出,传统的基于商户交易量的排序方法呈现的结果中,对一些进入平台比较晚,交易量不算高,但是品质比较优秀的商家得分并不高。而传统的好评率的排名情况不仅容易滋生恶意差评利益链,而且不能防止商家恶意刷单导致排名靠前。

基于交易记录的可信度排名情况着实提供了一个综合考量商家各项交易指标后,得出的一个中肯的排名次序。从上图中可以看出虽然ID 在100-200的商家交易量比较高但是由于差评比较多,所以可信度比较低,在200-250范围内的商家由于频繁小范围内相互交易,其最终可信度也没有明显的提升。而交易量比较小的商家(ID>300)则获得了中等的排名。

5 总结

搜索引擎作为互联网的第一入口,其重要性已毋庸置疑。电子商务平台中的搜索引擎更为重要,搜索结果排序几乎直接决定了交易对象的选取。传统电子商务网站一般提供按照好评率、总交易量的排名功能,这种排序结果依据过于片面,不能很好反应商家的整体信息。本文提出一种基于用户交易记录搜素排序算法,综合考虑用户的交易量,交易好评度,商户的交易行为等信息,为搜索结果排序提供一个综合依据参数。另外,本文在可信度基础上提出基于用户自身交易行为,以及用户收藏记录的个性化搜索算法,为每一位平台用户提供最合适搜索结果展示。

参考文献:

[1] 琚洁慧. 中文搜索引擎中的 PageRank 算法及实现[J]. 计算机工程与设计,2007,28(7):1632-1635.

[2] 王非. 中文电子商务搜索引擎有效性比较[J]. 情报杂志,2008,27(4):128-129.

[3] 黄德才,戚华春. PageRank 算法研究[J]. 计算机工程,2006,32(4):145-146.

[4] Page L,Brin S,Motwani R,et al. The PageRank citation ranking: bringing order to the Web. 1999.

[5] Haveliwala T H. In Topic-sensitive pagerank, Proceedings of the 11th international conference on World Wide Web, ACM: 2002:517-526.