?據(jù)說三分之一的AB實驗都可能存在這些問題……
?在沒有很好的實驗指導、良好的平臺支撐的情況下,大部分人都無法設(shè)計有效的AB實驗,不能正確地消化這成百上千個實驗指標的結(jié)果。
根據(jù)一項調(diào)研,實際上可能有三分之一的AB實驗都存在問題。對AB實驗的錯誤解讀會導致非最優(yōu)決策以及對業(yè)務增長的不準確預期,從而損害公司的長期利益。
導致AB實驗結(jié)果被誤判的原因有很多,從有偏差的實驗設(shè)計、有偏差的用戶選擇到有偏差的統(tǒng)計分析,以及試圖將AB實驗結(jié)果推廣到實驗總體、實驗時間框架之外等。
本文主要基于AB實驗的基本過程以及AB實驗所需的基本技術(shù)要素,總結(jié)在進行AB實驗的過程中,各個環(huán)節(jié)上可能存在的問題。
?1.實驗參與對象的3個問題
關(guān)于實驗參與對象主要有3個問題。
- 實驗參與對象是否被合理隨機化。在實際工程中涉及隨機函數(shù)選擇、正交分層框架設(shè)計等問題,其本質(zhì)是考慮隨機過程是否真的隨機進行了,是否能夠消除不同實驗組之間用戶選擇的偏差。即使用性能最好的哈希函數(shù)進行分組,也存在出現(xiàn)碰撞等問題的可能。另外,在隨機化的過程中,有少量的極值、異常對象會對隨機后數(shù)據(jù)指標產(chǎn)生很大的影響。對于這些問題的檢測和解決都是需要考慮的。
- 實驗參與對象是否相互獨立。AB實驗結(jié)果有效需要滿足一個基本假設(shè)—個體處理穩(wěn)定性假設(shè)(Stable Unit Treatment Value Assumption,SUTVA)。這個假設(shè)是指任何實驗單元的潛在結(jié)果不會隨分配給其他單元的處理而變化,每個組中參與對象的行為不受分配給其他組的參與對象的影響。在大多數(shù)實際應用中,這是一個合理的假設(shè)。然而,在一些情況下,這個假設(shè)是不成立的。一旦這個假設(shè)不成立,得出的AB實驗結(jié)果就是無效的。
- 實驗參與對象的數(shù)量是否足夠進行實驗評估也是需要考慮的問題。如果實驗參與對象的樣本量不足,即使得到實驗結(jié)果,也無法進行有效的實驗評估。
2.實驗隨機分流的3個問題
在對實驗參與對象隨機分流的環(huán)節(jié)中有如下3個關(guān)鍵問題。
- 最小分流單元采用什么顆粒度是最佳的選擇,是元素級別、頁面級別、會話級別還是用戶級別?選擇不同顆粒度的最小分流單元,在評估實驗效果的時候有什么不同,需要注意哪些問題?
- 在分流的時候,如何在不增加實驗評估復雜度的情況下實現(xiàn)流量復用,基于產(chǎn)品和各個系統(tǒng)的綜合考慮,采用什么樣的流量框架是最合適的?采用什么樣的隨機函數(shù)可以提升隨機分流的性能?
- 對于同一個實驗中的各組實驗對象,它們是同質(zhì)的嗎?存在SRM問題嗎?如果存在這些問題,觀察到的實驗組和對照組之間的差異不是實驗導致的,而是引入了其他系統(tǒng)性偏差,這就有可能導致有偏差的結(jié)論,甚至反向的結(jié)論。獲得有偏差的結(jié)果是一場噩夢,它使整個AB實驗徒勞無功。如果沒有正確的診斷算法,找出這些偏差的根本原因并修復它,往往比運行AB實驗本身需要更長的時間。根據(jù)一項調(diào)查,僅這種SRM問題導致AB實驗無效的比例大約占所有無效實驗的10%。
3.實驗指標的2個問題
實驗指標體系包含了兩個關(guān)鍵問題。
- 如何建立一個完善的產(chǎn)品指標體系,包括指標的設(shè)計、評估、進化和計算等一系列相關(guān)問題。
- 如何選擇合適的實驗評估指標,包括從產(chǎn)品視角、工程視角出發(fā),綜合考慮實驗指標的指向性和敏感性,以及多個目標指標如何合并為綜合評價標準(Overall Evaluation Criterion,OEC)等問題。
4.實驗分析和評估的3個問題
在實驗分析和評估環(huán)節(jié)存在的問題更多,也更加難以解決,這部分的問題往往更加個性化和多樣化。前面談到的問題,比如實驗參與單元數(shù)量、隨機分流、指標體系等問題可以通過建設(shè)實驗平臺等工具進行規(guī)避、監(jiān)控和解決。實驗分析和評估是針對單個實驗的,每個實驗從目標到指標都有自己的不同之處,不僅需要進行系統(tǒng)化的處理和規(guī)范,也需要具體問題具體分析。分析過程中需要對實驗設(shè)計、產(chǎn)品特性、數(shù)據(jù)指標以及統(tǒng)計分析的理解相對透徹,才能更好地深入實驗評估。分析和評估相關(guān)的問題總結(jié)歸納起來主要有以下3個。
1)對于統(tǒng)計結(jié)果理解是否正確
- 如何解讀實驗結(jié)果中P值、置信度、置信區(qū)間等的關(guān)系?
- 實驗得出的相對提升,究竟是一個自然的波動還是真實的實驗提升?
- 實驗參與單元的數(shù)量是否足以檢出想要的實驗效果?
- 實驗統(tǒng)計的power值是否充足?
- 實驗數(shù)據(jù)統(tǒng)計精度是否可以檢測出業(yè)務的提升?
2)實驗分析的過程是否正確
- 在實驗過程中有沒有進行AA實驗?
- 在實驗過程中有沒有進行SRM測試?
- 在實驗過程中有沒有偷窺實驗?
- 實驗分析過程中,是否存在幸存者偏差、辛普森悖論等問題?
- 局部實驗的結(jié)果如何推導為全局提升量,轉(zhuǎn)化過程是否正確?
3)實驗分析結(jié)果的外推是否正確如果前面實驗中的每一個環(huán)節(jié)都沒有問題,實驗組的效果是正向的,那么實驗決策決定將這個實驗全量(也稱發(fā)布)到所有用戶。這個環(huán)節(jié)一般來說沒有太大難度,在一些特定情況下會有問題,即實驗結(jié)果被推廣到實驗的設(shè)置之外,不再有效。
- 群體外推:將結(jié)果推廣到實驗群體之外,在一個子群體上進行實驗,并假設(shè)對整個群體的影響是相同的。
- 時間外推:同樣危險的是在實驗時間范圍之外推廣,因為不能確保長期影響和短期影響是相同的。
通常受AB實驗機會成本的限制,一般實驗運行不超過兩周,而進行全量實驗意味著這個策略會長期作用在線上,一兩周的效果是否等于1個月甚至6個月后的效果是不確定的。當進行AB實驗時,除了選擇正向的策略外,也需要衡量這個策略長期影響的大小。因為實驗相關(guān)人員希望得到的結(jié)果是“如果我們使用某個策略,指標X將在下個季度增長?”。這種說法隱含地假定在一個兩周長的實驗中,測量的影響會持續(xù)一個季度,當實驗效果是時間依賴時,這顯然是不正確的。更為復雜的是,并不是所有的實驗指標都會在實驗中顯示和時間的相關(guān)性。
如果沒有自動化的檢測手段,即使是最有經(jīng)驗的實驗者,也很難篩選出數(shù)千個指標,尋找與時間相關(guān)的實驗效果。
上面介紹的實驗分析問題在很多AB實驗中都沒有被很好地回答,它們在AB實驗中特別容易出現(xiàn),并影響實驗結(jié)果,最終得到的是一些錯誤的解讀和結(jié)論。統(tǒng)計一個數(shù)字容易,得到可信可靠的實驗結(jié)論是不容易的。我們可以很容易地統(tǒng)計出B組策略比A組策略的點擊率高2.7%,B組策略上線之后真的可以將點擊率提高2.7%嗎?如果沒有實驗系統(tǒng)以及科學的實驗方法,那么很難保證最終效果。
參與AB實驗的人大多遇到過一個令人頭疼的問題:實驗的結(jié)果是正向的,全量上線后大盤數(shù)據(jù)卻沒有漲。這是一個復雜的系統(tǒng)問題,可能有多種多樣的原因,除了我們上面談到的那些影響AB實驗的問題外,還有一個原因就是統(tǒng)計本身的概率問題。因為我們采用的是統(tǒng)計中的假設(shè)檢驗來判斷實驗結(jié)果,本身就存在犯錯誤的概率。比如我們采用95%的置信度,那么犯第一類錯誤的概率是5%(AB實驗中,A組沒有效果,而實驗系統(tǒng)判定A組為有效果的錯誤是第一類錯誤),犯第二類錯誤的概率最高有95%。
實驗系統(tǒng)中,用戶設(shè)置95%的置信度,此時需要承擔5%的第一類錯誤風險。在一切都正常的情況下,A組實驗有效果,全量上線之后沒有效果的風險有5%。這個情況無法避免,大約20次實驗中就會出現(xiàn)一次。換句話說,如果20、30次實驗中出現(xiàn)了1~2個實驗,雖然實驗效果正向,但是全量后沒有效果,其實這是一個正常現(xiàn)象,在可以接受的范圍內(nèi)。如果做了不到10個實驗,就出現(xiàn)了2~3個以上實驗效果正向,全量后沒有效果的情況,那么實驗方法和系統(tǒng)大概率是有問題的,而且問題大概率來自本文討論的這些問題。
本文摘編于機械工業(yè)出版社出版的《AB實驗:科學歸因與增長的利器》,經(jīng)出版方授權(quán)發(fā)布。?