1

我正在使用gbm.stepR 中的 dismo 包(用于 GBM)来构建增强回归树模型。然而,我最初将分类变量编码为因子 - 我被告知将因子编码为虚拟二进制变量(1 表示存在;0 表示不存在)将使算法更容易执行递归二进制拆分。

然而,今天我为包含因子的数据集(320 次运行)和另一个包含虚拟变量的数据集(另外 320 次运行)运行了一系列学习率、树复杂度和袋子分数的组合。

为了进行一般性细分,我有 4 个分类变量。

1) 第一个分类有 4 个级别 - 分为四个单独的 1/0 组合

2)第二个与(1)相同。

3) 第三个有 3 个级别 - 分为 3 个单独的 1/0 组合。

4) 最后一个分类变量有 2 个级别 - 所以 2 1/0 组合。

在比较所有运行后,在解释的偏差方面,使用因子编码的数据集每次(320 次)都优于二进制虚拟变量 1.5 - 3%。

我想知道为什么,当我期望虚拟变量更好地拟合模型时?是否dismo在幕后自动创建虚拟变量?

谢谢。

4

0 回答 0