拓端tecdat|Matlab廣義線性模型glm泊松回歸的lasso、彈性網(wǎng)絡(luò)正則化分類預(yù)測考試成績
原文鏈接:http://tecdat.cn/?p=24777?
原文出處:拓端數(shù)據(jù)部落公眾號
使用冗余預(yù)測變量構(gòu)建數(shù)據(jù)集并使用lasso和 glm
識別這些預(yù)測變量?。
使用lasso
正則化去除冗余預(yù)測變量
創(chuàng)建一個X
?包含 100 個觀測值和 10 個預(yù)測變量的隨機矩陣?。y
?僅使用四個預(yù)測變量和少量噪聲創(chuàng)建正態(tài)分布因變量?。
默認值
randn ;
X*權(quán)重 + randn*0.1; % 小的附加噪音
執(zhí)行lasso
正則化。
lasso
求第 75 個Lambda
?值?的系數(shù)向量?B
。

lassoglm
?識別并刪除冗余預(yù)測變量。
廣義線性模型的交叉驗證lasso
正則化
從泊松模型構(gòu)建數(shù)據(jù),并使用lasso
?確定重要的預(yù)測變量?。
創(chuàng)建具有 20 個預(yù)測變量的數(shù)據(jù)。僅使用三個預(yù)測變量加上一個常數(shù)來創(chuàng)建泊松因變量。
rng ?% 用于重現(xiàn)性
randn
exp(X)*weights + 1
構(gòu)建數(shù)據(jù)的泊松回歸模型的交叉驗證lasso
正則化。
檢查交叉驗證圖以查看Lambda
?正則化參數(shù)的效果?。
Plot('CV');
legend

綠色圓圈和虛線定位?Lambda
?交叉驗證誤差最小的位置。藍色圓圈和虛線定位具有最小交叉驗證誤差加一個標(biāo)準偏差的點。
找到對應(yīng)于兩個識別點的非零模型系數(shù)。
FitInf
find(B

FitInf
min1fnd(B)

來自最小加一標(biāo)準誤差點的系數(shù)正是用于創(chuàng)建數(shù)據(jù)的那些系數(shù)。
使用lasso
正則化預(yù)測值
加載 學(xué)生考試成績數(shù)據(jù)集。將上次考試成績轉(zhuǎn)換為邏輯向量,其中?1
?代表80以上0
?的成績,?代表80以下的成績。
ynm = (y>=80);
將數(shù)據(jù)劃分為訓(xùn)練集和測試集。
rng default % 設(shè)置可重復(fù)性的種子
Xi = X(iTain,:);
yran = yBinom
yTe = yBinom
對訓(xùn)練數(shù)據(jù)進行 3 折交叉驗證,對廣義線性模型回歸執(zhí)行lasso
正則化。假設(shè) 中的值?y
?是二項分布的。選擇對應(yīng)于Lambda
?最小預(yù)期偏差的模型系數(shù)?。
lasso(Trn,Tain,'binomial','CV',3);
ince = FitIiance;
FitIept

使用在上一步中找到的模型系數(shù)預(yù)測測試數(shù)據(jù)的考試成績。使用 指定二項式因變量的鏈接函數(shù)?'logit'
。將預(yù)測值轉(zhuǎn)換為邏輯向量。
使用混淆矩陣確定預(yù)測的準確性。
confuhart

該函數(shù)可以正確預(yù)測 31 個考試成績。然而,該函數(shù)錯誤地預(yù)測了1名學(xué)生獲得B或以上的成績,4名學(xué)生獲得B以下的成績。

最受歡迎的見解
1.R語言多元Logistic邏輯回歸 應(yīng)用案例
2.面板平滑轉(zhuǎn)移回歸(PSTR)分析案例實現(xiàn)
3.matlab中的偏最小二乘回歸(PLSR)和主成分回歸(PCR)
4.R語言泊松Poisson回歸模型分析案例
5.R語言混合效應(yīng)邏輯回歸Logistic模型分析肺癌
6.r語言中對LASSO回歸,Ridge嶺回歸和Elastic Net模型實現(xiàn)
7.R語言邏輯回歸、Naive Bayes貝葉斯、決策樹、隨機森林算法預(yù)測心臟病
8.python用線性回歸預(yù)測股票價格
9.R語言用邏輯回歸、決策樹和隨機森林對信貸數(shù)據(jù)集進行分類預(yù)測