EasyABTest

我是智能取經人 2024-02-14 05:25:34

ABTest在互聯網産品運營中發揮重要的作用。驗證産品優化的好壞,産品改進後點擊率優化了多少都可以用到ABTest。

所謂ABTest,就是爲同一個目標制定兩個方案(比如兩個頁面),讓一部分用戶使用A方案,另一部分用戶使用B方案,記錄下用戶的使用情況,看哪個方案更符合設計目標。

舉個例子:企業爲了確定對于某遊戲優化是否有效,選取實驗組和對照組。實驗組使用優化的遊戲,對照組使用原遊戲,一段時候得到實驗組和對照組對産品的評分,使用假設檢驗方法判斷優化是否有效。

咋一看,ABTest有點對照實驗那意思,雖然定義簡單,但在算法策略驗證和産品優化驗證中經常被使用到,以下從八個問題出發,深入ABTest原理。

問題 1:什麽場景可以用 AB Test?

其實這個問題是非常基礎的,主要有兩個應用場景:産品叠代與策略優化。

産品叠代:比如界面優化、功能增加、流程增加,這些都可以使用 AB 實驗測試産品改版是否成功。

策略優化:無論是運營策略還是算法策略,都可以通過 AB 實驗的方式驗證策略是否達到預期目標。

問題 2:AB 實驗的底層邏輯是什麽?

這些問題其實是在考察基礎統計學知識,以及 AB 實驗爲什麽能獲得業界認可,背後的科學理論是什麽?

其實主要基于兩點。

隨機化。AB 實驗通過隨機化的處理,使所有影響 treatment 到 effect 的混雜因子(Confounded Factor)失效。簡單理解就是,隨機化使全部的外在幹擾因素都失效了,treatment 成爲了産生差異的唯一來源。

AB test 的統計學基礎——假設檢驗。假設檢驗顧名思義,就是對樣本特征提出一個假設,然後來檢驗這個假設是否正確,怎麽檢驗呢,自然肯定是利用正態分布之類的統計理論了。

本質上來說,假設檢驗就是根據構造的統計量所符合的統計學理論分布,采用小概率理論來推斷假設是否正確。如果原假設發生的概率較大則接受原假設,如果原假設發生的概率爲小概率事件則抛棄原假設,接受除原假設以外的其他情況。

舉個例子:

假設某 APP 爲 DAU 1200人,標准差爲 150。産品經理增加了一個天天打卡的功能,隨機抽取了其後 30 天的 DAU,計算了下 DAU 爲 1245 人,那麽能否說改版後DAU顯著高于改版前?

假設一個命題,産品的功能叠代升級實際上沒有成效,所統計出來的 1245 看似比原來的1200 高 45,我們假定這個是抽樣的隨機誤差導致的。

于是我們有了原始假設 H0 和備擇假設 H1

H0 = 改版後用戶訪問量均值小于等于 1200(意思就是分布仍然符合均值爲1200的高斯分布)

H1 = 改版後用戶訪問量均值大于1200

注意 H1 命題是 H0 命題的備擇假設,也就是包含了除 H0 以外的其他信息。

第二步就是構建統計量,可以構建 Z 統計量。

第三步:驗證假設是否成立。

通過計算得出,z=1.34,小于圖中的 1.96,沒有落到拒絕域中,因此我們不能拒絕原假設,那麽我們可以得出結論,這個産品經理的功能改版 95% 的可能性來說,是沒有提升 DAU 的。

問題 3:AB 實驗需要多大的樣本?AB 實驗需要做多久是如何確定的?

我們知道何時開始一個實驗,但是不知道何時結束,就是因爲我們不知道如何計算樣本量。平時經常看見有些 AB 實驗能做幾個月甚至一年,這明顯違背了 AB 實驗的初衷,即我們要以最小的成本,最快的時間去驗證策略的有效性。

其實計算樣本量,有套路可循,有一個通用的公式可以計算:

α:第一類錯誤概率(也叫棄真錯誤),一般取0.05

β:第二類錯誤概率(也叫取僞錯誤),一般取0.2

Δ:|u1-u2|,指標預期的變化量,指標的絕對變化量,如5% 增長到10%,指標變化量爲10%-5%=5%

σ2:指標的方差

注意事項:

①如果實驗有多個指標需要通過 ABTest 來驗證,則需要選擇那個需要樣本量最大的指標所需的樣本量作爲實驗的樣本量。

②計算結果是每個分組的最低樣本量,兩個分組加在一起的樣本量是需要翻倍的。

③樣本量可以是一段時間累積的總量,例如實驗總共需要 10000 個樣本,每天最多産生 1000 個樣本,則實驗持續 10 天可以滿足樣本量的基礎需求。

問題 4:AB 實驗如何選擇實驗城市?

原則一:盡量選擇大體量城市,小體量城市樣本小,需要更長的實驗周期;

原則二:在做實驗的時候要選擇不同類型城市(一般公司都會有一個城市分級,會依據城市的不同屬性分爲一級二級三級城市等等,不同的公司分級標准不同,使用自己公司的分級標准即可),實驗策略可能對不同類型的城市有不同效果,需要通過選擇不同類城市,使實驗具有普適性。

問題 5:如何確定分流時機?

實驗分流的觸發點是且只能是策略的生效點。

爲什麽只能在策略生效點分流呢?原因在于 AB 實驗通過隨機化的方式,使所有影響 treatment到 effect 的混雜因子(Confounded Factor)失效,進而使策略是産生差異的唯一來源。

