- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试训练 LambdaMART 模型来对对象列表执行成对排序。我的训练数据集由 50,000 个 112 维特征向量组成。每个特征都由一个非负整数编码。
目标值是正整数(不连续)。给定两个新实例 X 和 Y,我希望我的模型能够预测 X 的目标值是否大于 Y。
由于这不是信息检索应用程序,因此查询的概念是无关紧要的。所有 50,000 个实例都属于同一个“查询”。
似乎当我运行我的模型时,即使设置为使用 70%/30% 训练验证分割,我的验证集上的偏差也为 0,并且如果我尝试,gbm.perf 函数会抛出异常采用 OOB 方法来查找最佳树数。
总的来说,我对这个包如何处理所有这些无用的命名参数感到非常困惑。我想知道要做的就是指定一个测试验证集,然后最小化树大小范围内的验证错误。不应该太多,但是这个包让我很难知道我需要设置哪些旋钮……以至于我要自己实现它,这样我就有一定的透明度并知道它在做什么。
抱歉,我可以使用一些帮助来让这个包返回有意义的验证结果。
最佳答案
我认为 LambdaMart 并不适合您的用例。该算法假设数据由组组成,每个组包含多个项目;目标是一组项目总体排列的函数。因此,要将数据拆分为训练集和验证集,属于同一组的所有项目都将分配给前者或后者。在GBM中,组的构成是通过group
参数指定的,它是一个列名列表。所有同意这些列的实例都属于同一组。
在您的场景中,您有一个单个大型“组”,其中包含训练集中的所有项目;因此,它不能分为训练集和验证集。我为您提供了两个选择:
分布
参数)。分布
“伯努利”)。关于r - 在 gbm 的 LamdbaMART 实现中的验证集上获得 0 偏差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32162740/
我正在尝试训练 LambdaMART 模型来对对象列表执行成对排序。我的训练数据集由 50,000 个 112 维特征向量组成。每个特征都由一个非负整数编码。 目标值是正整数(不连续)。给定两个新实例
我是一名优秀的程序员,十分优秀!