手机APP上演的《甄嬛传》

  • 时间:
  • 浏览:97
  • 来源:世界杯买球盘口【中国】官方网站
    编者按:

甄嬛传中后宫勾心斗角明枪暗箭,只为博得君王宠幸。殊不知,在你的智能手机上,各种新老手机应用也上演着激烈的争宠斗争。

                      

                                        Figure 1 UCF

背景

    随着智能手机的应用愈来愈普及,各种应用软件(以下简称APP)层出不穷。面对琳琅满目的APP,用户选择的时候难免无所适从。因此急需一个APP推荐服务。本文通过模拟手机应用之间的竞争来预测用户可能下载的手机应用从而辅助传统的推荐算法完成更好的手机应用推荐。

    物品推荐(item recommendation)是学术界乃至工业界一项喜闻乐见的科研活动。相关文献不说上万也有数千。总结下来,大致分为三类:基于用户的协同过滤(user-based collaborative filtering)UCF,基于物品的协同过滤(item-based collaborative filtering)ICF 以及基于内容的推荐(content-based recommendation)CBR。然而,这三种算法都无法直接应用到APP推荐。

    UCF根据用户的相似行为进行推荐。如图1所示,用户1和用户2因下载了一定数量的相同APP而被系统认为相似度高。当系统发现用户1新下载了APP1,用户2新下载了APP2时,会将APP1推荐给用户2,APP2推荐给用户1。但进一步我们可以发现,这两个APP都是天气预报。用户1在下载了APP1的情况下很难再去下载提供相同或类似功能的APP2。对用户2来说也是如此。这种情况将导致本次推荐失败。

    ICF根据共同下载某两个APP来决定这两个APP的相似度,如图2所示的APP1和APP2。当系统发现某个用户下载了APP1时,它将把APP2推荐给该用户。同样的情况,用户可能拒绝该次推荐,因为他已经拥有了类似功能的APP。

                        

                                              Figure 2 UCF

    CBR根据用户之前下载的APP来推荐相似度高的APP。如图3所示,当用户下载了一个天气预报的APP时,CBR系统会持续地向用户推荐各种天气预报的APP。这一脑残的推荐行为当然被用户拒绝。

                         

                                             Figure 3 CBR

那么究竟是什么原因导致广泛应用的推荐算法失败呢?

两种消费模式

    导致推荐算法失败的原因是消费模式。我们将用户的消费模式分为两类:一次性消费和持续性消费。前者指用户对某一物品的消费为一次性,一旦行为完成,则立即可进行别的消费,且本次消费对未来没有负面影响。代表的例子有读文章,听音乐,看电影等。传统的推荐算法对于处理这类消费模式可谓得心应手。对于持续性消费,物品的消费会持续较长一段时间,且物品的存在可能对未来其他物品的消费造成消极影响。比如一个人刚购买了一台电脑,那么在未来一年内,该用户可能都不会有新的购买电脑的计划。

    APP下载也属于这类消费。当用户下载某个APP后,它就一直在手机里为用户提供服务(除非被卸载),而这种存在会影响用户未来的APP下载行为。比如一个用户拥有了天气预报的APP时,他很有可能不会下载同一功能的其他APP了。

    一种直观地对该类消费模式的推荐为禁止推荐相似功能的APP。然而实际情况要复杂。在我们分析的用户APP下载日志中,我们发现新老APP的“战斗”并非一边倒。有时用户明明已经拥有类似功能的APP,他依然不拒绝新的不同的APP并下载安装。因此,我们需要一些比较高级的模型来模拟APP之间的“勾心斗角”。

