我正在做决策树作业,我必须回答的问题之一是:“为什么从树中建立的估算器有偏见,而装袋如何帮助减少它们的差异?”。
现在,我知道过度拟合的模型倾向于具有非常低的偏差,因为它们试图拟合所有数据点。而且,我用Python编写了一个脚本,该脚本将树拟合到某些数据集(具有一个功能。它只是一个正弦曲线,带有一些偏离点,如下图所示)。因此,我想知道“好吧,如果我再次过度拟合数据,是否可以将偏差设为零?”。而且,事实证明,即使深度为10000,仍然有一些点无法通过曲线。
我尝试搜索原因,但找不到真正的解释。我猜想可能有些树可以完美地贯穿所有要点,而我得到的只是“运气不好”。或不同的数据集可能给了我无偏见的结果(也许是完美的正弦曲线?)。甚至可以说,也许在一开始就进行了切割,所以进一步切割不可能完全分离所有要点。
因此,考虑到此数据集(由于其他数据集可能有所不同),我的问题是:是否可能使树过度拟合到偏差变为零的点,或者是否总是会有一些偏差,即使实际上小?如果总是至少存在一些偏见,为什么会发生?
PS我不知道它是否可能相关,但是我使用DecisionTreeRegressor
from sklearn
将模型拟合到数据中。