如何做一次完美的ABTest?

引言:

      在互聯網公司的業務發展過程中,用戶增長是永恆的主題,因爲沒有增長也就沒有發展,所以在業務發展的早期產品迭代速度往往是越快越好,總之一句話:“怎麼快怎麼來”,而當業務發展到一定階段後,野蠻生長的紅利逐漸消退,用戶增長空間在可見策略下變得不那麼明顯的情況下,如何合理地規劃產品迭代策略就顯得尤爲重要了,而具體如何判斷產品策略是否有效,往往就需要數據說話,其結果決定了該產品或策略的生命力以及與之配套的各類資源的調配,畢竟我們都不會將資源浪費在無效的產品和策略上。那麼通過什麼樣的工具或手段才能確保數據驅動策略的有效落地和實施呢?很多公司都是通過ABTest及建設與之相適配的實驗基礎設施平臺來實現這樣的目標。

      ABTest通常是比較產品的某一個變量在不同的版本里面設置不同的值帶來的作用以及影響(比如一個頁面用紅色的按鈕、另一個用藍色的按鈕),其中版本A是當前正在使用的版本,而版本B是改進版。在進行實驗時一般是比較實驗組和對照組在某些指標上是否存在差異,當然更多時候是看實驗組相比對照組某個指標表現是否更好。這樣的對比在統計學上叫做兩樣本假設檢驗,即實驗組和對照組爲兩樣本,假設檢驗的原假設H0:實驗組和對照組無顯著差異;備擇假設H1:實驗組和對照組存在顯著差異。更多時候我們關注的比例類的數值,如點擊率、轉化率、留存率等。這類比例類數值的特點是,對於某一個用戶(樣本中的每一個樣本點)其結果只有兩種,“成功”或“未成功”;對於整體來說,其數值爲結果是“成功”的用戶數所佔比例。如轉化率,對於某個用戶只有成功轉化或未成功轉化。比例類數值的假設檢驗在統計學中叫做兩樣本比例假設檢驗。

     下面我們以設備登錄率實驗來進行講解。

一、實驗前準備

1、做實驗之前,我們先來回答下面幾個問題:

1.1、你進行實驗是想證明什麼?

答:我想通過改變設備登錄按鈕的顏色來提高設備登錄率

1.2、你的對照組和實驗組將是什麼樣子?

答:對照組就是目前的樣子,請看下圖,登錄的按鈕是藍色的背景,實驗組我想把登錄的按鈕背景改成橙色,從而看看設備登錄率是否有提升【完美第一步】

 

3、如何避免混雜因素?【完美第二步】

(混雜因素就是研究對象的個體差異,它們不是你試圖進行比較的因素,但卻最終導致分析結果的敏感度變差,比如不同城市的人,不同年齡段的人,性別……,進行實驗的時候要儘量避免混雜因素對結果的影響)

答:你這裏問的就是我們在做實驗的時候,如何確定對照組和實驗組的樣本吧,就是要使實驗組和對照組的樣本個體差異儘量相同。從請求的用戶中隨機選擇來避免混雜因素的極好辦法:因爲可能成爲混雜因素的那些因素最終在對照組和實驗組中具有同票同權

 

2、樣本量

做A/B實驗需要多少樣本?這是我們在做實驗的時候都必須要回答的問題。(其實對於互聯網的應用來說,流量都非常大,樣本量很少是實驗中需要考慮的因素,不過這裏我們還是要講一講,因爲還涉及到一些其他的概念,我們也需要了解了解)

1、爲何要計算樣本量?

理論上,樣本量越多越好:

        從直觀上看,當樣本數量很少的時候,實驗容易被新的樣本點帶偏,造成了實驗結果不穩定,難以得出確信的結論。相反的,樣本數量變多,實驗則有了更多的“證據”,實驗的“可靠性”也就越強。

在現實操作中,樣本量應該越少越好,這是因爲:

       1)、流量有限:大公司因爲用戶數量足夠多,不用過於精打細算,同時跑幾十個甚至上百個實驗也沒問題。但小公司一共就那麼點流量,還要開發這麼多新產品。在保證不同實驗的樣本不重疊的情況下,產品開發的速度會大大降低。

       2)、試錯成本大:假設我們拿50%用的戶來跑實驗,但不幸的是,一週後結果表明實驗組的總收入下降了20%。算下來,你的實驗在一週內給整個公司帶來了10%的損失。這個試錯成本未免高了一些。

2、置信度和檢測效能

要搞清這兩個概念,我們瞭解一下A/B實驗的基本知識。

首先,A/B測試的兩個假設:

原假設(Null hypothesis, 也叫H0):我們希望通過實驗結果推翻的假設。在我們的例子裏面,原假設可以表述爲“橙色按鈕和藍色按鈕的設備登錄率一樣”。
備擇假設(Alternative hypothesis, 也叫H1):我們希望通過實驗結果驗證的假設。在我們的例子裏面,可以表述爲“橙色按鈕和藍色按鈕的設備登錄率不一樣”。

A/B測試的本質,就是通過實驗數據做出判斷:H0到底正不正確?那麼就會出現下面四種情況:

 

1、設備登錄率無區別(H0正確),實驗分析結果卻說有區別:

