A/B Test給我的三個(gè)哲學(xué)啟發(fā)

2 評(píng)論 6891 瀏覽 31 收藏 19 分鐘

許多互聯(lián)網(wǎng)公司都會(huì)以A/B Test的形式來(lái)進(jìn)行產(chǎn)品決策——通過(guò)展現(xiàn)A方案和B方案,通過(guò)最終結(jié)果來(lái)判斷哪個(gè)方案更好。本文筆者將與大家分享自己對(duì)于這種決策方式的一些思考。

A/B Test,這是如今互聯(lián)網(wǎng)行業(yè)開(kāi)發(fā)中常用的方法。它的做法很簡(jiǎn)單,某個(gè)問(wèn)題如果有A和B兩個(gè)方案,卻無(wú)法決定哪個(gè)更好。那么不要爭(zhēng)論,直接投入生產(chǎn)進(jìn)行測(cè)試,把用戶分成兩群(劃分標(biāo)準(zhǔn)可以是時(shí)間、地域、消費(fèi)能力等等各種因素,但要樣本足夠大,足夠有代表性),分別展現(xiàn)A方案和B方案,通過(guò)最終結(jié)果來(lái)判斷哪個(gè)方案更好。

這看起來(lái)簡(jiǎn)單粗暴,但是一種相當(dāng)有效的方法。據(jù)說(shuō):今日頭條就大量使用A/B Test來(lái)進(jìn)行產(chǎn)品決策,所以迭代速度很快,效率也很高。不過(guò),今天我想換個(gè)角度,談?wù)凙/B Test給我的哲學(xué)啟發(fā)。

我接觸A/B Test是許多年前,那時(shí)候A/B Test的概念還沒(méi)有流行,當(dāng)時(shí)我甚至沒(méi)聽(tīng)說(shuō)過(guò)這個(gè)概念。但是,這不妨礙我用它的思想來(lái)解決問(wèn)題。

當(dāng)時(shí)我們開(kāi)發(fā)的系統(tǒng)里的單據(jù)管理頁(yè)面有個(gè)“大一統(tǒng)”搜索框,設(shè)計(jì)初衷很好,希望用戶“一站式”搜索到想看的內(nèi)容。

但是,單據(jù)的屬性太多,原有系統(tǒng)的設(shè)計(jì)又很糟糕,用戶在搜索框輸入信息之后,程序要對(duì)所有屬性進(jìn)行逐一匹配檢索,查詢的效率特別低。如果遇上多個(gè)用戶同時(shí)查詢,系統(tǒng)基本就失去響應(yīng)了。這個(gè)問(wèn)題讓客戶非常不滿,抱怨聲此起彼伏。

我們?cè)谧屑?xì)分析了用戶的搜索行為之后發(fā)現(xiàn):用戶搜索時(shí),大量輸入的只有三個(gè)屬性——客戶代碼、日期、訂單編號(hào)。

這三個(gè)屬性的特征很明顯,匹配檢索也可以專門(mén)優(yōu)化,速度會(huì)大大提升。所以,改進(jìn)方案也很簡(jiǎn)單:收到用戶提交的搜索請(qǐng)求時(shí),先判斷一下是否這三個(gè)屬性,如果是就走專門(mén)優(yōu)化的渠道。如果檢索不到則彈出另一個(gè)界面,引導(dǎo)用戶進(jìn)行“完整搜索”。

據(jù)測(cè)試:這個(gè)方案很有效,響應(yīng)速度提升很多,我們也非常有信心。但是,臨到要上線,卻被業(yè)務(wù)(銷(xiāo)售)給叫停了。他們的理由也很充分:這樣改動(dòng)看起來(lái)有道理,但是客戶已經(jīng)習(xí)慣了原來(lái)的邏輯,行為結(jié)果會(huì)變化(“你怎么知道我的大客戶沒(méi)有特殊習(xí)慣呢?”)。而且,這個(gè)行業(yè)的客戶大多專注于生意,文化水平不高,最怕的就是系統(tǒng)改了要重新適應(yīng)。這種改動(dòng)肯定不會(huì)受用戶歡迎。

一邊是系統(tǒng)的運(yùn)行壓力和技術(shù)人員的責(zé)任心,一邊是銷(xiāo)售描述的客戶的慣性阻力。兩邊看起來(lái)都有道理,到底應(yīng)該怎么抉擇?

