Matrica zmede v strojnem učenju: rešitev na enem mestu



Ta članek se osredotoča na matriko zmede, ki je eden najpomembnejših vidikov algoritma strojnega učenja, ki se uporablja za oceno njegove natančnosti.

V , običajno imamo 2 različni tipi uporabe, , in problem. Matrica zmede pomaga pri izračunu natančnosti klasifikacijskega modela, kar nam posredno pomaga pri opisovanju uspešnosti klasifikacijskega modela. To je najpomembnejši korak pri ocenjevanju modela. V tem članku bom obravnaval naslednje teme:

1. Kaj je matrica zmede?





2. Natančnost in sestavni deli matrice zmede

3. Natančnost, odpoklic in F-ukrep



4. Ustvarjanje matrice zmede z uporabo Pythona in Sklearna

Kaj je matrica zmede?

Matrica zmede je povzetek primerjave predvidenih rezultatov in dejanskih rezultatov v primeru uporabe klasifikacijskega problema. Povzetek primerjave je izredno potreben za določitev učinkovitosti modela, potem ko je usposobljen z nekaterimi podatki o usposabljanju. Accuracy-Confusion-MatrixZa uporabo binarne klasifikacije je matrica zmede matrica 2 × 2, ki je prikazana spodaj
Predvidena vrednost razreda 1 Npr .: 1 Predvidena vrednost razreda 2 Npr .: 0
Dejanska vrednost razreda 1

Npr .: 1

TP (resnično pozitiven) FN (napačno negativno)
Dejanska vrednost razreda 2



Npr .: 0

FP (napačno pozitiven) TN (resnično negativno)

Iz zgornje slike:
Imamo,

  • Dejanska vrednost razreda 1 = 1, ki je podobna pozitivni vrednosti v binarnem izidu.
  • Dejanska vrednost razreda 2 = 0, ki je podobna negativni vrednosti v binarnem izidu.

Indeks leve strani matrice zmede v bistvu označuje dejanske vrednosti, zgornji stolpec pa predvidene vrednosti.

Ko ustvarimo matriko zmede, obstajajo različne komponente. Komponente so omenjene spodaj

Pozitivno (P): Napovedan rezultat je pozitiven (primer: slika je mačka)

Negativno (N): napovedani rezultat je negativen (primer: Slike niso mačka)

Resnično pozitiven (TP): Tu TP v bistvu označuje predvidene in dejanske vrednosti so 1 (True)

Resnično negativno (TN): Tu TN označuje napovedano in dejanska vrednost je 0 (napačno)

Lažno negativno (FN): Tu FN označuje, da je predvidena vrednost 0 (negativna) in dejanska vrednost 1. Tu se obe vrednosti ne ujemata. Zato je lažno negativno.

Lažno pozitiven (FP): Tu FP označuje, da je predvidena vrednost 1 (pozitivna) in dejanska vrednost 0. Tu se obe vrednosti ne ujemata. Zato je lažno pozitiven.

scrum master vloge in odgovornosti pdf

Natančnost in sestavni deli matrice zmede

Po izdelavi matrice zmede in določitvi vseh vrednosti komponent nam postane povsem enostavno izračunati natančnost. Torej, poglejmo komponente, da bomo to bolje razumeli.
  • Natančnost razvrščanja

Iz zgornje formule je vsota TP (resnično pozitivno) in TN (resnično negativno) pravilna napovedana rezultata. Da bi izračunali natančnost v odstotkih, delimo z vsemi drugimi komponentami. Vendar je v natančnosti nekaj težav in od nje ne moremo biti popolnoma odvisni.

Upoštevajmo, da je naš nabor podatkov popolnoma neuravnotežen. V tem scenariju je 98-odstotna natančnost lahko dobra ali slaba glede na izjavo o težavi. Zato imamo še nekaj ključnih izrazov, ki nam bodo pomagali biti prepričani o natančnosti, ki jo izračunamo. Izrazi so navedeni spodaj:

  • TPR (True Positive Rate) ali občutljivost:

Resnična pozitivna stopnja, znana tudi kot občutljivost, meri odstotek resnične pozitivne vrednosti glede na skupne dejanske pozitivne vrednosti, ki je označena s (TP + FN)

Predvidena vrednost razreda 1 Npr .: 1 Predvidena vrednost razreda 2 Npr .: 0 Skupaj
Dejanska vrednost razreda 1

Npr .: 1

TP (resnično pozitiven) FN (napačno negativno) Skupno dejansko pozitivnih vrednosti
Dejanska vrednost razreda 2

Npr .: 0

