Logistic Regression常見面試題整理
基礎篇
1: 請寫一下LR的cost function和梯度下降參數迭代公式
2: 怎麼防止過擬合?
通過正則化方法。正則化方法是指在進行目標函數或代價函數優化時,在目標函數或代價函數後面加上一個正則項,一般有L1正則與L2正則等。
3: 為什麼正則化可以防止過擬合?
過擬合表現在訓練數據上的誤差非常小,而在測試數據上誤差反而增大。其原因一般是模型過於複雜,過分得去擬合數據的雜訊。正則化則是對模型參數添加先驗,使得模型複雜度較小,對於雜訊擾動相對較小。
最簡單的解釋就是加了先驗。在數據少的時候,先驗知識可以防止過擬合。
舉個例子:
硬幣,推斷正面朝上的概率。如果只能拋5次,很可能5次全正面朝上,這樣你就得出錯誤的結論:正面朝上的概率是1--------過擬合!如果你在模型里加正面朝上概率是0.5的先驗,結果就不會那麼離譜。這其實就是正則
4: L1正則和L2正則有什麼區別?
相同點:都用於避免過擬合
不同點:L2與L1的區別在於,L1正則是拉普拉斯先驗,而L2正則則是高斯先驗。L1可以產生稀疏解,可以讓一部分特徵的係數縮小到0,從而間接實現特徵選擇。所以L1適用於特徵之間有關聯的情況。L2讓所有特徵的係數都縮小,但是不會減為0,它會使優化求解穩定快速。所以L2適用於特徵之間沒有關聯的情況
因為L1和服從拉普拉斯分布,所以L1在0點處不可導,難以計算,這個方法可以使用Proximal Algorithms或者ADMM來解決。
下圖即為L2與L1正則的區別:
上圖中的模型是線性回歸,有兩個特徵,要優化的參數分別是w1和w2,左圖的正則化是l2,右圖是l1。藍色線就是優化過程中遇到的等高線,一圈代表一個目標函數值,圓心就是樣本觀測值(假設一個樣本),半徑就是誤差值,受限條件就是紅色邊界(就是正則化那部分),二者相交處,才是最優參數。可見右邊的最優參數只可能在坐標軸上,所以就會出現0權重參數,使得模型稀疏
5:L1正則化不可導,怎麼求解?
坐標軸下降法(按照每個坐標軸一個個使其收斂),最小角回歸(是一個逐步的過程,每一步都選擇一個相關性很大的特徵,總的運算步數只和特徵的數目有關,和訓練集的大小無關)
6:邏輯回歸為什麼一般性能差?
LR是線性的,不能得到非線性關係,實際問題並不完全能用線性關係就能擬合。
7:如何用LR解決非線性問題?
將特徵離散成高維的01特徵可以解決分類模型的非線性問題
高級篇:
1:請推導一下LR的cost function公式
為什麼可以用似然函數?答:因為目標是要讓預測為正的的概率最大,且預測為負的概率也最大,即每一個樣本預測都要得到最大的概率,將所有的樣本預測後的概率進行相乘都最大,這就能到似然函數了
現在要求 w使得lnL(w) 最大,用梯度下降或者牛頓法求解都行
2:為什麼邏輯回歸比線性回歸要好?
邏輯回歸和線性回歸首先都是廣義的線性回歸,
其次經典線性模型的優化目標函數是最小二乘,而邏輯回歸則是似然函數,
另外線性回歸在整個實數域範圍內進行預測,敏感度一致,而分類範圍,需要在[0,1]。邏輯回歸就是一種減小預測範圍,將預測值限定為[0,1]間的一種回歸模型,因而對於這類問題來說,邏輯回歸的魯棒性比線性回歸的要好
3:邏輯回歸與最大熵模型MaxEnt的關係?
邏輯回歸跟最大熵模型沒有本質區別。邏輯回歸是最大熵對應類別為二類時的特殊情況,也就是當邏輯回歸類別擴展到多類別時,就是最大熵模型。
4:LR參數求解的優化方法
梯度下降法,隨機梯度下降法,牛頓法,LBFGS,BFGS,OWLQN
5:工程上,怎麼實現LR的並行化?有哪些並行化的工具
邏輯回歸的並行化最主要的就是對目標函數梯度計算的並行化。
演算法的並行化有兩種
- 無損的並行化:演算法天然可以並行,並行只是提高了計算的速度和解決問題的規模,但和正常執行的結果是一樣的。
- 有損的並行化:演算法本身不是天然並行的,需要對演算法做一些近似來實現並行化,這樣並行化之後的雙方和正常執行的結果並不一致,但是相似的。
基於Batch的演算法(Batch-GD, LBFGS, OWLQN)都是可以進行無損的並行化的。而基於SGD的演算法(Ad Predictor, FTRL-Proximal)都只能進行有損的並行化。
並行化的工具MPI和OpenMP
推薦閱讀:
※他把路邊的石頭賣給人當寵物養,半年賺了600萬美元!神忽悠
※響鈴:中國遊戲圈的「問題增量」下,網易特立獨行的17年
※如何看待「泡麵吧」網事件?
※你對節目深度國際有什麼樣的建議?
※打造東南亞創投第一入口,財新國際與7點5度達成戰略合作
TAG:互聯網 |