11.58 面向移动 App 的排名欺诈检测方法
近年来,为了促进移动 App 的开发质量,并方便移动用户进行 App 选择,许多在线 App 商店均推出了每日 App 排行榜。事实上,这些 App 排行榜已经成为移动 App 推广的最重要展示手段。在排行榜上的一个高排名可能意味着巨大的下载量和超过百万美元的收入。因此,移动 App 开发商都努力尝试各种促销手段来推广它们的 App,以期待它们能够在排行榜上有尽可能高的排名。然而,近年来出现了一种不同于传统市场营销手段的推广方法,即不良的 App 开发商尝试利用一些欺诈的手段去蓄意提升它们的 App 在相关排行榜上的排名。这些排名操纵方法通常是使用被称为 Bot Farms 或者“水军”在一个很短的时间内提升 App 的下载量、评分以及用户评价。这种面向移动 App 的排名欺诈现象,已经引起了移动产业界的高度重视和担忧。
在近年来的研究文献中,有许多和移动 App 排名欺诈相关的研究,例如 Web 排名欺诈检测[12] 、在线评论欺诈检测[13]以及移动 App 推荐[14] 。然而,如何自动检测面向移动 App 的排名欺诈现象却仍然是个开放性问题,尚缺乏系统性研究。为了填补这个空白,我们提出了一个全新的面向移动 App的排名欺诈检测系统。具体而言,我们首先明确了在这个问题研究中十分重要的三大挑战:第一,排名欺诈并不是存在于一个 App 的整个生命周期中,因此需要寻找欺诈发生的确切时间。这个挑战可以被认为是检测“局部性异常”(Local Anomaly)而非“整体性异常”(Global Anomaly)。第二,由于移动 App 的数量巨大,无法手动标注足够的移动App 作为训练数据,因此开发一个扩展性良好的自动化方法进行排名欺诈检测是十分重要的。第三,由于 App 排名本身的动态性,发现并确认一个关于排名欺诈的证据并不简单,因此需要通过数据挖掘方法来寻找移动 App 的潜在特征模式,并将其作为欺诈检测的证据。
经过对现实数据的深入观察,我们发现移动App 并不是始终都排在排行榜的高处,而高排名仅仅存在一些“活跃事件”(Leading Event)中,同时这些活跃事件可以构成不同的“活跃周期”(Leading Session)。基于这个观察,我们认为排名欺诈仅可能发生在这些高排名的活跃周期中。因此,面向移动 App 的排名欺诈检测问题就转化为检查活跃周期中是否存在欺诈行为的问题。具体而言,我们首先提出了一个简单但是有效的算法从每个移动 App 的历史排名记录中识别其活跃周期;然后,通过分析 App 的历史排名规律,我们发现具有欺诈现象的 App 会出现异常的排名模式。因此,我们设计了三个基于 App 排名的欺诈证据来量化相应的欺诈程度。尽管如此,基于排名的欺诈证据可能会受到 App 开发商本身名气,以及一些合法促销手段(例如限时免费)的影响而造成误判。所以我们进一步基于移动 App 的历史评分和用户评论数据提出了两类欺诈证据,其可以反映来自于 App 评分和用户评论的异常模式。同时,为了有效地进行排名欺诈检测,我们设计了一种非监督学习的证据整合(Evidence Aggregation)方法,来融合所提出的三类欺诈证据。图 3 展示了所提出的面向移动 App 的排名欺诈检测系统的工作框架。