迴歸&logistics迴歸筆記-七月算法(julyedu.com)4 月機器學習算法班學習筆記

以下內容摘抄於七月算法(julyedu.com)4 月機器學習算法班課堂講義

過擬合

解決方法 正則化
爲什麼正則化能抑制過擬合:從線性迴歸的角度,過擬合就是擬合的曲線過於扭曲,從係數看,就是高次項的係數不爲零

logistic迴歸

損失函數

爲什麼logistic迴歸不用和線性迴歸類似的損失函數?
這是應爲這是非凸的

性能分析

優點
- LR能以概率的形式輸出結果, 而非只是0,1判定
- LR的可解釋性強, 可控度高(你要給老闆講的嘛…)
- 訓練快
- 因爲結果是概率, 可以做ranking model
-添加feature太簡單

應用
- CTR預估/推薦系統的learning to rank/各種分類場景
- 某搜索引擎廠的廣告CTR預估基線版是LR
- 某電商搜索排序基線版是LR(廣告也是哦)
- 某電商的購物搭配推薦用了大量LR
- 某現在一天廣告賺1000w+的新聞app排序基線是LR

性能優化

關於樣本處理

關於樣本的處理
- 特徵離散化後用one-hot編碼處理成0,1值,有助於提高LR的訓練速度
- 如果要用連續值, 注意做scaling,這是爲了降低量剛的影響(但是這個並不是只正對LR)
- 試試分佈式
- 試試採樣,注意採樣方式: 日期 or 用戶 or 行爲。也就是要用層次抽樣。大樣本訓練不能隨機取

關於樣本不平衡問題
- 對樣本分佈敏感
- 下采樣(樣本量足的情況下), 上採樣(樣本數量不太足)
- 修改loss function, 給不同權重
- 指給不同類別的樣本賦予不同的權重。例如當負樣本量明顯小於正樣本時,可以增加負樣本的權重
- 採樣後的predict結果, 用作排序OK, 用作判定請還原(不明白)

關於特徵的優化處理

  • 離散化
    • 映射到高維空間, 用linear的LR(快, 且兼具更好的分割性)
    • 稀疏化, 0,1向量內積乘法運算速度快, 計算結果方便存儲, 容易擴展;
    • 離散化後, 給線性模型帶來一定的非線性
    • 模型穩定, 收斂度高, 魯棒性好
    • 在一定程度上降低了過擬合風險
  • 通過組合特徵引入個性化因素(不明白)
    • uuid + tag
    • uuid + cluster_id…
  • 注意特徵的頻度(難道是指用LR來做特徵選擇?)
    • 區分特徵重要度
    • 可以產出層次判定模型(不明白)
  • 聚類/Hash:對樣本進行聚類,將聚類的類別作爲特徵
    • 增強了極度稀疏的特徵表達力
    • 減小了模型, 加速運算

關於模型/算法的參數優化

  • 選擇合適的正則化(L1, L2, L1+L2)
  • 正則化係數C:
    • C太小,起不來正則化的作用
    • C太大,會弱化了源目標函數的作用,使得決策邊界不能很好擬合樣本的分佈
  • 收斂的閾值e, 迭代輪數
  • 調整loss function給定不同權重
  • Bagging或其他方式的模型融合
  • 最優化算法選擇(‘newton-cg’, ‘lbfgs’, ‘liblinear’, ‘sag’)
    • 小樣本liblinear,
    • 大樣本sag
    • 多分類‘newton-cg’和‘lbfgs’(當然也可以用liblinear和sag的one-vs-rest)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章