當(dāng)時(shí)我有了A/B Test的模糊想法——不進(jìn)行整體硬切換,讓不同的用戶走不同的邏輯,甚至可以動(dòng)態(tài)調(diào)整大客戶的搜索邏輯,如果客戶不滿意隨時(shí)復(fù)原。好說(shuō)歹說(shuō),終于說(shuō)服了銷(xiāo)售,可以上線測(cè)試。

測(cè)試結(jié)果顯示:絕大部分客戶都滿意改進(jìn)之后的搜索邏輯,能感知到速度大大提升,即便有少數(shù)客戶感覺(jué)怪異。但是耐心加以解釋,對(duì)比了常用搜索的表現(xiàn)之后,他們都比較愿意“花一點(diǎn)時(shí)間學(xué)習(xí)和適應(yīng)”。所以,最終,這次改進(jìn)的結(jié)果相當(dāng)令人滿意。

這是A/B Test給我的第一個(gè)啟發(fā):

在解決問(wèn)題之前,如果有多種方案需要抉擇,很可能每種方案都有理由,都有支持的聲音,而且理由嚴(yán)密完整,聲音鏗鏘有力。自說(shuō)自話,總是能自圓其說(shuō)。但是,評(píng)價(jià)決策的最終標(biāo)準(zhǔn)不應(yīng)當(dāng)是這些理由和聲音,而是實(shí)際的結(jié)果。

看看我們周?chē)袩o(wú)數(shù)熱鬧的文章在解釋世界,在把某種抉擇描繪得無(wú)比英明。但是,支持真實(shí)世界運(yùn)轉(zhuǎn)的并不是這些炫目的解釋,而是現(xiàn)實(shí)的邏輯。所以,也才會(huì)有“不看廣告看療效”的說(shuō)法。

扯遠(yuǎn)點(diǎn)說(shuō),卡爾·波普爾很早就發(fā)現(xiàn):許多炫目的理論之所以讓人著迷,是因?yàn)樗鼈儭皬膩?lái)都不可能出錯(cuò)”,即便出了錯(cuò)也能自圓其說(shuō)。

波普爾認(rèn)為:這些理論其實(shí)不是科學(xué)的理論,因?yàn)榭茖W(xué)理論包含必須有出錯(cuò)的風(fēng)險(xiǎn),只有不斷通過(guò)“驚心動(dòng)魄”的事實(shí)檢驗(yàn),理論的科學(xué)性才能得到證明。

許多人大概會(huì)記得,在前些年小米春風(fēng)得意的時(shí)候,有無(wú)數(shù)專家在宣稱。小米掌握了“互聯(lián)網(wǎng)方法論”,當(dāng)然能在手機(jī)市場(chǎng)上所向披靡,這是致勝的法寶。

然后,小米出貨量下滑,而oppo和vivo崛起了,于是大家的口風(fēng)瞬間轉(zhuǎn)變,“線下勝過(guò)線上”、“互聯(lián)網(wǎng)企業(yè)做實(shí)業(yè)根基不穩(wěn)”的論調(diào)開(kāi)始大行其道。之后小米扭轉(zhuǎn)了下跌的趨勢(shì),為小米歌功頌德的聲音又開(kāi)始躲起來(lái)。

按照IDC最新的數(shù)據(jù):2019年1季度,主攻線下的oppo手機(jī)出貨量出現(xiàn)了6%的下跌,不知道這些專家又要說(shuō)什么……

不過(guò)不管他們說(shuō)什么,都無(wú)法改變一個(gè)事實(shí)。那就是,如果你只看這些專家的說(shuō)法,必然會(huì)有和許多人同樣的困惑——“看書(shū)看來(lái)了許多道理,自己仍然不會(huì)做決策”。

去年我看了《命運(yùn)攸關(guān)的選擇:1940-1941年間改變世界的十個(gè)決策》,也很有這方面的意思。比如:對(duì)于不列顛之戰(zhàn),如今許多人都在歌頌丘吉爾毫不屈服的堅(jiān)定意志。但作者要分析的是:當(dāng)時(shí)丘吉爾面臨的情境是怎樣的?他是如何決策的?如果他不選擇抗戰(zhàn),結(jié)果大概會(huì)是什么樣?…… 必須承認(rèn),這樣的分析視角,會(huì)給人更多的啟發(fā)和收獲。

回頭來(lái)說(shuō)A/B Test,還是許多年前,還是在系統(tǒng)開(kāi)發(fā)中,我又遇到過(guò)另一件事。

