一种基于Plackett-Luce模型的在线服务评价方法与流程

文档序号:16881730发布日期:2019-02-15 22:13阅读:222来源:国知局
一种基于Plackett-Luce模型的在线服务评价方法与流程
本发明公开了一种基于plackett-luce模型的在线服务评价方法,属于在线服务评价领域。
背景技术
:在线服务泛指通过互联网技术,向用户提供线上服务的方式。随着互联网的发展和普及,在线服务数量和种类也在飞速增长。因此在线服务技术发展的同时也伴随着用户选择困难的问题:首先,在线服务数量庞大,用户为了选择在线服务,需要花费大量时间浏览各种在线服务;其次,由于网络的虚拟性导致用户难以对在线服务有直观的了解和接触,无法做出有效的判断;最后,服务提供商为了提高自身的销量,可能提供不真实的服务描述信息。上述问题使得用户难以直接选择最好的在线服务,需要通过对在线服务进行评价,帮助用户找到满足需求的服务。目前,大部分第三方平台提供了多种服务评价方法,例如销量排序、价格排序、评分排序等。用户也可以根据服务信誉度从高到底进行排序来选择服务,信誉是对在线服务性能的综合度量。合理的在线服务评价方法可以有效遏制服务提供商提供虚假信息,提高在线服务选择的可靠性,帮助用户更好地做出选择。zhangx(<ieeetransactionsonknowledge&dataengineering>,2013,26(13):1631-1643);a(&lt;decisionsupportsystems&gt;,2007,43(2):618-644)等论文指出目前在线服务评价方法主要有:平均值(简称avg)法、简单累加(简称sum)法。比如ebay使用sum方法,将用户反馈的评分信息进行求和运算。而amazon网站则使用了avg方法,将用户反馈的评分信息进行求均值运算。然而,avg方法与sum方法在服务评价过程中没有考虑到用户评价准则不一致问题,即不同用户具有不同的选择标准:有的用户注重服务的性价比、有的用户注重服务的质量、有的用户注重服务体验。不同的用户倾向给予服务较高评分或者给予服务较低评分,进而导致相同服务由于用户评价准则不一致可能得到不同的评分。例如:存在用户u1,u2,u3,存在服务s1,s2。三位用户对两个服务的评分如下表所示:评分矩阵中每个元素取值按照1-5的数值来表达用户对在线服务的满意程度,即1代表非常不满意,2代表不满意,3代表一般,4代表满意,5代表非常满意。用sum方法和avg方法得到评价结果如下表所示:s1s2avg方法43.33sum方法1210sum方法和avg方法认为服务s1优于服务s2。但是因为用户u1和u3都认为服务s2优于服务s1,按照多数准则(多数人认为服务a优于服务b,那么最终的结果也会是服务a优于服务b)的评价结果应是服务s2优于服务s1。上例中avg方法与sum方法违反了多数准则,评价结果对用户的选择存在误导。因此考虑用户评价准则不一致时avg方法与sum方法得到的在线服务评价结果不能体现在线服务真实性能。另外,avg方法与sum方法只需要多次提高某一服务的评分或者多次降低某一服务的评分就能达到操纵评价结果的目的,评价结果抗操纵性弱。技术实现要素:本发明要解决的技术问题是提供了一种基于plackett-luce模型的在线服务评价方法,解决现有用户对在线服务评价准则不一致导致用户在线服务评分不可比较问题。本发明采用的技术方案是:一种基于plackett-luce模型的在线服务评价方法。首先把用户对在线服务的评分通过plackett-luce模型计算得到用户对在线服务的偏好关系,根据偏好关系统计每个服务的占优次数。其次根据plackett-luce模型的对数似然函数,使用极大似然估计方法构建排序权重的迭代函数,并将标准化后的占优次数作为在线服务排序的初始权重进行迭代计算。最后将迭代计算得出在线服务排序最优的权重值作为评价结果,通过评价结果对在线服务进行输出展示。plackett-luce模型(rluce&lt;atheoreticalanalysis&gt;,1959,newyork;rplackett&lt;appliedstatistics&gt;,1975,24(2):193-202.)是一个概率分布模型,是描述排序概率分布的模型。plackett-luce模型把求解排序概率的过程分成多个阶段,在每个阶段中求解每个模型参数在当前阶段排序最优的概率,根据概率选出当前阶段最优的模型参数。然后进入下一阶段继续选择,直到所有阶段结束,且每个阶段相互独立互不影响。所述方法的具体步骤如下:step1、根据在线服务评分矩阵得到用户对在线服务的偏好关系,建立偏好矩阵,并统计所有服务的占优次数;设用户集合为u={u1,u2,...,um},m表示用户数,服务集合为s={s1,s2,...,sk},k表示服务数,用户服务评分矩阵为r=[rij]m×k,其中rij表示第i位用户ui对第j个服务sj的评分;step1.1、通过用户评分求解用户对在线服务的偏好值;根据plackett-luce模型的排序功能,通过评分计算在线服务偏好值,偏好值pre越大则表示用户越倾向于选择该服务;用户ui对服务s={s1,s2,...,sk}的偏好值计算公式如下所示:其中prei1表示用户ui对服务s1的偏好值,基于评分矩阵r建立所有用户ui∈u对所有服务sj∈s的偏好矩阵pre=[preij]m×k(i=1,2,…,m;j=1,2,…,k),preij表示第i位用户ui对第j个服务sj的偏好值;根据公式(1)-(3)计算用户对在线服务的偏好值,建立所有用户对所有服务的偏好矩阵pre如下所示:step1.2、根据偏好矩阵统计服务占优次数;通过比较偏好矩阵pre内用户对服务的偏好值,得到每个用户对所有服务的偏好关系,并根据偏好值得到所有服务的占优次数;在用户ui的偏好下,将服务sj和服务sg的偏好值进行比较,服务偏好关系如下所示:若preij>preig,那么用户ui对服务sj和服务sg的偏好关系为即用户ui的认为服务sj比服务sg更优,符号表示更优;比较每个用户偏好下所有服务的偏好值,得到服务在比较中的占优次数,基于服务的占优次数建立服务占优次数矩阵t=[tij]m×k(i=1,2,…,m;j=1,2,…,k),其中tij表示服务sj在用户ui偏好下的占优次数,在同一个用户的偏好下,每个服务和其他服务进行两两比较得到该服务的占优次数,若在用户ui的偏好下将服务sj和sg(j,g=1,2,…,k)进行比较,服务sj和sg占优次数计算方式如下所示:其中,在ui的偏好下,若preij>preig,则记为服务sj占优,即tij的值加1,tig的值加0;若preij=preig,则记为服务sj和服务sg都不占优,即tij和tig的值都加0;若preij<preig,则记为服务sg占优,即tij的值加0,tig的值加1,服务的占优次数矩阵t如下所示:用w表示服务在所有用户偏好下总的占优次数,w={w1,w2,…,wk},通过累加每个用户偏好下服务sj的占优次数得到服务sj总的占优次数wj,服务sj总的占优次数wj(j=1,2,3,…,k)计算方式如下所示:step2、首先根据plackett-luce模型的对数似然函数,使用极大似然估计方法构建迭代函数,其次把每个服务的占优次数标准化后得到的值作为初始迭代权重,然后迭代计算得出每个在线服务最终的排名概率作为排序权重,最后将排序权重作为服务评价结果对在线服务进行排序;step2.1、构造plackett-luce模型的对数似然函数;若根据plackett-luce模型对服务sj和sg排序,那么占优概率计算公式如下所示:p表示在线服务在排序占优的概率,γj是在线服务sj在plackett-luce模型中的权重值,γg是在线服务sg在plackett-luce模型中的权重值,把排序占优概率作为权重值γ,通过迭代的方法求解使plackett-luce模型的对数似然函数l(γ)取得最大值的权重值γ,plackett-luce模型的对数似然函数如下式:step2.2、建立迭代函数;因为建立的对数似然函数l(γ)无法直接求解出最大值,所以建立迭代函数近似求解,根据公式(9)、(10)构建的迭代函数q如下式:且:q(γj)≤l(γj)当且仅当γj=γj(n)取等(12)假设γj(n)(n代表第n次迭代)是在迭代过程中最接近真实值γj的结果(服务之间一定存在一个优劣排序,那么相对应的每个服务的排序权重中都会有一个真实值γ,迭代的目的就是找到最接近这个真实值的结果),那么在迭代计算中,服务sj计算的权重值γj会从γj(1)一直迭代到最终的结果γj(n),根据条件(12),如果γj(n)是计算得到最接近真实值γj的权重值,那么当权重值等于γj(n)时,迭代函数的值q(γj)等于对数似然函数的值l(γj);step2.3、通过占优次数求解初始排序权重;根据step1.2统计的占优次数,把每个服务的占优次数w标准化,用标准化后得到的值作为初始排序权重γ(1),即计算每个服务占优次数在所有服务总占优次数中所占的比例,得到每个服务的初始排序权重γ(1)={γ1(1),γ2(1),…,γk(1)},服务sj的初始权重值计算如下所示:权重值γ的迭代公式如下所示:njg表示在线服务sj和sg的占优次数之和,njg=wj+wg,根据公式(14),可以从γj(1)依次迭代得到γj(n)的确定值,在确定γj(k)的前提下,把权重值γj代入公式(11)循环迭代,找到使迭代函数q取得最大值的权重值γj;step2.4、建立迭代函数收敛条件,迭代求解;迭代函数的收敛条件是|q(γj(n))-q(γj(n-1))|≤ε,γj(n-1)表示第n-1次迭代的权重值,γj(n)表示第n次迭代的权重值,阈值ε的值按照需求手动设定,ε值的大小决定迭代结果的精确程度,ε值越小结果越精确,一般取小数点后四位,若计算结果|q(γj(n))-q(γj(n-1))|>ε,则继续把当前γj(n)的值代入公式(14)进行计算得到γj(n+1),并把γj(n+1)的值代入公式(11)继续迭代,计算完成后,若得到的权重值γj(n+1)满足收敛条件|q(γj(n+1))-q(γj(n))|≤ε,则认为当前得到的结果γj(n+1)接近最优的权重值γj,把权重值γj(n+1)作为服务评价结果;根据计算出的每个服务的权重值大小把在线服务从大到小排序,并把排序结果作为在线服务评价结果向用户展示。本发明的有益效果是:1、使用plackett-luce模型解决在线服务评价准则不一致问题。公知方法根据用户对在线服务评分得到在线服务评价结果。但是由于用户个人评价准则不一致,导致服务评分不具备可比较性。通过服务评分计算出的在线服务评价结果不能准确反映出在线服务的特性。然而,本发明所述方法使用plackett-luce模型的排序功能,利用用户评分计算得到用户对服务的偏好关系。根据可比较的偏好统计服务占优次数,把占优次数作为初始值代入迭代函数中推断求解在线服务评价结果,避免直接使用用户服务评分得到评价结果,解决用户评价准则不一致导致的在线服务评分不可比较的问题。2、使用plackett-luce模型方法的满足多数准则并且提高抗操纵能力。使用sum方法和avg方法对在线服务进行评价,是直接对服务评分进行比较,容易出现违反多数准则的情况。但是使用plackett-luce模型方法,把用户对在线服务不可比较的评分转换成在线服务排序概率问题,通过用户对服务的偏好推断求解服务评价,该评价结果满足多数准则。并且由于把评分转化为偏好关系,所以当提升某个在线服务的评分或者增加服务高评分的人数时,不仅用户对该服务的偏好关系会改变,同时也会影响用户对其他服务的偏好关系,无法达到操纵评价结果的目的。因此,对本方法的在线服务评价结果进行操纵比公知方法更难,客观上使本发明的在线服务评价方法具有更强的抗操纵能力。综上,本发明所述的一种基于plackett-luce模型的在线服务评价方法为解决在线服务评价问题提供了一种新的理论依据和技术手段。方法充分考虑了不同用户对在线服务的评价偏好不一致,得到的在线服务评价结果体现了多数用户的意愿并且结果具有更强抗操纵能力,因此能够辅助用户更好地制定选择策略。附图说明图1为本发明中方法流程图。具体实施方式下面结合附图和具体实施例,对本发明作进一步的说明。实施例1:如图1所示,一种基于plackett-luce模型的在线服务评价方法,首先根据用户服务评分矩阵计算每个用户对在线服务的偏好关系,得到用户服务偏好矩阵。其次根据偏好矩阵得到所有服务在比较中的占优次数;然后根据plackett-luce模型的对数似然函数,构建排序权重的迭代函数。通过占优次数得到的服务在初次排序的权重,并把初始权重值代入迭代函数进行迭代计算,得出每个在线服务排序最优的权重作为评价结果,通过评价结果对在线服务进行合理的排序。所述方法具体步骤如下:步骤一、根据在线服务评分矩阵得到用户对在线服务的偏好关系,建立偏好矩阵,并统计所有服务的占优次数。1、给定5个用户对5个在线服务的评分,其中用户集合为u={u1,u2,u3,u4,u5},服务集合为s={s1,s2,s3,s4,s5},用户服务评分矩阵r=[rij]5*5如表1所示。评分矩阵r中每个元素取值按照1-5的分数来表达用户对在线服务的满意程度,即1代表非常不满意,2代表不满意,3代表一般,4代表满意,5代表非常满意。其中0分表示用户未对该服务进行评分。用户服务评分如表1所示。表1用户服务评分表rijs1s2s3s4s5u153434u241202u302025u423305u5432311.1、根据公式(1),(2),(3)把用户服务评分矩阵内每个用户对在线服务的评分转换为每个用户对所有在线服务的偏好值。根据表1的用户服务评分矩阵r=[rij]5*5计算每个用户u对在线服务的偏好关系表pre=[preij]5*5(i,j=1,2,3,4,5),结果如表2所示。表2用户服务评分偏好表用户服务偏好矩阵如下所示:根据用户服务偏好矩阵,对用户u1,在线服务偏好顺序为:对用户u2,在线服务偏好顺序为:对用户u3,在线服务偏好顺序为:对用户u4,在线服务偏好顺序为:对用户u5,在线服务偏好顺序为:服务占优次数矩阵t如下所示:1.2、根据服务占优次数矩阵统计所有服务的占优次数。统计五个用户中每个服务和其他所有服务比较的占优结果,得到服务s1,s2,s3,s4,s5分别的占优次数:服务s1占优次数w1为14,服务s2占优次数w2为7,服务s3占优次数w3为7,服务s4占优次数w4为4,服务s5占优次数w5为12。步骤二、根据plackett-luce模型的对数似然函数,使用极大似然估计方法构建迭代函数。把每个服务的占优次数标准化作为初始迭代权重,迭代计算得出每个在线服务最终的排序权重作为评价结果,通过评价结果对在线服务进行排序。2.1、pl模型的对数似然函数和迭代函数为:2.2、根据步骤1.2得到服务s1占优次数w1为14,服务s2占优次数w2为7,服务s3占优次数w3为7,服务s4占优次数w4为4,服务s5占优次数w5为12。根据公式(13)计算的初始权重值为γ(1)=[0.3180.1590.1590.0910.273]。2.3、根据公式(14)计算,得到γ(5)=[0.0,34,0.0091,0.0093,0.0181,0.0099]。2.4、把γ(1)作为初始迭代权重代入迭代公式(11)计算服务排序权重值。手动设定ε=0.0001,即当|q(γ(k+1))-q(γ(k))|≤0.0001时,算法得到收敛,否则继续执行。得到结果是排序权重为[0.1497,0.0807,0.3512,0.2806,0.1378],所以在线服务的排序结果为:本发明使用实例步骤1.1、1.2从用户服务评分计算得到每位用户对所有服务的偏好值,通过偏好值确定用户对服务的偏好顺序。并通过偏好顺序得到每个服务的占优次数,通过占优次数得到评价结果。避免了直接使用用户服务评分计算得到评价结果,解决了用户评价准则不一致的问题。通过对用户偏好值的比较,得到服务的占优次数。如果满足的用户偏好越多,服务的占优次数就会越大。而占优次数越大,得到的排序权重就会越大,在迭代过程中得到的结果就会更加满足多数准则,所以本发明得到的结果相比其他方法就会更加满足多数准则。通过偏好矩阵把不可比较的服务评分转化为迭代排序权重,避免了直接计算不可比较的服务评分。并且由于把评分转化为用户服务评分,所以当提升单一服务的评分时,不仅会改变该服务的偏好关系,也会影响到其他服务之间的偏好关系,无法达到操纵评价结果的目的。将用户对服务s4的评分都增加1分,服务s4增加评分会后的用户服务评分表变为如表3所示:表3评分增加后的用户评分矩阵rijs1s2s3s4s5u153444u241212u302035u423315u543241提升服务s4评分后的服务评分偏好表如表4所示:表4增加评分后的服务评分偏好表preijs1s2s3s4s5u10.250.30.40.40.4u20.40.10.20.050.2u300.200.30.5u40.1430.2140.2140.07150.357u50.28550.2140.1430.28550.0715偏好矩阵为:对用户u1,根据上述步骤得到提升服务评分后的在线服务评价结果为:对用户u2,根据上述步骤得到提升服务评分后的在线服务评价结果为:对用户u3,根据上述步骤得到提升服务评分后的在线服务评价结果为:对用户u4,根据上述步骤得到提升服务评分后的在线服务评价结果为:对用户u5,根据上述步骤得到提升服务评分后的在线服务评价结果为:占优次数矩阵t如下所示:所以得到服务s1占优次数w1为8,服务s2占优次数w2为8,服务s3占优次数w3为7,服务s4占优次数w4为8,服务s5占优次数w5为12。得到在线服务排序权重为[0.1860,0.1860,0.1627,0.1860,0.2191],所以提升评分后的在线服务评价结果为由此看出,提升服务s4的评分会导致用户的服务偏好顺序发生变化,服务的占优次数也会随之改变,那么服务的初始排序权重也会发生变化。提升在线服务s4的评分不仅可能会使服务s4的评价结果改变,其他在线服务s1,s2,s3,s5的评价结果也会发生改变,无法达到操纵在线服务评价结果的目的。因此本发明所述方法得到的在线服务评价结果具有更强的抗操纵能力。本发明考虑到用户对在线服务评价偏好不一致的情况,以用户对服务的评分为基础,提出用plackett-luce模型来推断在线服务评价结果。通过plackett-luce模型排序功能,把不可比较的在线服务评分转化为用户对在线服务可比较的偏好。通过可比较的偏好统计所有服务的占优次数。根据plackett-luce模型的对数似然函数,使用极大似然估计方法从概率的角度求解在线服务排序问题,把排序的概率作为排序权重得到评价结果。为用户评价偏好不一致的在线服务评价及其相关应用提供了一种新的解决方案。以上结合附图对本发明的具体实施方式作了详细说明,但是本发明并不限于上述实施方式,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1