計算廣告學中的一個重要的問題是, 如果用戶產生了一次轉化(conversion, 比如購買, 注冊等), 且該用戶在轉化之前看過大量不同頻道(比如搜索, 展示, 社交等等)的廣告, 那么我們如何確定是哪個(或)那些頻道的廣告導致的這次轉化呢?
這就是歸因(Attribution)問題, 如下圖所示:
工業界采取的兩種方法是“最后閱讀獲勝”(Last View Win)和“最后點擊獲勝”(Last Click Win), 前者會把轉化歸因於這個用戶最后一次閱讀的廣告屬於的頻道, 后者會歸因於最后一次點擊的廣告屬於的頻道(如果一直沒有點擊, 則歸因於最后一次閱讀的廣告屬於的頻道). 以上兩種方法統稱為Last-Touch Attribution. 這種方法很簡單, 但是忽略了除最后一個頻道以外的所有其他頻道的廣告的影響, 所以效果不是很好.
實際上, 每個頻道都對用戶最終的轉化產生了影響, 這種考慮多個頻道的影響的模型稱之為多點歸因模型(Multi-Touch Attribution Model). 比較簡單的就是線性歸因模型和時間衰退歸因模型:
Xuhui Shao等人提出了使用機器學習的方法來解決歸因問題. 把歸因看作是分類問題, 對於每個用戶, 如果其有轉化, 則是正樣本, 否則是否樣本. 特征則選擇該用戶在各個頻道上的廣告的閱讀量. 在解決歸因問題時, 我們不僅僅要求模型得到很好地分類性能(正確的預測用戶是否有轉化), 更重要的是, 得到各個頻道對於用戶的轉化的影響, 以確定各個頻道對於用戶的轉化的作用.
可以使用邏輯斯蒂回歸(Logistic Regression)作為模型, 其得到的各個特征(頻道)的系數作為其對該用戶的轉化的影響. 另外, 因為用戶的行為很復雜, 所以單個邏輯斯蒂模型得到的系數估計的變化性可能很大, 這樣不利於解釋(因為重復試驗時得到的各個頻道對轉化的影響變化很大). Xuhui等人提出了一種新的衡量標准: V-A metric. V(variability)衡量的是模型得到的特征系數(亦即各頻道對轉化的影響)的可變性, A表示的是對用戶分類的准確性.
Xuhui等人提出使用裝袋(bagging)方法訓練多個邏輯斯蒂回歸模型, 對於每個特征, 我們求得其系數的估計的標准差, 然后取所有特征的標准差的平均值來作為V. 使用多個邏輯斯蒂模型的准確率的平均值來作為A. 算法的具體步驟為:
- 從所有的數據中隨機的抽取\(p_s\)比例的訓練樣本, 以及\(p_c\)比例的特征. 訓練一個邏輯斯蒂模型. 記錄各個特征的系數.
- 以上步驟迭代M次, 取各個特征的系數的平均值作為各個特征最終的系數值.
參考文獻:
[1]. Xuhui Shao, Lexin Li, Data Driven Multi-Touch Attribution Models.
[2]. The Math Behind Multi-Touch Attribution Model
[3]. Multi-Channel Attribution Model: The good, Bad and Ugly Models