BAT都在用的方法,詳解A/B測(cè)試的那些坑!
“如何把AB實(shí)驗(yàn)文化根植到公司的基因中去?”,時(shí)代正在向所有的互聯(lián)網(wǎng)公司發(fā)出提問(wèn)。
If you are not running experiments,you are probably not growing!
——by Sean Ellis
Sean Ellis 是增長(zhǎng)黑客模型(AARRR)之父,增長(zhǎng)黑客模型中提到的一個(gè)重要思想就是“AB實(shí)驗(yàn)”。
從某種意義上講,自然界早就給了我們足夠多的啟示。為了適應(yīng)多變的環(huán)境,生物群體每天都在發(fā)生基因的變異,最終物競(jìng)天擇,適者生存,留下了最好的基因。這個(gè)精巧絕倫的生物算法恐怕是造物者布置的最成功的AB實(shí)驗(yàn)吧。
將目光轉(zhuǎn)到互聯(lián)網(wǎng)世界,AB實(shí)驗(yàn)的受重視程度正在空前提高。
01我們來(lái)看兩個(gè)著名案例
案例1 :奧巴馬宣傳團(tuán)隊(duì)用AB實(shí)驗(yàn)幫其獲得更高的支持率
2008年,奧巴馬在競(jìng)選中勝出,出任美國(guó)第44任總統(tǒng),這離不開(kāi)其個(gè)人人格魅力,但他的競(jìng)選宣傳團(tuán)隊(duì)的作用也是不可忽略的,在總統(tǒng)競(jìng)選頁(yè)面上,他的團(tuán)隊(duì)就用AB實(shí)驗(yàn)在16種方案中找到了最佳方案,將競(jìng)選頁(yè)面"change"的轉(zhuǎn)化率提升40.6%。
(圖1)
(圖2)
實(shí)驗(yàn)這樣設(shè)計(jì)的:圖一中的圖片或視頻與圖二中的不同文案按鈕任意組合,形成4*4共16種不同方案組合,每個(gè)方案都獲得一定比例的流量,觀察一段時(shí)間后,從中選擇轉(zhuǎn)化率最高的方案,推廣到全部用戶(hù)。
最終如下方案勝出:
其團(tuán)隊(duì)事后給出的解釋是:視頻播放給用戶(hù)很大壓力,且當(dāng)時(shí)的網(wǎng)絡(luò)環(huán)境不能保證播放效果,故視頻不如圖片,且美國(guó)人崇尚家庭文化,一副溫馨的全家福圖片能拉近與選民的距離。至于按鈕文案,則是因?yàn)槊绹?guó)選民的獨(dú)立思考意識(shí)高,“join us”、“sign up”等文案讓人感覺(jué)非常簡(jiǎn)單粗暴,有煽動(dòng)的嫌疑,所以大家更接受平和一點(diǎn)的“l(fā)earn more”。
案例2 :Facebook用AB實(shí)驗(yàn)挽救了20%的虧損
2012年,F(xiàn)acebook的產(chǎn)品vp Sam Lessin在扎克伯克的大力支持下,親率30人團(tuán)隊(duì)花費(fèi)大半年時(shí)間開(kāi)發(fā)了一款新的版本。在上線前邀請(qǐng)的一些外部用戶(hù)與內(nèi)部員工的評(píng)價(jià)中,新版本酷炫時(shí)尚,比老版本好看的多。如圖:
(上圖為老版)
(上圖為新版)
Facebook不愧是一家世界一流的互聯(lián)網(wǎng)公司,重大的迭代一定會(huì)進(jìn)行AB實(shí)驗(yàn)。他們先分配1%的流量給新版本,然后逐漸增多到2%,5%......實(shí)驗(yàn)的結(jié)果出乎大家意料,新版本在用戶(hù)參與度、在線時(shí)長(zhǎng)、廣告展示數(shù)、營(yíng)收等四個(gè)核心指標(biāo)的表現(xiàn)上嚴(yán)重落后老版本,剛開(kāi)始大家覺(jué)得可能是用戶(hù)不習(xí)慣,但隨著新版本流量放大到12%,觀察的時(shí)間也拉長(zhǎng)到3個(gè)月,但情況同樣很糟,新版本直接導(dǎo)致了20%的營(yíng)收下降。最終Facebook壯士斷腕,讓所有用戶(hù)回滾到老版本,這才恢復(fù)了之前的數(shù)據(jù)。
而在國(guó)內(nèi),一家知名的大學(xué)生社交網(wǎng)站因?yàn)榭吹搅苏谶M(jìn)行小流量實(shí)驗(yàn)的B方案,就直接copy并快速全流量上線,結(jié)果你們都知道的。到現(xiàn)在,這家網(wǎng)站已經(jīng)徹底淪為了三流互聯(lián)網(wǎng)產(chǎn)品。
由此可見(jiàn)失敗的產(chǎn)品方案不可怕,可怕的是沒(méi)有經(jīng)過(guò)AB實(shí)驗(yàn)就直接上線的公司制度和文化。
我們?cè)賮?lái)看國(guó)內(nèi)一線公司內(nèi)的一個(gè)AB實(shí)驗(yàn)case吧!
如上是不同的引導(dǎo)卡片樣式的AB實(shí)驗(yàn),最終結(jié)果樣式2比樣式1的CTR提升24.8%。
02 你的團(tuán)隊(duì)是否有這樣的問(wèn)題?
1、不經(jīng)過(guò)AB實(shí)驗(yàn)就直接全流量上線,成員在上線后拼命找數(shù)據(jù)證明自己正確,即便證據(jù)牽強(qiáng),只要向外發(fā)布聲明都千篇一律##指標(biāo)又提升了##,眾人紛紛點(diǎn)贊。要知道Google、Facebook、Microsoft做AB實(shí)驗(yàn)的經(jīng)驗(yàn)是——90%的新設(shè)計(jì)都不如線上版本。及時(shí)你的團(tuán)隊(duì)也很牛,但也不至于把谷哥、face哥、微軟哥吊打吧?
2、你的團(tuán)隊(duì)非常有想法,但大家各執(zhí)己見(jiàn),誰(shuí)也不能說(shuō)服誰(shuí),導(dǎo)致團(tuán)隊(duì)決策變得很困難。
團(tuán)隊(duì)的改變從第一個(gè)AB實(shí)驗(yàn)開(kāi)始——誰(shuí)的方案好,誰(shuí)的方案能推全,與其吵吵吵,不如布置個(gè)AB實(shí)驗(yàn),用數(shù)據(jù)來(lái)PK。
下文為你詳細(xì)解釋下AB實(shí)驗(yàn)的基本概念和常踩之坑。
03 什么是AB實(shí)驗(yàn)?
舉個(gè)例子,你提出了一個(gè)產(chǎn)品改進(jìn)方案(假設(shè)叫B),但不確定是否效果比線上版本(假設(shè)叫A)好,于是就將線上用戶(hù)1%的流量分到B,99%的流量分到A,持續(xù)觀察一段時(shí)間,如果B比A好,就將B推到100%的流量,如果A比B好,那就重新修改你的設(shè)計(jì)方案,重新再做實(shí)驗(yàn)。而如果不做AB實(shí)驗(yàn)直接上線新方案,如Facebook的例子,新方案甚至可能會(huì)毀掉你的產(chǎn)品。這里的方案可能是一組算法、一組文案、一組運(yùn)營(yíng)活動(dòng)、一組UI樣式,同時(shí)實(shí)驗(yàn)的并不一定是AB兩種方案,很可能是ABCDE...實(shí)驗(yàn)。
04 AB實(shí)驗(yàn)會(huì)遇到的問(wèn)題
AB實(shí)驗(yàn)的實(shí)現(xiàn)當(dāng)然不會(huì)像上面的例子一樣簡(jiǎn)單,比如你會(huì)遇到下面的問(wèn)題:
1、如何確保1%的流量與99%的流量用戶(hù)群特征分布是一致的?
2、如果在實(shí)驗(yàn)的過(guò)程中有新的方案想法C,能否直接發(fā)布到線上同時(shí)實(shí)驗(yàn)?
3、如何同時(shí)并行所需總流量超過(guò)100%的多組實(shí)驗(yàn)?
4、如何選取指標(biāo)衡量AB方案,如果多個(gè)指標(biāo)數(shù)據(jù)表現(xiàn)不一,怎么決策?
5、如何確定方案B與A的指標(biāo)數(shù)值不同是隨機(jī)誤差造成還是統(tǒng)計(jì)可信的?
......
AB實(shí)驗(yàn)的基本原理是“控制變量法”。
設(shè)指標(biāo)數(shù)值=F({隱變量列}、{顯變量列(含方案變量)})。一個(gè)指標(biāo)的數(shù)據(jù)表現(xiàn)是由函數(shù)F和多個(gè)變量取值共同決定,所以指標(biāo)衡量結(jié)果不能簡(jiǎn)單歸因于方案的差異,特別是其中還有很多我們永遠(yuǎn)無(wú)法知道的隱變量在施加影響。
那么我們是否要知道F和所有的變量才能下結(jié)論么?還有更加簡(jiǎn)便的方法。我們可以確保兩個(gè)方案中其他的變量保持一致,那么A、B方案的指標(biāo)結(jié)果差異就只能歸結(jié)為版本的差異。AB實(shí)驗(yàn)就是利用控制變量法的思想,保證各個(gè)產(chǎn)品方案針對(duì)同質(zhì)人群(特征分布相同)、同一時(shí)間進(jìn)行實(shí)驗(yàn),確保了除方案變量外其他變量一致,故能判定指標(biāo)差異是方案不同造成的,從而選擇出優(yōu)勝版本全流量上線,實(shí)現(xiàn)數(shù)據(jù)增長(zhǎng)。
AB實(shí)驗(yàn)的作用很大,但是AB實(shí)驗(yàn)的實(shí)現(xiàn)并不簡(jiǎn)單,往往會(huì)踩坑無(wú)數(shù)。
05 AB實(shí)驗(yàn)的坑有哪些?
1、人群不同質(zhì)
AB實(shí)驗(yàn)需要切分流量到不同方案,如果不能正確切分,使得分到不同方案的用戶(hù)群體特征分布一致,那么實(shí)驗(yàn)將沒(méi)有任何意義。為了便于理解,我們來(lái)看一個(gè)例子:
如果我們要對(duì)人群G做一個(gè)AB實(shí)驗(yàn)來(lái)找到發(fā)放什么禮品才能使用戶(hù)的注冊(cè)轉(zhuǎn)化率更高?A、B分別代表發(fā)放不同的獎(jiǎng)品BB霜與剃須刀,G由子群G1與G2構(gòu)成(G1、G2分別代表女生、男生,且各占50%)。按照同質(zhì)用戶(hù)的要求,分給這兩方案的用戶(hù)流量中男女比例必須與總體一致,也即女:男=1:1。
這時(shí),發(fā)生了一些意外......
實(shí)驗(yàn)中分給方案A的群體不幸都是G1(女生),分給方案B的群體是G2(男生),最終一種獎(jiǎng)品比另外一種獎(jiǎng)品有更高的注冊(cè)轉(zhuǎn)化率,比如A高于B,那么這時(shí)能下結(jié)論“獎(jiǎng)品A比獎(jiǎng)品B更受用戶(hù)喜歡,應(yīng)該給所有用戶(hù)發(fā)放獎(jiǎng)品A”么?
肯定是不能的。這個(gè)決策相當(dāng)于認(rèn)為女生喜歡的就是男生喜歡的,根據(jù)實(shí)驗(yàn)結(jié)論,你應(yīng)該對(duì)所有的用戶(hù)G都發(fā)放注冊(cè)轉(zhuǎn)化率更高的禮品A。試想下男生領(lǐng)到BB霜時(shí)他們內(nèi)心是何種感受?
這里的問(wèn)題就是不同方案分得的人群是不同質(zhì)帶來(lái)的。上述舉的例子為了便于理解,故比較絕對(duì),實(shí)際過(guò)程中遇到更多的是A方案、B方案都是男女混合的群體,但是比例卻與總體1:1的分布不同,這樣同樣帶來(lái)錯(cuò)誤的實(shí)驗(yàn)結(jié)論。
所以設(shè)計(jì)合理的分流算法,確保分流到每個(gè)方案的都是同一特征分布的人群是AB實(shí)驗(yàn)結(jié)論可信的前提。達(dá)爾文AB實(shí)驗(yàn)系統(tǒng)經(jīng)過(guò)一年多的探索,已形成一套相對(duì)可靠的分流算法。
2、實(shí)驗(yàn)不同時(shí)
在上面的例子中,如果方案A與方案B都是分到同一特征分布的群體G,那么數(shù)據(jù)一定具有可比性么?不一定。還是用極端的例子幫助理解。假設(shè)第一天,A方案分到100萬(wàn)個(gè)用戶(hù)流量,B方案分到0個(gè)用戶(hù)流量,第二天A方案分到0個(gè)流量,B方案分到100萬(wàn)個(gè)用戶(hù)流量,從整體看,這兩天的A方案與B方案的累計(jì)實(shí)驗(yàn)流量都是100萬(wàn),且人群是同質(zhì)的,實(shí)驗(yàn)結(jié)果應(yīng)該可信,但事與愿違,如果這是一個(gè)社交網(wǎng)站,實(shí)驗(yàn)是為了觀察不同產(chǎn)品版本A和B下用戶(hù)的主動(dòng)加好友數(shù)量,則A方案明顯優(yōu)勢(shì)大很多,畢竟用戶(hù)多了一整天的時(shí)間去添加好友,這種情況下任何時(shí)間截面數(shù)據(jù)B都處于劣勢(shì),且這種劣勢(shì)并不是方案不同造成的。同理,一個(gè)博客網(wǎng)站,如果對(duì)比不同方案下用戶(hù)的博客開(kāi)通率、撰寫(xiě)率,也可能犯同樣的錯(cuò)誤。
另外一種情況是,在一些特殊日子中,用戶(hù)的活躍度會(huì)暫時(shí)性增高,如果A方案的作用時(shí)間剛好是節(jié)日,方案B的作用時(shí)間非節(jié)日,那么顯然這種比較對(duì)于B方案是不公平的。
上文提到的公式:“指標(biāo)結(jié)果=F({隱變量列}、{顯變量列(含方案變量)})”,隱變量、顯變量中很大一部分跟時(shí)間相關(guān),時(shí)間不同,這些變量的取值也不同,從而就破壞了控制變量法的前提,得不出正確的實(shí)驗(yàn)結(jié)論。
最后列舉一個(gè)我們參與的一個(gè)case讓大家感受下:
樣式1的文案:《葵花寶典》帶你輕松使用XXX
樣式2的文案:哪些功能最熱門(mén),我來(lái)告訴你
由于早期未規(guī)范實(shí)驗(yàn)管理規(guī)范,兩個(gè)樣式的實(shí)驗(yàn)并非同時(shí)開(kāi)始:
1、樣式1,在4月7日的10:00開(kāi)始實(shí)驗(yàn)
2、樣式2,在4月7日的0:00開(kāi)始實(shí)驗(yàn)
最終統(tǒng)計(jì)的表現(xiàn)不一:
如果看4月7日10:00之后進(jìn)入實(shí)驗(yàn)的用戶(hù)數(shù)據(jù),樣式2比樣式1的CTR只提升了大約0.3%,符合實(shí)驗(yàn)同時(shí)的前提條件,因此結(jié)論可信;
但如果看4月7日全天的數(shù)據(jù),樣式2比樣式1的CTR提升了大約1%,這個(gè)不符合我們提到的實(shí)驗(yàn)同時(shí)做的條件,結(jié)論不可信;
此處也告訴我們:
1、進(jìn)行對(duì)比的各個(gè)實(shí)驗(yàn)版本(上文的樣式1與樣式2)一定要同時(shí)開(kāi)啟實(shí)驗(yàn)
2、實(shí)驗(yàn)過(guò)程中不能隨意修改每個(gè)版本的流量,這也會(huì)間接導(dǎo)致上述問(wèn)題
3、沒(méi)有AA實(shí)驗(yàn)的意識(shí)
AA實(shí)驗(yàn)是AB實(shí)驗(yàn)的孿生兄弟,有的互聯(lián)網(wǎng)公司也叫空轉(zhuǎn)實(shí)驗(yàn)。AA指的是實(shí)驗(yàn)中的各個(gè)方案都是一致的。這么做的目的是啥?這是為了測(cè)試埋點(diǎn)、分流、實(shí)驗(yàn)統(tǒng)計(jì)的正確性,增加AB實(shí)驗(yàn)的實(shí)驗(yàn)結(jié)論可信度。
設(shè)命題1為:“如果實(shí)驗(yàn)的埋點(diǎn)、分流和統(tǒng)計(jì)都沒(méi)有問(wèn)題,那么AA實(shí)驗(yàn)中各個(gè)方案的數(shù)據(jù)表現(xiàn)一定一致”,若命題1成立,則其逆否命題2:“如果AA實(shí)驗(yàn)中各個(gè)方案的數(shù)據(jù)表現(xiàn)存在顯著差異,則實(shí)驗(yàn)的埋點(diǎn)、分流和統(tǒng)計(jì)肯定至少一項(xiàng)有問(wèn)題?!币脖囟ǔ闪ⅰ?/span>
嚴(yán)格意義上講AA實(shí)驗(yàn)的通過(guò)并不能證明上述三項(xiàng)(埋點(diǎn)、分流、統(tǒng)計(jì))絕對(duì)沒(méi)有問(wèn)題,但是AA實(shí)驗(yàn)不通過(guò)一定能證明上述三項(xiàng)至少一項(xiàng)存在問(wèn)題。
所以具備AB實(shí)驗(yàn)素養(yǎng)的團(tuán)隊(duì),一定會(huì)在AB實(shí)驗(yàn)前布置AA實(shí)驗(yàn)。
4、實(shí)驗(yàn)反轉(zhuǎn)
假如一個(gè)實(shí)驗(yàn)布置到線上第一天,方案A比方案B好,能否代表第二天,第三天的數(shù)據(jù)表現(xiàn)還是如此?
用戶(hù)進(jìn)入到新方案中,很可能因?yàn)楹闷娑憩F(xiàn)的更加活躍,但隨著時(shí)間推移,逐漸趨于冷靜,數(shù)據(jù)表現(xiàn)回到本該有的水平,如果實(shí)驗(yàn)觀察期設(shè)置的過(guò)早,則容易得出錯(cuò)誤的結(jié)論。反過(guò)來(lái)也如此,有的改版用戶(hù)很不習(xí)慣,但用了熟練之后發(fā)現(xiàn)比老版更便捷,數(shù)據(jù)會(huì)逐漸回暖。
另外一方面,做實(shí)驗(yàn)的樣本量太少,也可能出現(xiàn)反轉(zhuǎn),拋100次硬幣和拋100萬(wàn)次硬幣正面的頻次很可能不一樣,根據(jù)大數(shù)定律,隨著隨機(jī)實(shí)驗(yàn)的次數(shù)增加,隨機(jī)變量的頻次分布趨向于其概率分布。在這里,假設(shè)實(shí)驗(yàn)的第一天只有100個(gè)用戶(hù)進(jìn)入,由于樣本量太少,實(shí)驗(yàn)結(jié)果的隨機(jī)性太強(qiáng),隨著天數(shù)增加,實(shí)驗(yàn)樣本也增加,實(shí)驗(yàn)結(jié)果可能會(huì)反轉(zhuǎn)。
一般情況下,我們不建議樣本量小于1000用戶(hù)的產(chǎn)品進(jìn)行AB實(shí)驗(yàn),因?yàn)閷?shí)驗(yàn)結(jié)果很難得到保證。
5、延滯效應(yīng)
記得我們?cè)谏匣瘜W(xué)實(shí)驗(yàn)課時(shí),老師一定是先讓你把試管洗干凈吧?這么做可不只是為了衛(wèi)生。待實(shí)驗(yàn)的化學(xué)藥劑如果與試管中殘留的藥劑混合,則實(shí)際實(shí)驗(yàn)的則是這種“被混合的藥劑”,實(shí)驗(yàn)結(jié)果當(dāng)然不可信。上述說(shuō)的問(wèn)題就是carry over——延滯效應(yīng)。
同樣在互聯(lián)網(wǎng)產(chǎn)品實(shí)驗(yàn)中,也存在這樣的問(wèn)題。舉個(gè)例子,編號(hào)為00001-10000與編號(hào)10001-20000的用戶(hù)之前被分到不同的實(shí)驗(yàn)方案(A和B)進(jìn)行實(shí)驗(yàn),這個(gè)實(shí)驗(yàn)結(jié)束后團(tuán)隊(duì)開(kāi)始要進(jìn)行一個(gè)新的實(shí)驗(yàn),如果沒(méi)有特殊處理,則可能00001-10000及10001-20000的用戶(hù)也是被分到兩個(gè)方案中(A1,B1),此時(shí)實(shí)驗(yàn)結(jié)果可信么?00001-10000的用戶(hù)之前經(jīng)歷過(guò)方案A,現(xiàn)在全部落在了方案A1上,10001-20000的用戶(hù)之前經(jīng)歷了方案B,現(xiàn)在全部落在了方案B1上,也許在做第一個(gè)實(shí)驗(yàn)前兩個(gè)用戶(hù)群是同質(zhì)的,但做了第一個(gè)實(shí)驗(yàn)后,這兩個(gè)群體已經(jīng)不同質(zhì),要進(jìn)行第二個(gè)實(shí)驗(yàn)則必須采用一定的算法將兩個(gè)用戶(hù)群重新打散,獲得 一個(gè)新的編號(hào)排列,再切分出兩個(gè)同質(zhì)人群進(jìn)行第二個(gè)實(shí)驗(yàn),或者重新拿出新的號(hào)段出來(lái)實(shí)驗(yàn),比方20001-30000,30001-40000。
以上列舉的只是一些常識(shí)性的坑,實(shí)際過(guò)程中還會(huì)遇到更多.....
在國(guó)內(nèi)的頂級(jí)互聯(lián)網(wǎng)公司BAT中,AB實(shí)驗(yàn)已非常普遍,百度同時(shí)有上千個(gè)AB實(shí)驗(yàn)并行,阿里巴巴和騰訊也有自己的AB實(shí)驗(yàn)系統(tǒng)用以支持多業(yè)務(wù)大規(guī)模并行的AB實(shí)驗(yàn)。
“如何把AB實(shí)驗(yàn)文化根植到公司的基因中去?”,時(shí)代正在向所有的互聯(lián)網(wǎng)公司發(fā)出提問(wèn)。
立即登錄