由於判斷錯了,我們把這類錯誤叫做第一類錯誤(Type I error),我們把第一類錯誤出現的概率用α表示。置信度 = 1-α 。第一類錯誤意味着新的產品對業務其實沒有提升,我們卻錯誤的認爲有提升。這樣的分析結果,不僅浪費了公司的資源,而且可能對產品進行了負向引導。

所以,在做A/B測試的時候,我們希望第一類錯誤越低越好。實際操作中,我們人爲的對α定了一個上限,一般是5%。也就是說,在做實驗的時候,我們都會保證第一類錯誤出現的概率永遠不超過5%。

2、設備登錄率有區別(H1正確),實驗分析結果卻說沒區別:

我們的判斷又錯了,這類錯誤叫做第二類錯誤(Type II error),用β表示。我們一般定義第二類錯誤β不超過20%。

3、情況2和情況3是兩種判斷正確的場景,我們把做出這類正確判斷的概率叫做檢測效能

我們的做實驗的根本目的是爲了檢測出橙色按鈕和藍色按鈕的設備登錄率的差別。如果檢測效能低,證明即使新產品真的有效果,實驗也不能檢測出來。換句話說,我們的實驗無卵用。

根據條件概率的定義,檢測效能 = 1 -β = 80%。

 

對兩類錯誤上限的選取(α是5%,β是20%)中我們可以瞭解到A/B實驗的重要理念:寧肯砍掉4個好的產品,也不應該讓1個不好的產品上線

3、樣本量的計算公式【完美第三步】

大部分情況下,我們不需要詳細瞭解樣本量的計算公式,這裏給出來公式,大家一起學習一下

 

上面式子中p1我們稱爲基礎值,是實驗關注的關鍵指標現在的數值(對照組);p2我們稱爲目標值,是希望通過實驗將其改善至的水平;α和β分別稱爲第一類錯誤概率和第二類錯誤概率,一般分別取0.05和0.2;Z爲正態分佈的分位數函數 。

因爲 ABTest一般至少2組,所以實驗所需樣本量爲2n。

3、確定指標【完美第四步】

在進行實驗時一般是比較實驗組和對照組在某些指標上是否存在差異,當然更多時候是看實驗組相比對照組某個指標表現是否更好。所以我們在進行實驗之前就應該先確定好實驗中需要需要對比的指標,更多時候我們關注的比例類的指標,如點擊率、轉化率、留存率等。後續我們做實驗的顯著性分析的時候,也是分析的比例類指標。

4、埋點【完美第五步】

當我們確定了需要分析的具體指標之後,就需要我們進行埋點設計,把相關的用戶行爲收集起來,供後續的流程進行數據分析,從而得出實驗結論。

對於 ABTest我們需要知道當前用戶是處於對照組還是實驗組,所以埋點中這些參數必須要有。

二、實驗中觀察

1、觀察樣本量是否符合預期,比如實驗組和對照組分流的流量是否均勻,正常情況下,分流的數據不會相差太大,如果相差太大,就要分析哪裏出現了問題

2、觀察用戶的行爲埋點是否埋的正確。

三、實驗後分析

1、當我們做過 ABTest之後,需要對數據進行分析來確定本次實驗的效果,這就需要進行實驗的顯著性分析,看看實驗的顯著性差異,如果結果不顯著,則不具備參考性。

2、顯著性差異是一個統計學名詞。它是統計學上對數據差異性的評價。在作結論時,通常情況下我們用 P>0.05 表示差異性不顯著;0.01<P<0.05 表示差異性顯著;P<0.01表示差異性極顯著。

3、當數據之間具有了顯著性差異,就說明參與比對的數據來自於具有差異的兩個不同總體,這種差異可能因參與比對的數據是來自不同實驗對象羣體,比如把中年人和老年人相比,也可能來自於實驗處理對實驗對象造成了根本性狀改變(正是我們AB實驗期望的),因而實驗的數據會有顯著性差異。

4、下面給出比例類指標顯著性計算公式,供大家參考(獨立樣本t檢驗):要計算p值,我們需要先計算t值,公式如下:

 

 

計算出t值後,根據t值和自由度n =N1 + N2 - 2 將 t 值轉換成p值,
這裏給出Excel的計算公式:p =Tdist(t,n,1)

5、從3可知,顯著性差異不一定就代表實驗是有效的,可能是因爲混雜因素導致的,這就需要做實驗樣本的進一步分析,確定是不是混雜因素的影響。【完美第七步】

 

6、最終通過分析,給出本次實驗是否有效,如果有效那麼本次實驗帶給業務方的提升是多少的結論。【完美第八步】

 

 

如何做一次完美的 ABTest?

1、最好做單變量的實驗,一次只改變一個變量

2、分流時儘量排除混雜因素,一般情況下采用隨機分流即可

3、檢查流量是否達到最小樣本量要求,達不到要求則沒法進行後續的分析,實驗結果不可信

4、確定本次實驗的對比指標,就是如果方案之間存在差別需要通過什麼來衡量?

5、準確收集用戶行爲數據,這就要求埋點必須正確

6、分析指標的顯著性,如果指標不顯著則表示實驗無效

7、確定引起顯著性的根本原因,排除混雜因素導致實驗結果的顯著性

8、最終給出實驗結論:有效 or  無效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章