是否有关于特征数量与训练“稳健”分类器所需的观察数量之间关系的任何论文/书籍/想法?
例如,假设我有来自两个类的 1000 个特征和 10 个观察作为训练集,另外 10 个观察作为测试集。我训练了一些分类器 X,它在测试集上给了我 90% 的灵敏度和 90% 的特异性。假设我对这种准确性感到满意,基于此我可以说它是一个很好的分类器。另一方面,我只使用 10 个点近似了 1000 个变量的函数,这似乎不是很……健壮?
是否有关于特征数量与训练“稳健”分类器所需的观察数量之间关系的任何论文/书籍/想法?
例如,假设我有来自两个类的 1000 个特征和 10 个观察作为训练集,另外 10 个观察作为测试集。我训练了一些分类器 X,它在测试集上给了我 90% 的灵敏度和 90% 的特异性。假设我对这种准确性感到满意,基于此我可以说它是一个很好的分类器。另一方面,我只使用 10 个点近似了 1000 个变量的函数,这似乎不是很……健壮?
我怀疑没有这样的经验法则普遍适用。考虑一个以两个高斯类为中心的问题和, 都具有协方差矩阵. 在这种情况下,您只需要两个样本,一个来自任一类即可获得完美分类,几乎与特征数量无关。在频谱的另一端,如果两个类都以具有协方差的原点为中心,再多的训练数据都不会给你一个有用的分类器。归根结底,给定数量的特征所需的样本量取决于数据的分布方式,通常,您拥有的特征越多,您需要的数据就越多,才能充分描述数据的分布(如果你不走运,特征数量会呈指数级增长 - 请参阅 Zach 提到的维度诅咒)。
如果您使用正则化,则原则上(上限)泛化误差与特征数量无关(请参阅 Vapnik 在支持向量机上的工作)。然而,这就留下了为正则化参数找到一个好的值的问题(交叉验证很方便)。
您可能对经典建模印象深刻,它容易受到类似龙格悖论的问题的影响,因此需要在后处理中进行一些简约调整。
然而,在机器学习的情况下,将鲁棒性作为模型优化目标的想法只是整个领域的核心(通常表示为未见数据的准确性)。所以,好吧,只要您知道您的模型运行良好(例如来自 CV),就可能没有必要打扰。
真正的问题在 ML 的情况下是不相关的属性——主要是因为由于一些随机波动,其中一些属性可能比真正相关的属性更可用于重新生成决策。显然,这个问题与简约无关,但与经典案例一样,最终会导致泛化能力的严重丧失。如何解决它是一个不同的故事,称为特征选择——但总体思路是预处理数据以消除噪音,而不是对模型施加约束。
这些年来我绝对最有价值的书之一是廷斯利和布朗的手册。本书中有很多地方讨论了这个主题,由不同的特约作者讨论。