陶竹林,宋格格,黃祥林
(中國傳媒大學計算機與網絡空間安全學院,北京 100024)
CTR(Click-through rate)點擊預測是推薦系統、廣告系統中的核心技術之一,點擊預測的效果,直接影響到相關系統的整體表現,比如在廣告系統中,預測的準確率高低,直接關系到廣告效果。點擊預測模型的構建,依托用戶和內容之間的歷史交互,構建點擊預測模型的過程,也是學習用戶偏好的過程。在建模過程中,首先,由于歷史交互數據非常稀疏,我們通常需要對原始數據進行獨熱編碼,再對稀疏的編碼數據進行嵌入操作,將特征映射到低維的隱空間,通過隱空間的特征向量來表征原始特征。其次,通過特征向量之間的交互,來模擬真實特征之間的依賴關系,再結合原始特征,進行運算求和,輸入到Sigmoid函數中,最終將結果映射到[0,1]之間,得到表征點擊的概率。
點擊預測技術的核心是建模特征組合。早期的特征組合主要依賴于專家的領域知識來構建特征組合,但該方法需要大量人力投入,而且也具有很大的領域局限性。目前的研究重點在自動建模特征組合。根據建模特征組合方式的不同,我們可以將點擊預測模型大致分為傳統模型和基于神經網絡的模型。傳統模型主要有兩類方法,基于FM[1](Factorization Machine,因子分解機)的方法和基于GBDT[2](Gradient Boost Decision Tree,梯度提升決策樹)的方法。基于神經網絡的模型可以分為基于DNN(Deep Neural Network,深度神經網絡)的方法和基于GNN(Graph Neural Network,圖神經網絡)的方法。基于FM方法的方法通過優化兩個特征向量之間的運算,非常簡便的建模了二階特征交互。基于GBDT方法通過集成決策樹的方式,建模了高階的特征組合。傳統方法通過顯示的方式建模特征交互,模型相對具有很好的可解釋性,但只對線性的特征交互進行了建模,忽略現實中特征間非線性的依賴關系。基于DNN的方法,一方面,部分研究直接將特征向量連接輸入到DNN中學習高階的非線性特征,比如由 Wide&Deep[3],Deep&Cross[4],DeepFM[5]等模型中的深度組件。另一方面,通過預訓練或交互后的特征向量輸入到DNN中來學習高階的特征組合,比如PNN[6],NFM[7]。此外還有顯式建模非線性特征的DNN模型,比如CIN[8],HoAFM[9]等。目前,基于GNN的方法利用圖的高階連通性和消息傳播特征,使特征交互突破了共現特征的信息孤島限制,為結合圖神經網絡在點擊預測中的應用提供了新的研究方向。下面,我們首先介紹點擊預測模型的整體流程,然后就模型中的特征組合部分常見方法進行重點論述。
點擊預測場景中,用戶和物品的數量非常大,交互數量小,數據非常稀疏。如圖1所以,通常情況下,我們會將原始特征進行OneHot編碼(獨熱編碼),編碼后的特征總數大,非零特征少,且不包含組合特征,并不適合直接回歸預測。一般講編碼輸入到GBDT中學習組合特征,再結合原始特征進行回歸預測。此外,采取Embedding(特征嵌入)也是比較常用的方式,通過特征嵌入,可以將高維稀疏的特征編碼轉到低維的稠密特征向量,如圖2所示:

圖1

