预测模型还是解释模型。两者区别及联系
欢迎访问我的个人网站:data-scientist
统计模型是一个在开发和测试理论中强有力的工具,包括因果解释,预测和描述。在很多原则中都是用统计模型,并且认为统计模型有很高的解释性和预测能力。解释性和预测性的冲突是普遍存在的,因此我们必须了解和处理它们之间的关系。
1.introduction
1.1解释性模型
Causal theoretical model. 统计模型用于测试因果假设,通常是测量变量X对Y的潜在影响。
解释模型的作用通常是通过因果假设来进行理论创建。
1.2 预测性模型
预测同学通常是通过统计模型和数据挖掘来进行预测新的数据或未来。通过新的观测X来预测新的结果Y。预测包括时序预测,点预测,区间预测,分布预测活拍下预测,通常使用贝叶斯,频繁项,数据挖掘算法和统计模型。
1.3 描述性模型
描述性模型通常是用一种更简洁的方式来总结和表示数据的结构。
1.4 预测模型的科学价值
通常统计学家认为预测模型不具有科学性,所以被统计学家所抛弃。即使在统计学派中也被分为两类,预测性作为主要目的被认为是unacademic。
当然预测模型也是必要的科学尝试。预测模型的主要功能
(1)大规模的丰富的数据集通常很复杂,并且模式难以进行假设,使用预测模型可以解释一些潜在的新的机制。
(2)预测模型可以被用于发现新的测量和评价的体系
(3)对于复杂模式和关系的挖掘,预测模型通常可以得到更好的结果。
(4)科学发展需要严格的相关研究,预测模型是一种介于理论和实验的产物.虽然解释模型可以解释变量之间的因果关系,但是预测能力可能不如预测模型
(5)预测能力评估提供一种straightforward的方式来比较解释模型的预测能力
(6)预测模型来量化预测能力,创建benchmark上十分重要。因为预测模型可以有相比于解释模型更高的预测能力。一个较低的预测模型通常意味着我们需要进行新的数据收集,测量方式,或新的经验注意的方式。当解释模型的结果接近预测模型时表示我们对现象的理解已经很全面了。另一方面,当解释性模型的结果距离预测模型的benchmark较低时,说明我们还需要接下来的探索和理解。
1.5预测和解释模型的不同
预测模型和解释模型的冲突在于它们的科学性的根基。
预测模型和解释模型的不同在于数据不能精确的来表示和结果之间的关系。
在解释模型中,X,y时估计函数f的工具,同时,x,y也用于测试因果假设。
但是在预测模型中,函数f时工具,用于产生产生对y的预测。事实上,即使潜在的因果关系是y=f(x),但是y=f1(x)可能在x1而不是x上取得更好的结果,因为估计可能是有偏的估计,有偏估计可能会有更好的结果。
因果关联:在解释性模型中f代表着潜在的因果关系的函数,X被认为可以造成y。而预测模型中,函数f是找到X,Y 之间的关系。
理论-数据: 在解释模型中,f是完全建立在支持解释预先估计的在X,Y 之间的因果关系。而在预测模型中,直接的解释X,Y 之间的因果关系是不需要的,虽然有时候一些透明的f是期望的。
Retrospective-prospective: 预测模式是forward-looking,f时用于预测新的数据。相反的是在解释模型中,更多的是回溯,f用于检测现有的数据和假说。
Bias-variance: 方差和偏差,
[图片上传失败...(image-8f86e5-1553739784176)]
在解释性模型中,我们的目标是最小化bias来获得最精确的表达。相反,预测模型寻找最小化的bias和estimation variance的组合误差,有时会牺牲一些理论的准确度来提高经验的准确度,
1.6 void in the statistics literature
使用预测模型和解释模型的争论一直存在,但是并没有被翻译成统计语言。在模型选择中一直存在着争议,
There may be no significant difference between the point of view of inferring the true structure and that of making a prediction if an infinitely large quantity of data is available or if the data are noiseless. However, in modeling based on a finite quantity of real data, there is a significant gap between these two points of view, because an optimal model for prediction purposes may be different from one obtained by estimating the ‘true model.’
- two modeling path
2.1 研究设计和数据收集
(1)
对于解释和预测,数据的收集也不太一样,考虑样本的大小。
在解释模型中,目标是估计theory-based f 并且来使用它去推断,统计的能力是主要的考虑。减少bias需要足够的数据来进行模型测试。到达一定数量的数据后,超过的部分对于精度的提高可以忽略不计,而对于预测模型,f通常是数据决定的,通常更多的数据会带来更好的结果。
(2)对于抽样的方式:
在hierarchical data中,对于预测模型,group size的增加比group number 更有效,而解释模型则相反。
(3)实验设计的考量:
解释模型需要更多的可解释数据,但是这受限于实验环境和可获得的资源,同时解释需要需要非常干净的数据,
预测模型需要更多的其他的数据,数据维度越多越好。
(4)数据收集的设施:
解释性模型需要构建一个比较好的理论来支持,比如item的心理上含义。预测模型更多的是要保证预测数据的质量和数据的含义清楚。
(5)实验设计的方式:
Factorial designs 关注与因果解释,找到结果的含义
Response surface methodology design, 使用优化技术和非线性变换来提高解释性
2.2 数据准备
(1)缺失值的处理
如果你有很少一部分的缺失数据,对于解释模型,可以直接扔掉。而对于预测模型,则不需要扔掉这些数据。
在回归模型,对缺失变量进行dummy处理可以增加预测模型的表现,但是对于解释模型却不符合要求。
确实值的意义是否对预测有影响或者对于预测的含义不明确,所以用确实值来做解释模型通常不太合理。
(2)数据切分data partitioning
通常避免过拟合的方式是在保留测试集上进行评估模型,防止过拟合,通过交叉验证,或其他采样的方式,boost 来使得预测模型在小数据集上进行。
数据切分的目的是为了最小化方差和偏差之和。对于预测模型来说更小的样本通常会导致更大的bias,因此通过data partitioning 可以有效的提高模型的表现,但是对于解释模型的帮助很小。对于预测模型,数据切分是一个关键的步骤。
对于解释模型,做data partitioning 通常用于评估模型的鲁棒性和预测能力。
2.3 EDA
在解释模型中,EDA指向特定的因果关系,然而在预测模型中,EDA更多的是free-form,为了支撑模型来找个更多未知的关系,可能并没有正式的公式。
eda可以是毫无目的的探索,或者来验证已有的假设,评估潜在的模型,共线性和变量的转换。
降维,在预测模型中可以减少采样方差。PCA或其他降维方式解释性会比较差,但是可以作为压缩变量变量放入模型中,
2.4 变量选择。
在解释模型中,变量选择根据变量之间的因果结果和变量自身的操作。更加关注因果关系
预测模型主要关系x,y之间的关联关系而不是因果关系。主要关注响应,数据质量,数据的可获得性。对于时间序列的建模,X必须是在y之前能获得的。
2.5 选择方式(choice of methods)
causation–association, theory–data, retrospective–prospective and bias–variance
四种不同的方式将会导致不同的结果。解释性模型可以很容易的连接到潜在的理论。
对于预测模型,顶部的优先级模型可以产生更加准确的结果,但是模型f可能更加未知。虽然模型的透明性很多情况下未知,但是有很多情况下都是先提高准确度,然后再试图理解模型。
Bias-variance方面对于提高预测模型比较有效,比如ridge regression和lasso, 通过对稀疏惩罚的方式来引入bias但是降低variance.另外还有ensembke模型和bagging, boosting。
2.6 model evaluation and selection
从一系列的模型中选择最优的模型,评估模型的表现在解释模型和预测模型中采用不同的方式。
Validation:
在解释模型中,验证包含两个部分,模型验证f是否能够表示F和模型是能能很好的fit现有数据。
而对于预测模型,主要关注的是泛化能力,即模型在保留测试集上的表现。
对于解释模型,验证主要考率模型的系数是否over/under-specification,goodness of fit tests, 还有一些模型的诊断包括残差分析 residual analysis.
对于预测模型,最大的挑战是防止过拟合,通过对比测试集和训练集的表现,来检查是否出现过拟合。
对于大规模的数据验证,对于解释模型和预测模型不太相同。比如说检查共线性对于解释模型非常相关,多重共线性可以导致标准差的增大,因此很多已有的文献来剔除共线性。相反对于预测模型来说,多重共线性不是罪恶的。
去重共线性对于系数的解释能力很关键,和考率一个变量对另一个变量影响是十分关键。另外还可以评估变量变化对于结果的影响。监测波动要去除共线性。
model evaluation
考虑两方面的能力,解释能力和预测能力。
解释模型考虑变量对于结果的关系,研究者常用R2值和统计意义的F统计来表明对结果的影响。
相反预测模型聚焦于预测准确度和预测能力,考虑f在新数据上的表现。不同的任务需要考虑的评价指标不一样,例如ranking模型或者分类模型不一样。
model selection
在解释模型中,比较模型之前的解释能力。使用stepwise的方法来增加删除变量,变量的增删通过统计模型来清楚的表达。主要通过AIC,BIC来进行筛选。
AIC和BIC 提供估计不同的事情。 If the question of which estimator is better is to make sense, we must decide whether the average likelihood of a family [=BIC] or its predictive accuracy [=AIC] is what we want to estimate.
2.7 Model use and reporting
解释模型倾向于验证现有的因果推断理论,查看统计结果是否合理。
对于预测模型,f通常用于对新数据预测。在实际的应用中,目标通常专注让预测模型来支持科学研究,通过构建新的理论来产生新的假说,解释性模型的文章据记载模型理论构建和未被观测的参数和统计推断,预测部分聚焦于预测能力和比较不同的模型结果。
总结:
(1)在模型研究中,需要制定一个优化的目标
(2)即使目标是预测模型或者是解释模型,两方面的模型都要做来验证互相的结果。
对于预测模型,或许解释不是必须的,但是能够解释目的和重要性十分重要。
Reference:
[1] Shmueli G. To explain or to predict?[J]. Statistical science, 2010, 25(3): 289-310.