PRML 1.3 模型选择 1.4 维度灾难

简介: PRML 1.3 模型选择 1.4 维度灾难

PRML 1.3 模型选择 1.4 维度灾难


在我们的模型选择中,我们可以通过交叉验证的方法来训练模型。但是交叉验证的缺点也很明显,随着训练次数随“分割”的增加,训练时间也是很大的消耗。而且随着模型参数的每一次修改,这些分割的模型也会再一次修改。PRML书上还讲述了一种方法。


1.3.1 AIC(赤池信息准则)


赤池信息量准则(英语:Akaike information criterion,简称AIC)是评估统计模型的复杂度和衡量统计模型“拟合”资料之优良性(英语:Goodness of Fit,白话:合身的程度)的一种标准,是由日本统计学家赤池弘次创立和发展的。赤池信息量准则建立在信息熵的概念基础上

image.png


其中:k是参数的数量,L是似然函数


结论


  • 参数越少,AIC值越小,模型越好
  • 样本数越多,AIC值越小,模型越好


1.3.2 BIC(贝叶斯信息准则)


BIC的惩罚项比AIC的大,考虑了样本数量,样本数量过多时,可有效防止模型精度过高造成的模型复杂度过高


image.png


说明: 此书后面第4章会更详细的将AIC和BIC。

下面时sklearn中的例子节选


import time
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LassoCV, LassoLarsCV, LassoLarsIC
from sklearn import datasets
diabetes = datasets.load_diabetes()
X = diabetes.data
y = diabetes.target
rng = np.random.RandomState(42)
X = np.c_[X, rng.randn(X.shape[0], 14)]  # add some bad features
# normalize data as done by Lars to allow for comparison
X /= np.sqrt(np.sum(X ** 2, axis=0))
# #############################################################################
# LassoLarsIC: least angle regression with BIC/AIC criterion
model_bic = LassoLarsIC(criterion='bic')
t1 = time.time()
model_bic.fit(X, y)
t_bic = time.time() - t1
alpha_bic_ = model_bic.alpha_
model_aic = LassoLarsIC(criterion='aic')
model_aic.fit(X, y)
alpha_aic_ = model_aic.alpha_
def plot_ic_criterion(model, name, color):
    alpha_ = model.alpha_
    alphas_ = model.alphas_
    criterion_ = model.criterion_
    plt.plot(-np.log10(alphas_), criterion_, '--', color=color,
             linewidth=3, label='%s criterion' % name)
    plt.axvline(-np.log10(alpha_), color=color, linewidth=3,
                label='alpha: %s estimate' % name)
    plt.xlabel('-log(alpha)')
    plt.ylabel('criterion')
plt.figure()
plot_ic_criterion(model_aic, 'AIC', 'b')
plot_ic_criterion(model_bic, 'BIC', 'r')
plt.legend()
plt.title('Information-criterion for model selection (training time %.3fs)'
          % t_bic)
plt.show()



20210710015952317.png



20210710020005472.png


1.4 维度灾难


1.4.1 什么是维度灾难


维度也就是数据集的特征,如果遵循奥卡姆剃刀原则, 数据的特征越简单越好。当维度很高时,某些重要的特征便会隐藏在一些无关的特征中;另一方面,训练数据时,对时间复杂度,和参数估计也是一种考验; 而且如果不对特征维度进行处理,那么一些具有相关性的特征,我们不做处理,模型的效果肯定是不好的。(例如:回归问题中的多重共线性)


1.4.2 解决方法


  • 主成分分析法PCA
  • 线性判别法LDA
  • 奇异值分解简化数据
  • 拉普拉斯特征映射
  • Lassio缩减系数法
  • 小波分析法
相关文章
|
22天前
|
机器学习/深度学习 数据采集 搜索推荐
多模型DCA曲线:如何展现和解读乳腺癌风险评估模型的多样性和鲁棒性?
多模型DCA曲线:如何展现和解读乳腺癌风险评估模型的多样性和鲁棒性?
92 1
|
22天前
|
机器学习/深度学习 数据可视化 数据库
R语言广义线性模型索赔频率预测:过度分散、风险暴露数和树状图可视化
R语言广义线性模型索赔频率预测:过度分散、风险暴露数和树状图可视化
|
21天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】维度灾难问题会如何影响K-means算法?
【5月更文挑战第15天】【机器学习】维度灾难问题会如何影响K-means算法?
【分布鲁棒】多源动态最优潮流的分布鲁棒优化方法
【分布鲁棒】多源动态最优潮流的分布鲁棒优化方法
|
22天前
|
机器学习/深度学习 数据采集 算法
【数据分享】简化的评分卡、Smote采样和随机森林的信贷违约预测
【数据分享】简化的评分卡、Smote采样和随机森林的信贷违约预测
|
22天前
|
定位技术 计算机视觉 Windows
生态学建模:增强回归树(BRT)预测短鳍鳗生存分布和影响因素
生态学建模:增强回归树(BRT)预测短鳍鳗生存分布和影响因素
|
22天前
|
定位技术 计算机视觉 Windows
R语言生态学建模:增强回归树(BRT)预测短鳍鳗生存分布和影响因素
R语言生态学建模:增强回归树(BRT)预测短鳍鳗生存分布和影响因素
|
22天前
|
机器学习/深度学习 数据采集 存储
“维度削减+逻辑回归”:如何使用PCA大幅提升乳腺癌的预测成功率?
“维度削减+逻辑回归”:如何使用PCA大幅提升乳腺癌的预测成功率?
43 0
|
9月前
|
机器学习/深度学习 数据采集 索引
探索数据的维度:多元线性回归在实际应用中的威力
探索数据的维度:多元线性回归在实际应用中的威力
|
22天前
|
机器学习/深度学习 存储 编解码
重参架构的量化问题解决了 | 粗+细粒度权重划分量化让RepVGG-A1仅损失0.3%准确性
重参架构的量化问题解决了 | 粗+细粒度权重划分量化让RepVGG-A1仅损失0.3%准确性
35 0
重参架构的量化问题解决了 | 粗+细粒度权重划分量化让RepVGG-A1仅损失0.3%准确性

热门文章

最新文章

相关实验场景

更多