数据指标波动分析

作者:闲鱼技术——徽柠

背景

每天打开数据监控看板,观察当日业务KPI的情况,已经是互联网人的日常工作内容之一,数据指标波动对于一个非稳定期的业务是常态。波动分析的本质是通过统计和比较来表达波动背后的规律和问题。业务的数据指标都具有固定的波动周期,而且每个周期内数据的变化应该趋于稳定,但在数据监控体系里的日报、周报、月报中某数据指标突然不再符合预期的稳定变化,这就是我们所说的数据出现异常波动。本文将从围绕以下思路向大家介绍:
数据指标波动分析

数据准确性

面对波动首先判断数据是否准确。准确性是数据指导决策的基础,日常难免会遇到服务器异常、上游依赖表变动等问题,以致于在数据监控平台上出现异常值。指标准确性的排查方法也各不相同:

  • 绝对值指标:如果是数据中间层或者明细层,通常追溯到日志上报是否异常,上报逻辑是否发生变化,或者端接口是否稳定;如果属于应用层数据,通常排查上游依赖是否发生变化,数据口径未对齐等情况。
  • 率值指标:如下矩阵,按照分子分母单独排查,参考绝对值指标。

数据指标波动分析

数据异常性

然后,在准确性的基础上判断数据波动的幅度如何以及幅度是否异常。波动幅度的衡量通常是根据同比、环比得到的,周期性是影响数据波动的重要因素,周同比、月同比、年同比以及日环比等能刨除周期性的影响看到数据波动的本质。
波动是否异常,最常用的判断方法是3西格玛原则,统计学认为在正态分布中,有99.7%的数据落在3倍标准差的区间中,95%落在2倍标准差区间,68%的数据落在1倍标准差之中,但在具体业务中也会通过数据趋势和经验进行判断。
数据指标波动分析

归因分析

在准确性和异常问题确定之后,进行归因分析和影响度衡量,最终运用分析结果驱动业务决策。对于大部分已经产生的数据波动,大概可以从两个维度来分类:

  • 范围维度:包括自己的产品、竞对方面以及产品业务的大环境,这样分类的原因是因为相互竞争的产品都处于大的产品业务环境之中,任何一方的变动都会造成自家产品的数据变化;
  • 内容维度:包括产品、技术、用户和运营,这几个维度基本囊括了互联网产品的重要构成。日常波动大多数都是自己模块的原因所致。具体归因时,又可以从人货场的角度进行下钻:技术维度通常是数据准确性的问题,产品和运营维度影响场,用户因素拆解成买家、卖家和供给。

数据指标波动分析
外部原因通常是难以验证的,因为我们难以获取到竞手的数据,所谓的第三方报告也并不准确,如果竞对是上市公司,那可以查看披露的财报数据,但针对某一时刻或者时间段的波动,洞察竞对财报往往有些迟延。抛开外部因素,从内部因素进行归因,又可以拆解成绝对值指标、率值指标的归因。
数据指标波动分析

  • 针对绝对值指标,归因方法总结为:横向分析、纵向分析、交叉分析。

    • 横向分析:人货场模型是典型的横向分析,以MECE为拆分原则。从人的角度拆解,买家用户即流量,即有来访的用户,可以从基本画像信息、来源渠道、活跃度、购买等级、购买意愿等角度进行拆解,确定各层级的用户是否有明显波动;从货的角度拆解,判断新发、库存、分发侧是否发生变化;场反映的是产品或者运营的策略影响。

数据指标波动分析

  • 纵向分析:漏斗模型是典型的纵向分析,它是一套流程式波动分析方法,能够科学反映用户行为状态以及从起点到终点各阶段用户转化率、跳失率等情况。

数据指标波动分析

  • 交叉分析:交叉分析是横向分析和纵向分析的交叉,业务中的波动归因往往是横向、纵向的不断交叉。

以订单波动为例
横向分析:
人:订单量=自然+外投+push+二方+短信

           =低活+低中活+中活+中高活+高活
           =购买力L1+L2+L3+L4+L5

=.......
货: 订单量=新发订单+老品订单

           =女装+3c+手机+卡券+...
           =不同卖家价值的订单之和

场:订单量=搜索+推荐+猜你喜欢+同城
纵向分析:
订单量=dau曝光转化率点击to曝光转化率询单to点击转化率询单to支付转化率
交叉分析:
订单量=(自然+外投+push+二方+短信)*(各分组下的漏斗转化率)

  • 针对率值指标,最终转化成绝对值指标的线性组合。

$$\Delta \frac{M}{N}=\frac{M1}{N1}-\frac{M0}{N0}=\frac{M1N0-M0N1}{N1N0}=\frac{M1N0-M1N1+M1N1-M0N1}{N1N0}=\frac{M1(N0-N1)}{N1N0}+\frac{M1-M0}{N0}$$

影响度衡量

在确定了影响因素之后,就是影响程度的衡量。如果影响指标单一,影响度就显而易见,但当多个因素同时作用,且业务没有进行ab实验时,各因素的影响程度就无法统一了。在具体业务中,通常会有行业、大促、节日、拉新、促活等各种因素交叉影响,且没有完全进行ab实验,这时候影响度口径的统一便比较困难。常用方法如下:

  • 控制变量法

此计算方法是选择多个时间维度,分别和某一个固定的日期进行对比,然后进行影响因素的叠加。以人均ipv为例,影响因素为活动pop、运营坑位和外投,假设日常的影响为0,以上因素皆是影响增量,然后求解方程组,得出各因素影响权重。

  • 坑位分析法

坑位分析法主要用于分析feeds上各坑位运营活动的影响。运用排除的原理,聚焦到运营坑的影响度,然后其他因素为1-影响度。以人均ipv为例:坑位人均ipv=坑位的曝光PV ×PCTR➗当日曝光UV=坑位的点击pv/当日曝光uv,坑位贡献率=坑位变化值/总变化值*100%。

  • 先验判断法

先验判断是依据之前活动的投放效果来评估的,将之前的影响效果作为此次活动的影响度。

  • 边际效果归因

如果策略对kpi有影响,加大或减小策略的力度能够看到观测指标发生相应变化。此方法的成本就是时间,通常长时间的加大或者减小力度来判断指标的增减,但注意要同期对比,避免周期性影响。

  • 双重差分法

采用构造一个“对照组”的思路,需要两个人群满足“共同趋势假设”的条件,即当受到外接影响时,策略人群和对照组有同样的变化趋势。策略人群受策略和其他因素影响:策略效果 = a1 – b1,对照组受其他因素影响:变化值=a2-b2,则策略效果=(a1 – b1)-(a2-b2),但缺点是要求“对照组”和实验组样本尽可能相似。

结语

本文是对闲鱼业务波动分析方法及思路的总结,主要围绕数据波动判定、波动归因、影响度衡量几个方面进行。但往往某一天的波动需要分析师快速做出判定,这便要求我们熟知业务变动,及时和产品、运营、算法、开发等同学对焦,快速定位问题,以上维度可作为自动化归因的拆解维度。

上一篇:spring-boot | 使员Druid 整合Mybatis 最简配置多数据源


下一篇:惊!十二星座程序猿竟然这样写代码