作者:@三瘋蘭尼斯特 && @Ainika Peng
時間:2017年11月
出處:
https://
zhuanlan。zhihu。com/p/31
530953
宣告:版權所有,轉載請聯絡作者並註明出處。
前面章節講了LR的各個基礎元件和擴充套件元件。這一節,我們介紹LR的一種擴充套件演算法 —— MLR演算法,並詳細討論它在Objective和Regularization上對LR的改進。
系列目錄傳送門見 -- CTR預估系列一覽表
1。1。6 MLR
LR 是一個線性模型。在LR中,模型在資料空間中生成一個線性分割平面,因此對於非線性的資料分佈分割效果不佳。以下圖為例,A)為一組非線性訓練資料的正負樣本分佈;對於該問題,LR會生成B)中的分割平面,而這顯然與原資料分佈相去甚遠。
MLR全稱Mixture of Logistic Regression,是一種試圖在模型側新增非線性特性的方法。MLR的主要思路在於:單一LR很難分割的問題,可以透過將資料劃分不同的region、每個region分別建立LR的方式分而治之。
在CTR問題中,劃分場景分別建模是一種常見的手法。例如,同一產品的PC/M/APP三端,其使用者的使用時間和習慣差異可能很大;比如PC可能更多是辦公時間在看,而手機則是通勤時間或者臨睡前使用更多。假設有hour作為特徵,那麼“hour=23”對於APP端更加有資訊量,而對於PC可能意義不大。因此,區分PC/M/APP三端分別建模可能提升效果。
自然地,如何找到劃分region的規則是MLR問題的核心之一。如果需要手動劃分region,方案非常依賴最初的劃分。MLR的思路是:
每個sample按權重劃分到不同的region中分別建模。
注意:並不是一個樣本被唯一分到了一個region, 而是按權重分到了不同的region。
1。1。6。1 MLR: Definition and Objective
引數定義如下:
: 樣本數
: 特徵總維數
: m 個region ——
超引數:一般是10~100
這裡和LR有一些區別:
對於每個feature, 其權重w是一個vector,而不是LR裡面的一個value。如feature
記作
。
MLR的通用定義如下:
常規情況中,
函式即一個LR。直觀描述為:把樣本根據
作為權重劃分到不同region, 再在不同region中用LR求解,之後對結果進行歸一,使其滿足輸出要求。
Special Case
: 用softmax做分片分region之後,用sigmoid做預估:
Objective and loss:和LR類似,不再展開:
1。1。6。2 MLR: Regularization
MLR 的正則化和之前略有區別,其中
正則保證稀疏性和前序一致,而
是一種相對少見的分組正則方式:
可用下圖解釋
內側的
是針對一個feature的所有引數進行L2正則;
外側的
是針對所有feature進行feature Selection。
的作用在於求分組稀疏解,為什麼求分組稀疏解?
因為每維特徵對應不止一個引數(和LR對比:LR中每維特徵只有一個引數
),所以需要這些引數都為0才能說明這維引數是“無意義的/可以被忽略的”,否則是需要保留的。
前面幾節中,我們從Naive LR、LR+Regularization、LR 的bias和運用、LR的擴充套件-MLR等方面介紹了一系列LR相關的演算法。
總結一下,LR相關章節關係和傳送門如下:
基礎的LR推導以及LR和統計的關係
正則化
Bias運用
LR的Model擴充套件 - MLR