三種線性方法的優化
三種線性方法優化方法
有限記憶BFGS(L-BFGS)
L-BFGS是擬牛頓方法家族裡的一個優化演算法,解決形式的優化問題。L-BFGS方法以二次方程來逼近目標函數來構造黑塞矩陣,不考慮目標函數的二階偏導數。黑塞矩陣由先前的迭代評估逼近,所以不像直接使用牛頓方法一樣可垂直擴展(訓練特徵的數目)。所以L-BFGS通常比其他一階優化方法能更快收斂。
象限有限記憶擬牛頓(OWL-QN)演算法是L-BFGS的擴展,它可以有效處理L1和彈性網格正則化。
L-BFGS在Spark MLlib中用於線性回歸、邏輯回歸、AFT生存回歸和多層感知器的求解。
加權最小二乘法的正規方程求解器
MLlib通過WeightedLeastSquares提供加權最小二乘法的正規方程求解器。
給定n個加權觀察值():
是第i個觀察值的權重
是第i個觀察值的特徵向量
是第i個觀察值的標籤。
每個觀察值有m個特徵。我們使用下面的最小二乘法公式:
其中是正則化參數,是標籤的總體標準偏差,是第j列特徵的總體標準偏差。這個目標函數有一個解析解,它只需要一個收集數據的必要統計量。與原始數據需要唄存儲在分散式系統中不同,如果特徵數量相對較小,統計信息可以存儲在單機中,然後我們可以通過Cholesky分解來解決目標函數。
加權最小二乘僅支持L2正則化,提供選項啟用或禁用正則化和標準化。為了使正則方程逼近是有效的,加權最小二乘要求特徵的數量不超過4096個。對於規模更大的問題,是有L-BFGS。
迭代加權最小二乘法(IRLS)
迭代加權最小二乘法可以用來找到廣義線性模型的極大似然估計,找到魯棒回歸和其他優化問題中的M估計。
它通過下面的步驟迭代地解決具體的優化問題。
1.線性化目標並更新相應的權重
2.解決加權最小二乘問題
3.重複上述步驟直至收斂
因為在第二步中使用了加權最小二乘方法在每次迭代中,所以它同樣要求特徵數量不超過4096個。現在IRLS是廣義線性回歸的默認方法。
推薦閱讀:
※Pipeline詳解及Spark MLlib使用
※在Spark上實現線性收斂的隨機優化演算法SVRG
※Spark MLlib 數據預處理-特徵變換(二)