0
我想通過使用glmnet
或lm.ridge
來對R進行嶺迴歸。如何在R中使用對數鏈接進行嶺迴歸
我需要做這個迴歸與log(Y)
cost ~ size + weight ⇒ log(cost) ~ size + weight
然而,我發現有一個像glm
爲glmnet
或lm.ridge
沒有聯繫。
這個問題的任何想法?
我想通過使用glmnet
或lm.ridge
來對R進行嶺迴歸。如何在R中使用對數鏈接進行嶺迴歸
我需要做這個迴歸與log(Y)
cost ~ size + weight ⇒ log(cost) ~ size + weight
然而,我發現有一個像glm
爲glmnet
或lm.ridge
沒有聯繫。
這個問題的任何想法?
使用alpha輸入參數(具有0值)爲?glmnet
函數。正如文件所述:
alpha = 1是套索罰款,α= 0是壟罰。
嘗試類似如下:
glmnet(x=cbind(size, weight), y=log(cost), alpha=0, family='gaussian')
或可能與泊松迴歸
glmnet(x=cbind(size, weight), y=cost, alpha=0, family='poission')
如果輸入的數據是不是太龐大了,你可以通過計算得知權使用公式solve(t(X)%*%X + λ*I)%*%(t(X)%*%y)
直接從訓練數據中進行嶺迴歸,其中X是您輸入的變量ABLES矩陣,ÿ是響應變量和我是單位矩陣,你可以學習使用交叉驗證從持有了數據集中的拉姆達參數的最佳值。
謝謝你,sandipan,我會試試這些。 –