引言
分层是指您根据分类特征(例如,在对疾病进行分类时,一个分类器用于男性和一个分类器用于女性)训练每个数据子集的模型。
预期训练错误
我希望分层总是会改善训练误差(也就是拟合),因为我实际上引入了双自由度(如果参数的数量现在是X,那么这个数字可能是2X)。另一种看待它的方式是我增加了假设空间。
观察到的训练误差
然而,当我测试我的性能(使用Matlab的TreeBagger作为基础学习器)时,与不使用分层的情况相比,当我使用分层时,我实际上得到了更差的训练错误性能。
有没有人能解释一下这个现象?
谢谢,哈南
发布于 2015-02-12 18:32:44
我的大胆猜测是:数据是相关的。如果您有数据A和B,并且它们的值是相关的,并且不(或只是稍微)依赖于是A的一部分还是B的一部分,那么您可能会得到更糟糕的结果。
极端的例子:你有两个骰子,每个骰子掷两次。
如果你试图得到掷骰子的平均值,并且你同时使用这两个数据,你会得到更好的结果,而不是假设每个骰子是不同的,并得到每个骰子的平均值。这是因为您假设数据依赖于骰子,而实际上不是。
我不知道您的应用程序或您的数据维度/数量,但我希望这个小示例能让您深入了解为什么会发生这种情况。
https://stackoverflow.com/questions/28474205
复制相似问题