我正在参加Kaggle旧金山犯罪竞赛,我目前正在尝试使用多种不同的分类器来测试基准测试表现。我正在使用来自sklearn的LogisticRegressionClassifier,没有任何参数调整,我注意到sklearn.metrict.classification_report它只预测了主要的类,即。在我的训练集中出现次数最多的类。
Intuition告诉我,这必须参数调整,但我不确定我必须调整哪些参数才能使分类器更多地意识到不太主要的类(LogisticRegressionClassifier有相当多)。目前它只预测38个或类似的3个类,所以它肯定需要改进。
有什么想法吗?
答案 0 :(得分:0)
如果您的模型仅对主要类别进行分类,那么您将面临不平衡类别的问题。这里有一些good reads来解决机器学习问题。
Logistic回归是一种二元分类器,它使用一对一或一对一的技术进行多类分类,如果你有更多的输出类(在你的情况下为33),那就不好了。尝试使用其他分类器。首先,使用softmax classifier,它是支持多类分类的逻辑分类器的扩展。在scikit learn中,将multi_class
变量设置为multinomial
以使用softmax回归。
改进模型的其他方法可能是使用GridSearch进行参数调整。
另外,我建议你也使用其他型号。