Vytvoření matice záměn
Jak jsi viděl/a ve videu, matice záměn je velmi užitečný nástroj pro kalibraci výstupu modelu a pro přehled všech možných výsledků tvých předpovědí (pravdivě pozitivní, pravdivě negativní, falešně pozitivní, falešně negativní).
Než matici záměn vytvoříš, musíš předpovězené pravděpodobnosti "rozdělit" podle zvoleného prahu a převést je na faktor s třídními predikcemi. Kombinuj ifelse() s factor() takto:
pos_or_neg <- ifelse(probability_prediction > threshold, positive_class, negative_class)
p_class <- factor(pos_or_neg, levels = levels(test_values))
Funkce confusionMatrix() z balíčku caret rozšiřuje základní table() z R o řadu užitečných doplňkových statistik. Matici záměn (včetně příslušných statistik) vypočítáš na základě předpovězených i skutečných výsledků, například takto:
confusionMatrix(p_class, test_values)
Toto cvičení je součástí kurzu
Machine Learning s balíčkem caret v R
Pokyny k cvičení
- Pomocí
ifelse()vytvoř znakový vektorm_or_r, který nabývá hodnoty pozitivní třídy"M", když jepvětší než 0,5, a záporné třídy"R"v ostatních případech. - Převeď
m_or_rna faktorp_classse stejnými úrovněmi, jaké mátest[["Class"]]. - Vytvoř matici záměn pomocí
confusionMatrix()— předej jíp_classa sloupec"Class"z datové sadytest.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# If p exceeds threshold of 0.5, M else R: m_or_r
# Convert to factor: p_class
# Create confusion matrix