舉個例子

大家在用滴滴打車的時候,經常會接收到彈窗,告訴你給你一個優惠,就可以讓你升級優享或者專車。這個彈窗就是導流策略,但是彈窗的出發是基于一定規則的,不是所有場景都會觸發。現在我們要做一個實驗,想要測試導流對全局 GMV 是否有正向的提升作用?

在這個實驗裏面,我們應該在什麽地方分流呢?

我給大家三個選項:

A. 對滴滴所有存量用戶進行分流

B. 對滴滴所有快車訂單進行分流

C. 對滴滴所有滿足導流策略的訂單,進行分流

A 和 B 兩個選項都不是策略生效的場景,策略在用戶打快車訂單,並且滿足策略觸發條件的時候才會生效。因此正確答案是 C。

有時候,我們信心滿滿的做完了一個 AB 實驗,結果發現 AB 實驗的效果挺好,但是上線之後效果並不如預期

問題 6:做 AB 實驗的時候,數據對比上漲 25%,判定爲效果顯著,但上線後效果不好,爲什麽?

實驗效果好,但上線效果不好的原因可能要從兩方面來分析。

第一,首先還是要檢查 AB 實驗的科學性,是否 AB 實驗的流程和步驟是科學而且合理的,常見的問題有以下幾類。

樣本量不足:樣本量小,結果是隨機波動導致,並不置信。

實驗時間太短。在觀測實驗結果時要小心“新奇效應”,也就是實驗時間過短的情況下,用戶由于新鮮感而表現出不可持續的行爲。觀測實驗結果下定論需要等實驗的結果穩健以後才可進行。

實驗人群≠上線人群:實驗城市不同,實驗對象不同可能會引起的策略效果差異,所以做實驗時應該盡量保證樣本與總體一致。

其次,檢查外部環境。如果外部環境和試驗期間的外部環境産生了非常大的變化,則也可以使試驗效果與上線效果不一致。比如在打車場景下,我們知道如果下雨或者下雪的時候,訂單量會激增,用戶的心理和行爲與平日是有較大差異的。因此如果實驗期間天氣惡劣,而上線後天氣很好,則會影響實驗效果與實際效果的一致性。

問題 7:統計上顯著,但是業務覺得沒有上漲,這個是怎麽回事?

統計上的顯著定義:本質是通過假設檢驗的方式,來看兩組樣本數據一樣是否是一個小概率事件。

統計顯著是一個統計學概念,指的是數據差異隨機産生的難度有多大,它不是一個業務上的概念,是一個通過理性計算算出來的數據。

我們在做假設檢驗時,大部分使用 Z 檢驗

統計上的顯著,是一個依賴于效應量(u1-u2)和樣本量(n1,n2)的實驗設計輸出,試想:如果樣本量無限大,會怎樣?在樣本量足夠大的,p 值就會趨近于0,任何策略都在統計學意義上是顯著的。

而業務顯著是一個業務上的判斷,要求新策略上線後必須有實際上的業務意義。

如果僅僅是在統計學意義上實驗策略是顯著的,而不考慮商用價值,最後所有的 AB 實驗都會淪爲數字遊戲。

比如某實驗,實驗組比對照組轉化率提升了 0.00025%,因爲實驗覆蓋了千萬 DAU,P –value 小于 0.001,這樣的數據即使在統計上是顯著的,也不具備任何實際的商業意義。

統計顯著是一個統計學的概念,在樣本量過大的時候,任何策略都會在統計上顯著,所以不能說統計上顯著就可以了。而業務顯著指的是策略是否有足夠的增長,是否具有商業價值,是一個業務判斷。因此爲了避免這個問題,應該前置解決,即在實驗開始前,設定好預計提升量(業務顯著),在此基礎上計算所需樣本量,然後再去進行實驗設計,就不會出現這個問題。

問題 8什麽場景不可以用 AB Test?AB 實驗是萬能的嗎?

AB 實驗當然不是萬能的,它也是有局限性的。比如這些場景AB實驗就不太能起效果。

用戶體驗制約:一些較爲敏感的策略,如價格調整,激勵變化等,往往需要顧及用戶間的體驗公平性和用戶長期體驗的一致性。比如美團配送之前被曝光的不同手機用戶同一時間在一個商戶下單,配送費不一致,其實就是AB實驗導致的,只是媒體不會按照這個解讀,對用戶價格歧視明顯更有話題性。

樣本數量制約:部分場景由于天然不可抗力因素導致樣本量非常小,無法達到統計學上大樣本的要求。典型場景如:防止侵害的安全類措施(高危樣本量減小且無法認爲擴大)。

AB 組間存在幹擾:AB 實驗假設 AB 兩組都是獨立樣本,可以獨立作出判斷,如果兩組互相影響,則不能進行 AB 實驗。

比如司機激勵策略,A 策略是對司機進行“沖單獎”激勵,每日在線時長>5h,且完單量>10單的司機會獲得額外獎勵;B 策略是無激勵。因司機私下有司機群,司機群會對激勵策略進行討論,無激勵的司機會認爲受到不公平待遇,從而對 B 策略的效果産生影響,這就是所說的存在組間影響的例子,所以這種情況便不能夠對同城的司機進行實驗。

總結:

ABTest雖然很簡單,但是也是數據分析師工作中經常使用的效果評估方法,搞懂以上八個問題,基本上就解決了ABTest。

0 阅读:1

我是智能取經人

簡介:感謝大家的關注