我正在尝试训练 LambdaMART 模型来执行成对排序的对象列表。我的训练数据集包含 50,000 个 112 维的特征向量。每个特征都由一个非负整数编码。
目标值是一个正整数(不连续)。给定两个新实例 X 和 Y,我希望我的模型能够预测 X 的目标值是否大于 Y。
由于这不是信息检索应用程序,因此查询的概念是无关紧要的。所有 50,000 个实例都属于同一个“查询”。
似乎当我运行我的模型时,即使设置为使用 70%/30% 的训练验证拆分,我的验证集偏差为 0,如果我尝试执行 OOB,gbm.perf 函数会抛出异常寻找最佳树数的方法。
总的来说,我很困惑这个包对所有这些无用的命名参数做了什么。我想知道的只是指定一个测试验证集,然后在树大小范围内最小化验证错误。不应该太多,但是这个包让我很难知道我需要设置哪些旋钮......以至于我要自己实现它,这样我就有了一些透明度并知道它在做什么。
很抱歉咆哮,但我可以使用一些帮助来让这个 pacakge 返回有意义的验证结果。