導讀 雙邊市場是一個連線兩個群體的平臺,在經濟學中,我們稱之為供給方和需求方。由於需求方和供給方的行為存在彼此影響(即雙邊網路效應),導致在 AB 測試中,實驗組和對照組很難滿足獨立性的假設,因此如何設計實驗是一個比較大的挑戰。本次分享將從騰訊廣告的實踐出發,分享如何進行雙邊市場的實驗設計。
全文目錄:
1. 雙邊市場
2. 廣告流量四表格實驗
3. 解決方法
4. Counterfactual interleaving 實驗
5. 列聯表聯合取樣
6. 雙邊市場模擬系統
分享嘉賓|朱志華 騰訊 資料科學家
編輯整理|王鑫民 同濟大學
出品社群|DataFun
01
網際網路場景下,絕大多數的平臺都是某種意義下的雙邊市場。典型的雙邊市場有出行平臺,電商平臺,婚戀平臺以及廣告平臺等。雙邊網路中,供給方彼此存在競爭,需求方內部存在競爭,同時需求方的變化會引起供給方的變化,影響相互交織形成複雜的競爭環境。一般雙邊市場下的實驗設計,可以透過地域隨機化、類目隨機化或時間隨機化的方式,將競爭隔離在地域、類目內部或某段時間內。但是在廣告平臺中,常規按照地域和時間做實驗的方法都不太可行。- 廣告投放的目標客戶大部分不存在地域限制。現在的廣告場景一般為廣告通投,系統會自動選擇最適合投放的使用者,具有地域屬性的廣告,如 LBS ,佔比非常小。
- 廣告通投大盤所有使用者,不存在所謂類目的概念可以把這種競爭進行隔離。
- 廣告的效果存在很強的跨時間段影響。時間隨機化需滿足攜帶效應比較弱的重要前提,但在廣告場景下,具有非常強的馬太效應,如一個廣告 10 點獲得一定量的曝光,會極大地影響它在 11 點的曝光量,因此無法透過時間分片的方式獲得有效的結論。
一種解決搶奪的思路:將大盤的流量與廣告分別考慮成兩個樣本空間,並將流量和廣告均分成兩組,策略只在流量和廣告都處於實驗組時才生效。我們可以觀察 AD1 在 UV1 和 UV2 中的表現來判斷策略的效果,但是在流量 UV1 中,AD1 由於有策略,可能會搶奪 AD2 的效果。因此直接比較 AD1 在兩份流量的效果得到的結論不準確。由於 UV2 中是全部沒有策略的,因此 AD2 在 UV2 中不會被搶奪,可以用來作為基準值。注:藍色格子代表接受策略處理,其餘為不接受策略處理。理想情況
實驗前,兩股流量兩份廣告,假設每份25個曝光。在流量 UV1中AD1 加入策略,假設理想情況下曝光增加 3 個,提升 12%。只有搶奪沒有外溢
實際情況中,由於搶奪效應的影響,AD1 曝光增加,AD2 就一定會減少,如圖中,AD1 中 UV1 為 30,AD2 中 UV1 為 23 可能才是真實的效果,AD1UV1 中,3 代表策略調整帶來的提升,2 代表搶奪效應帶來的增長,因此使用 UV1AD1 和 UV1AD2 比較策略效果是不合理的。更復雜的情況是,AD1UV1 效果變好導致 AD1UV2 的效果同樣變好,流量可能由 25 增加至 26,進而產生連帶反應,最終 AD1UV2 對 AD2UV2 也發生搶奪的效果,因此最終比較 AD1UV1 和 AD2UV2 得到的效果也非常具有迷惑性。一個流量下不同的廣告會發生搶奪,一個廣告在不同的流量之間會產生外溢。實際大部分的雙邊市場中,當存在傳遞效應或搶奪效應嚴重時,廣告流量四表格實驗一般無法得到確切效果。為了避免傳遞效應和搶奪,將廣告流量同時分組,策略只在實驗策略實驗廣告上生效。最大的難點在於實際工程挑戰巨大,廣告平臺邏輯非常複雜,要做到廣告在不同流量下隔離彼此的影響非常困難。同時,此設計方案也存在對於小廣告資料稀疏,實驗組和對照組資料不能貢獻,實驗狀態下的效果難以代表真正全量效果,效率低,以及實驗組和對照組難以完全獨立的問題。一個簡單粗暴的方法,將實驗分兩部分,一部分 50% 流量召回 50% 的廣告,另外 50% 的對照流量召回 50% 對照廣告。此做法隔絕傳遞效應和搶奪的影響,但是實際中,在實驗流量和對照流量都只能召回原有廣告的一半,會造成巨大的收入損失。雙邊市場中具有強傳導性,供給方和需求方數量增加,100% 使用者和 100% 賣家的電商平臺相較於 1% 使用者 1% 賣家的電商平臺活躍度會急劇上升,因此直接隔離的做法,實用效果、嚴謹性和客觀性上都是不合理的。為了降低前種方法的傷害,可能有一些改進。將流量和廣告都拆分成三份:p% 實驗 + p% 對照 + (100-2p)% 空白,實驗流量出實驗 + 空白廣告,對照流量出對照 + 空白廣告,空白流量出所有廣告,策略在實驗流量和空白流量中的實驗廣告生效。但是此方法仍然存在不合理,透過空白廣告的填充,雖然減小了實驗流量和對照流量的收入損失,但是由於實驗廣告和對照廣告仍會在空白流量中競爭,仍存在搶奪的可能,進而對對照流量對照廣告產生外溢影響,導致評估結果有偏差。一種純工程角度的方法,將廣告進行復制,原始廣告和複製廣告進行流量隔離,分別使用不同的策略。最終比較每一個原始廣告和複製廣告的差別,得到策略的整體效果。此做法對收入不會產生影響,同時也完全不會影響到廣告主的感受。- 工程挑戰大:線上系統一般模組較多,策略和模型比較複雜,實際實現中較難做到分身廣告和原始廣告表現基本一致;
- 廣告數量膨脹:給檢索帶來很大的效能壓力,只能支援少數實驗;
- 很難做到實驗組和對照組獨立:廣告如果在實驗組表現好,對照組不好,整體效果也不好的情況下,廣告主會關停廣告。因此很難真的做到實驗組和對照組獨立。
廣告場景下,當進行改變平臺生態的較大調整時,可以採用此實驗方法有效獲得客觀結果。Counterfactual interleaving 實驗實驗設計分兩大類:between subject design(一個樣本只接受一種處理)和within subject design(一個樣本會接受兩種處理)。between subject design 的核心在於做到樣本之間的獨立,該如何進行分組處理;within subject design的核心在於如何處理 order effect 對評估的影響。Facebook 框架下的 Counterfactual interleaving 實驗設計本質是 within subject design,對於一個請求透過兩種演算法召回廣告,將全量廣告分別使用實驗策略和對照策略進行排序,實驗組廣告使用實驗策略生成的排名,對照組廣告使用對照策略生成的排名,最後將排名合併。Counterfactual interleaving 的實驗方法在廣告場景下雙邊市場的實驗中存在三方面的缺陷。1. 康多塞悖論(Condorcet paradox),對於 Counterfactual interleaving 的實驗機制來說,當有兩個策略並行時,意味著就存在三種排序方式,如何進行融合將會是大問題。2. Counterfactual interleaving 的實驗本質上是一種有損的實驗方式。如下圖,對照組的排序為 ad2>ad1>ad3,實驗組的排序為 ad1>ad3>ad2,融合時 ad2 按照 test 排序位列第 3,ad1 按照 control 排序位列第 2,最終曝光的是 ad3,但是 ad3 的價值不管實驗組還是對照組都不是最高的,所以這就導致了大盤的損失。這種衝突的機率隨著實驗組和對照組的流量都到 50% 時,會達到最大。Counterfactual interleaving 的核心假設:對於實驗廣告,由於廣告在融合之後的序近似等於在實驗策略下的序,因此認為觀察到的廣告表現等價於實驗策略全量情況下的廣告表現。但是實際情況下,一方面,廣告系統存在反饋的自迴圈,由於存在模型不斷訓練迭代、調價環節等因素,廣告的排序除了受策略影響外,還受廣告自身的過去表現資料影響。同時廣告在佇列中的序也受與其競爭的其他廣告表現的影響;另一方面,由於排序中的對照廣告不是按實驗策略出的,其實際表現(如消耗、GMV 等)也與「按實驗策略勝出」的表現有所差異,這種實際表現的差異又會影響對照策略在實驗中的排序,進而影響了實驗廣告在實驗策略中的排序情況。實驗受到廣告自身狀態依賴的問題影響,當策略會影響廣告的狀態,這種實驗方式評估的結果就可能有偏;實際上絕大多數的策略都會帶來這種狀態汙染的問題。Counter-factual 實驗中,觀察到實驗組廣告和對照組廣告在實驗下,樣本量在一天中從相近逐漸擴大到偏低 30%,已經出現了比較大的 SRM 問題,因此這種實驗設計得到的結論是十分存疑的。在 feedback loop 不強場景下Counterfactual interleaving 實驗有一定的適用性,但是這種狀態汙染在所有的雙邊市場或者推薦系統中都是普遍存在的,因此其實際上的使用場景非常有限。列聯表聯合取樣
接下來介紹騰訊廣告場景下的實驗方法:列聯表聯合取樣,它是對廣告流量四表格實驗的泛化和升級。問題:在四格表設計中,我們有 4 個引數,即無策略的基準效果、策略的提升效果、搶奪效應和外溢效應,但是隻有 4 個樣本,導致無法擬合。在外溢影響比較小的雙邊市場場景下,如出行平臺,四格表實驗可以適用。思路:搶奪效應依賴於流量中策略生效的廣告比例,外溢效應依賴於廣告中策略生效的流量比例。為了有更多的樣本空間,我們可以將 2*2 推廣成 m*n 的設計,採用上三角取樣的方式進行實驗。如下圖,實驗中將流量分成 5 份,大盤廣告分成 6 份。第一份廣告,所有的流量下都會生效實驗策略;第二份廣告,80% 流量下生效策略,20% 流量不生效策略,以此類推。估計搶奪&外溢對實驗效果的影響:根據同一組廣告在不同流量下所佔的流量曝光比例,得到實驗對對照在不同競爭環境下的搶奪效應;每個廣告策略生效的比例都不一樣,其不生效部分的觀測差異可以用來監測是否存在策略外溢效果。同時具備廣告實驗和流量實驗的屬性:橫向上該實驗本質是一個廣告實驗,可以觀察所有不同的廣告之間廣告主的行為變化和廣告維度的指標變化,包括廣告主出價、成本、ROI 等;縱向上可觀察各部分流量下大盤核心指標(如消耗等)的效果。廣告分桶&流量分桶下單元格的表現受三方面影響共同決定:是否接受策略處理、單元格所處流量環境廣告受處理比例、廣告本身受處理的流量比例。構造線性模型擬合結果,量化策略處理及各種效應對實驗結果的影響。 等於 1 表示接受處理, 表示第 i 份廣告受處理的比例; 表示第 j 份流量受處理的比例,模型對 取 log 是為了方便計算提升率。在實際實驗情況下,影響是非常複雜的,同時還會產生協同和競爭。α 表示策略處理影響的擬合值,β’ 表示外溢影響的擬合值,γ’ 表示搶奪影響的擬合值,β 表示協同影響的擬合值,γ 表示競爭影響的擬合值。協同:假設一個手機生產廠商採用了一種新技術,這個新技術在四個國家採用和只在三個國家採用的新技術,產生的效果也是不一樣的。因為採用這種新技術的國家越多,就可以把技術成本進行更大的攤薄,更容易產生規模效應,所以本質上,策略處理的內部會產生協同效應。競爭:流量分桶下的廣告之間,策略處理的廣告不僅存在對不接受策略處理廣告的搶奪,策略處理的廣告內部也存在競爭效應。3. 避免了雙邊市場下的供給端實驗和需求端實驗的左右互搏問題,可以將策略對整體的影響統一起來。1. 在評估時假設了搶奪和外溢都是線性的可加的,這個在實際中可能不成立; 2. 要求對供給端和需求端的隨機化,在很多業務場景下存在樣本數量較少且樣本之間差異大,因此實驗的靈敏性也是一個大問題,這也是所有雙邊市場的問題; 騰訊基於廣告系統全鏈路進行抽象和簡化,設計了一套雙邊市場模擬系統,剝離業務邏輯,只保留核心邏輯,如廣告中只保留最基本的召回、排序、模型預估能力,在廣告曝光之後,再進行資料的反饋形成 feedback loop。這套模擬系統不僅可以是實現實驗的模擬,同時也可以有效評估實驗方法,當進行很大的機制升級時,無法線上實驗,可以透過模擬系統從機制上驗證改動的合理性。舉個例子,1000 萬請求首先用 A 策略去跑一遍,得到這 1000 萬請求大盤的整體收益,然後用 B 策略跑一遍,得到 A 和 B 之間差異大小,即 B 減 A 的全量差異。然後把這 1000 萬請求再發一遍,其中 500 萬的請求用前面提到的各種實驗設計進行測試,收集資料形成資料反饋,評估出來收益有多少,以及真實收益相較於全量的 A 和全量 B 的之間 gap 大小。這就是一個非常客觀的評估方法,可以實現減小風險、量化評估、快速迭代的目標。如果透過模擬機制驗證實驗方法有問題,那麼它一定有問題。因為在最簡單的雙邊市場下實驗都不能透過,何況是複雜的商品市場。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70024420/viewspace-2934755/,如需轉載,請註明出處,否則將追究法律責任。