交叉验证技术纲要

机器算法验证 交叉验证
2022-02-12 12:12:23

我想知道是否有人知道交叉验证技术的概要,其中讨论了它们之间的差异以及何时使用它们的指南。维基百科列出了最常用的技术,但我很好奇是否还有其他技术,以及它们是否有分类法。

例如,我刚刚遇到一个允许我选择以下策略之一的库:

  • 坚持
  • 引导程序
  • K 交叉验证
  • 留一个
  • 分层交叉验证
  • 平衡分层交叉验证
  • 分层坚持
  • 分层引导

我试图理解分层和平衡在引导、坚持或 CV 中的含义。

如果人们愿意,我们也可以把这篇文章变成一个社区维基,并在这里收集关于技术或分类的讨论。

4个回答

您可以添加到该列表:

  • 重复交叉验证
  • 离开组交叉验证
  • 袋外(用于随机森林和其他袋装模型)
  • 632+引导程序

至于如何使用这些技术或何时使用它们,我并没有太多的建议。您可以使用 R 中的caret包来比较 CV、Boot、Boot632、leave-one-out、leave-group-out 和 out-of-bag 交叉验证。

通常,我通常使用 boostrap,因为它的计算强度低于重复 k 倍 CV 或留一法 CV。Boot632 是我选择的算法,因为它不需要比引导程序更多的计算,并且在某些情况下比交叉验证或基本引导程序更好。

我几乎总是对随机森林使用袋外误差估计,而不是交叉验证。袋外错误通常是无偏的,随机森林需要足够长的时间来计算。

K 折交叉验证 (CV) 将您的数据随机分成 K 个分区,然后您将其中一个 K 部分作为测试用例,并将其他 K-1 部分集中在一起作为您的训练数据。Leave One Out (LOO) 是一种特殊情况,您可以获取 N 个数据项并进行 N 倍 CV。从某种意义上说,Hold Out 是另一种特殊情况,您只选择 K 个折叠中的一个作为测试,而不是旋转通过所有 K 个折叠。

据我所知,10 倍 CV 几乎是必要的,因为它可以有效地使用您的数据,并且还有助于避免不幸的分区选择。Hold Out 不能有效地利用您的数据,而且 LOO 没有那么健壮(或类似的东西),但 10-ish-fold 恰到好处。

如果您知道您的数据包含多个类别,并且一个或多个类别比其他类别小得多,那么您的一些 K 随机分区甚至可能根本不包含任何小类别,这将是不好的。为了确保每个分区具有合理的代表性,您可以使用分层:将数据分解为类别,然后通过从每个类别中随机按比例选择来创建随机分区。

K-fold CV 的所有这些变体都是从您的数据中选择而无需替换。引导程序选择替换数据,因此可以多次包含相同的数据,并且可能根本不包含某些数据。(每个“分区”也将有 N 个项目,与 K-fold 不同,其中每个分区将有 N/K 个项目。)

(我不得不承认,我并不确切知道如何在 CV 中使用 bootstrap。测试和 CV 的原则是确保你不会测试你训练过的数据,所以你会得到关于您的技术+系数如何在现实世界中发挥作用的更现实的想法。)

编辑:根据评论,将“坚持无效”替换为“坚持不能有效利用您的数据”以帮助澄清。

我发现维基百科文章中链接到的参考资料之一非常有用

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.48.529&rep=rep1&type=pdf

“用于准确性估计和模型选择的交叉验证和引导的研究”,Ron Kohavi,IJCAI95

它包含对 CV 技术子集的经验比较。tl;dr 版本基本上是“使用 10 倍简历”。

...以及何时使用它们的指南...

不幸的是,这个问题比它得到的荣誉更难。交叉验证至少有两个主要用途:选择模型和评估模型性能。

粗略地说,如果您使用 CV 变体,该变体使用高训练与测试比率分割数据,这可能更适合评估。使用更大的训练集将更准确地模拟模型在整个数据集上的拟合性能。

但是高的训练与测试比率可能对选择更不利。想象一下,确实有一个您“应该”选择的“最佳”模型,但您的数据集非常大。然后,稍微过拟合的过大模型将具有与“最佳”模型几乎相同的 CV 性能(因为您将成功估计它们的虚假参数可以忽略不计)。数据中的随机性和 CV/拆分过程通常会导致您选择过拟合模型而不是真正的“最佳”模型。

参见Shao (1993),“通过交叉验证选择线性模型”,了解线性回归案例中较早的渐近理论。Yang (2007), “Consistency of Cross Validation for Comparing Regression Procedures”Yang (2006), “Comparing Learning Methods for Classification”为更一般的回归和分类问题提供了渐近理论。但是很难获得严格的有限样本建议。