數(shù)據(jù)出現(xiàn)波動不要慌,手把手教你搭建數(shù)據(jù)異常監(jiān)控體系

7 評論 11559 瀏覽 68 收藏 16 分鐘

#本文為人人都是產(chǎn)品經(jīng)理《原創(chuàng)激勵計劃》出品。

當(dāng)數(shù)據(jù)出現(xiàn)波動時,數(shù)據(jù)分析師不免要對導(dǎo)致數(shù)據(jù)波動的背后原因進行篩查,進而找到解決路徑。然而,數(shù)據(jù)異常的原因該怎么找,才是準(zhǔn)確且合理的呢?本文作者便總結(jié)了一套從0到1搭建數(shù)據(jù)異常監(jiān)控體系的有效策略,也許會對你有所幫助。

前言

日常觀察業(yè)務(wù)數(shù)據(jù)時,如果數(shù)據(jù)出現(xiàn)波動,我們心里總會犯嘀咕:這個波動到底是不是在正常范圍內(nèi)?如果數(shù)據(jù)與業(yè)務(wù)預(yù)期相差了好幾倍,那我們又頭疼了,原因那么多,到底哪個才是導(dǎo)致數(shù)據(jù)波動的原因?

別慌,這篇文章中,教你從0-1搭建數(shù)據(jù)異常監(jiān)控體系。

數(shù)據(jù)分析師的面試總是繞不開一類經(jīng)典的案例題:

如果日活下降了,你會怎么定位問題?

如果銷售額上升了,你會如何尋找原因?

總結(jié)一下這類問題的形式:

如果XX指標(biāo)發(fā)生了波動(上升或下降),需要你去定位原因,你的分析思路是什么?

這里大部分人的回答是,我會看看數(shù)據(jù)具體的波動時間是什么時候?然后看看當(dāng)天我們有沒有做什么活動或者產(chǎn)品改版?

業(yè)務(wù)經(jīng)驗豐富一點的還會說,我會把用戶分成新老用戶,看看具體是哪個人群結(jié)構(gòu)發(fā)生了波動?我還會……

這樣回答有問題嗎?沒有,但是回答得好不好呢?可能你自己心里也犯嘀咕,因為我們這種東一榔頭西一棒槌的答法,有沒有漏掉什么我們自己心里也沒有底。

實際上,對于這種數(shù)據(jù)波動的問題,考察的是你系統(tǒng)性思考的能力,也就是能否站在全局角度,通過嚴(yán)謹(jǐn)?shù)倪壿嬇c業(yè)務(wù)結(jié)合來思考問題。

所以,今天和大家分享如何從0-1搭建數(shù)據(jù)異常監(jiān)控體系。

一、數(shù)據(jù)異常檢測

數(shù)據(jù)異常。所謂異常,可以理解為不符合預(yù)期的數(shù)據(jù)。這里的預(yù)期可以分為兩個部分:業(yè)務(wù)預(yù)期合群預(yù)期。

  • 業(yè)務(wù)預(yù)期:業(yè)務(wù)上不符合預(yù)期;
  • 合群預(yù)期:波動或空間上不符合預(yù)期。

業(yè)務(wù)預(yù)期比較好理解,有經(jīng)驗的業(yè)務(wù)人員在做一次新的運營活動時,心里往往會有個預(yù)期的數(shù)據(jù)值。當(dāng)實際值在心里預(yù)期之外,可能就需要拉著分析師找原因。

合群預(yù)期是一種定量的判斷,有兩個條件:

  1. 異常數(shù)據(jù)跟樣本中大多數(shù)數(shù)據(jù)不太一樣;
  2. 異常數(shù)據(jù)在整體數(shù)據(jù)樣本中占比比較小。

所以重點在合群預(yù)期的判斷上,轉(zhuǎn)換成業(yè)務(wù)語言就是:什么樣的波動才算是異常呢?日活從20w掉到15w算不算異常?

如果我們每天的日活如下圖所示,在20w上下波動,突然掉到15w,算不算異常?

