ISLR系列((4.3)模型选择|ISLR系列:(4.3)模型选择 PCR & PLS)
Linear Model Selection and Regularization
此博文是 An Introduction to Statistical Learning with Applications in R 的系列读书笔记,作为本人的一份学习总结,也希望和朋友们进行交流学习。
该书是The Elements of Statistical Learning 的R语言简明版,包含了对算法的简明介绍以及其R实现,最让我感兴趣的是算法的R语言实现。
【转载时请注明来源】:http://www.cnblogs.com/runner-ljt/
Ljt勿忘初心无畏未来
作为一个初学者,水平有限,欢迎交流指正。
前两小节介绍的模型选择方法,要么是选择全体自变量的一个合适子集,要么是使得某些自变量的回归系数收缩为0.这两种方法都是建立
在初始自变量集上,而本小节将要介绍的主成分分析(PCR)和偏最小二乘回归(PLS)是将初始自变量转化为新的变量进行回归的方法。
PCR是一种非监督学习方法,能够有效的降低自变量的维数,消除多重共线性的影响。
PLS是一种新型的多元统计数据分析方法,近十年来,它在理论、方法和应用方面都得到了迅速的发展。密西根大学的弗耐尔教授称偏最小
二乘回归为第二代回归分析方法。不同于PCR,PLS为一种监督式的学习方法,其目的是既找到能够解释自变量同时也能够解释因变量的方向。
偏最小二乘回归=多元线性回归分析+典型相关分析+主成分分析。
PLS有以下优点:
(1)PLS是一种多因变量对多自变量的回归建模方法
(2)能够在自变量存在严重多重共线性的情况下进行回归建模
(3)允许在样本量少于自变量个数的情况下进行建模
(4)最终模型包含所有自变量,易于辨别系统信息和噪声,自变量的回归系数便于解释
PCR&PLS
pcr(formula,data,scale=F,validation = c("none", "CV", "LOO"))
pls(formula,data,scale=F,validation = c("none", "CV", "LOO"))
validation:验证方法CV: 10折交叉验证; LOO :留一验证
输出结果:CV score : the root mean squared error均方根误差/标准误差
the percentage of variance explained
validationplot(object,val.type=c('RMSEP','MSEP','R2')) 验证统计量绘图函数
object:mvr对象
val.type=c('RMSEP','MSEP','R2') :RMSEP:预测均方根误差;
MSEP:预测均方误差
> library(ISLR) > library(pls) > set.seed(2) > Hitters<-na.omit(Hitters) > > pcr.fit<-pcr(Salary~.,data=https://www.it610.com/article/Hitters,scale=T,validation='CV') > summary(pcr.fit) Data:X dimension: 263 19 Y dimension: 263 1 Fit method: svdpc Number of components considered: 19VALIDATION: RMSEP Cross-validated using 10 random segments. (Intercept)1 comps2 comps3 comps4 comps5 comps6 comps7 comps8 comps9 comps10 comps CV452348.9352.2353.5352.8350.1349.1349.6350.9352.9353.8 adjCV452348.7351.8352.9352.1349.3348.0348.5349.8351.6352.3 11 comps12 comps13 comps14 comps15 comps16 comps17 comps18 comps19 comps CV355.0356.2363.5355.2357.4347.6350.1349.2352.6 adjCV353.4354.5361.6352.8355.2345.5347.6346.7349.8TRAINING: % variance explained 1 comps2 comps3 comps4 comps5 comps6 comps7 comps8 comps9 comps10 comps11 comps12 comps X38.3160.1670.8479.0384.2988.6392.2694.9696.2897.2697.9898.65 Salary40.6341.5842.1743.2244.9046.4846.6946.7546.8647.7647.8247.85 13 comps14 comps15 comps16 comps17 comps18 comps19 comps X99.1599.4799.7599.8999.9799.99100.00 Salary48.1050.4050.5553.0153.8554.6154.61 > > validationplot(pcr.fit,val.type='MSEP') > > > > set.seed(1) > pls.fit<-plsr(Salary~.,data=https://www.it610.com/article/Hitters,scale=T,validation='CV') > summary(pls.fit) Data:X dimension: 263 19 Y dimension: 263 1 Fit method: kernelpls Number of components considered: 19VALIDATION: RMSEP Cross-validated using 10 random segments. (Intercept)1 comps2 comps3 comps4 comps5 comps6 comps7 comps8 comps9 comps10 comps11 comps12 comps CV452346.7342.3341.9343.3344.2343.6340.9338.4338.9337.2335.5336.8 adjCV452346.4341.8341.2342.3342.7341.9339.2336.7337.1335.7334.1335.1 13 comps14 comps15 comps16 comps17 comps18 comps19 comps CV336.5335.7336.1336.2336.1335.9337.6 adjCV334.8334.0334.4334.5334.4334.2335.7TRAINING: % variance explained 1 comps2 comps3 comps4 comps5 comps6 comps7 comps8 comps9 comps10 comps11 comps12 comps13 comps X38.0851.0365.9873.9378.6384.2688.1790.1292.9295.0096.6897.6898.22 Salary43.0546.4047.7248.7150.5351.6652.3453.2653.5253.7754.0454.2054.32 14 comps15 comps16 comps17 comps18 comps19 comps X98.5598.9899.2499.7199.99100.00 Salary54.4754.5454.5954.6154.6154.61 > > validationplot(pls.fit,val.type='MSEP')
文章图片
文章图片
【ISLR系列((4.3)模型选择|ISLR系列:(4.3)模型选择 PCR & PLS)】转载于:https://www.cnblogs.com/runner-ljt/p/4871399.html
推荐阅读
- 【欢喜是你·三宅系列①】⑶
- 你不可不知的真相系列之科学
- 人脸识别|【人脸识别系列】| 实现自动化妆
- 2018-06-13金句系列7(金句结构-改编古现代诗词)
- Unity和Android通信系列文章2——扩展UnityPlayerActivity
- 乡野村趣系列之烧仙草
- Java内存泄漏分析系列之二(jstack生成的Thread|Java内存泄漏分析系列之二:jstack生成的Thread Dump日志结构解析)
- 15、IDEA学习系列之其他设置(生成javadoc、缓存和索引的清理等)
- 【年终激励系列】之五(年终奖如何与考核紧密相连)
- 剥削劳动力系列(企业家剥削你时,他要付出巨大的代价)