項目復盤:如何避開從0~1構建AB Test過程中的坑(下)

2 評論 16490 瀏覽 46 收藏 9 分鐘

編輯導語:在上篇文章中,作者為我們羅列了AB實驗中的幾個典型問題,并且解答了如何合理的劃分人群?如何判斷結果是否可信?本篇文章中,作者又講解了AB的衡量指標以及AA組、AABB組的問題。

接上次的《項目復盤:如何避開從0~1構建AB Test過程中的坑(上)》,這次給大家重點梳理下AA實驗。

以前做B端產品時對數據不敏感,現在在C端做產品時,數據分析的能力就顯得很重要,你說還有什么能比ABTest的數據支撐你大步向前走的信心呢,當然也沒有什么比虛假數據或混淆了數據一樣能快速的結束你的產品迭代甚至帶來嚴重后果,所以如何能給自己更多一些信心?

答案是:AA Test

一、AB實驗的概念

先再講下AB實驗的概念,在互聯網的A/B Test里面, 我們將線上的流量隨機地分到版本A和版本B,收集用戶在兩個版本中的行為數據, 然后對這些數據進行分析,產生量化的結果,最后基于這些量化的結果來形成數據驅動的決策。

下圖是一個簡單的A/B Test的流程示意圖:

(Axure手繪粗糙版AB核心流程示意圖)

實際上,A/B Test方向的大咖Ron Kohavi也說過: “拿到A/B Test的數據容易, 拿到可信的A/B Test的數據很難”,原因就是A/B Test里面的坑很多。

接上次文章,本次主要講下上次遺漏的最后一個問題,即AA實驗以及AABB實驗:

  1. 我怎么劃分人群,是隨機劃分還是依照什么規則能確保人群劃分的合理?(AB實驗里的分流邏輯);
  2. 實驗結果出來了,我怎么判斷這個結果可信不可信(AB實驗里的顯著性差異);
  3. 實驗結果出來了,實驗組數據好,我怎么判斷是不是真的好(AB實驗里的第一類錯誤);
  4. 實驗結果出來了,實驗組數據差,我怎么判斷是不是真的差(AB實驗里的第二類錯誤);
  5. 實驗結果出來了,好多個維度數據,我怎么衡量實驗結果(AB實驗里的衡量指標);
  6. 實驗結果出來了,但是一組AB實驗我總覺得不靠譜(AB實驗的AB組,稱為AA組以及AABB組)。

二、AA實驗的概念

在AA Test里,流量會被隨機的分配到兩個或多個版本里,只不過這兩個版本都是版本A(實驗組和對照組配置一模一樣),所以你也可以理解為AA Test是AB Test的一種特殊形式。

注意圖中的差異,箭頭所表示的地方!

(箭頭所示為AA實驗區別于AB實驗的地方示意圖)

在AA實驗里,從概念上我們知道實驗版本之間是沒有差異的(類比下,在AB實驗里我們是不知道實驗版本之間的指標是否有差異的)。

所以在AA實驗中我們是可以排除實驗版本之間的差異帶來的影響的,可以把這部分影響歸結為隨機噪聲或其他干擾因素(類比下,在AB實驗里我們是沒有很強有力的版本區分開實驗版本間的差異和其他可能帶來干擾的因素的),一般用來輔助觀察指標在產品不做改變時的偏差范圍。

AA實驗是實驗組和對照組配置一樣,衡量產品不做改變時的自然偏差范圍,如果這個偏差范圍很大,說明AB實驗的結果可能也不是很可信。

先回到AB實驗的邏輯:

在概率和統計學上我們是可以判斷出版本之間指標的差異可以歸因為A版本和B版本的差異(注意實際實驗里的概率大?。?,不過在實際實驗中,我們會遇到多種問題,甚至可能導致結論是錯誤的,一般情況下問題可以歸結為三點:

  1. 流量分配有問題(不均勻/特質不明顯等等)
  2. 埋點和數據回流有問題(埋點漏埋、少埋、多埋等或數據傳參鏈路bug)
  3. 統計計算和推理不科學(計算錯誤或推理邏輯未遵循AB實驗邏輯推理)

而AATest實驗中的產品版本都是一樣的,這樣保證相同的目的就是為了驗證上述的埋點、分流、實驗統計的正確性,確保實驗的可信。

換句話說,如果實驗的流量分配、埋點數據、統計分析都是正確的,那么AA空轉的結果理論上肯定是一樣的,這樣就可以理解,如果AA空轉的實驗結果不同,那么上述三個里肯定有一項存在問題。

所以可以看出,在AB實驗里,做一個純凈對照組AATest的重要性。

三、AA實驗怎么做

AB實驗的步驟大家參考上篇文章《項目復盤:如何避開從0~1構建AB Test過程中的坑(上)》應該都知道怎么操作了吧?

AA實驗就是把AB的步驟復制一下,只不過在操作版本時保證一致就可以了。

四、AABB實驗是啥

說實話,如果已經做了AB實驗和AA實驗,沒有必要做AABB實驗了。

AB和AA實驗的誤差把控都需要用概率和統計把控,如果AB和AA的結果不相信,你有什么理由相信一個誤差更大的AABB實驗呢?也就是一個4開組的實驗。

(手繪AABB實驗示意圖,原諒我的拙筆,起碼不侵權 哈哈……)

所以由上圖可以看出,原本的單獨實驗單一對比情況下存在的單一誤差,如果做4開的AABB實驗,變成了6組,假設各組對比結果相互獨立,至少一組犯錯的概率為:P(wrong)= [ 1 -(1-0.05)^6 ] =0.265,遠大于0.05(傳說中的P值)。

所以多來幾次抽樣實驗的話,只能增加犯錯的概率,因此不是很建議在來一個4開的AABB實驗。

五、結語

AATest實驗成功的是ABTest成功運行的前提。

根據大部分AB實驗的經驗, A/A Test經常發現的問題是數據方面的問題, 工程方面比如分流的問題比較少見,因為目前很多分流算法都已經相對成熟。

此外實驗系統,埋點和數據回流,以及指標計算都是動態變化的,因此A/A Test應該持續的運行,所以建議有需要AB實驗的小伙伴,可以考慮將AA實驗作為長期運行、對比的一項任務,任重而道遠。

 

作者:楠神,公眾號《音波楠神》

本文由 @楠神 原創發布于人人都是產品經理,未經作者許可,禁止轉載

題圖來自?Unsplash,基于 CC0 協議

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 寫得特別棒,對AA實驗有深一步的了解,感謝作者,這里有個問題請教下:

    方案1:先跑AA`實驗驗證AA`無顯著差異后,再跑AB實驗
    方案2:直接跑AA`B實驗3開進行,即觀察AA`顯著性,也觀察AB的顯著性

    方案1和方案2,建議跑哪一套呢,其中有何區別? 期待您的回復,謝謝

    來自廣東 回復
    1. 你好,感謝認可。
      一般為了避免流量浪費,同時真正推進項目時會遇到時間緊迫性,所以一般會直接跑AB,來看P值或power值,畢竟如果這倆個值分別是很小和百分比很大,大概率AB實驗結果就是靠譜的,這個時候極小概率會出現偏差;只有當P值和power值的結果不足以支撐你去決策AB實驗結果是否可信時,且要分辨出結果是否是受到自然波動的影響時,加一個AA空轉實驗去佐證。
      當然,嚴謹且全面的AB實驗,是可以一并投入開始跑的。

      來自浙江 回復