私はいくつかの文(ペルシャ文、タブ、ペルシア語単語、タブ、英語単語(タグ))を持つファイルを持っています。英語の単語は、各文のクラスを示しています。このファイルには "情熱"と "塩辛い"という2つのクラスがあります。私はnaive bayesアルゴリズムで文章を分類しましたが、今では精度とリコールを計算しなければなりません。そのために私は混乱の行列を作らなければならないが、私はどのように分かっていない。私は小さなコードを書いて、 "情熱"は正のグループであり、 "塩辛い"は負のグループであると仮定しました。この場合、コードから出力が返されました。しかし、「塩辛い」を陽性とし、「情熱」を陰性とすると、数字は最初のケースとはまったく異なります。その結果、精度とリコールを計算する際に正解がありません。 2つのクラス(1回は情熱、1回は塩辛い)についてtp、tn、fp、fnを別々に計算して平均を計算し、この平均に基づいて精度とリコールを計算する必要がありますか?2クラスの分類子のための混同行列を作成する
#t = line.strip().split("\t")
if t[2] == "passion" and argmax == "passion":
tp += 1
elif t[2] == "passion" and argmax != "passion":
fn += 1
elif t[2] == "salty" and argmax != "salty":
fp += 1
elif t[2] == "salty" and argmax == "salty":
tn += 1
print ("tp", tp, "tn", tn, "fp", fp, "fn", fn)
(hint1:。:ARGMAXはNBアルゴリズムの出力であり、それはコードがテスト文章のためにそれを認識したタグである hint2私も、2つの以上のクラスにいくつかの他のファイルを持っています)