python-2.7 - 在 python scikit-learn 中指定多标签朴素贝叶斯的先验
问题描述
我正在研究多标签分类。我在 python scikit-learn 上使用了 GaussianNB 函数。目标是一个具有 (N, L) 形状的数组,其中 L 是类数,N 是观察数。
我使用了三种方法来处理多标签情况:
- 二元相关
- 链条模型
- 标签权力集
我有 L 个类的先验分布,它是一个 (L,) 形状的数组。我试图通过像这样的先验参数将这个先验分布合并到 GaussianNB
classifier = BinaryRelevance(GaussianNB(priors = prior_dist))
但是,它返回以下错误
ValueErrors: number of priors must match number of classes
在多标签情况下,将先验指定为 GaussianNB 的正确方法是什么?
解决方案
我还没有在 scikit-multilearn 中添加对此的支持,但它似乎很容易添加 - 你能把它作为scikit-multilearn 中的功能请求吗?我想我知道如何添加它,但我们可以在 github 中进一步跟踪问题。
推荐阅读
- xml - 过滤掉某些 XML 节点,并用这些节点及其祖先和子节点形成另一个 XML
- wpf - WPF ComboBox SelectionChanged 事件触发两次
- azure - Azure 静态网站计数唯一客户端
- django-rest-framework - Django Rest Framework - 嵌套序列化程序 - 从列表中访问一个属性
- node.js - nodejs 的 pg-native 是否适用于 Heroku postgres?
- mysql - 返回每个组的最大值,但是当存在平局时,在 MySQL 中返回一个具有较低 id 的值
- javascript - 如何导入 socket.io npm 包 - Nodejs
- r - 试图扩大数据框,同时通过它们的因素交互两列
- php - Codeigniter 4分页与custome mysql查询
- php - 计算一个值出现多少次 PHP