那時(shí)候,客戶往往需要整批提交格式化的數(shù)據(jù)。按照日常經(jīng)驗(yàn),這種數(shù)據(jù)顯然應(yīng)當(dāng)用Excel的格式最合適。用戶按照我們給定的模板把數(shù)據(jù)分門(mén)別類錄入好,最后在瀏覽器里上傳到作業(yè)系統(tǒng)即可。

但是這樣操作也會(huì)有問(wèn)題。Excel文件的交互能力比較弱,如果一次提交幾百上千條記錄,某一條又出了錯(cuò),很難告知準(zhǔn)確告知客戶錯(cuò)誤的位置和類型,修改起來(lái)也很不方便。

另外,許多客戶是一天提交一次Excel的,如果在Excel制作的過(guò)程中電腦死機(jī)或者文件損壞,很可能前功盡棄,之前的工作成果要全部重新來(lái)過(guò)。

在嘗試了幾次優(yōu)化上傳界面之后,我們決定徹底廢棄之前的做法,直接給客戶提供一個(gè)客戶端軟件??蛻舻卿浿?,可以逐一錄入數(shù)據(jù),數(shù)據(jù)錄入時(shí)軟件會(huì)直接和服務(wù)器交互進(jìn)行驗(yàn)證-保存,出錯(cuò)了則即時(shí)提示。

這種軟件開(kāi)發(fā)起來(lái)不難,但也很好玩,里面有不少設(shè)計(jì)需要花點(diǎn)心思,大家也樂(lè)在其中。開(kāi)發(fā)完之后,我們信心滿滿地介紹給銷(xiāo)售同事,希望他們能推動(dòng)客戶使用。在我們看來(lái),這是三贏的局面:技術(shù)不必反復(fù)查錯(cuò),客戶不必反復(fù)提交,銷(xiāo)售不必反復(fù)溝通。

不出意外,銷(xiāo)售同事第一反應(yīng)就是質(zhì)疑,因?yàn)榭蛻粢呀?jīng)習(xí)慣了原有的操作,讓他們改變操作習(xí)慣,成本太高。不過(guò),因?yàn)橹暗乃阉鳈诟倪M(jìn)的例子,質(zhì)疑并沒(méi)有成為反對(duì),大家約定這個(gè)改進(jìn)也來(lái)實(shí)地測(cè)試一番。

這次的測(cè)試結(jié)果大大出乎我們的意料,絕大部分客戶在試用新軟件之后都不滿意,又回到老的Excel的操作方式上來(lái)?!霸趺礃?,說(shuō)了客戶的操作習(xí)慣不是那么容易改變的吧!” 這一次,獲勝的是銷(xiāo)售同事了。

但是我們并不滿意,一方面,對(duì)自己開(kāi)發(fā)的軟件有足夠的信心(和期望),另一方面,“用戶操作習(xí)慣不那么容易改變”并不能成為萬(wàn)金油,總有那么強(qiáng)的說(shuō)服力。

可是,A/B Test的結(jié)果又分明證明,確實(shí)我們想錯(cuò)了。那么,問(wèn)題到底出在哪里呢?

不甘心的技術(shù)人員走出辦公室,深入到客戶的使用場(chǎng)景去調(diào)查,真相才浮出水面:原來(lái),開(kāi)發(fā)時(shí)犯了想當(dāng)然的錯(cuò)誤。

開(kāi)發(fā)人員的電腦配置比較好,開(kāi)發(fā)使用的是.Net技術(shù)框架,而客戶的電腦并沒(méi)有那么新潮,許多仍然在用Windows XP,并沒(méi)有自帶.Net Framework,這就讓許多客戶望而卻步了。即便知道要下載.Net Framework,又面臨版本問(wèn)題,國(guó)內(nèi)各種下載站捆綁其它軟件的問(wèn)題。安裝好之后,因?yàn)殡娔X配置低,程序運(yùn)行起來(lái)響應(yīng)也很緩慢,反而不如Excel干脆利落。

找到問(wèn)題之后就好辦了。把軟件原有的操作邏輯都保留,.Net實(shí)現(xiàn)都廢掉,以原生的Visual Basic重寫(xiě)。雖然這樣有點(diǎn)折騰,新時(shí)代的程序員大多不會(huì)寫(xiě)VB了,要重新學(xué)習(xí),但結(jié)果是非常好的。重新下發(fā)的版本在客戶的機(jī)器上跑得很快,甚至比Excel還要快,迅速贏得了客戶的信任,也在銷(xiāo)售同事那里找回了面子。

