超全!AB-test白皮書(1)原理篇

0 評論 10940 瀏覽 26 收藏 11 分鐘

編輯導(dǎo)語:我們都知道產(chǎn)品推出和活動策劃,最終是以用戶數(shù)據(jù)量來檢驗是否成功,那么在正式推出前是需要提前預(yù)判效果。那么本文提出生物學(xué)上的對照實驗方法“AB實驗”,本文主要介紹AB實驗的應(yīng)用場景、統(tǒng)計學(xué)原理以及常用的分層機(jī)制及其原理,值得閱讀學(xué)習(xí)。

考慮以下兩個場景:

場景1:過年前3天,產(chǎn)品X依據(jù)業(yè)務(wù)經(jīng)驗信心滿滿上線新版首頁。全量鋪開一天后,DAU環(huán)比大幅下跌。下跌原因是新版首頁還是過年期間流量自然下跌?新版首頁到底好還是不好?

場景2:算法X與算法Y在同一天推全A、B兩個策略,全量上線后,成交效率直線上升。兩人為成交效率貢獻(xiàn)度吵得不可開交。

以上兩種問題都可以通過AB實驗來解決。AB實驗源于生物學(xué)中的對照實驗,核心原理是通過隨機(jī)分流創(chuàng)造一個實驗環(huán)境,使得實驗組與對照組的唯一差異是待檢驗的部分,從而觀察到的組間差異可以確認(rèn)與待檢驗因素有因果關(guān)系。

AB實驗核心價值能用對比分析、降風(fēng)險、提效率來概括。通過AB測試,能夠準(zhǔn)確、定量的實現(xiàn)小成本試錯以及高效率迭代。

一、AB實驗原理

AB實驗核心統(tǒng)計學(xué)原理是通過假設(shè)檢驗,來校驗實驗組與對照組的樣本均值差相對樣本方差來說是否足夠大,是否能確定地說實驗組與對照組樣本均值的差異是穩(wěn)定的而非波動導(dǎo)致。

一個典型的AB實驗會經(jīng)歷設(shè)定預(yù)期、設(shè)定最小樣本量、AA校驗、AB檢驗共4個流程。

1. 設(shè)定預(yù)期

這個階段比較簡單,直接給出包含指標(biāo)、漲跌幅的預(yù)期即可,例如GMV+0.5%,不喜歡該商品點擊率 -3%等。

2. 設(shè)定最小樣本量

首先引入以下兩個統(tǒng)計學(xué)概念:

第一類錯誤(α):原假設(shè)為真時拒絕原假設(shè)的概率

第二類錯誤(β):原假設(shè)為假時接收原假設(shè)的概率

原假設(shè)一般指不符合預(yù)期的情況,備擇假設(shè)則是期望發(fā)生的情況,例如實驗期望GMV漲,則H0:GMV_diff=0、H1:GMV_diff>0。通俗的說:第一類錯誤(α)指實驗結(jié)果不符合預(yù)期但你以為它符合預(yù)期,拒絕了真的原假設(shè)(拒真);第二類錯誤(β)指實驗結(jié)果符合預(yù)期但你以為它不符合預(yù)期,接受了錯誤的原假設(shè)(受偽)。

超全!AB-test白皮書(1)原理篇

圖源:百度百科

樣本量越小,樣本方差越大,則一二類錯誤概率越大,因此理論上實驗樣本量越大越好。但在實踐中總會期望用最小的樣本量進(jìn)行試驗:1)試錯成本:引發(fā)下跌的實驗開20%流量與5%流量實驗成本顯然不同 2)效率:單個實驗流量越大,能同時進(jìn)行的實驗數(shù)也就越少,單個實驗流量過大會影響業(yè)務(wù)整體迭代效率。因此需要找到一個平衡的樣本量能同時兼顧成本/效率以及準(zhǔn)確性。

通常在實際業(yè)務(wù)中,第二類錯誤后果相對較為嚴(yán)重,因為第一類錯誤導(dǎo)致全量無效策略,第二類錯誤則直接錯失上漲機(jī)會。因此,一般使用power=1-β來確定實驗最小樣本量。

以單邊檢驗為例(實踐中單邊檢驗較多,雙側(cè)檢驗可以嘗試自行推導(dǎo)),假設(shè)實驗預(yù)期目標(biāo)diff為△,d是不拒絕H0的臨界值。

超全!AB-test白皮書(1)原理篇

得出:

超全!AB-test白皮書(1)原理篇

計算最小樣本量可能是一件相對麻煩的事。通常需要將不同得到n1、n2及其對應(yīng)的s1和s2帶入公式中反復(fù)嘗試。