如果我們的日活如下圖所示,具有明顯的周期性波動(工作日在20w左右,節(jié)假日在15w左右),那12月12日的日活為15w,算不算異常?

通過上面的例子,我們知道,所謂異常,要結(jié)合具體的業(yè)務(wù)場景來看,對于合群預(yù)期,有沒有科學(xué)的方法來檢測數(shù)據(jù)波動導(dǎo)致的異常與否?

答案是有的,對于波動異常檢測的方法主要有:z-score檢測(3sigma準(zhǔn)則)、分位數(shù)分析、孤立森林、聚類、lof局部異常因子檢測、one-class svm(適用高維空間)等。

下面簡單介紹下常用的3sigma準(zhǔn)則是如何判別異常的。

統(tǒng)計學(xué)教材中,關(guān)于3sigma的定義為:正態(tài)分布下,數(shù)據(jù)落在μ±3σ區(qū)間內(nèi)的概率為99.7%。

所以對于任意一組數(shù)據(jù),只要我們知道了μ和σ,那我們就可以設(shè)定正常值的上下限(μ-3σ,μ+3σ),只要在這個范圍之外的值,我們就認(rèn)為是異常值。

關(guān)于如何判定異常值還有很多已經(jīng)成熟的方法,這里不做展開。

二、數(shù)據(jù)異常定位

從上面我們已經(jīng)知道了在一組數(shù)據(jù)中,如何判斷新加入的一個數(shù)據(jù)是否是異常,那如果出現(xiàn)了異常,我們?nèi)绾味ㄎ唬?/p>

我們把異常數(shù)據(jù)的定位分成兩塊去拆解:內(nèi)部因素外部因素

1. 外部因素定位

外部因素我們一般采用PEST分析法(宏觀經(jīng)濟環(huán)境分析),即通過四個方面去分析:政治、經(jīng)濟、社會、技術(shù)。

政治層面主要是新頒布的一些政策、法規(guī)對數(shù)據(jù)產(chǎn)生影響。如最近的滴滴上市被叫停,各應(yīng)用市場禁止上架APP,那么滴滴的新用戶數(shù)在政策頒布之后一定會下降。

經(jīng)濟,這里我為了理解方便,列了三個維度:競品功能上新、競品運營活動上新、競品數(shù)據(jù)。這里主要是考慮到競品的變動導(dǎo)致了我們數(shù)據(jù)的波動。

還是以打車軟件為例,A打車軟件最近對全體用戶搞了一個新的運營活動,花1元錢可以購買五張6.5折的打車券,且在工作日無時間限制。

假設(shè)這個活動的參與用戶很多,且A軟件和B軟件的重合用戶較多,那么A軟件此次的運營活動就會影響到B軟件的用戶數(shù)據(jù),畢竟人是“趨利”的。

假設(shè)我們既沒發(fā)現(xiàn)競品有功能更新、又沒有新的運營活動呢?那么我們可以看下我們出現(xiàn)波動的指標(biāo),在競品中有沒有出現(xiàn)變化。

舉個例子,如果我們發(fā)現(xiàn)我們的用戶次日留存在某個時間段出現(xiàn)下降。如果主要競品也出現(xiàn)了同樣特征的波動,在其他條件都一樣的情況下,我們就可以判定是市場情緒出現(xiàn)了波動,大家都“下降”了。

社會因素主要是輿論壓力,用戶生活方式、消費心理變化、價值觀變化的改變對我們的數(shù)據(jù)造成的影響。

技術(shù)層面指的是一些創(chuàng)新技術(shù)的問世等帶來的影響。這兩種因素帶來的數(shù)據(jù)影響一般不會是突然的,用戶生活方式的改變、新技術(shù)的應(yīng)用都需要大量的時間積累才會造就。

所以這兩個因素如果存在的話,在數(shù)據(jù)上的表現(xiàn)會是緩慢下降的趨勢,而不是突升或突降。

2.?內(nèi)部因素定位

實際業(yè)務(wù)過程中,數(shù)據(jù)波動由內(nèi)部因素導(dǎo)致的可能性更高。

