我有一個帶有一些句子(波斯語句子,標籤,波斯語單詞(標籤),標籤,英文單詞(標籤))的文件。英文單詞顯示每個句子的課程。這個文件有兩個類,「激情」和「鹹」。我用樸素貝葉斯算法分類句子,現在我必須計算精度和回憶。爲此我必須製作一個混淆矩陣,但我不知道如何。我寫了一小段代碼,並假定「激情」是積極的羣體,「鹹」是消極的羣體。該代碼返回了這種情況下的輸出。但是,如果我假設「鹹」爲正,「激情」爲負,則這些數字與第一種情況完全不同,因此,當我想計算精確度和回憶時,我沒有正確的答案。我應該分別計算tp,tn,fp和fn兩個類別(一次是激情還是一次是鹹味),然後計算平均值,然後根據這個平均值計算精度和召回率?爲2類分類器做一個混淆矩陣
(HINT1:argmax是NB算法的輸出,它是代碼認可它的測試句子的標籤 HINT2:我有一些其他的文件長度超過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)