什么是A/B測試?
A/B 測試是一種產品優化的方法,為同一個優化目標制定兩個方案(比如兩個頁面),讓一部分用戶使用A 方案(稱為控制組或對照組),同時另一部分用戶使用 B 方案(稱為變化組或試驗組),統計並對比不同方案的轉化率、點擊量、留存率等指標,以判斷不同方案的優劣並進行決策。
A/B測試的本質:
A/B測試中是用對照版本和試驗版本這兩個樣本的數據來對兩個總體是否存在差異進行檢驗,所以其本質是使用假設檢驗中的獨立樣本t檢驗 。
零假設為:試驗版本的總體參數與對照版本的總體參數無顯著差異。
備擇假設為:試驗版本的總體參數與對照版本的總體參數有顯著差異。
A/B測試的兩種做法:
1,連續測試(Consecutive Testing):對所有用戶第一階段投放A版本,第二階段投放B版本。
優點是容易部署和跟蹤,不需要分流用戶;缺點是結果沒有同步測試那么准確,因為隨着時間的推移,在測試過程中可能發生很多不可控的變化。
2,同步測試(Synchronous Testing):在同一時間段,將用戶分流到不同方案,一部分用戶使用A版本,一部分用戶使用B版本。
優點結果比連續測試准確;缺點是實現比較復雜,需要選擇有效的試驗組,制定分流方案。
一般來說,A/B測試都是采用同步測試(Synchronous Testing)的方法。
A/B測試的步驟:
1,通過數據分析,找到現有產品中可能存在的問題,針對性地提出產品優化的方案並進行假設。例子:“假設把注冊流程中的圖片校驗碼方式,改成短信校驗碼的方式,注冊轉化率可能會提升”。
2,確立優化目標和比較指標。設立可量化的、可以落實到某一個具體功能點的、可實施的小目標。比如:“通過優化注冊流程,將注冊轉化率提升20%”。
3,設計優化版本並完成開發。
4,確定測試時長。
5,確定分流方案(每個測試版本的分流比例)。
6,按照分流比例開放線上流量進行測試。
7,收集實驗數據進行有效性判斷和效果判斷。
8,根據試驗結果有以下幾種可能:①發布新版本;②調整分流比例繼續測試;③在未達成目標效果的情況下繼續優化迭代方案,重新開發並上線試驗。
其他常見問題:
1,測試時長應該設定多久?
測試的時長不宜過短。用戶進入到新方案中,很可能因為好奇而表現得更加活躍,但隨着時間的推移,逐漸趨於冷靜,數據表現回到本該有的水平,如果實驗觀察期設置的過早,則容易得出錯誤的結論。適應期的長短通常以足量用戶參與試驗后的2到3天為宜。適應期過后的試驗時間長短除了需要考察樣本量外,還需要參考用戶的行為周期,譬如說電商用戶的購買行為有較強的周期規律,周末的購買量與工作日會有顯著差異,這時測試的周期需要能夠覆蓋一個完整的周期,也就是應該大於1周。
但是測試時間也不宜太長,因為A/B測試是對線上多個版本的測試,這也就意味着線上系統需要同時維護多個可用的版本,長時間的A/B測試無疑加大了系統的復雜性。
2,應該怎樣對用戶進行分流?
分流也就是抽樣,應該保證同時性、同質性、唯一性、穩定性。
①同時性:分流應該是同時進行的。
②同質性:分出的用戶群在各維度的特征都應相似。可以基於用戶的設備特征(例如手機機型、操作系統版本號、手機語言等)和用戶的其他標簽(例如性別、年齡、新老用戶、會員等級等)進行分群,每一個A/B測試都可以選定特定的用戶群進行試驗。
③唯一性:即要求用戶不被重復計入測試。
④穩定性:每次用戶都應被分到相同的實驗版本,這樣可以保證用戶體驗的一致性,保證用戶能夠在適應新版本的情況下有穩定的表現。
3,什么是A/A測試?
A/A測試將分給原始版本的流量再次划分,分出的兩組流量分別給兩個相同的原始版本進行測試。A/A測試用來評估兩個實驗組是否是處於相同的水平,是為了測試埋點、分流、實驗統計的正確性,增加A/B測試的結論可信度。如果AA實驗的結果不存在顯著差異,那么可以認為實驗結果是有效的,進而可以對新老版本的實驗結果進行進一步的判斷。
4,A/B測試只能同時測試2個方案嗎?
A/B測試不是只能測試A方案和B方案,實際上一個測試可以包含A/B/C/D/E/……多個版本,但是要保證是單變量的測試,比如按鈕的顏色---赤/橙/黃/綠/青/藍/紫,那么這七個方案可以同時做A/B測試,但如果某方案在旁邊新增了另一個按鈕,即便實驗結果產生了顯著差異,我們也無法判斷這種差異的成因究竟是什么。
參考:
