思考 | 關于AB實驗的實戰應用
編輯導語:用戶體驗一直都是企業最為重視的一項,很多時候他們會用AB實驗進行測試,AB實驗可以從多維度進行測試分析,是比較常用的方法;本文作者分享了關于AB實驗的實戰應用,我們一起來了解一下。
前兩年隨著用戶增長的興起,AB實驗作為重要的增長工具在行業里顯得時髦起來,但目前來說AB實驗已經算是行業里的基礎設施,大部分公司都有在用,其原理也談不上復雜。
也就不免會有知識的詛咒,知道了就會有不就是 xxx 的不屑感。
但隨著我進行過大量實驗后的感覺是,將理論應用于實踐并取得成績,遠比知道理論難得多,也有價值的多。
所以這次我更多的篇幅是——圍繞實戰過程中的會遇到的問題和能提高些取得收益的可能性來講。
一、AB實驗是什么
對同一個問題,有≥2套解決方案(小到一個元素,大到一套方案保證變量的唯一性即可),對同一組人群(樣本量足夠)進行隨機分組;在同一時間維度,進行實驗組和對照組的實驗,通過少量且相同的衡量指標,衡量哪套解決方案的結果表現更好,并采用。
比如以下是美團的搜索結果頁實驗:
問題:哪種結果頁的商品展現形式更能提高用戶篩選的效率,提高用戶下單的轉化率。
解決方案:3套搜索結果頁的商品表現形式。
人群:搜索結果頁的用戶(注:這里最好使用結果頁這層的用戶,也算是常見的問題,有些同學習慣直接使用大盤的用戶分組,但如果搜索模塊滲透率不高的話,局部數據收益在大盤中表現不敏感,可能就直接波動掉了。)
少量且相同的衡量指標:頁面ctr、點擊轉化率、下單轉化率、人均成交額(注:一般app只有一個北極星指標,但也會監控少量其他的關鍵性指標,比如視頻app除了留存還會監控pt和人均vv,如果有廣告的話也會監控收入的相關指標;其中常見的問題是指標過多 啥都想要 ,還會讓有的人鉆漏洞,所有實驗都能找到一個指標來說取得了正向的結果。)
二、AB實驗能解決什么問題
有些團隊在使用一段時間AB實驗后,可能會出現很多質疑聲,比如說為什么要花這么多資源來做AB實驗呢?尤其是開發和測試同學,因為從他們的視角來看這些都是工作量啊,所以要清楚的認識到AB實驗到底能解決什么問題,并與團隊達成共識。
1)方案爭議較大時,減少低效爭議帶來的內耗,降低高層拍板帶來唯上的低效文化,提高決策效率。
常見的現象是老板和產品之間,產品和交互、視覺、開發之間,對于某些方案無法達成一致,再加上一些專業性權威性等面子問題,需要消耗大量時間和心力來撕逼,互相妥協后還可能留下了合作關系的不和諧;如果總是讓老板來拍板的話,本質是一種決策的官僚化。
這樣的情況做個實驗測測就好了。雖然坦率的說,很多皮毛的爭議都然并卵,在互聯網1.0時代還感覺像是個大事,在互聯網2.0時代,數據量化下可能大都差異不大。
2)有多組解決方案時,提高獲取認知效率,提高產品進化效率。
這個情況下AB實驗是很有用的,互聯網產品相比傳統實體產品的很大優勢來自于迭代速度快,修改調整的成本低。
但即便如此,從發應用市場到數據回收也需要不短的時間。
如果我有對一個問題有幾種解決方案,串行著測試的話,拿到結論可能要花一兩個月的時間;而使用實驗的話,在一個數據周期里就能拿到實驗結果,獲取認知的效率大大提升了。
3)多團隊在進攻同一個指標,或同期上線多個策略時,明確收益點和負向點,避免收益淹沒、認知偏差、僥幸心理和收益分配矛盾。
這個問題應該也是普遍存在的。
同時上多個策略的時候,數據好的話,美滋滋完大家開始搶功勞,都覺得是自己的策略帶來的。
數據躺平的話,感覺大家折騰一頓也沒啥卵用,還會甩鍋是其他人的策略拉平了自己的收益。
最慘的時候是數據差的時候,先不說互相甩鍋了,老板發脾氣了解是怎么搞跌的數據,歸因到底是哪個策略出問題的時候,可能大家都一臉懵逼,然后歸因不出來的話大概率是要回滾的,一個版本的時間就廢掉了。
所以有不確定的大動作時,盡量用實驗安排上,成功或失敗都是明明白白的。
4)按日期的數據看收益,但波動較大時,AB實驗數據衡量更敏感,明確是否有收益,避免數據負向歸因時成本較高。
大部分產品的關鍵指標每天都會有小幅的波動,遇到特殊時間的話波動會加大,如果你做的策略直接趕上了,可能會回收不到篤定的收益,可能會直接版本回滾。
而AB實驗在驗證收益的時候表現更加直觀和敏感。
5)實驗機制更好的保證產品的簡潔、必要和不臃腫,最糟糕的是以你做了多少功能來表達自己的苦勞,而不是為用戶創造了多少價值。
實驗機制保證了決策環節的存在,正向就全量,沒收益就直接下線。
不然看到關鍵指標也沒啥影響,下線功能還要再發一個需求,可能就逃避了決策環節把功能留在了產品上,最后產品越來越臃腫,你可能還沉浸在自己的苦勞里自我感動。
6)業務處于確定性高的精細化運營階段,數據的增長大都來自大量的線性優化提升,而不是大的激進的策略。
一般發展期的業務會有很多收益顯著的事情可做,即便沒有AB實驗,也可以做到數據變化顯著。
但業務到了成熟期之后,這樣的事就少了很多,你只能做大量的線性優化,一定周期里堆出來比較顯著的收益。
7)錯誤的認知會導致團隊的精力、時間和資源走向錯誤方向,但實驗數據永遠不會騙人。
有些負責人對業務有扭曲力的認知,可能自我說服的偏執,做出損失很大的錯誤決策,但可以通過AB實驗做一些輔助認知,因為數據永遠不會騙人。
尊重實驗結果 尊重數據,是要堅持的事情。
三、AB實驗的類型
一般實驗分為正交實驗和互斥實驗兩類,另外精細化運營的時候還會被經常用到的是圈層實驗,具體如下:
互斥實驗:指的是實驗與實驗共用一層流量,互相不產生交叉,類似實驗1中3個實驗組,實驗3和實驗4,共用一層流量。
正交實驗:實驗與實驗分別用不同層的流量,不產生互相的干擾,即便另一層也在做實驗,但那一層流量到了這一層也是均勻分配的,不影響這一層實驗變量的唯一性。
像頭條 快手這些大app能同時進行大量的實驗,本質是使用了正交實驗。
這里劃分層的方式很有趣,也是判斷正交實驗使用是否靈活的一種方法。
有的人按照一個功能來分為一層,這樣的話能做的實驗數量會很有限。
其實可以做到更靈活,一個功能可以分一層,一個頁面也可以分一層,一個也元素可以分一層,甚至一個元素的顏色、形狀、大小都可以分成一層。
這樣的話大量的實驗得以并行,沒有很多約束。
圈層實驗:通常受眾比較大的增長點做完了,更多的會去做用戶的精細化運營,滿足某些群體沒有被很好滿足到的需求,以帶來業務的增長,圈層實驗在這個時候就可以起到很好的幫助。
- 比如多日無播放行為的用戶做一個圈層,做做引導或者Push;
- 比如下載頁無內容的用戶做一個圈層,做做冷啟時優質內容的推薦;
- 比如某一興趣標簽的用戶做一個圈層,提供更匹配的服務等等。
四、AB實驗實戰中常見的問題
有了上面對AB實驗的認知后,其實在實戰中還會遇到很多巨坑的問題,一個坑沒避過,實驗的寶貴時間和投入的資源就被浪費了,還有可能得出誤導性的結論。
1)用戶串組問題,要保證用戶id的唯一性。
這個問題比較坑,在新用戶實驗可能會遇到。
如果有些公司的安卓手機在獲取設備號前后,或者注冊前后使用不同的id,會導致體驗完實驗變量的用戶被二次分組,再次流入到其他組中,最終數據結果不可用。
2)用戶出組問題,要保證實驗對象的不變性。
這個問題在圈層實驗中可能會遇到。
圈層實驗要在需求里寫清楚用戶在AB實驗中不會出組。
比如通過興趣標簽或者用戶行為進行的用戶圈層,當他的興趣標簽或者行為產生了變化,實驗結束前用戶身上的實驗id不能消失,不然用戶會從實驗組中退出;不同組退出用戶的比率和成分不一樣,也會導致數據的結果不可用。
3)交叉實驗沒有策略互相覆蓋的問題,要保證策略的執行。
一般不同團隊在做銜接實驗的時候,可能會遇到這種問題。
比如做新用戶的興趣選擇實驗,以便用戶進入產品后看到更匹配的內容推薦。
但如果這個時候推薦層本身也在做實驗,沒有做好對接的話,可能會導致興趣選擇層的幾個實驗組用戶都流入了推薦層的某一組中;而這個實驗的結果是由興趣選擇和推薦一起作用才有可能產生的,不然就拿不到預期的結果,得出失敗的結論。
4)交叉認知不足,導致無法并行大量實驗問題,不要學其形無其神。
這個我在上一部分已經講過,這里不做再次講解。
5)不會看數據的問題,沒從直接影響指標(分層、分群、局部)到大盤指標。
一般做實驗的時候都是用變量去影響一個直接指標或者局部指標,然后通過這個指標去撬動大盤的指標,而不是直接做大盤指標的。
- 比如說做推薦模塊的實驗,一定是先提升了推薦模塊的數據,再帶動了大盤的增長;
- 比如說做播放環節的實驗,一定是先提升了播放環節的體驗,才帶動了大盤的數據提升。
甚至有些實驗雖然提高了局部效率,但本身不能撬動大盤,但其本身確是有價值的。
比如說你給視頻產品提供了調整播放速度的功能或者學舞蹈時的鏡像功能,他可能不會對播放時長留存等數據帶來直接的提升,但他本身是有價值的;你可以看他的使用率,可以定性獲取用戶需要的必要性,也可以問問自己的常識。
而有些同學做實驗會直接拉大盤指標來看數據效果,可能會出現這種情況,有局部收益的需求被草率下掉,有體驗價值的被直接干掉了。
還可能出現的問題是,這個實驗沒有成功的原因是什么,哪里不符合預期,是否還有可繼續的空間,都無從得知,因為你沒看過程的局部的數據嘛。
6)實驗結果數據的置信度
一般實驗結論要經過置信度檢驗環節,不然數據結論不可信。
部分同學,應該是少量的吧,可能是面子問題,正向5天 負向2天也認為實驗是正向的,或者提升很微弱其實并不可置信,也說是實驗是正向的。
唉,其實意思不大。
但從維持團隊的積極性來看,也可以理解,畢竟沒有大的傷害;但如果要用來作為支持開展大項目的論據的時候,一定要慎重地進行置信度檢驗。
7)實驗是驗證你基于用戶和規律洞察后的假設,不要用實驗代替假設。
這個問題應該是普遍存在的,大概率會造成產研之間的矛盾,也會傷害到產品同學自身的發展。
因為實驗可以快速驗證假設,也就大大降低了決策的成本,確定不了的方案就直接上實驗測一下。
但長此以往也會削弱產品經理的深度思考能力,用實驗代替自己的思考。
甚至沒有用戶洞察、沒有行業分析、沒有高質量的假設,很淺的想到或者找到一堆方案就往實驗上撲,最終會為了實驗而實驗。
而這些低質量的實驗大概率成功率也很低,團隊疲于奔命又不認可的搞了一大頓之后,信心和積極性會很受打擊,你離離開也就不遠了。
8)實驗探索的堅韌性,很多人會通過簡單的嘗試, 得出對這個世界太多的否定結論。
有的同學做實驗,上線后數據好了就全量,數據負向就下線,然后這個實驗就結束了。
但其實很多大些顆粒的事情,做成是沒有那么順利的。
即便數據是負向的,也有很多可研究的可能性。
- 可能需求是對的,你產品設計的表意有問題,用戶沒看懂;
- 可能用戶需要一段時間的培養,不是直接能產生效果的變量;
- 可能需求是不對的,但是你發現了新的進攻點;
甚至可能是實驗執行出問題了,或者數據出錯了,要修正一下。
做成一個實驗是很難的,要有耐性不斷探索認知,才可能發現稀稀拉拉的新機會。
五、AB實驗的邊界
以上講了很多AB實驗的Why和How,但同時也要知道AB實驗只是一個工具,不是萬能的,只能解決有限的問題,也有很多問題是解決不了的。
1)戰略性的 需要長期經營投入的項目不能通過實驗來驗證。
有些老板喜歡什么事情都上個實驗看看效果,其實暴露的是自己對戰略的思考不深度 不篤定 沒耐心。
2)分流后會形成新變量,會對實驗效果產生影響的項目不能通過實驗來驗證。
一般單角色的產品路徑比較適合做AB實驗,比如注冊登錄、搜索、推薦等等。
但多角色交叉的產品環節有時就不適合做AB實驗。
比如社交和社區中的一些功能,因為用戶與用戶之間會相互影響,不太可能我有你沒有,強做的話大概率會產生很多客訴問題;還會產生的問題是,因為分流的比例讓變量的體驗也按比例有了折扣,所以不能得到正確的結論。
3)見效周期較長的項目,不建議通過實驗來驗證。
一般樣式的變化,或者用戶痛苦已久的問題一上線,很快就可以看到直觀的效果。
但也有些功能需要用戶慢慢培養習慣的,尤其當你的目標用戶是下沉市場的群體或者中老年群體的時候。
即便做的話,也要足夠的耐心來等待。
4)確定性較高的、體驗性的優化不需要通過實驗來驗證。
這個在上面部分也有提到,實驗的目的是為了驗證你的假設,或者方案很不確定的情況下提高你的決策效率。
但如果你已經很篤定了,或者確實是一些很體驗性的優化,就真不需要再做實驗了,維護多版本的功能,還是會增加不少開發和測試的工作量的。
六、結束
OK,以上就是我個人在長期的實驗過程中遇到的問題和總結的思考。
不一定完全正確,在讀的同學可以用審視的態度來看,獨立思考最重要,有問題和建議也歡迎反饋給我。
另外,不能指導行動和作用于實踐并達到目的的理論沒有意義,希望能在你的實踐過程中有所幫助。
作者:白魚,微信公眾號:夜里一支煙
本文由 @白魚 原創發布于人人都是產品經理。未經許可,禁止轉載
題圖來自Unsplash,基于CC0協議
贊??
寫得太好了,通篇讀下來很有收獲,感謝作者的分享。
邊看邊思考一路下來有一點沒太明白,大神可以幫忙詳細指點一下嘛?
第四大塊常見問題第三點:3)交叉實驗沒有策略互相覆蓋的問題,要保證策略的執行。意思是保證在做交叉實驗的時候雖然處于不同層,但為達到某個目的是需要不同層共同作用才能起到效果,那這種時候我該怎么確定到底是哪一層起到了作用,或者作用更大?
同一層是均勻分的,其他層也要保證,不然會形成多個變量
非常棒的一篇分享,謝謝你!