這是A/B Test給我的第二個(gè)啟發(fā):

即便一個(gè)問(wèn)題有了最終答案,也不能單純相信最終答案所依附的那種解釋,因?yàn)樗赡苁遣粚?duì)的。盡管這些解釋能自圓其說(shuō),但也只是牽強(qiáng)附會(huì),或者流于表面。換句話說(shuō),A/B Test這樣的測(cè)試只能證明“哪種方案好”,而不能說(shuō)明“為什么好”,不能替代人工的分析。要認(rèn)清真相,我們不應(yīng)忘記細(xì)致探尋其中的理由。

我的第三個(gè)例子不是來(lái)自自己,而是來(lái)自朋友。

近些年,A/B Test已經(jīng)大為流行,會(huì)用A/B Test的人也越來(lái)越多。對(duì)應(yīng)的,愿意討論的人也越來(lái)越多了。一次吃飯時(shí),有位朋友跟我說(shuō)了這么個(gè)故事。

這個(gè)朋友開(kāi)發(fā)的用戶登錄界面里面臨一個(gè)問(wèn)題:輸入手機(jī)號(hào)接收短信驗(yàn)證碼的界面,是否需要用戶先輸入圖形驗(yàn)證碼?如果不要求,則這個(gè)界面可能被濫用,別有用心的人可以利用這個(gè)界面給其他人發(fā)送垃圾騷擾信息。如果要求,正常的用戶流程又不夠順暢,憑空多了一重阻攔。

因?yàn)閱渭儜{討論無(wú)法決定,他們采用了A/B Test。最終發(fā)現(xiàn):如今大概黑產(chǎn)肆虐,羊毛黨猖獗,如果要求輸入圖形驗(yàn)證碼,每天的無(wú)效和風(fēng)險(xiǎn)登錄次數(shù)少了很多,正常用戶的登錄次數(shù)卻沒(méi)有太大的波動(dòng)。從結(jié)果來(lái)看,安排圖形驗(yàn)證碼顯然是一個(gè)更好的選擇。

聽(tīng)完這個(gè)故事,我現(xiàn)場(chǎng)給他展示了一下登錄流程。在輸入手機(jī)號(hào),滿心期待可以等來(lái)短信之前,硬生生彈出一個(gè)“請(qǐng)輸入圖形驗(yàn)證碼”的界面。

我問(wèn)他:“你作為普通用戶,你的體驗(yàn)好嗎?”

他老老實(shí)實(shí)回答說(shuō):“不好?!?/p>

所以,從概率上看,A/B Test的結(jié)果確實(shí)防住了很大一部分黑產(chǎn)、羊毛黨,但如果你不幸處于“不需要防住”的那一部分,對(duì)你來(lái)說(shuō)這個(gè)結(jié)果就非常悲劇了。

你說(shuō)這個(gè)問(wèn)題確實(shí)存在,但是要怎么改進(jìn)A/B Test呢?

實(shí)際上,所有這類決策都會(huì)有決策成本。按照80-20原則,你抓住了80%,就放棄了20%。何況現(xiàn)實(shí)中未必處處都是80-20,有時(shí)候你抓住的只是60%,放棄的是40%,甚至抓住的是55%,放棄的是45%。雖然從總數(shù)上看是不錯(cuò)的,但實(shí)際成本太高,放棄的太多。

那么,怎么解決這種問(wèn)題呢?

解決這種問(wèn)題并不是靠A/B Test,而需要輸入更多的信息。

如果你的登錄界面只輸入一個(gè)手機(jī)號(hào),讓用戶收一個(gè)短信驗(yàn)證碼,就是把A/B Test做出花來(lái),也沒(méi)有什么用。如果你輸入的不只有用戶的手機(jī)號(hào),還有用戶的IP、瀏覽器版本等等信息,如果是在專屬App里登錄,還可以加上Wi-Fi網(wǎng)絡(luò)、地理位置、設(shè)備ID等等信息……

你的信息更豐富了,決策邏輯就可以更復(fù)雜,可以調(diào)整的空間也更大。如果要做A/B Test也可以做更細(xì)致,可以從多層次、多角度來(lái)做A/B Test。

這位朋友聽(tīng)了之后若有所思,回頭找安全、風(fēng)控等等行業(yè)的朋友聊了一圈,得到了更完整的方案。再過(guò)幾個(gè)月我去看他們的系統(tǒng),已經(jīng)基本做到了“對(duì)正常用戶勿打擾,對(duì)風(fēng)險(xiǎn)用戶自動(dòng)驗(yàn)證”的水平,用戶體驗(yàn)比之前粗暴彈出圖形驗(yàn)證碼好了很多。

實(shí)際上,這是我前些年思考的結(jié)果,也是A/B Test給我的第三個(gè)啟發(fā):

A/B Test不是萬(wàn)能的,不能迷信。

它只能教我們?nèi)绾螐慕o定的選項(xiàng)中擇優(yōu),但許多時(shí)候選項(xiàng)本身的層面不對(duì),或者粒度太粗。所以,即便做了A/B Test,結(jié)果也未必盡如人意。許多時(shí)候我們需要跳出來(lái),輸入更多的信息,或者改進(jìn)A/B的粒度,往往能取得更理想的結(jié)果。