數(shù)據(jù)出現(xiàn)波動,那么和數(shù)據(jù)相關(guān)的系統(tǒng)都需要排查是否出現(xiàn)問題。在內(nèi)部因素的定位中,我們按照數(shù)據(jù)的生產(chǎn)關(guān)系將各參與系統(tǒng)分成:生產(chǎn)者參與者、加工者三個部分。

其中生產(chǎn)者是用戶。所有用戶的行為都由用戶產(chǎn)生。那么用戶側(cè)可能出現(xiàn)什么問題?比較常見的是用戶結(jié)構(gòu)出現(xiàn)變化、渠道來源出現(xiàn)調(diào)整,用戶反饋出現(xiàn)變化。

用戶結(jié)構(gòu)指的是我們在對業(yè)務(wù)過程搭的指標(biāo)體系中,按照用戶屬性將用戶分成:新用戶、次新用戶、老用戶、流失用戶(當(dāng)然,這個不同業(yè)務(wù)形態(tài)區(qū)分的維度也不同)。

如果我們的新用戶突然變多,本身新用戶的活躍度就比不上老用戶,再加上新用戶占到我們?nèi)栈畹?0%,那么這樣的情況反映到數(shù)據(jù)上就是日活的次日留存降低,整體用戶的活躍度也降低。

當(dāng)然我們還可以根據(jù)用戶地域分布、性別、機型、登錄時段等維度來定位用戶。用戶維度分得越細(xì),我們的定位就會“快”而“準(zhǔn)”。

數(shù)據(jù)參與者是產(chǎn)品側(cè)、運營側(cè)、BI側(cè)。

產(chǎn)品側(cè)比較好理解。我們產(chǎn)品功能的上新、老功能的下架,已有功能的改版,都會導(dǎo)致數(shù)據(jù)的波動。

運營側(cè)也是同理。雙11我們新運營活動的上線,之前的運營活動下架,已有活動改版之后新的玩法,都會對數(shù)據(jù)造成波動。

所有的數(shù)據(jù)可視化基本上都是由BI開發(fā)的一個個報表堆砌的,所以BI也是數(shù)據(jù)的重要參與者。由BI側(cè)導(dǎo)致的數(shù)據(jù)波動大多數(shù)出現(xiàn)在口徑不一致的問題上。

這里可能有很多產(chǎn)品和運營的小伙伴深有同感,自己公司的BI經(jīng)常會在不同時間點給出統(tǒng)一口徑下的兩份不同數(shù)據(jù)。

這里我為廣大的BI同學(xué)們正名一下,作為BI,數(shù)據(jù)的準(zhǔn)確性是我們的紅線,給出準(zhǔn)確的數(shù)據(jù)是我們的義務(wù)。但是往往隨著公司業(yè)務(wù)規(guī)模的擴大,之前的底層數(shù)據(jù)架構(gòu)開始不堪重負(fù)。再加上人員的流動,很多歷史遺留問題開始凸顯。這時,大多數(shù)的公司還處在追求業(yè)務(wù)擴張的階段,不會花時間和資源來處理數(shù)據(jù)底層架構(gòu)的問題,畢竟花時間又看不出明確產(chǎn)出。

這個問題的破局只有自上而下,具體在這里不細(xì)說。

最后一個生產(chǎn)關(guān)系是數(shù)據(jù)的加工者,即開發(fā)側(cè)的數(shù)據(jù)開發(fā)、數(shù)倉。這是最容易忽視卻是出問題頻率較高的部分。

這里要簡單說下我們的數(shù)據(jù)生產(chǎn)加工過程。用戶生產(chǎn)的行為、屬性等數(shù)據(jù)并不是直接生成的可視化報表,需要經(jīng)過ETL清洗、數(shù)據(jù)入庫、再到數(shù)據(jù)處理,最后成為可視化看板。

而在上述的每個環(huán)節(jié)中,都可能會造成數(shù)據(jù)丟失的問題。常出現(xiàn)的問題有對接的服務(wù)器漏采集數(shù)據(jù),傳輸數(shù)據(jù)的服務(wù)器之間未添加白名單導(dǎo)致數(shù)據(jù)丟失等。

