使用牛頓法優化 OLS
普通最小二乘回歸可以用牛頓法求解嗎?如果是這樣,需要多少步驟才能實現收斂?
我知道牛頓的方法適用於兩次可微函數,我只是不確定這如何與 OLS 一起使用。
如果用於 OLS 回歸,牛頓法在一步內收斂,等效於對係數使用標準的封閉形式解。
在每次迭代中,Newton 方法基於梯度和 Hessian 構造圍繞當前參數的損失函數的二次逼近。然後通過最小化這個近似值來更新參數。對於二次損失函數(正如我們在 OLS 回歸中所做的那樣),近似值等同於損失函數本身,因此收斂發生在一個步驟中。
這假設我們使用的是牛頓方法的“香草”版本。一些變體使用受限步長,在這種情況下需要多個步長。它還假設設計矩陣具有滿秩。如果這不成立,則 Hessian 是不可逆的,因此在不修改問題和/或更新規則的情況下不能使用牛頓法(此外,在這種情況下沒有唯一的 OLS 解決方案)。
證明
假設設計矩陣 X∈Rn×d 有滿級。讓 y∈Rn 成為響應,並且 w∈Rd 是係數。損失函數為:
L(w)=12|y−Xw|22
梯度和 Hessian 是:
∇L(w)=XTXw−XTyHL(w)=XTX
牛頓法將參數設置為初始猜測 w0 ,然後迭代更新它們。讓 wt 成為迭代的當前參數 t . 更新的參數 wt+1 通過減去逆 Hessian 和梯度的乘積得到:
wt+1=wt−HL(wt)−1∇L(wt)
插入梯度和 Hessian 的表達式:
wt+1=wt−(XTX)−1(XTXwt−XTy)
=(XTX)−1XTy
這是 OLS 係數的標準封閉式表達式。因此,無論我們為初始猜測選擇什麼 w0 ,我們將有正確的解決方案 w1 單次迭代後。
此外,這是一個靜止點。請注意,表達式 wt+1 不依賴於 wt ,所以如果我們繼續超過一次迭代,解決方案不會改變。這表明牛頓法一步收斂。