排序模型對比

 
LR
  • 可以視作單層單節點的“DNN”, 是一種寬而不深的結構,能夠處理高緯度稀疏問題,。
  • 模型優點是簡單、高效、可控性好,模型可解釋: 所有的特徵直接作用在最後的輸出結果上
  • 但是效果的好壞直接取決於特徵工程的程度,需要非常精細的連續型、離散型、時間型等特徵處理及特徵組合。通常通過正則化等方式控制過擬合。Ref:https://tech.meituan.com/2018/06/07/searchads-dnn.html
  •  
  • 爲什麼lr不能處理連續特徵(爲什麼要把連續特徵轉化爲離散特徵後送進lr?)

      因爲這樣可以增加lr的魯棒性,比如如果把年齡送進lr,那麼23和24歲本來相差不大,但是卻變成了完全不同的變量,也就是所23歲和24歲的區別程度和23歲和50歲的區別程度是一樣的,顯然不符合。或者加入一個300歲的偏差特徵也可能會影響模型,但對年齡分箱之後就可以避免上述問題,增加模型魯棒性。

 
 
 
 
GBDT+LR:
 
  • gbdt+lr相當於對原始特徵通過gbdt進行了特徵組合
  • gbdt對連續特徵劃分能力強,可以幫助lr處理連續特徵,避免了人工對連續特徵分箱操作。

 

 

FM

優點

1. 它可以自動完成特徵交叉,可以減少一部分的交叉特徵選擇工作,而且參數也不算多,調起來不會太痛苦。

2. 因爲不需要輸入那麼多的交叉特徵,所以產生的模型相對LR的模型會小很多

3. 在線計算時減小了交叉特徵的拼裝,在線計算的速度基本和LR持平(雖然兩個向量的點積的計算看上去會導致計算量翻了幾倍)。

缺點

1. 無法學習三個及以上的特徵間的關係,所以交叉特徵選擇的工作仍然無法避免。

2. 雖然從原理上好像FM學習能力更強,但在實踐中超過LR的效果也要憑實力(運氣?)

3. 從功利的角度看,FM是非常不值得嘗試的,它的工作量沒比神經網絡小多少,在這個不說深度學習都好像不懂機器的環境下,用FM算法,所能得到的資源,支持和收穫,遠比不上神經網絡,所以建議做完LR後,就直接換神經網絡吧,別搞FM了。

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章