补贴活动数据异常,抓出羊毛党

1. 业务背景

共享单车潮汐效应明显,上班高峰期单车大多堆积在地铁站,复用率不高;平台运力有限,难以缓解此趋势。

为解决这种情况,某某单车推出了「众骑」活动,鼓励有闲暇时间的用户在早高峰期间反向骑行(也就是将车从地铁站骑回居住社区等地),希望缓解高峰期的单车供应问题。

此任务的完成的计算方式是:在「高峰」时间段,于指定地铁站附近 100 米「解锁活动车辆」;骑出地铁站 500 米范围后,「锁定活动车辆」,即可完成。考虑到单车成本,车辆上并未配备 GPS 装置,「解锁车辆」和「锁定车辆」时,会收集手机上的地理位置信息作为判断依据。

每完成一次任务,该用户均可以得到平台发放的红包奖励(1 - 20 元不等),以维持整个活动顺利运转。

活动上线后,红包不断被发放出去,越发越多;但从消费者的角度来看,早晚高峰的单车供应并没有显著的改善。负责这个活动运营的同事很纳闷,明明有这么多人在努力搬运,为什么却没有效果?综合多方面的信息,部分同事已经开始怀疑:活动多半是被羊毛党光顾了,但苦于没有证据。

该如何通过数据分析,抓出羊毛党呢?

思路分析

1.观察数据,找到异常用户,说明异常理由,推测“作弊”手段。
2.判断其是“团伙作战”还是“单打独斗”。如果是团伙作战,说明理由,并给出其行为模式(最好能给出基于当前数据平台筛选出这些用户的条件)。
3.结合实际,给出推荐的后续处置措施。基本原则是:尽量在不伤害现有用户的情况下,减少公司损失,保障活动效果。
4.回顾思路:找到【1】-->找到模式-->找到【N】

第一步:观察数据,找到异常用户,说明异常理由,推测“作弊”手段。

1.观察数据,找到异常用户

通过观察5分钟内连续操作两次解锁后锁定操作的永不转化率,在10-12日与10-28日有大批量的这类用户进入系统。


补贴活动数据异常,抓出羊毛党_第1张图片

接着,按照ID来查看解锁活动单车事件的触发总次数,发现ID为309380的用户,在10-12日以及10-23的数据波动异常,明显高于正常水平。而且该用户也符合

补贴活动数据异常,抓出羊毛党_第2张图片

接下来,定位id为309380的这位用户,查看在10-10到10-30这段时间他的行为数据。有两个特殊的特征:第一,在10-12日,事件发生总量异常的高;第二,用户解锁活动单车与锁定活动单车之间间隔时间很短。
补贴活动数据异常,抓出羊毛党_第3张图片

其中,如下图所示两个事件之间事件间隔只有18秒不到,但是经纬度通过百度拾取坐标系统得知,起点终点之间有1.8KM的路程,这个明显不合理。
补贴活动数据异常,抓出羊毛党_第4张图片


------迭代分割线start-------

2.用户分布分析

通过用户分布分析可见,一天内解锁活动单车超过50次,这是个异常数据。通过分布分析,可以定位出一批疑似羊毛党的用户,抽取其中几个来具体看看这些用户的操作事件序列。例如,309262,309380,309317等。


补贴活动数据异常,抓出羊毛党_第5张图片

特征1:事件发生分布异常

如图,该用户在10-12,10-17有大量的事件发生,但是在其他日子是零。这个很可能就是羊毛党,而且是团伙式的机器人用户。


补贴活动数据异常,抓出羊毛党_第6张图片

特征2:时间间隔极短

如图,用户的解锁与锁定操作间隔非常短,显然不是在一个正常的适用场景。


补贴活动数据异常,抓出羊毛党_第7张图片

特征3:位置小幅度快速来回摆动

如下表,用户在极短时间内,以建国门地铁站附近为起点,来回摆动。每次解锁与锁定的地点都是近乎雷同的。
08:02:17.571 ,116.43454,39.907806,解锁
08:02:53.571 ,116.42624,39.901606,锁定
08:03:32.571 ,116.43474,39.907906,解锁
08:04:20.571 ,116.44424,39.899606,锁定
08:05:01.571 ,116.43464,39.909506,解锁
08:05:30.571 ,116.42924,39.902606,锁定
显然,这种以固定的两个地点来回快速摆动的行为序列,并不符合正常用户使用场景。