圖2
嵌入之后,原始特征以特征向量來表征,通過特征向量之間的交互運算,來表征特征之間的依賴關系。最常見的特征運算方式有點乘,叉乘和內積,點乘即兩個特征向量對位點逐位相乘,結果仍為一個向量,叉乘為為兩個向量所有點相乘,得到行列大小與向量相同的矩陣,而內積為逐位相乘求和。
點擊預測為典型的二分類問題,通常結合原始的特征向量和特征組合轉換求和之后輸入Sigmoid函數,通過該函數,可以將最終只映射到[0,1]之間,來表征點擊的概率。綜上,點擊預測模型中,建模特征組合方法的選取,直接影響到預測的結果,下面我們將重點論述特征組合中的常見方法。
通常,特征數量都非常大,依托專家特征組合,往往不全面。比如下式中的二階多項式線性模型:
(1)
假如有n個特征,那么特征交互的數量則為n的平方,同時,數據非常稀疏,這樣導致交互特征的系數矩陣wi,j很難訓練。而二階的FM的模型可定義如下:
(2)
上模方法中,我們利用特征交互系數矩陣的的對稱性來優化模型,簡化了二階特征交互,使得模型計算更加簡單。二階特征交互可表示如下:
(3)
FM既可以用于回歸,也可以用于分類,當我們將FM用于二分類問題時,便是邏輯回歸問題,它通過激勵函數sigmoid來對最終結果進行映射,獲取可能的點擊概率。點擊預測即為該模型在二分類方向的典型應用。
雖然FM方法在建模二階特征交互方面很有優勢,但并不能很好地建模高階的交互特征。 HoFM[10](High Order Factorization Machine,高階因子分解機)通過優化,建模了高階的特征交互;FFM[11](Field-aware Factorization Machine,面向域的因子分解機)將域的概念引入到了特征交互中。此外,FM的建模二階交互特征,也是各類模型中的重要組件,比如DeepFM,NFM等,這些模型融合了DNN,我們將在后續研究中介紹。
在基于GBDT的點擊預測模型中,GBDT主要用于建模特征征組合。不同于FM方法,將特征向量作為輸入,通常情況下,GBDT直接輸入原始特征來構建特征組合。GBDT為集成模型,CART分類回歸二叉決策樹為該集成模型的基礎分類器,由于采用回歸,所以在選擇最優切分特征和切分點時,采用最小均方差作為選擇的依據。同時,根據集成模型的特點,每一個新分類器都在前個分類器的預測結果上進行優化,所以模型整體上是先選擇針對整體區分度大的特征,再選擇針對少數誤差較大的樣本進行區分。模型的優化采用梯度下降的方法來學習。該模型的的表示定義如下:
(4)
由于模型是疊加關系,所以第m個分類器的預測結果可以表示為:
Fm(x)=Fm-1(x)+λmhm
(5)
GBDT各分類器學習的過程,其實也是在進行特征組合的過程。通過多棵樹的學習,可以更好地發現有效的特征和特征組合。目前關于GBDT的開源庫很多,比較知名的有XgBoost、LightGBM等。
在獲建模特征組合之后,可以直接進行線性回歸預測,也可以同原始特征向量組合進行回歸預測。其中比較經典的模型有Facebook提出GBDT+LR(Logistic Regression)的廣告點擊預測模型,該模型直接使用GBDT輸出的組合特征來進行線性回歸預測。現實中,一般使用FTRL代替RL,FTRL[12]模型為FTRL方法是在線學習的算法,由LR發展而來,過程中經歷了SGD算法、TG算法、FOBOS算法、 RDA算法等算法。該算法處理諸如LR之類的帶非光滑正則化項(例如1范數,做模型復雜度控制和稀疏化)的凸優化問題上性能非常出色,目前廣泛應用于各類在線系統中。此外,有研究現實與FM模型的融合也能取得不錯的效果。
基于GBDT的方法基于決策樹結構,顯式的構建高階的特征組合,且模型整體具有很好的可解釋性,但GBDT模型只能夠預測在訓練中出現過的特征,所以對特征變動特別頻繁的場景存在一定的局限性,GBDT和FM一樣,都是線性的特征組合,并不能建模特征間非線性的依賴關系。
隨著深度學習技術的發展,神經網絡被成功地應用于不同領域,在點擊預測方向上,也出現了大量的研究,使得預測的表現實有很好的提升。根據特征向量的交互方式不同,我們又可以基于DNN的方法分為兩類:隱式建模高階非線性交互特征的方法和顯示建模非線性高階交互特征的方法。
在基于DNN的隱式建模高階非線性交互特征方法中,一些研究直接將所有非零特征的特征向量連接,輸入到DNN中進行學習。比如Wide&Deep,Deep&Cross,DeepFM等方法中的深度學習組件,另一些研究首先通過特征向量的交互,在輸入到DNN中學習特征組合,比如PNN,NFM等。隱式建模雖然取得了不錯的效果,但其黑盒性質,其形式是未知的、不可控的;同時它們的特征交互是發生在元素級(bit-wise)而不是特征向量之間(vector-wise),違背了因子分解機的初衷。此外,單純的DNN容易導致過擬合,所以基于DNN的模型通常還與線性的模型融合,來進行聯合訓練和預測。比如Wide&Deep結合專家組合特征和DNN來進行點擊預測;DeepFM模型將Wide&Deep中的wide組件替換成FM。
顯示建模非線性高階交互特征的方法一個顯著的特點是使模型更加具有可解釋性。xDeepFM模型中的DIN組件,通過對特征向量外積進行卷積,多層疊加的方式,建模了高階的非線性交互特征,同時將原特征向量輸入DNN組件中進行聯合訓練;HoAFM模型通過特征向量與共現向量點乘,多層疊加的方式,建模了高階非線性特征,并結合特別設計的注意力機制,為組合特征乘上不同的權重,提高重要組合特征的重要性,減少無用組合特征的影響。
圖在自然語言處理領域已經取得了很大的成功,特別是GNN圖神經網絡的發展,進一步推進了圖在各領域的應用。基于圖的高階聯通特性和消息傳播知識,可以將高階鄰節點信息注入當前節點,來挖掘更深層次的隱藏信息。點擊預測場景中,Tasos[13]等人提出以查詢的內容和被查詢內容為節點,查詢且點擊為邊,來構建二分圖,通過查詢內容相似度來推薦新的廣告,以提高廣告點擊率;Feng[14]等人利用用戶的行為序列,構建了商品的共現圖,然后基于該圖來學習用戶的意圖,Zekun[15]等人則通過用戶-物品以及交互構建的二分圖,來學習交互特征。利用GNN來進行點擊預測的研究還剛剛開始,隨著研究的升入,更多基于GNN的成果將產生。
本文對點擊預測中關鍵技術進行了研究。根據點擊預測模型的流程,我們重點對特征組合進行了全面和相對深入的論述。傳統的方法只建模了線性特征,缺乏特征間非線性依賴關系的考慮,基于DNN的方法一方面受到黑盒性質的影響,缺乏可解釋性,另一方面局限于共現特征之間的信息孤島問題;近期基于GNN的方法,基于拓撲圖的高階連接特性和消息傳播機制,打破了信息孤島的限制,同時,顯式建模方式也使得模型更具可解釋性,基于GNN的方法為點擊預測模型的改進提供了重要的研究方向。