《应用预测建模》Applied Predictive Modeling (2013) by Max Kuhn and Kjell Johnson,林荟等译
第四章 过度拟合与模型调优
4.3 偏最小二乘法( 6. 3 节)可以对1. 4 节中化工生产过程的产量进行建模。相关数据包含在AppliedPredictiveModeling软件包中,载入入数据的代码如下:
> library(AppliedPredictiveModeling)
> data(ChemicalManufacturingProcess)
分析的目的是找到能使得R^2达到最优的PLS 成分数(5. 1节)。使用重复10 折交叉验证评价了含有1到10 个成分的PLS 模型,相应的结果见如下表格:
( a )根据“一倍标准差”法,多少个PLS 成分能给出最简洁的模型?
( b )对于这个例子计算容忍度取值。如果R^2下降10% 是可以接受的,那么最佳的PLS成分数是多少?
( c )其他一些复杂度不同的模型(在本书第二部分讨论)经过训练和调优后最终结果见图4-13 。如果目的是选择使得R^2达到最优的模型,那么应该选哪个模型?为什么?
图4-13 估计的模型表现(横轴)和预测500 000 个新佯本点所需的时间(纵轴),这里使用的是化工生产的数据
( d )计算时间和模型复杂度(4.8节)是在选择模型时还要考虑的因素。给定每个模型的预测时间、模型复杂度和R^2的估计,你会选择哪个模型,为什么?
( a )根据“一倍标准差”法,多少个PLS 成分能给出最简洁的模型?
一倍标准差法(P54):
如下表所示,最优的 R^2取值对应的PLS成分数为4,其对应的R^2均值为0.545,标准差为0.0308。一倍标准差原则能够选择R^2不低于0.545-0.0308=0.5142的模型,因此在这个范围内最简单的模型为成分数为3的模型。
即,3个PLS 成分能给出最简洁的模型。
( b )对于这个例子计算容忍度取值。如果R^2下降10% 是可以接受的,那么最佳的PLS成分数是多少?
可容忍范围(P54):
用公式(X-O)/O进行计算,得下表:
成分数 | 均值 | 标准差 | 可容忍范围 |
1 | 0.444 | 0.027 | -18.53% |
2 | 0.500 | 0.030 | -8.26% |
3 | 0.533 | 0.030 | -2.20% |
4 | 0.545 | 0.031 | 0.00% |
5 | 0.542 | 0.032 | -0.55% |
6 | 0.537 | 0.033 | -1.47% |
7 | 0.534 | 0.033 | -2.02% |
8 | 0.534 | 0.033 | -2.02% |
9 | 0.520 | 0.033 | -4.59% |
10 | 0.507 | 0.032 | -6.97% |
如果R^2下降10% 是可以接受的,那么最佳的PLS成分数为2。
( c )其他一些复杂度不同的模型(在本书第二部分讨论)经过训练和调优后最终结果见图4-13 。如果目的是选择使得R^2达到最优的模型,那么应该选哪个模型?为什么?
图4-13 估计的模型表现(横轴)和预测500 000 个新佯本点所需的时间(纵轴),这里使用的是化工生产的数据
如果目的是选择使得R^2达到最优的模型,那么选随机森林random forests,因为其R^2最大(虽然从图上来看随机森林的R^2似乎并没有在统计上大于支持向量机的R^2)。
( d )计算时间和模型复杂度(4.8节)是在选择模型时还要考虑的因素。给定每个模型的预测时间、模型复杂度和R^2的估计,你会选择哪个模型,为什么?
如果除了R^2,同时考虑时间和模型复杂度,那么选择支持向量机SVM。因为支持向量机的R^2与随机森林相似,但是运行时间上支持向量机短很多。