Scikit-learn使用朴素贝叶斯进行10折交叉验证的多类分类
我正在尝试在sklearn中使用朴素贝叶斯分类器进行多分类的任务。我想通过10折交叉验证来获取分数。假设x是我的特征数组,y是标签向量,我是这样做的:
clf = MultinomialNB(fit_prior=False)
scores = cross_validation.cross_val_score(OneVsOneClassifier(clf), x, y, cv=10)
但是这样做只给了我一个包含10个分数的数组,每个分数对应一个折叠。我想要的是OvO分类器中每一对类别的分数。有谁能给我一些建议吗?
另外,有没有办法为朴素贝叶斯分类器使用自定义的平滑技术呢?
1 个回答
1
我想要的是OvO分类器中每一对类别的得分。
可惜的是,OvO的包装器现在没有公开的接口可以获取这些得分。
有没有办法为NB分类器使用自定义的平滑技术呢?
没有,Lidstone平滑目前是唯一的选择。