导论
预测与解释
如果建模用于准确的预测,它不应该被模型的可解释性所限制。或许有强大的舆论认为这可能不道德,但只要模型预测的结果能被恰当的验证,模型本身是个黑匣子还是一个容易解释的模型无关紧要。
预测模型的关键部分
能否建立最优的预测模型根本上是受建模者的专业知识以及要解决问题所处的实际情况制约的。有针对性的知识能够帮助将可能有意义的信息从无关信息中分离出来,即在去除有害的噪声的同时加强潜在有用的信号。总而言之,有效的预测模型与直觉和对要解决问题所处的实际情况的深刻理解是分不开的。
专业术语
- 样本、数据点、观测值或实例
- 训练集
- 预测变量、自变量、属性或描述量
- 结果变量、因变量、目标变量、类或响应变量
- 连续数据
- 分类数据
- 模型建立、模型训练、参数估计
变量预处理—特征工程
最有效的编码数据的方法常常来自于建模者对问题的理解,而不是通过任何数学方法
单个预测变量数据变换
中心化和标准化:变换后变量的均值为0,标准差为1;这些操作可提升计算的稳健性。唯一的缺陷在于失去观测值的可解释性。
偏度:判断数据有偏的黄金准则是:如果其最大值与最小值的比例超过20,即显著有偏。对数据做变换可能会改善偏度有所帮助,如取对数、平方根或者倒数等。
多个预测变量数据变换
- 离群值问题:离群值主要为远离数据主要部分的样本。不应草率的删除或者改变观测值,在小样本中有可能代表一个特殊的子群体。部分预测模型对离群值具有抗性,比如基于树的分类模型和SVM等。一些模型对于离群值很敏感,一个解决方法是进行空间表示变换。例如:
数据降维
PCA主成分分析法:寻找若干原始预测变量的线性组合,即主成分(PC),它们捕捉了大部分的预测变量方差。
第j个主成分能够表示为:
每个主成分之间不相关。为了避免预测变量分布不同和标度不同的影响,使用前最好对有偏的变量进行变换,然
后对变量进行中心化和标准化。另外,主成分分析没有考虑建模目标或响应变量的信息。处理缺失值
了解缺失值的原因十分重要,应该确认数据缺失是否和结果变量有关系。K临近算法是一种广泛使用的插补方法。
移除预测变量
“零方差变量”“近零方差变量”:不重复取值的数目与样本量的比值低;最高频数和次高频数的比值高
预测变量间的相关性:多个预测变量之间有强烈的相关关系。避免数据中高度相关可以节约成本+获得更加稳定的模型。
增加预测变量:
区间化预测变量:区间化的好处可得到简单的陈述、不需要知道预测变量与结果变量间的关系、提高问卷回复率。但可能带来以下问题,模型表现显著下降、预测变量离散化后模型预测精度下降。效果最好的预测模型往往解释性最差,将预测变量进行手动区间化为模型解释带来的好处,往往不及造成的模型效能的损失。
过度拟合与模型调优
所有建模的努力都将受限于现有的数据。
不同模型间的选择
- 从几个最灵活但解释性最弱的模型入手,如助推决策树和支持向量机。在很多不同的应用领域,这些模型最可能给出经验上最优的结果。
- 探索最简单透明的模型(不完全是黑匣子),如多元自适应回归样条、偏最小二乘、广义可加模型或者朴素贝叶斯
- 在模型表现相似的前提下,倾向考虑最简单的模型。
