從數據產品經理視角,聊聊科學的AB Test

2020-12-11 人人都是產品經理

隨著ab測試在網際網路行業用戶增長方面的推廣,各家都搭建了自己的ab測試平臺(不限於BAT) 或者 購買了ab測試服務。今天就來看下AB測試的前世今生,能為企業解決什麼問題,如何標準化ab測試流程,如何搭建一個ab測試平臺。

36Kr曾在一篇報導中寫道:「頭條發布一個新APP,其名字都必須打N個包放到各大應用市場進行多次A/B測試而決定,張一鳴告訴同事:哪怕你有99.9%的把握那是最好的一個名字,測一下又有神馬關係呢?」

一、追本溯源

AB測試的前身是隨機對照試驗-雙盲測試,是「醫療/生物實驗將研究對象隨機分組,對不同組實施不同的幹預,對照起效果」。

雙盲測試中病人被隨機分成兩組,在不知情的情況下分別給予安慰劑和測試用藥,經過一段時間的實驗後再來比較這兩組病人的表現是否具有顯著的差異,從而決定測試用藥是否真的有效。

2000年穀歌工程師進行了第一次AB Test,試圖確定在搜尋引擎結果頁面上顯示的最佳結果數量。後來AB測試不斷發展,但基礎和基本原則通常保持不變,2011年,谷歌首次測試後11年,谷歌進行了7,000多次不同的AB測試。

12年歐巴馬競選網站的樣式,通過AB Test 找到了更能吸引募捐,幫助歐巴馬贏得了更高的募捐金額。

AB Test將不同的用戶分成不同的組,同時測試不同的方案,通過用戶反饋的真實數據來找出哪一個方案更好的過程。解決的是「多種方案需要拍腦袋確認哪一種更好的問題」。

二、特性

先驗性:A/B Test 是一種「先驗體系」,屬於預測型結論(與其相對的是後驗型的經驗歸納)。同樣是一個方案是否好壞:A/B Test 通過小流量測試獲得具有代表性的實驗結論,來驗證方案好壞後再決定是否推廣到全量;後驗型則是通過發布版本後的版本數據對比總結得到。並行性:是指支持兩個或以上的實驗同時在線,並需要保證其每個實驗所處環境一致。並行性極大的降低了多實驗的時間成本。科學性:AB Test是用科學的方式來驗證方案,科學性體現在流量分配的科學性、統計的科學性。記得在開篇提到的「AB測試的前身是隨機對照實驗,醫療/生物實驗將研究對象隨機分組,對不同組實施不同的幹預,對照起效果」,這要求AB Test將相似特徵的用戶均勻的分派到實驗組別中,確保每個組別的用戶特徵相同。

三、統計學原理

3.1 抽樣

總體:「是包含所研究的全部個體(數據)的集合,它通常由所研究的一些個體組成,如由多個企業構成的集合,多個居民戶構成的集合,多個人構成的集合,等等」。對於一個app、web網站,他的所有用戶即為總體。

樣本:與總相對應,是從總體中按一定比例抽取且能代表總體的部分個體集合。例如:分別抽樣5%的app用戶,形成實驗組、對照組。

從總體到樣本的過程,即為抽樣。所以ABTest,是通過抽樣 獲取 實驗組、對照組,對比統計量均值,以衡量實驗效果。

抽樣面臨問題「如何從一個總體中按一定比例抽取一組隨機樣本?」,也就是樣本統計值是否可以代表總體參數?

3.2 參數估計

為了估計總體參數,會計算樣本的統計量,例如:某個優化指標的平均值。而樣本的統計結果為真實的總體統計結果的點估計,但由於點估計樹值與總體參數值在某種程度上存在差異。可以構造區間估計以便獲取關於點估計值與總體參數的差異大小的信息。區間估計是在點估計的基礎上,給出總體參數的一個概率範圍(點估計值 +/- 邊際誤差)。

可以利用總體標準差 或 樣本標準差 計算 邊際誤差。(1)已知總體標準差假設:總體標準差=20,歷史數據顯示總體符合正態分布;抽取100個個體形成樣本,樣本均值為82。樣本標準差=總體標準差/ 開根號(樣本個數)=20/ 開根號(100)=2故樣本符合均值為82、標準差為2 的正態分布=> 查標準正態分布表得到,任何正態分布隨機變量都有95%的值在均值附近+/-1.96個標準差以內。=> 當樣本均值是正態分布時,一定有95%的樣本均值落在總體均值 +/- 3.96(1.96*2=3.96) => 總體均值=樣本均值+/- 3.96 = 82 +/-3.96=> 有95%的把握相信區間(78.08,85.92)包括總體均值。**95%為置信水平,(78.08,85.92)為置信區間,邊際誤差為 Z分布(總體標準差/開根號(樣本個數))。(2)已知樣本標準差,未知總體標準差總體均值 = 樣本均值 +/- t分布(樣本標準差/開根號(樣本個數))

