私は文カテゴリ検出問題に取り組んでいます。各文が複数のカテゴリに属する例:
"It has great sushi and even better service."
True Label: [[ 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 1.]]
Pred Label: [[ 0. 0. 0. 0. 0. 1. 0. 0. 0. 0. 0. 1.]]
Correct Prediction!
Output: ['FOOD#QUALITY' 'SERVICE#GENERAL']
複数のカテゴリを予測できる分類器を実装しました。複数のカテゴリに属する合計 587 の文があります。2 つの方法で精度スコアを計算しました。
例のすべてのラベルが予測したかどうか?
コード:
print "<------------ZERO one ERROR------------>"
print "Total Examples:",(truePred+falsePred) ,"True Pred:",truePred, "False Pred:", falsePred, "Accuracy:", truePred/(truePred+falsePred)
出力:
<------------ZERO one ERROR------------>
Total Examples: 587 True Pred: 353 False Pred: 234 Accuracy: 0.60136286201
すべての例で正しく予測されたラベルの数は?
コード:
print "\n<------------Correct and inccorrect predictions------------>"
print "Total Labels:",len(total[0]),"Predicted Labels:", corrPred, "Accuracy:", corrPred/len(total[0])
出力:
<------------Correct and inccorrect predictions------------>
Total Labels: 743 Predicted Labels: 522 Accuracy: 0.702557200538
問題: これらはすべて、予測スコアとグラウンド トゥルース ラベルを比較して計算された精度スコアです。しかし、F1 スコア (マイクロ平均化を使用)、精度、再現率も計算したいと考えています。グラウンド トゥルース ラベルがあり、予測をそれらのグラウンド トゥルース ラベルと一致させる必要があります。しかし、このようなタイプのマルチラベル分類の問題にどのように取り組むべきかわかりません。Pythonでscikit-learnまたはその他のライブラリを使用できますか?