關于 A/B 實驗中策略長期效果評估方案的研究
一、實驗長短期效應產生的原因
A/B 實驗已經成為了一個非常普遍的量化策略效果的方法。但由于實驗時長限制等原因,實驗人員往往只能檢測到策略的短期影響或短期指標。以 UI 設計為例,當上線一個新的 UI 設計之后,通過 A/B 實驗可能發現 DAU 上漲了 1%。但 DAU 這種短期指標的上漲可能是新奇效應導致的,當用戶的新鮮感過去后,就無法判斷新的 UI 設計在三個月后是否仍具有影響。當以收入作為長期指標時,收入可能在短期內不會發生顯著改變,但由于學習效應,當新的 UI 設計提高了用戶體驗時,收入這一指標可能在三個月之后發生顯著提升。這就要求實驗人員通過短期實驗來捕捉長期效果,高效地評估策略,提升評估效率,避免有效策略的漏判。
導致實驗長短期效應產生的原因大體分為兩類:
一類是外生性原因,例如,市場達到供需均衡狀態是需要一定時間的;或者是策略受到時間影響,如季節變化、周中周末等;還可能受到突發事件的影響。
另一類是內生性原因,例如,用戶學習效應(積極的結果會強化導致該結果的行為,比如說用戶體驗會逐漸變好強化)、新奇效應(策略效果會因新鮮感的降低而減弱)及首要效應(用戶會因適應策略而導致策略效果增加);還包括推薦系統個性化推薦(推薦系統是個性化的,推薦會因用戶過去的行為不同而推薦不同的內容,久而久之會產生差異);可能沒有一個逐漸改變的過程,只是因為實驗時長有限,不能觀察到中長期北極星指標的變化,如 30 天留存的變化;以及 A/B 實驗的用戶圈定存在人群偏差,如活躍用戶比不活躍用戶更有可能被納入實驗的現象,從而導致估計的效果存在偏差。
二、工業界探究策略長期效果的方案
針對實驗長短期效應產生的內生性原因,工業界提出了相應的解決方案,共包含 7 種。接下來將逐一介紹每種方案。
1、用戶學習效應方法
用戶學習效應是指積極的效應會被強化,而消極的結果會逐漸衰減。因此在評估策略效果的時候要同時考慮策略的短期效果和因用戶學習效應帶來的長期效果。例如增加廣告 adload,即每個人可以看到的廣告條數增加,在短期內可能會使得曝光增加,即短期收益 ?RPM 出現上漲;同時該策略會影響用戶的長期體驗,并且這個用戶體驗需有一定的時間學習,使得長期收益〖LT〗_rpm 下降。因此,策略效果要考慮因用戶學習效應帶來的長期效果。
谷歌在 2015 年設計了一種可量化長期用戶學習效應(User learning effect)的實驗方法,建立短期指標變化與長期學習效應影響之間的關系,以實現通過短期可測量的指標來預測長期收益。
具體做法是設計一個 CCD(Cookie-Cookie-Day)實驗,該實驗共包含 3 個實驗組,分別為長期實驗組、對照實驗組和 CCD 實驗組。其中,長期組在實驗期間始終受策略影響,積累學習效應,對照組是沒有策略作用,CCD 實驗組是將該組用戶隨機劃分成若干份,每天抽取一份使其當天受到策略影響而其余時間不受策略影響。
傳統的標準流量實驗,只是有長期實驗和對照實驗,通過對比長期實驗前期和后期效果其實無法捕捉用戶的學習效應,因為得到的結果可能包含很多與學習效應無關的影響,如系統效應,季節效應,周末效應,后續上線策略的交互作用等。因此需要多一個 CCD 實驗,在第 d 天短期接受策略的組,通過比較第 d 天 CCD 組和長期組,可以“抹去”策略帶來的短期效果,于是兩組的差異則來自于長期效果,從而達到評估長期效果的目的。
當捕捉到每一天的長期效果后,有如下兩種應用方式。第一,通過指數函數擬合來外推長期效果;第二,通過短期指標的變化來預測長期的學習效應影響。
然而,該方法仍存在一些局限性。第一,基于 cookie 的方式并不穩定,或者存在一些用戶行為的改變,可能會導致對長期學習效應的低估;第二,在進行指數擬合時,學習速率并不一定是固定的;第三,策略的其他短期指標仍存在探索空間;第四,該方法本身的開發和探索成本較高。
2、個性化推薦方法
2023 年谷歌提出實驗長短期的差異除了受用戶學習影響外,還受到推薦系統個性化推薦效果的影響。個性化的推薦系統向用戶展示的物品(廣告)會因其過去的行為而異,而這又與用戶之前所接受的策略影響有關。因此,長期策略組的用戶受到長期策略影響而被推薦的物品/廣告會與短期組不一致,所以長期效果的結果中還會帶有因為不同個性化推薦效果的影響。
文章構建的因果圖如下,Xi 代表用戶行為(比如說點擊),S 代表用戶觀測到的系統狀態(比如說網頁的展示),W 代表用戶是否有策略影響,U 代表用戶行為偏好(無法觀察),Y 是最終效果,可以看到當前的行為既受到當前用戶行為偏好的影響,也受到當前系統狀態的影響,而系統狀態則受到策略和過往行為的影響。
在此情況下,策略的總體效應是由短期效應、用戶學習效應和個性化推薦效應三方面共同決定的。通過對 CCD 實驗進行改進,即可評估出上述三部分在 t 時刻的效果,從而建立與t的關系,進行外推,得到長期總體提升效果
谷歌共提出了三種 CCD 改造方法,本次分享以 CCD-Switch 方法為例進行闡述。相比于 CCD 實驗,CCD-Switch 方法增加了一個實驗組,該實驗組接受長期策略的影響,但被系統推薦時,該組用戶接收到的廣告會被替換成對照組中“相似用戶”接收到的廣告,保證該組用戶的推薦不受其歷史行為的影響。在此設定下,就可以通過對比四個實驗組的結果來得到總體效應的三個部分,從而推斷出策略的長期效應。
下面是一個應用該方法的具體案例。
3、短期代理指標方法
這是一個業界比較常用的做法,當實驗時長有限,不能觀察到長期北極星指標效果(如 30 天留存),選取可以代表長期效果的短期代理指標,在策略的優化和效果的評估時均可直接關注該短期代理指標,作為實驗策略對北極星指標是否有顯著影響的依據。代理指標的選擇步驟共分為如下三步:第一步,根據業務邏輯選擇大量代理指標,這個候選代理指標需要滿足以下條件:與北極星指標有高相關性;是可能被實驗策略撼動的指標;適用于實驗策略覆蓋的業務場景;第二步,通過模型和相關度分析,圈出若干個跟北極星指標關聯度高的候選代理指標,進一步精簡候選代理指標;第三步,通過實驗回測的方式,找出最敏感的代理指標,如長期指標顯著的實驗中,代理指標顯著比例最高的代理指標。
短期代理指標方法已經在業界廣泛運用。
然而該方法也存在一些明顯的局限性。首先,單一的代理指標可能不足以表征長期效應;其次,可能存在代理指標明顯提升但長期效果不顯著的問題;第三,代理指標的篩選只考慮了相關性而未檢驗因果性。
4、代理指數預測方法
代理指數預測方法是針對單一短期代理指標不足以表征長期效應這一問題而提出的,其核心思想是利用多個短期代理指標來擬合長期效應,本質上是將短期中間成果對長期效果進行回歸預測值作為長期效果的代理指標,更大程度地利用已有的信息。策略對效果指標的長期作用效果可以反應在:策略對多個代理指標的短期作用效果,可以通過實驗數據獲取;還有多個代理指標和長期效果指標之間的關系,可以通過觀察數據獲取。
在使用該方法時,需要注意滿足如下三個假設:
- Unconfoundedness,即沒有混雜因素同時影響 W 和 Y,S。
- Surrogacy,即代理變量充分表征 W 對 Y 的影響,在代理變量給定時,W 和 Y 獨立。此處可盡可能引入合適的代理變量,以捕捉 W 對 Y 的作用路徑。
- Comparability,即在代理變量給定時,實驗數據和觀察性數據結果指標 Y 分布相同。因代理指標 S 和 Y 之間的關系是根據歷史數據獲得,所以要用此來預測實驗中 T 對 Y 的長期效果,需保證此假設成立,這樣回歸模型才具有泛化性。
該方法在領英、網飛等公司被廣泛運用,而該方法的局限性在于三個假設導致的模型預測、特征選擇以及數據同質三方面的難度較大。
5、分期預測方法
該方法將總時間劃分為一系列時間窗的加和,根據上一階段的代理指標 S、本階段的策略 W、用戶協變量,建立對該階段 S 與結果 Y 的預測,不斷重復嵌套,得到一系列的預測,直到到達想要的預測時間點。為了實現這一目標,需要滿足兩個重要假設。假設效果指標受到用戶特征、當期的策略和過往的策略的共同影響,因此引入代理指標表征過往策略對效果指標的全部影響,并且假設每一期的影響效果都是同分布的。
分期預測方法的局限性主要表現在個體預測難度大、時間預測較難、同分布假設較強等方面。
6、觀察數據方法
2021 年微軟提出實驗中 user learning 效應主要來自于新奇效應或首要效應,新奇效應為前期因有新鮮感等原因效果增加后因新鮮感降低而效果衰減,首要效應為因用戶逐漸適應而效果增加。如微軟將郵件由 outlook 圖標改為郵件圖標,發現第一天 ctr 有明顯上漲,但這個漲幅在逐天減少。
基于上述發現,微軟提出 t 時刻的期望效果滿足固定策略與用戶學習效應組成的線性方程表達式,并基于 DID 思想,實現對用戶學習效應的無偏估計。
該方法能用于快速判斷短期實驗是否存在新奇效應或首要效應,若存在,一方面可以拉長實驗周期持續觀察,另一方面可以利用時間序列分析外推長期效應。該方法非常簡單,沒有實驗開發的成本。
然而,該方法的主要局限性在于可能有其它外部因素使得預估有偏;并且對期望效果的線性表達式過于簡單,可能不符合真實情況;另外,時間預測較難,可能受到周期性的影響。
7、人群偏差調整方法
2019 年微軟論文表明重度用戶可能對實驗結果產生偏差,影響實驗結果泛化性,提出一種用于偏差調整的估計量。重度用戶偏差(heavy-user bias)指頻繁用戶比不頻繁用戶更有可能被納入實驗的現象,從而導致估計的平均治療效果存在偏差。
論文基于系列假設,發現重度用戶偏差通常與實驗的長度 k 成反比,借鑒 jackknife 的思想,構造出更為無偏的估計量。這個方法假設比較強,該文作者也在探索放開部分假設的方法。業界也針對這個問題有其他方法,如根據子群占比進行權重調整,使得實驗周期內樣本分布與總體分布一致。
以上介紹了七種方案,實驗人員可以根據實際的業務情況選擇合適的方案或進行優化。
三、業務場景案例
最后,分享一個業務案例,以期引發大家思考。排序的目標是追求匹配效率最大化,一般會通過收益(如 GMV 等)來表征匹配效率,對于有轉化的用戶,GMV 可以表征匹配效率。但對于非轉化用戶,為了更好的度量匹配效率,需要將該用戶的其它行為比如點擊、點贊、評論、快滑等行為也納入考量之中。通常如果某策略 GMV 沒有變化,但用戶其他行為有所改善,那通常會認為新策略有一定效果。然而,當 GMV 的變化與用戶行為表現不一致時,該如何判斷哪個算法更好呢?我們嘗試了前文中的七種方法,但每種方法都有其局限性,因此我們也在繼續探索適合業務場景的方案。