面試官A:你知道AB測試怎么做嗎纹腌?
面試官B:你有AB測試的經(jīng)驗嗎?
面試官C:AB測試的統(tǒng)計學原理可以簡單說一下嗎滞磺?
... ...
現(xiàn)在升薯,互聯(lián)網(wǎng)場景下,越來越多的公司or面試官開始考察AB-Test相關的知識
似乎是懂了AB測試击困,年薪就達到XX萬(請自行腦補)
那么涎劈,為了大家都能年薪XX萬广凸,我們今天來聊下
AB-Test那些事兒
AB-Test的起源
AB測試的概念來源于醫(yī)學的雙盲實驗盲镶。
用戶被隨機分組成兩組九杂,在不知情的情況下,拿到了測試用藥和安慰劑谷饿。經(jīng)過一段時間的實驗后听怕,比較這兩組病人的表象是否具有顯著的差異,從而決定測試用藥是否有效檐涝。
同樣,互聯(lián)網(wǎng)公司們在采取AB測試時也用了同樣的概念
將web或者app界面或者流程,拆分為多個版本页畦,在同一時間段里,分別讓同質(zhì)化的用戶使用裙戏。之后收集相關的業(yè)務數(shù)據(jù),最后評估出最好的版本形病,從而達到效果最大化扔傅。
從本質(zhì)上來說伊履,AB-Test是對某唯一變化的有效性進行測試的實驗
#請忽略我的強行過渡
很多同學說力穗,知道了AB-test的起源巫员,對我們實際工作并沒有啥幫助
那么,接下來袖瞻,讓我們說說AB-Test的具體步驟把
AB-Test的步驟
開局先上圖:
根據(jù)上圖,我們把AB-Test拆分為實驗前 + 實驗中 + 實驗后來大致講解下實驗的流程及步驟
實驗前:
1、設定項目目標:即本次AB測試的主體是什么斋配,一個頁面優(yōu)化爬范,一個app功能搭儒,一個文案修改?
2步咪、本次測試的用戶群體:是面對整體用戶仇矾,還是部分用戶?是需要分版本生效垫卤,還是全部生效旺遮?
3鸣剪、預計會達到的目標:比如點擊率,如預期10%上漲至15%用狱,需要有個心理預期
4祟滴、計算樣本量:根據(jù)預計效果,以及顯著性水平歌溉,計算出所需樣本量
5垄懂、計算流量分配比例:當計算出樣本量后,我們需要根據(jù)當前流量,制定分流計劃,是分群還是分層监透,或者同時進行
6、規(guī)劃整理以上內(nèi)容漫谷,進行AB測試前的文檔落盤,方便實驗后進行效果觀測和實驗結果評估
實驗中:
1蹂析、實驗上線:根據(jù)事前設定的 測試功能舔示,分流比例,投放人群進行線上AB測試
2电抚、空白組確認:空白組惕稻,是否真的空白組,一定需要確認
3喻频、AB生效確認:檢驗線上AB是否生效缩宜,以及AB測試是否按照計劃比例分流
4、如果為了驗證分流是否有效甥温,及實驗效果的顯著性檢驗锻煌,我們在AB時,可以進行AA實驗
實驗后:
1姻蚓、實驗有效性檢測:判斷實驗是否達到最小樣本量宋梧,從而能夠以較大概率避免兩個統(tǒng)計錯誤的發(fā)生(棄真錯誤 &? 取偽錯誤)。一般情況下狰挡,通過AA實驗的顯著性差異檢驗捂龄,就能判斷實驗結果有效
2释涛、實驗效果比較:即通過對比AB實驗下,實驗組及基準組的區(qū)別倦沧,是否有顯著差異唇撬,是否達到預期,從而判斷后續(xù)迭代策略
以上展融,就差不多是AB-Test的整體步驟
當然窖认,在實驗的過程中,也會碰到很多坑
我們也提前幫大家“預警“一下都有哪些坑
AB-Test的一些坑
1告希、用戶屬性一定要一致
如果上線一個實驗扑浸,我們對年輕群體上線,年老群體不上線燕偶,實驗后拿著效果來對比喝噪,即使數(shù)據(jù)顯著性檢驗通過,那么指么,實驗也是不可信的酝惧。因為AB測試的基礎條件之一,就是實驗用戶的同質(zhì)化涧尿。即實驗用戶群系奉,和非實驗用戶群的 地域檬贰、性別姑廉、年齡等自然屬性因素分布基本一致。
2翁涤、一定要在同一時間維度下做實驗
舉例:如果某一個招聘app桥言,年前3月份對用戶群A做了一個實驗,年中7月份對用戶群B做了同一個實驗葵礼,結果7月份的效果明顯較差号阿,但是可能本身是由于周期性因素導致的。所以我們在實驗時鸳粉,一定要排除掉季節(jié)等因素扔涧。
3、AB測試一定要從小流量逐漸放大
如果上線一個功能届谈,直接流量開到50%去做測試枯夜,那么如果數(shù)據(jù)效果不好,或者功能意外出現(xiàn)bug艰山,對線上用戶將會造成極大的影響湖雹。所以,建議一開始從最小樣本量開始實驗曙搬,然后再逐漸擴大用戶群體及實驗樣本量摔吏。
4鸽嫂、如果最小樣本量不足該怎么辦
如果我們計算出來,樣本量需要很大征讲,我們分配的比例已經(jīng)很大据某,仍舊存在樣本量不足的情況,那么我們只能通過拉長時間周期诗箍,通過累計樣本量來進行比較
5哗脖、是否需要上線第一天就開始看效果?
由于AB-Test扳还,會影響到不同的用戶群體才避,所以,我們在做AB測試時氨距,盡量設定一個測試生效期桑逝,這個周期一般是用戶的一個活躍間隔期。如招聘用戶活躍間隔是7天俏让,那么生效期為7天楞遏,如果是一個機酒app,用戶活躍間隔是30天首昔,那生效期為30天
6寡喝、用戶是否生效?
用戶如果被分組后,未觸發(fā)實驗勒奇,我們需要排除這類用戶预鬓。因為這類用戶本身就不是AB該統(tǒng)計進入的用戶(這種情況較少,如果有赊颠,那在做實驗時打上生效標簽即可)
7格二、用戶不能同時處于多個組
如果用戶同時屬于多個組,那么竣蹦,一個是會對用戶造成誤導(如每次使用顶猜,效果都不一樣),一個是會對數(shù)據(jù)造成影響痘括,我們不能確認及校驗實驗的效果及準確性
8长窄、如果多個實驗同時進行,一定要對用戶分層+分組
比如纲菌,在推薦算法修改的一個實驗中挠日,我們還上線了一個UI優(yōu)化的實驗,那么我們需要將用戶劃分為4個組:A驰后、老算法+老UI肆资,B、老算法+新UI灶芝,C郑原、新算法+老UI唉韭,D、新算法+新UI犯犁,因為只有這樣属愤,我們才能同時進行的兩個實驗的參與改動的元素,做數(shù)據(jù)上的評估
9酸役、特殊情況(實際情況)
樣本量計算這步住诸,可能在部分公司不會使用,更多的是偏向經(jīng)驗值涣澡;
假設檢驗這一步贱呐,部分公司可能也不會使用;
大部分公司入桂,都會有自己的AB平臺奄薇,產(chǎn)運更偏向于平臺上直接測試,最后在一段時間后查看指標差異抗愁。
對于這兩種情況馁蒂,我們需要計算不同流量分布下的指標波動數(shù)據(jù),把相關自然波動下的閾值作為波動參考蜘腌,這樣能夠大概率保證AB實驗的嚴謹及可信度
以上沫屡,就是本期內(nèi)容,希望對你有幫助