基於以上論述,可以得到 在某種置信水平下,置信區間(78.08,85.92)包括總體均值,論證了 「樣本統計值和總體參數相似程度」

接下來,文中將介紹 如何知道一個方案是好還是壞呢?——可以通過假設檢驗來確認是否應該拒絕關於總計參數值。

3.3 假設檢驗

嘗試性的假設為原假設H0,與原假設對立的是備擇假設H1. 在AB測試中,原假設H0: 實驗組和參照組不存在差異,備擇假設是存在差異。

在假設檢驗的過程中會出現以下情況(橫向為真實情況,總想為結論):

我們做實驗時,期望儘可能的控制 第一/二類錯誤。

第一類錯誤:原假設為真時拒絕了原假設 首先我們容易犯的就是第一類錯誤,就是原假設為真時拒絕了原假設,說白了就是過來就是 2 個版本無差異時候,我們錯誤 的認為他們有差異。

第一類錯誤出現的概率稱之為檢驗的顯著性水平α,一般取0.05或0.01。通過指定α 從而控制出錯概率。

犯第一類的假設檢驗稱之為 顯著性檢驗,通過P值來判斷:P值為z值的概率值(查表),是樣本所提供的證據對原假設支持成都的度量,p值越小說明反對原假設的證據越多。當P值<=顯著性水平α, 則拒絕H0。

請注意此處的描述「不能拒絕H0 或 拒絕H0」,而不能描述為H1為真(如果控制 第一類 不控制 第二類,僅能如此描述)。

第二類錯誤:原假設為假時接受了原假設,也就是 「2 個版本有差異時候,我們認為他們沒有差異 」,這個概率記為β ,不犯第二類錯誤的概率為的1- β。1- β:當H0為假時,作出拒絕H0的正確結論的概率稱之為「檢驗的功效」,通常最低的統計功效值為80%。

綜上,通常情況下 AB實驗中, 95%+的置信水平,<5%顯著性水平 , > 80%統計功效,可以被認為實驗是有效的,結果有代表性是可信的。

曾經一度也曾有大量文章由於p值無法提供一個人類期望的結論,而抨擊p值已死。p值在統計學的意義中是用來推斷,而非歸納總結。僅用p值來確認顯著性直接得到結論是不恰當的,同學的先輩們聽到都會跳起來,引入統計功效、置信區間才能科學的解釋實驗數據。

四、科學分流

4.1 分流

分流是將用戶分入AB實驗的過程。

如何知道一個用戶應該咋哪些實驗中呢?

對用戶id進行hash並取模後得到實驗。如果用戶量夠大,可以設置按1000,10000取模,得到的用戶組會變多。這種方式記為單層實驗架構,每個用戶只會分入一個組中,在同一時刻只會參與一個實驗。

這裡的用戶id,不特指user_id,由於實驗的範圍不同,用戶id可以使用user_id、device_id、cookieid,以及global_id,global_id在各家公司稱呼不同,但表達意思均為全局流量id,是基於多種id得到的唯一id。

4.2 多層重疊實驗

如果有多個大流量實驗同時在線,如何增加新的實驗呢?

Google的文章中描述了多層重疊實驗,可以解決這個問題,也是業內的主要方式,多層重疊實驗可以實現 「更多、更好、更快」做AB Test。

多層重疊實驗的幾個概念:

域:域是對用戶流量的一種縱向劃分,將流量垂直的切分成多塊,多個域中的實現相互沒有幹擾,保證實驗純度。層:層是對域流量的一個橫向劃分。每個層使用獨立的Hash函數對用戶進行分桶,使得多個層之間的用戶流量是正交的。如下圖所示,每個層中的實驗對其他層的影響都是正交的,,一份流量穿越每層實驗時,都會被再次隨機打散,參與第一層中實驗X的用戶,均勻的分散在層B中,使層B中的實驗也可以獨立進行分析,並得到準確的分析結果。層內實驗為互斥實驗。層內多實驗互斥關係(下圖)與域的互斥關係相同,只是表述粒度不同。該流量可以繼續以「域」劃分為層,無限嵌套,但這樣複雜度會急劇增加,是不推薦的。