FP (napačno pozitiven)TN (resnično negativno)Skupno dejanskih negativov
TPR = res pozitivno / (res pozitivno + lažno negativno
  • TNR (resnična negativna stopnja) ali specifičnost:

Resnična negativna stopnja ali specifičnost meri delež dejanskih negativov glede na skupne negativne dele

Predvidena vrednost razreda 1 Npr .: 1 Predvidena vrednost razreda 2 Npr .: 0 Skupaj
Dejanska vrednost razreda 1

Npr .: 1

TP (resnično pozitiven)FN (napačno negativno)Skupno dejansko pozitivnih vrednosti
Dejanska vrednost razreda 2

Npr .: 0

FP (napačno pozitiven) TN (resnično negativno) Skupno dejanskih negativov

TNR = resnično negativno / (resnično negativno + lažno pozitivno)

  • Lažno pozitivna stopnja (FPR):

Stopnja lažno pozitivnih vrednosti je odstotek napovedanih lažno pozitivnih rezultatov (FP) do skupnega števila napovedanih pozitivnih rezultatov (TP + FP).

kako prekiniti program
Predvidena vrednost razreda 1 Npr .: 1 Predvidena vrednost razreda 2 Npr .: 0
Dejanska vrednost razreda 1 Npr .: 1 TP (resnično pozitiven) FN (napačno negativno)
Dejanska vrednost razreda 2 Npr .: 0 FP (napačno pozitiven) TN (resnično negativno)
Vsota celotnega napovedanega pozitivnega Vsota celotnega napovedanega negativa
FPR = napačno pozitivno / (res pozitivno + lažno pozitivno)
  • Lažno negativna stopnja (FNR):

Stopnja lažno negativnih vrednosti je odstotek napovedanih lažno negativnih rezultatov (FP) do skupnega števila napovedanih negativnih rezultatov (TN + FN).

Predvidena vrednost razreda 1 Npr .: 1 Predvidena vrednost razreda 2 Npr .: 0
Dejanska vrednost razreda 1 Npr .: 1TP (resnično pozitiven) FN (napačno negativno)
Dejanska vrednost razreda 2 Npr .: 0FP (napačno pozitiven) TN (resnično negativno)
Vsota celotnega napovedanega pozitivnega Vsota celotnega napovedanega negativa
FNR = False Negative / (False Negative + True Negative)

Natančnost, odpoklic in F-ukrep

  • Odpoklic:

Odpoklic je podoben resnični pozitivni stopnji in je razmerje med skupnim številom pravilno predvidenih pozitivnih vrednosti (TP) in vsemi pozitivnimi vrednostmi.

  • Natančnost:

Natančnost v bistvu označuje vse točke, za katere je model napovedal, da so pozitivne, in njihov odstotek dejansko pozitivnih.

Natančnost in priklic sta rezultata meritev, ki se osredotočata na pozitivni razred, kot je razvidno iz zgornjih formul.

  • F-ukrep

Torej je F-Measure tehnika, ki združuje tehniko natančnosti in odpoklica ter uporablja harmonično sredino namesto običajne aritmetične sredine, zaradi česar se ekstremne vrednosti kaznujejo. Mera F se imenuje tudi ocena F1 in je podana s spodnjo formulo.

Oglejmo si primer in si oglejmo, kako lahko izračunamo natančnost, natančnost, odpoklic in rezultat F1.

N = 165 Predvideno DA Predvideni NE
Dejansko DA TP = 150 FN = 10
Tok št FP = 20 TN = 100
    • Natančnost = (TP + TN) / (TP + TN + FP + FN) = (150 + 100) / (150 + 100 + 20 + 10) = 0,89
    • Odpoklic = TP / (TP + FN) = 150 / (150 + 10) = 0,93
    • Natančnost: TP / (TP + FP) = 150 / (150 + 20) = 0,88

  • F-ukrep = (2 * odpoklic * natančnost) / (odpoklic + presision) = (2 * 0,93 * 0,88) / (0,93 + 0,88) = 0,90

Ustvarjanje matrice zmede z uporabo Pythona in Sklearna

Zdaj bomo videli primer, kako lahko z uporabo pythona skupaj s knjižnico sklearn ustvarimo matriko zmede.

eno. Sprva bomo ustvarili nekaj dejanskih podatkov in predvidenih za preverjanje natančnosti, kot je prikazano spodaj

# Python skript za ustvarjanje matrike zmede. dejanski_podatki = [1, 1, 0, 1, 0, 0, 1, 0, 0, 0,1,0,1] predvideni_podatki = [0, 1, 1, 1, 0, 0, 1, 0, 1, 0,1,0,1]

2. Matrico zmede moramo uvoziti iz knjižnice sklearn, kot je prikazano spodaj:

iz sklearn.metrics uvozi confusion_matrix

3. Nato bomo ustvarili matriko zmede, kot je prikazano spodaj:

final_results = confusion_matrix (dejanski_podatki, predvideni_podatki)

Štiri. Zdaj lahko nadaljujemo in izračunamo natančnost z uvozom knjižnice, kot je prikazano spodaj:

iz sklearn.metrics uvoz natančnost_score točnost = rezultat_točnosti (dejanski_podatki, predvideni_podatki)

5. Na koncu izračunamo rezultat F1 ali F-ukrep, kot je prikazano spodaj:

iz sklearn.metrics import logistics_report report =class_report (dejanski_podatki, predvideni_podatki)

Spodaj je celotna koda:

dejanski_podatki = [1, 1, 0, 1, 0, 0, 1, 0, 0, 0,1,0,1] predvideni_podatki = [0, 1, 1, 1, 0, 0, 1, 0, 1, 0,1,0,1] iz sklearn.metrics import confusion_matrix final_results = confusion_matrix (dejanski_podatki, predvideni_podatki) print (final_results) from sklearn.metrics importcision_score točnost = točnost_rezultata (dejanski_podatki, predvideni_podatki) iz sklearn.metrics uvoz klasifikacija_report poročilo = klasifikacija_poročilo ( dejanski_podatki, predvideni_podatki) print (natančnost) print (report)

matrix

kako narediti niz predmetov v javi

S tem smo prišli do konca tega članka. Upam, da je vsa vaša zmeda glede matrice zmede zdaj rešena.

Edureka vam pomaga pridobiti znanje o različnih algoritmih strojnega učenja, kot so regresija, združevanje v skupine, drevesa odločanja, naključni gozd, Naive Bayes in Q-učenje. To strojno učenje s pomočjo Python Training vas izpostavlja konceptom statistike, časovnih vrst in različnim razredom algoritmov strojnega učenja, kot so nadzorovani, nenadzorovani in ojačevalni algoritmi. V celotnem tečaju certificiranja znanosti o znanosti boste reševali resnične študije primerov na področju medijev, zdravstva, socialnih medijev, letalstva in kadrovske službe.