我为一个高度监管的实体工作,所以我必须混淆我正在做的事情;我将提供下面的例子来说明我正在做的事情。
我正在训练一个XGB模型的NLP评论的狗品种(Tensorflow,滑雪)。我有一个关于狗的数据集,我用它来训练algo和交叉验证测试是很有希望的。
然而,我的测试数据不仅仅是关于狗的,而是关于动物的。所以数据可以是关于狗,猫,大象,什么的。现在,XGB模型给出了它不识别默认值(一个类别)的所有动物。我怎么能让我的XGB只说“我不知道”呢?是否有一种方法将默认值分配给在任何类别中没有意义的测试值?
顺便说一句,我意识到另一种可能是创建一个模型来对测试数据进行分类,但是我想看看是否有一种方法可以在XGB模型中解决这个问题。
发布于 2018-02-09 18:45:01
例如,您可以使用目标"multi:softprob“而不是"multi:softmax”。模型是相同的,但是如果是最可能的标签,则会得到每个标签的概率。然后,您可以指定一个阈值,例如0.5,并返回“未知”,如果没有任何概率超过限制。
https://datascience.stackexchange.com/questions/27655
复制相似问题