如果你有印象大概會(huì)記得:2002年8月12日,公安部在北京、天津、深圳、杭州四個(gè)城市推行了個(gè)性化車(chē)牌。個(gè)性化車(chē)牌有6位,前三位可以由用戶自行選擇數(shù)字或者字母。這種給予極大自由的政策,一經(jīng)推出就引發(fā)民眾熱捧。不幸的是,政策公布之后還不到兩周,就因?yàn)椤凹夹g(shù)原因”叫停了。

據(jù)媒體報(bào)道:這項(xiàng)政策被叫停的真正原因在于,許多用戶自定的車(chē)牌有爭(zhēng)議,比如BWM-001、FBI-001、USA-911、PLA-081之類,甚至還有SEX-001等等“出格”現(xiàn)象,被認(rèn)為“不符合精神文明建設(shè)”。后來(lái)還有不少“專家”引用這個(gè)例子,證明“社會(huì)現(xiàn)階段不能太過(guò)自由,否則就會(huì)出各種幺蛾子,影響穩(wěn)定”之類的結(jié)論。

在我看來(lái),這恰恰是個(gè)典型的因?yàn)榱6冗^(guò)粗、層次不當(dāng)?shù)睦?。如果只是粗放?guī)定“用戶可以選擇/不選擇個(gè)性化車(chē)牌”,對(duì)“個(gè)性化車(chē)牌中不容許哪些內(nèi)容”又沒(méi)有任何細(xì)致的規(guī)定,結(jié)果當(dāng)然五花八門(mén),出乎意料。

拿它當(dāng)例子來(lái)證明“社會(huì)不能太過(guò)自由,否則就會(huì)影響穩(wěn)定”,就更是匪夷所思——自由從來(lái)都是和規(guī)定相聯(lián)系的,沒(méi)有什么正經(jīng)的人主張社會(huì)需要毫無(wú)約束的自由。

系統(tǒng)智能與否,體現(xiàn)在它能動(dòng)用多少信息,對(duì)多少情況進(jìn)行細(xì)致的分析,給出對(duì)應(yīng)的處理,而不是一兩條簡(jiǎn)單的if-else萬(wàn)事。

同樣的道理,解決問(wèn)題水平的高低,也體現(xiàn)在問(wèn)題的解決者能夠動(dòng)用多少信息,事先制定多少分門(mén)別類的規(guī)則,事后依據(jù)多少細(xì)致的分析,而不是簡(jiǎn)單粗放得到一個(gè)結(jié)論了事。

最后做個(gè)簡(jiǎn)短總結(jié):

  • A/B Test很好,可以用來(lái)戳穿各種貌似合理的奇談怪論。
  • 做A/B Test不只是技術(shù)上做點(diǎn)事情就完了,沒(méi)有細(xì)致認(rèn)真的分析,還是可能走彎路。
  • 要想給出更優(yōu)的解決方案,并不能完全依賴A/B Test,輸入更多的信息,掌握更多的計(jì)算能力,才可能得到更優(yōu)的解決方案。

 

作者:余晟,微信公眾號(hào):余晟以為(ID:yurii-says)

來(lái)源:https://mp.weixin.qq.com/s/VVS49gO9M8gMgWQ73KdKvA

本文由@余晟以為 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來(lái)自Unspalsh, 基于CC0協(xié)議。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 寫(xiě)得很贊,提供了很多思路

    來(lái)自江蘇 回復(fù)
  2. 學(xué)習(xí)學(xué)習(xí)

    回復(fù)