天使VS.魔鬼

    我们认为,每一个APP都有两个隐藏属性,即实际价值与诱惑价值。前者代表该APP给用户带来的真正满意度,后者代表给用户带来的可能的满意度。实际价值只有当用户下载使用后才能得知,而诱惑价值是用户在考虑是否下载该APP时形成的一个估计值。

                        

                                      Figure 4 天使与魔鬼

     这两个隐藏属性如同天使与魔鬼附在APP上,他们之间的争斗也主导着APP下载的结果。我们认为,APP之间的“勾心斗角”是旧APP的实际价值与新APP的诱惑价值争斗的结果。如果前者大于后者,则新APP可能不会被下载;如果前者小于后者,则新的APP更有可能被用户下载安装。这种模型符合日常人们的选择。当用户拥有一个天气预报的APP时(假设它工作得也很好),一般情况用户不会下载别的天气预报的APP(已有的APP的实际价值大于新APP的诱惑价值)。当某个新的天气预报APP发布时,假设其运行截图特别炫,用户界面看上去更友好以及其他一些因素,用户也不反对去下载该APP以期得到更好的服务(已有的APP的实际价值小于新APP的诱惑价值)。

    因此关键的问题就是怎样去确定每个APP的实际价值和诱惑价值。我们通过大量用户的APP下载日志来推断。简单来说,两个功能相似的APP,如果大量用户先下载APP1,后下载APP2,说明APP1的实际价值小于APP2的诱惑价值。相反地,如果下载了APP1的用户只是浏览APP2的介绍而未下载,说明APP1的实际价值大于APP2的诱惑价值。通过对大量用户的下载日志分析学习,每个APP的实际价值和诱惑价值都能估计出来。

    图5显示了我们通过EM算法学出的各个APP的实际价值和诱惑价值间的差距。其中各个APP按照类别进行分类。我们可以看到,对于电子书本类等一次性消费的APP,其实际价值小于诱惑价值,表示该类APP会被用户持续地下载。对于工具书(Reference)一类的APP,其实际价值与诱惑价值差距不大,表示用户可以很准确地估计该类APP给其带来的满意度。剩下的APP则是实际价值大于诱惑价值,表示用户不会持续地下载这一类别的相似APP。典型的例子如社交网络(SN),功能APP(Utilities)。

           

                                   Figure 5 实际价值和诱惑价值之差

APP推荐

    之前提到传统的推荐算法在推荐APP时会失败。因为传统的算法只考虑到了怎样去捕捉用户的兴趣,而没涉及到APP之间的相互影响。只要将传统的推荐算法与我们所学到的各个APP的实际价值和诱惑价值结合起来,便能提高APP推荐的准确度。如图6所示,我们比较了各个推荐算法在APP推荐上的准确度。SVM(Support Vector Machine)是CBR的一个实现算法,MF(Matrix Factorization)是CF的一个实现算法。AT(Acutual-Tempting)则是我们提出的实际-诱惑价值模型。图中柱型越高表示推荐越准确。从实验可以看出,当传统的推荐算法同我们的方法结合时达到的效果最好。

       

                                           Figure 6 APP推荐

后记

    这项工作旨在模拟手机APP之间的争斗。我们通过假设APP的实际价值和诱惑价值来达到该目标。在建模时,我们假设每个用户对于APP的实际价值和诱惑价值的感觉是一致的。更为合理的设计应是个性化的实际-诱惑价值。我们未来的工作将朝着这个方向努力,让这部《甄嬛传》更加精彩。

详细工作请参见:Peifeng Yin, Ping Luo, Wang-Chien Lee and Min Wang. App Recommendation: A Contest between Satisfaction and Temptation. To appear in WSDM 2013.

博文作者介绍:

本文作者Peifeng Yin是宾夕法尼亚州州立大学(Pennsylvania State University)的在读计算机系博士,主要研究社交网络上用户行为建模以及相关的应用。更多作者相关信息参见其个人主页:http://www.cse.psu.edu/~pzy102/

该项工作是其在2012年暑假在惠普研究院实习时的研究成果。

更多精彩内容:

借三国,看IT——惠普透过早期投票占卜“火帖”

加载中,请稍候......