------迭代分割线end-------

3.作弊手段推测:

羊毛党通过软件修改地理位置信息,且频繁进行解锁/锁定活动车辆的操作。以此“欺骗系统”获得活动红包。
作弊用户的操作可能是这样一个流程进行反复操作,有可能用同一辆车,也可能每次用不同的车,作弊操作流程如下:

  1. 找到一辆锁定的车
  2. 打开手机,修改定位(移动到地铁站附近)
  3. 扫码解锁
  4. 修改定位(移动到居住社区附近)
  5. 锁定,完成任务,领红包

第二步:判断其是“团伙作战”还是“单打独斗”。

寻找羊毛党特征

通过上面的分析推测,如果是单次的作弊,这个门槛不高,只需要下载一款修改定位的app即可。如果要团伙作战,即意味着要批量去做。回到这个漏斗分析:


补贴活动数据异常,抓出羊毛党_第8张图片

10-12,10-28是有大量羊毛党进入,这里很大可能是团伙作战。而其他时间,也有一定量的羊毛党,这种推测是个人单打独斗的行为。
另外,个人羊毛党一般薅羊毛的行为是平均的,每天都薅几把。而对于团伙作战的专业羊毛党,薅羊毛的行为是不平均的,集中在某一两天,大批量的出现。

第三步:结合实际,给出推荐的后续处置措施

处理原则:尽量在不伤害现有用户的情况下,减少公司损失,保障活动效果。

根据数据分析以及作弊行为推测,结合app的功能设计与使用场景,面临以下几个问题:

问题1:用户可以同时解锁多辆自行车

下图是羊毛党作弊用户的行为事件记录,可见,解锁与锁定并非一一对应,用户可以解锁多辆,然后分开锁定。
影响:羊毛党可以一次性解锁多辆车,然后调用软件修改定位信息,再逐一锁定还车,即可获取多个活动洪波啊。既违背活动本身出发点,也影响其他正常使用自行车的用户。
解决方案:每个用户在解锁一辆单车之后,只有锁定该单车后,才能继续扫码/蓝牙的方式解锁下一辆车。


补贴活动数据异常,抓出羊毛党_第9张图片

问题2:对于获得红包奖励的判定条件过于简单

活动的目的是为了鼓励有闲暇时间的用户在早高峰期间反向骑行(也就是将车从地铁站骑回居住社区等地),希望缓解高峰期的单车供应问题。
计算方式:在「高峰」时间段,于指定地铁站附近 100 米「解锁活动车辆」;骑出地铁站 500 米范围后,「锁定活动车辆」,即可完成。
影响:这个计算方式过于简单,仅通过地理位置改变来定义完成任务,作弊成本太低,导致羊毛党盛行,活动经费花了,但是没有达到目的。
解决方案:
1)增加判定条件。除了地理位置改变这个标准以外,可以考虑加入例如使用时间1分钟以上这个条件。如果是真实用户的话,骑行1分钟这个要求不高,对用户体验影响不大,而对于羊毛党来说,则是提高了作弊的成本。
2)把可疑账号划到黑名单,不予参与活动。可疑的定义诸如账号存活时间,账号是否存在1小时内,8次解锁归还的操作。如果存在,即可把账户列入黑名单,不能参与这个活动,但是正常使用单车不受影响。

问题3:红包获取上限

目前该活动没有设定红包领取的上限值,这个给羊毛党提供了作弊的机会。
解决方案:增加每个用户每天领取红包的上限值。回到真实的使用场景,即使有老大爷大妈等时间比较充裕的用户,觉得可以做这个事情来赚取一定的红包收入。每天5次来回,时间也够了。

问题4:其他替代方案

活动总共投入红包205.4万,参与用户12061人。投入金额大,参与人数少,再结合实际车辆调配的效果来看,这个方案的效益不大。
可以对比一下,平台雇第三方公司来统一搬运,这个成本是多少。专业的运维团队的工作质量相比这种众包用户个人行为,更靠谱。


补贴活动数据异常,抓出羊毛党_第10张图片

你可能感兴趣的:(补贴活动数据异常,抓出羊毛党)