标签功率集和RakelD模型输出的解释

问题描述

我正在为具有33个标签的数据集执行多标签分类任务。

我想预测不同标签组合实例的概率。 我运行来自 scikit-multilearn 程序包的相关的 Label Powerset http://scikit.ml/api/skmultilearn.problem_transform.lp.html)和 RakelD http://scikit.ml/api/skmultilearn.ensemble.rakeld.html)模型完成这类任务。

我得到了一个稀疏矩阵的输出,其大小为测试集样本的数量X标签数量,因此看来我得到的预测得分是每个标签而不是每个标签组合。 我不确定自己在做什么错-我误解了吗?还是我用错了?

这是相关的代码行:

classifier = RakelD(
base_classifier=GaussianNB(),base_classifier_require_dense=[True,True],labelset_size=4
)

classifier.fit(X_train,y_train)
  
predictions = classifier.predict_proba(X_test)

还有

classifier = LabelPowerset(LogisticRegression(max_iter=1000))
classifier.fit(X_train,y_train)
predictions = classifier.predict_proba(X_test)

这只是输出部分(1727是测试集样本的数量,而33是标签数量)。

  (1727,24)    4.448848136222317e-17
  (1727,25)    0.9999999999999716
  (1727,26)    8.88216696887196e-23
  (1727,27)    9.592208368406972e-23
  (1727,28)    0.9997353073474586
  (1727,29)    2.9735581432191686e-12
  (1727,30)    2.445564006803013e-40
  (1727,31)    8.208621013012522e-33
  (1727,32)    0.9999999993735122

任何帮助将不胜感激!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)