我正在使用Apache Mahout解决二进制分类问题。我使用的算法是OnlineLogisticRegression,我目前使用的模型强烈倾向于产生没有任何中间值的1或0的预测。
请建议一种方法来调整或调整算法,使其在预测中产生更多中间值。
提前感谢!
发布于 2013-02-12 19:08:49
分类器的测试错误率是多少?如果它接近于零,那么自信就是一种功能,而不是一个bug。
如果测试错误率很高(或者至少不是很低),那么分类器可能会过度拟合训练集:测量训练错误和测试错误之间的差异。在这种情况下,按照rrenaud的建议增加正则化可能会有所帮助。
如果你的分类器没有过拟合,那么可能是概率校准有问题。逻辑回归模型(例如,使用logit链接函数)应该产生足够好的概率校准(如果问题是近似线性可分离的,并且标签不太嘈杂)。您可以使用图检查概率的校准情况,如this paper中所述。如果这真的是一个校准问题,那么基于Platt缩放或等张回归实现自定义校准可能有助于解决该问题。
发布于 2013-02-12 15:14:30
从Mahout AbstractOnlineLogisticRegression文档中可以看出,您可以控制正则化参数lambda。增加lambda应该意味着你的权重更接近于0,因此你的预测更有保值。
https://stackoverflow.com/questions/14820458
复制相似问题