如果實驗是相互影響的(例如 實驗A更改按鈕樣式,實驗B更改按鈕文案),兩個實驗室需要設置為互斥實驗,建議放在同一層中。如果實驗間無影響(例如在UI、搜索、廣告推薦實驗),則可以在不同層進行實驗。

此外,精細化運營、國際化時本土化產品策略中 需要面向指定流量進行AB測試,如 對巴西的用戶AB Test。驗收測試的同學,也需要將自己的id加入測試人群,但這批用戶的數據不應該參與效果分析。特殊號碼過濾:如有些用戶id在分發時做了特殊人群的投放,需要過濾該人群。

五、AB Test 系統

上文中提到的均是AB測試的原理,為提升ABTest的速度,ABTest的代碼早已被封裝為了產品,如 商業化的有Optimize、吆喝科技、testin等,BAT TMD也都有自家的AB Test系統。

TO 產品、運營、算法 同學(做實驗的人):

創建實驗,並同步實驗信息到服務端、客戶端開發,以便其寫代碼時使用實驗code;獲取實驗結果。TO C端用戶(不局限於C端,這裡僅是泛指,被實驗的人),將決定該用戶在哪些實驗中。

AB Test系統也和其他系統一樣,有管理模塊、權限模塊等。

各家AB Test系統:

美團AB測試平臺:https://tech.meituan.com/2019/11/28/advertising-performance-experiment-configuration-platform.html

大眾點評: https://www.csdn.net/article/2015-03-24/2824303

Optimiz:http://www.googleoptimizedemos.com/

吆喝科技:http://www.appadhoc.com/

六、如何科學的做AB測試(AB測試標準化)

有了ABTest的概念,了解了原理,購買或者自建了系統,如何建立標準化流程讓其在團隊中完整的執行下來?

6.1 ABTest的局限性

在討論ABTest標準化執行過程前,我們先看了解下ABTest的局限性,莫過於將其神化。

(1)ABTest是驗證方案、想法的策略,而不是戰略。

看到知乎中的一句話無比贊同:

「你可以用A/B測試讓你在已經到達的山上越來越高,但你不能用它來發現一座新的山脈。如果你的產品真正需要的是一個完整的改造,那麼A/B測試可能做不到」。

張一鳴在清華經管學院,對問題「PM是否可以產品設計上是否更多的依賴ABtest而非直覺?」的解答:

「我們認為這和ABtest同樣重要。我們反對從邏輯到邏輯,從邏輯到邏輯,很容易失之毫釐謬以千裡。有一手的體驗能幫我們遠離偏差,我們願意把用戶的感受、體會帶到公司。我們全球化的第一件事情是海外用戶反饋,提供聯繫方式,讓用戶可以直接聯繫到我們。PM是需要sense的,AB的science可以用來的降低在細節層面的精力付出。

(2)ABTest是有開發成本的

(3)ABTest的數據只有現象,沒有詳情

ABTest可以給出實驗組比對照組的效果好現象,但無法給出過程數據。測試相對複雜的方案,ABTest無法表述出具體是哪個方面呈現出了優勢。

6.2 ABTest的標準化流程

此外,AB測試時,需要警惕辛普森悖論。

後續:ABTest的相關知識點還會在本文中陸續補充,期望了解點可以在評論中@我,我會逐一回復並補充到文章中的。

本文由 @cecil 原創發布於人人都是產品經理。未經許可,禁止轉載

題圖來自Unsplash,基於CC0協議

