只是一个想法:
简约模型一直是模型选择的默认选择,但是这种方法在多大程度上已经过时了?我对我们的简约化趋势多少是一次算盘和滑动规则(或更确切地说,是非现代计算机)的遗迹感到好奇。当今的计算能力使我们能够构建越来越复杂的模型,并且具有越来越强大的预测能力。由于计算能力不断提高的上限,我们是否真的仍然需要趋向于简化?
当然,更简单的模型更易于理解和解释,但是在数据量不断增长,变量数量越来越多,并且转向更加关注预测能力的时代,这可能甚至不再可能实现或不必要。
有什么想法吗?
只是一个想法:
简约模型一直是模型选择的默认选择,但是这种方法在多大程度上已经过时了?我对我们的简约化趋势多少是一次算盘和滑动规则(或更确切地说,是非现代计算机)的遗迹感到好奇。当今的计算能力使我们能够构建越来越复杂的模型,并且具有越来越强大的预测能力。由于计算能力不断提高的上限,我们是否真的仍然需要趋向于简化?
当然,更简单的模型更易于理解和解释,但是在数据量不断增长,变量数量越来越多,并且转向更加关注预测能力的时代,这可能甚至不再可能实现或不必要。
有什么想法吗?
Answers:
@Matt的原始答案在描述简约性的好处之一方面做得很好,但我认为它实际上并不能回答您的问题。实际上,简约不是黄金标准。现在不是,也从来没有。与简约有关的“黄金标准”是泛化错误。我们想开发不会过度拟合的模型。与样本中的样本一样,这对于样本外的预测(或可解释或具有最小误差)很有用。事实证明(由于上述原因),简约实际上是泛化错误的良好代理,但绝不是唯一的错误。
真的,请考虑为什么我们要使用交叉验证或引导或训练/测试集。目标是创建具有良好泛化精度的模型。很多时候,这些评估样本性能的方法的确会导致选择复杂度较低但并非总是如此的模型。举一个极端的例子,假设甲骨文为我们提供了一个真实但极其复杂的模型,一个糟糕却却简约的模型。如果简约是我们的目标,那么我们将选择第二个,但实际上,第一个是我们想学习的东西。不幸的是,很多时候最后一句话是“如果可以的话”。
简约模型不仅是由于计算要求,而且对于泛化性能也是理想的。要实现完全准确地覆盖样本空间的无限数据的理想是不可能的,这意味着非简约模型可能会过度拟合和建模样本总体中的噪声或特质。
使用数百万个变量构建模型当然是可能的,但是您将使用对输出没有影响的变量对系统进行建模。您可以在训练数据集上获得出色的预测性能,但是那些无关紧要的变量很可能会在看不见的测试集中降低您的性能。
如果一个输出变量确实是一百万个输入变量的结果,那么最好将它们全部放入预测模型中,但前提是要有足够的数据。为了准确地建立这种规模的模型,您至少需要数百万个数据点。简约模型是很好的,因为在许多现实世界系统中,根本没有如此大小的数据集,此外,输出很大程度上由相对较少的变量决定。
我认为先前的答案在提出重要观点方面做得很好:
我想补充一些日常工作经验中提出的意见。
当然,预测准确性论证的概括性很强,但是在研究重点上存在学术偏见。通常,在生成统计模型时,经济性并不总是将预测绩效作为主要考虑因素。通常,对于给定的应用程序,有用模型的外观受到很大的外部约束:
在实际的应用领域中,许多(如果不是全部)考虑因素是在预测性能之前(而不是之后)出现的,而模型形式和参数的优化受到这些需求的限制。这些约束中的每一个都会使科学家偏向简约。
的确,在许多领域中,这些限制正在逐步解除。但是,确实幸运的科学家确实忽略了它们,而只是将注意力集中在最小化泛化误差上。
对于刚离开学校的科学家来说,这可能非常令人沮丧(这绝对是对我来说,并且一直持续到我觉得对我的工作施加限制是没有道理的)。但是,最后,努力生产出不可接受的产品是一种浪费,这感觉比科学自豪感更糟。
我认为这是一个很好的问题。在我看来,简约性被高估了。自然很少是简约的,因此我们也不必期望精确的预测或描述模型也是如此。关于可解释性问题,如果您选择一个仅因您能够理解而仅适度符合现实的简单模型,您究竟在理解什么?假设更复杂的模型具有更好的预测能力,无论如何它似乎更接近于实际情况。
简约不是一个黄金开始。这是建模的一个方面。建模(尤其是预测)无法编写脚本,即您不能仅将脚本交给建模人员遵循。您宁可定义建模过程必须依据的原则。因此,简约是这些原则之一,其应用无法编写脚本(再次!)。当选择模型时,建模者将考虑复杂性。
计算能力与此无关。如果您从事的行业是您的模型,那么您的模型将被商人,产品人员或您所称呼的任何人所使用。您必须向他们解释您的模型,这应该对他们有意义。在这方面,拥有简化模型会有所帮助。
例如,您正在预测产品销售。您应该能够描述什么是销售驱动力,以及它们如何运作。这些必须与业务运作的概念相关,并且相关关系必须被业务理解并接受。对于复杂的模型,很难解释模型的结果或将差异归因于实际情况。如果您无法向业务解释您的模型,那么您将不会被它所珍视。
还有一点对预测特别重要。假设您的模型依赖于N个外生变量。这意味着您必须首先获取这些变量的预测才能预测因变量。N越小,您的生活就越轻松,因此更简单的模型也更易于使用。
也许可以回顾一下Akaike信息准则,这个概念我昨天才偶然发现。AIC试图确定哪种模型和多少个参数是当前观察的最佳解释,而不是任何基本的Occam的Razor或简约方法。