很多時候查到這里確認(rèn)是這個問題后,我們會恍然大悟。

三、數(shù)據(jù)異常歸因

經(jīng)過前面兩步:數(shù)據(jù)異常檢測、數(shù)據(jù)異常定位,我們基本上定位到了數(shù)據(jù)波動的因素,那究竟是不是這個因素導(dǎo)致了我們的波動?

這里舉個例子方便大家理解我們?yōu)槭裁催€要做歸因這個步驟。比如五年級的小明在之前幾次月考中數(shù)學(xué)都在95分左右,但期中考試數(shù)學(xué)只考了80分,小明媽媽非常不滿意,認(rèn)為是小明最近一直在玩手游導(dǎo)致的成績下降。小明很委屈,他覺得這次是題目太難了。

媽媽為了證明是手游這個因素影響了小明的成績,從期中考試結(jié)束后到期末考試期間,嚴(yán)格禁止小明玩手機。結(jié)果小明期末考試考了95,達到平時的成績,小明媽媽就更堅定了是手游影響了小明的學(xué)習(xí)。

這里舉的例子對應(yīng)到業(yè)務(wù)中,也就是說在數(shù)據(jù)異常定位之后,我們還要證明確實是這個因素的變動導(dǎo)致了結(jié)果數(shù)據(jù)的變動。

在這個環(huán)節(jié)我們都是采用AB實驗的思想,比如我們定位到了是新增用戶變多導(dǎo)致了我們整體次日留存的下降。那我們就可以保證其他因素不動,只是剔除新用戶,再取一下次日留存的數(shù)據(jù),看看數(shù)據(jù)是否依然波動。

四、總結(jié)

還記得我們一開始的問題嗎?

如果XX指標(biāo)發(fā)生了波動(上升或下降),需要你去定位原因,你的分析思路是什么?

通過我們前面的講解,我們會這樣回答:

  1. 通過數(shù)據(jù)異常檢測確認(rèn)業(yè)務(wù)所說的波動是否屬于異常波動;
  2. 根據(jù)外部因素和內(nèi)部因素分別進行排查;
  3. 用AB實驗的思想進行數(shù)據(jù)異常歸因。

其中外部采用PEST分析法,內(nèi)部因素按照數(shù)據(jù)生產(chǎn)關(guān)系分為生產(chǎn)者、參與者、加工者,在對每個層級分別排查定位問題。

 

微信公眾號:董點數(shù)據(jù)。分享產(chǎn)品、運營、數(shù)據(jù)思維。

本文由 @董點數(shù)據(jù) 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

本文為人人都是產(chǎn)品經(jīng)理《原創(chuàng)激勵計劃》出品。

題圖來自 Pexels,基于CC0協(xié)議

微信公眾號:董點數(shù)據(jù),分享產(chǎn)品、運營、數(shù)據(jù)思維。

本文由 @董點數(shù)據(jù) 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于CC0協(xié)議

該文觀點僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺僅提供信息存儲空間服務(wù)。

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 作者寫的很好啊,很系統(tǒng)

    來自上海 回復(fù)
    1. 感謝認(rèn)可~

      來自浙江 回復(fù)
  2. 歡迎關(guān)注微信公眾號:董點數(shù)據(jù)

    來自浙江 回復(fù)
  3. 1、首先與業(yè)務(wù)確認(rèn)數(shù)據(jù)是否是真正異常
    2、分別從外部、內(nèi)部來鎖定數(shù)據(jù)異常的原因
    3、用A、B測試的實驗思想來進行歸因
    4、根據(jù)業(yè)務(wù)或者經(jīng)驗或者討論給出下一步新勾當(dāng)方案

    來自廣東 回復(fù)
    1. 總結(jié)的很好????????

      回復(fù)
  4. 學(xué)到了學(xué)到了,很多時候看到數(shù)據(jù)波動,第一反應(yīng)原因就是內(nèi)容不行。

    來自四川 回復(fù)
    1. 不要怕質(zhì)疑,先看波動是不是異常~

      來自浙江 回復(fù)