相關焦點

  • AB test | 數據分析師面試必知 !
    test的重要性無需多言,數據、產品等從業人員幾乎必知,好的數據科學家我想一定是知道理解業務比模型更為重要,而AB test就是伴隨著業務增長的利器。這樣來說產品開發人員和設計人員可以使用A / B測試來演示新功能對用戶體驗變化的影響。只要目標明確定義並且有明確的假設,用戶參與,產品體驗等都可以通過A / B測試進行優化。①確定目標:目標是用於確定變體是否比原始版本更成功的指標。可以是點擊按鈕的點擊率、連結到產品購買的打開率、電子郵件註冊的註冊率等等。
  • 從一條私信出發,聊聊怎麼轉行數據產品經理
    原標題:從一條私信出發,聊聊怎麼轉行數據產品經理編輯導讀:不少想轉行的同學,都會面臨不知道如何從其他崗位轉到數據產品經理職位這樣的問題。本文作者從自身經驗出發,結合實際問題,分享了自己對轉行數據產品經理的非常實用的建議,供大家一同參考和學習。
  • 萬字長文聊聊產品經理跳槽面試
    內部需求:數據分析類需求、產品規劃類需求、運營類需求;通常為產品經理本身的理解,老闆、市場運營等業務部門的需求,以及從產品的運營數據反饋中獲取需求; 外部需求:競品類需求、用戶反饋類需求;通用去多拆解競品和關注用戶反饋的需求,競品可以遵循該產品迭代的歷史版本記錄去梳理和劃分中去獲取需求,而用戶反饋可以通過搭建種子用戶群看用戶反饋的問題
  • 《數據產品經理修煉手冊》讀書筆記
    51期間詳細拜讀了起點學院推薦,由梁旭鵬撰寫的《數據產品經理修煉手冊》一書。從作者的視野下,理性看待數據產品經理。簡單回顧一下書中對於數據產品經理描述的內容。四 對數據產品經理的更多要求數據產品的定義:將數據進行處理分析(消費數據),通過自動化的形式固定下來,形成穩定的產品形態,提供數據參考,幫助用戶做更優的決策。
  • 數據產品經理從零到一(1):數據產品能力模型構建
    本文共分四個部分:第一部分,從招聘市場需求入手,看市場上的招聘高級數據產品經理都需要掌握哪些硬實力;第二部分,結合一些數據產品經理的分享,梳理數據產品經理的朋友圈,因為溝通者一定程度決定了需要掌握多少「共通語言」;第三部分,構建數據產品經理能力模型;第四部分,詳解一些數據產品常常接觸的概念和系統。
  • 3個角度,聊聊產品經理的PRD基本功
    產品經理:……這篇文章,雖然不會讓你瞬間越階,但至少會讓你對產品需求文檔有個相對系統的認識,提升工作效率。只要你在做產品相關工作或是想往這方向就業做準備,都可以學習一下。作為一隻有夢想的產品狗,每天必備功課就是和各部門溝(si)通(bi)。
  • 產品經理如何做用戶行為分析
    在這個每個網際網路人都在談論數據,每個產品經理都在談論數據分析的時代,用戶行為分析的重要性也越來越凸顯出來,那麼產品經理如何做用戶行為分析呢?接下來將為大家進行分享。觀點三:只需要做充分的調研分析就可以了,比如需求調研,產品使用調研,多找找目標用戶,多讓他們提一些反饋意見,根據反饋來做修改即可。觀點四:不要總是順著用戶的意思去做產品。產品設計的核心是產品經理的想法,而不是用戶的看法。以上觀點其實都是錯誤的,如果產品經理有這樣的想法,會對自己極為不利。
  • 產品經理AI指北(二):AI產品經理的六頂思考帽
    通過上一篇文章中對分析拉勾上的AI產品經理招聘數據,我們已經了解到關於AI產品經理的市場需求情況,以及企業對於產品經理的崗位職責及要求。今天我們重點來共同聊聊,AI產品經理需要在思維方式上的準備工作。說起AI(人工智慧)我們不得不提到機器學習和深度學習,那麼二者究竟是怎樣的關係呢?
  • 從數據分析師的級別看:產品經理的數據修養
    其實上面的要求,還可以增加一點,那就是數據上報。數據分析師,必須了解業務邏輯,熟悉產品數據上報的整個流程,並且與產品經理合作完成產品數據上報,為後面的數據獲取打下基礎。在數據分析方法要求上,以下六點可以說是做產品經理需要掌握的基礎數據知識:數據預處理、檢驗、清洗;各種常用統計檢驗方法;描述統計分析;對比分析;簡單的多元統計分析方法;資料庫知識;至於用什麼工具,則看實際工作需要了,最基本的就是Excel電子表格,這個工具的掌握
  • 重視產品反饋的工作,避免做執行經理
    通常我們可以採取AB test,即讓一部分用戶繼續用A,一部分用戶開始用B,如果用戶對B沒有什麼反對意見,那麼逐步擴大範圍,把所有用戶都遷移到B上面來。這個可以保證整體系統的穩定,在初始灰度的時候就可以發現、調整問題,以保證其新功能的正常使用。3.
  • 我所認識的數據產品經理(文末有彩蛋)
    作者:公子龍  今天想聊聊一位天池科學家排名前五的大牛李凱東
  • 前百度大數據部技術經理:如何用數據驅動產品決策?
    本文來源於微信公眾號:筆記俠微信ID:Notesman今日筆記俠客 | 楊毛毛 責編 | 戈多活動內容:2017年9月24日,人人都是產品經理主辦「2017中國產品經理大會:解碼未來產品經理完整筆記·商業思維筆記君邀您,先思考:產品經理需要什麼技能?如何用大數據分析引入產品分析?數據分析對產品分析的價值如何?我在百度8年,都是做和數據相關的事情,出來創業這兩年還是做數據相關的事情,那麼我講的東西就會偏技術一些。
  • 產品經理對大數據在教育領域的應用分析
    而網際網路模式下的教育模式,核心是為學生自我發展、教師教學反思、學校的質量提升提供基於數據分析的支撐,從而減輕教育評價體系的負擔,同時採用統一的標準進行評價,在一定程度上提升評價的準確性。其中,「數據分析」+「可視化」:讓學生、老師、家長三方都更全面的了解學習情況,更重要的是老師會根據大數據的分析,對教學內容做針對性的調整,管理人員同時也可以根據科學的數據支撐進行學校資源管理。
  • 數據產品經理的入門手冊:如何評估數據產品的上線效果?
    一個好的產品通過產品評估才能衡量其產品效果及業務價值,那麼對於數據產品來說,我們怎麼對齊評估呢?本文作者同大家分享一套適用於數據產品的評估體系,解答如何評估數據餐品的產品效果。對於數據產品經理來說,最頭疼的問題就是:當我的產品上線之後,我該如何評估我的產品效果?
  • AI產品經理,如何面對數據挖掘?
    接下來的趨勢有兩股同方向的產品力量,將是產品經理和企業產品創新的機會點:第一是:利用PC和移動網際網路積累的大數據做打破數據孤島類的產品和數據挖掘,數據分析類的產品。第二是:在大數據的肩旁上,深度結合業務供應鏈場景設計10倍於以往產品體驗的AI算法產品、AI賦能的智能軟硬體產品。
  • 產品經理相關書籍推薦1--產品、推薦、增長、運營、設計、技術等
    作者從一線小兵,一步一步走到高管位置,對產品經理進階過程十分了解,寫得很細緻。從如何打紮實基礎,培養基礎素質(創業、求知、聯想、善斷)到用戶研究、需求分析,再到產品基本功(設計能力、數據分析、技術基礎)這些產品基本功,到產品定位、思維方式、產品負責人能力等高階層面,都寫得很清晰,附上大量自己對其他產品的研究以及網易雲音樂的實例。這些例子絕大部分都是產品經理日常生活中遇到的,很容易代入思考。
  • 如何面試產品經理?我給你這3點建議
    不同階段的產品經理的經驗也是不一樣的。一般對於一個產品經理,可以從做過項目規模,向誰匯報,對接哪些人,需求來源,互動設計能力等等細節方面開始了解起。設計能力方面,可以聊聊如何定義需求,確定需求範圍,如何定義目標用戶,一般會看哪些數據,能否從數據中發現需求或者問題,都可以舉例子來說明。
  • 產品經理必會的10種數據分析方法
    畢業於史丹福大學,先後就職於eBay、LinkedIn數據分析部門,有豐富的商務分析經驗。 來源 | GrowingIO 2017 年第3期電子書《產品經理數據分析手冊 | 能力升級必備》 隨著人口和流量紅利的下降,網際網路行業必然會朝著精益化運營的方向發展。數據分析在很多網際網路人的工作中越發顯得重要,而對於產品經理來說,更是如此。
  • 數據產品經理進階:熱力圖分析的底層邏輯
    編輯導語:作為一名數據產品經理,經常需要使用各種圖表來提取或者表達信息,熱圖就是常見的一種,它適用於網際網路產品數據指標的監控及分析,因此也被數據產品經理們廣泛應用。隨著數據的重要性逐漸提升,產品經理也需要加強對數據的分析能力。本篇文章中,作者為我們揭示了熱力圖分析的底層邏輯。
  • 3問產品經理 | 人人都是產品經理
    2019年10月19-20日,人人都是產品經理舉辦的【 2019上海產品經理大會】完美落幕。餓了麼高級產品專家 劉瀟老師,她為我們帶來《從基石到武器,業務系統的進階之路》