3. AA測試

AB試驗開始前,一般會對空白的實驗組和對照組進(jìn)行AA測試。AA實驗應(yīng)該大概率通過檢驗,否則一定是埋點、分流、數(shù)據(jù)其中某些環(huán)節(jié)存在問題。除此之外,AA測試還能有效預(yù)防以下兩種情況:

a.歷史實驗對用戶的延遲效應(yīng):之前的實驗影響可能持續(xù)到實驗下線后,從而造成流量天然不平。

b.少數(shù)情況下樣本正態(tài)性不一定成立,需要通過AA測試來發(fā)現(xiàn)這一問題。

AA測試具體統(tǒng)計學(xué)原理與AB測試一樣,在AB測試部分詳細(xì)展開

4. AB測試

總共有以下3個步驟,依然以單側(cè)檢驗為例。

Step-1:假設(shè)

超全!AB-test白皮書(1)原理篇

Step-2:構(gòu)造統(tǒng)計量

超全!AB-test白皮書(1)原理篇

其中,△為實驗預(yù)期

Step-3:比較臨界值并做出決策

單側(cè)檢驗中,超全!AB-test白皮書(1)原理篇

當(dāng)Step2中的Z值小于臨界值時,不拒絕原假設(shè),認(rèn)為實驗沒有顯著效應(yīng);當(dāng)Step2中的Z值大于臨界值時,拒絕原假設(shè),認(rèn)為實驗存在顯著效應(yīng),實驗成功!

Step-4:置信區(qū)間

雖然Step-3中已經(jīng)能夠說明實驗有效,但還需進(jìn)一步計算置信區(qū)間,增加實驗結(jié)論攜帶的有效信息。

統(tǒng)計學(xué)意義是:實驗的真實效果有1-α的概率落在置信區(qū)間內(nèi)

二、分層機(jī)制

如果一個實驗需要10%流量的實驗組與10%流量的對照組,那么在最理想情況下,單個層最多能同時運行9個實驗。當(dāng)以上實驗效率不滿足業(yè)務(wù)發(fā)展需要時,就應(yīng)該考慮實驗分層了。

分桶可以理解為縱向切分流量,桶與桶之前互不重疊;分層則是橫向切分流量,層與層之間相互正交,一個用戶同時屬于多個不用層。有點類似城市中修建平房不能滿足居住需求時,居住建筑就會變得越來越高,層數(shù)越來越多。

完全的正交使得layer1上的實驗流量被均勻分配到layer2中,對layer2上的流量來說,實驗與對照的唯一差距仍然是layer2實驗中待檢驗的部分,實驗環(huán)境仍然成立。

超全!AB-test白皮書(1)原理篇

層與層之間完全正交的前提是用戶在兩個層上完全被隨機(jī)打散,即兩個層相互獨立。用哈希算法來解決這個問題就變得非常簡單。只要鹽值變化,哈希算法就能給出不同的打散結(jié)果。常用的哈希算法有MD5和CRC兩種,具體算法與數(shù)據(jù)側(cè)關(guān)系不大,不做詳細(xì)展開。注意使用CRC算法時需要注意不同層的鹽值不應(yīng)取用類似layer1、layer2、layer3……比較相似的名稱。如下圖所示,CRC是典型的偽隨機(jī)算法,當(dāng)打散seeds(鹽值)過于相似時,層與層之間并不相互獨立。

超全!AB-test白皮書(1)原理篇

在層之外還有域的劃分(domain),域的劃分更適合獨立實驗,域和域之間也不會相互影響。發(fā)布層(Launch-Layer)則一般用來觀察n個策略的打包效果,確定本次集成發(fā)版的最終影響。

超全!AB-test白皮書(1)原理篇

三、總結(jié)

本篇主要介紹AB實驗的應(yīng)用場景、統(tǒng)計學(xué)原理以及常用的分層機(jī)制及其原理。如果認(rèn)真讀懂本篇,常規(guī)情境下的AB實驗應(yīng)該都能搞定。

但在實踐中有很多情況會偏離常規(guī)情景,例如實驗局部生效、分析單元與隨機(jī)單元不一致、多重檢驗問題、正態(tài)假設(shè)不滿足等。后續(xù)實踐篇中會逐步探討并介紹以上問題的解決方法。

 

作者:Arwen的異想世界,互聯(lián)網(wǎng)電商大廠6.5年BI經(jīng)驗;公眾號:Arwen的異想世界(ID:Arwendaodaodao)

本文由 @Arwen的異想世界 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。

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

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!