在python scikit中学习多标签朴素贝叶斯的先验 - 学习

时间:2018-05-27 20:24:44

标签: python-2.7 scikit-learn naivebayes multilabel-classification scikit-multilearn

我正在制作多标签分类。我在python scikit-learn上使用了GaussianNB函数。目标是具有(N,L)形状的阵列,其中L是类的数量,N是观察的数量。

我用三种方法来处理多标签案例:

  1. 二元相关性
  2. 链模型
  3. label powerset
  4. 我有L类的先前分布,它是一个(L,)形状的数组。我尝试通过priors参数将此先前分布合并到GaussianNB中,如此

    classifier = BinaryRelevance(GaussianNB(priors = prior_dist))
    

    但是,它会返回以下错误

    ValueErrors: number of priors must match number of classes
    

    在多标签的情况下,在高斯NB中指定先验的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

我还没有在scikit-multilearn中添加对此功能的支持,但是添加起来似乎很容易-您可以将其设置为feature request in scikit-multilearn吗?我认为我有一个添加方法的想法,但是我们可以在github中进一步跟踪该问题。