In , mums parasti ir 2 dažādi lietošanas gadījumi, , un problēmu. Apjukuma matrica palīdz aprēķināt klasifikācijas modeļa precizitāti, kas netieši palīdz mums aprakstīt klasifikācijas modeļa veiktspēju. Tas ir vissvarīgākais solis modeļa novērtēšanā. Šajā rakstā apskatīšu šādas tēmas:
1. Kas ir sajaukšanas matrica?
2. Apjukuma matricas precizitāte un komponenti
3. Precizitāte, atsaukšana un F-Measure
4. Apjukuma matricas izveidošana, izmantojot Python un Sklearn
Kas ir sajaukšanas matrica?
Apjukuma matrica ir paredzamo rezultātu un faktisko rezultātu salīdzināšanas kopsavilkums jebkurā klasifikācijas problēmu izmantošanas gadījumā. Salīdzināšanas kopsavilkums ir ārkārtīgi nepieciešams, lai noteiktu modeļa veiktspēju pēc tam, kad tas ir apmācīts ar dažiem apmācības datiem. Binārā klasifikācijas lietošanas gadījumā sajaukšanas matrica ir 2 × 2 matrica, kas ir parādīta zemākParedzētā 1. klases vērtība EG: 1 | Paredzētā 2. klases vērtība EG: 0 | |
Faktiskā 1. klases vērtība ir tāds pats kā maģistrs EG: 1 | TP (patiess pozitīvs) | FN (viltus negatīvs) |
Faktiskā 2. klases vērtība EG: 0 | FP (viltus pozitīvs) | TN (patiess negatīvs) |
No iepriekš minētā attēla:
Mums ir,
- Faktiskā 1. klases vērtība = 1, kas ir līdzīga pozitīvai vērtībai binārā iznākumā.
- Faktiskā 2. klases vērtība = 0, kas ir līdzīga binārā iznākuma negatīvajai vērtībai.
Apjukuma matricas kreisās puses indekss būtībā norāda faktiskās vērtības, bet augšējā kolonnā - paredzamās vērtības.
Veidojot neskaidrības matricu, pastāv dažādi komponenti. Komponenti ir minēti zemāk
Pozitīvs (P): Paredzētais rezultāts ir pozitīvs (piemērs: attēls ir kaķis)
Negatīvs (N): paredzamais rezultāts ir negatīvs (piemērs: Attēli nav kaķis)
Patiesais pozitīvais (TP): Šeit TP būtībā norāda prognozēto un faktiskās vērtības ir 1 (True)
Patiesais negatīvs (TN): Šeit TN norāda prognozēto un faktiskā vērtība ir 0 (False)
Viltus negatīvs (FN): Šeit FN norāda, ka paredzamā vērtība ir 0 (negatīva) un faktiskā vērtība ir 1. Šeit abas vērtības nesakrīt. Tādējādi tas ir viltus negatīvs.
Viltus pozitīvs (FP): Šeit FP norāda, ka paredzamā vērtība ir 1 (pozitīva), un faktiskā vērtība ir 0. Šeit atkal abas vērtības neatbilst. Tādējādi tas ir viltus pozitīvs.
Apjukuma matricas precizitāte un komponenti
Pēc sajaukšanas matricas izveidošanas un visu komponentu vērtību noteikšanas mums kļūst diezgan viegli aprēķināt precizitāti. Apskatīsim komponentus, lai to labāk saprastu.- Klasifikācijas precizitāte
No iepriekš minētās formulas TP (True Positive) un TN (True Negative) summa ir pareizs prognozētais rezultāts. Tāpēc, lai aprēķinātu precizitāti procentos, mēs dalām ar visiem pārējiem komponentiem. Tomēr precizitātē ir dažas problēmas, un mēs nevaram no tās pilnībā atkarīgi.
Pieņemsim, ka mūsu datu kopa ir pilnīgi nelīdzsvarota. Šajā scenārijā 98% precizitāte var būt laba vai slikta, pamatojoties uz problēmas izklāstu. Tāpēc mums ir vēl daži galvenie termini, kas palīdzēs mums būt pārliecinātiem par aprēķināto precizitāti. Noteikumi ir šādi:
- TPR (True Positive Rate) vai jutīgums:
Patiesais pozitīvais rādītājs, ko dēvē arī par jutīgumu, nosaka patiesā pozitīvā procentuālo daudzumu attiecībā pret kopējo faktisko pozitīvo vērtību, ko norāda (TP + FN)
Paredzētā 1. klases vērtība EG: 1 | Paredzētā 2. klases vērtība EG: 0 | Kopā | |
Faktiskā 1. klases vērtība EG: 1 | TP (patiess pozitīvs) | FN (viltus negatīvs) | Kopā faktiskie pozitīvie rādītāji |
Faktiskā 2. klases vērtība EG: 0 | FP (viltus pozitīvs) | TN (patiess negatīvs) | Kopā faktiskie negatīvie |
- TNR (True Negative Rate) vai specifika:
Patiesais negatīvais rādītājs vai specifika mēra faktisko negatīvo īpatsvaru attiecībā pret kopējo negatīvo
Paredzētā 1. klases vērtība EG: 1 | Paredzētā 2. klases vērtība EG: 0 | Kopā | |
Faktiskā 1. klases vērtība EG: 1 | TP (patiess pozitīvs) | FN (viltus negatīvs) | Kopā faktiskie pozitīvie rādītāji |
Faktiskā 2. klases vērtība EG: 0 | FP (viltus pozitīvs) | TN (patiess negatīvs) | Kopā faktiskie negatīvie |
TNR = patiess negatīvs / (patiess negatīvs + viltus pozitīvs)
- Viltus pozitīvais rādītājs (FPR):
Viltus pozitīvais rādītājs ir paredzamās viltus pozitīvās (FP) procentuālais daudzums no kopējā paredzamo pozitīvo rezultātu skaita (TP + FP).
Paredzētā 1. klases vērtība EG: 1 | Paredzētā 2. klases vērtība EG: 0 | |
Faktiskā 1. klases vērtība EG: 1 | TP (patiess pozitīvs) | FN (viltus negatīvs) |
Faktiskā 2. klases vērtība EG: 0 | FP (viltus pozitīvs) | TN (patiess negatīvs) |
Kopējā paredzamā pozitīvā summa | Kopā paredzamo negatīvo summa |
- Viltus negatīvs rādītājs (FNR):
Viltus negatīvais rādītājs ir prognozētā viltus negatīvā (FP) procentuālais daudzums no kopējā paredzēto negatīvo rezultātu skaita (TN + FN).
Precizitāte, atsaukšana un F-mērīšana
- Atsaukt:
Atsaukums ir līdzīgs patiesajam pozitīvajam rādītājam, un tas ir pareizi prognozēto pozitīvo vērtību (TP) kopējā skaita un visu pozitīvo vērtību attiecība.
manas sql pamācības iesācējiem
- Precizitāte:
Precizitāte būtībā norāda visus punktus, par kuriem modelis prognozēja pozitīvu, un cik procentu no tiem faktiski ir pozitīvi.
Precizitāte un atsaukšana ir metrikas rezultāti, kas koncentrējas uz pozitīvo klasi, kā parādīts iepriekš minētajās formulās.
- F-pasākums
Tātad F-Measure ir paņēmiens, kas apvieno gan precizitātes, gan atsaukšanas tehniku, un tajā parastā vidējā aritmētiskā vietā tiek izmantota harmoniskā vidējā vērtība, kuras dēļ tiek sodītas galējās vērtības. F mēru sauc arī par F1 rādītāju, un to izsaka zemāk esošā formula.
Apskatīsim piemēru un redzēsim, kā mēs varam aprēķināt precizitāti, precizitāti, atsaukšanu un F1 rezultātu.
iziet ar atsauci java
N = 165 | Paredzētais JĀ | Paredzētais NĒ |
Faktiskais JĀ | TP = 150 | FN = 10 |
Pašreizējais NĒ | FP = 20 | TN = 100 |
- Precizitāte = (TP + TN) / (TP + TN + FP + FN) = (150 + 100) / (150 + 100 + 20 + 10) = 0,89
- Atsaukšana = TP / (TP + FN) = 150 / (150 + 10) = 0,93
- Precizitāte: TP / (TP + FP) = 150 / (150 + 20) = 0,88
- F-pasākums = (2 * Atsaukt * Precizitāte) / (Atsaukt + Prezisija) = (2 * 0,93 * 0,88) / (0,93 + 0,88) = 0,90
Apjukuma matricas izveidošana, izmantojot Python un Sklearn
Tagad mēs redzēsim piemēru tam, kā mēs varam izveidot neskaidrību matricu, izmantojot pitonu kopā ar sklearn bibliotēku.
viens. Sākotnēji mēs izveidosim dažus faktisko datu un paredzēto precizitātes pārbaudes sarakstus, kā parādīts zemāk
# Python skripts neskaidrības matricas izveidei. faktiskie_dati = [1, 1, 0, 1, 0, 0, 1, 0, 0, 0,1,0,1] prognozētie dati = [0, 1, 1, 1, 0, 0, 1, 0, 1, 0,1,0,1]
2. Mums jāimportē neskaidrību matrica no sklearn bibliotēkas, kā parādīts zemāk:
no sklearn.metrics importēt confusion_matrix
3. Pēc tam mēs izveidosim sajaukšanas matricu, kā parādīts zemāk:
galīgie_rezultāti = apjukuma matrica (faktiskie_dati, paredzētie_dati)
Četri. Tagad mēs varam turpināt aprēķināt precizitāti, importējot bibliotēku, kā parādīts zemāk:
no sklearn.metrics importa precizitātes_rezultāta precizitāte = precizitātes_rādītājs (faktiskie_dati, prognozētie_dati)
5. Visbeidzot, mēs aprēķinām F1 rādītāju vai F mēru, kā parādīts zemāk:
no sklearn.metrics importa klasifikācijas_ziņojums = klasifikācijas_ziņojums (faktiskie_dati, paredzamie_dati)
Zemāk ir pilns kods:
faktiskie_dati = [1, 1, 0, 1, 0, 0, 1, 0, 0, 0,1,0,1] prognozētie dati = [0, 1, 1, 1, 0, 0, 1, 0, 1, 0,1,0,1] no sklearn.metrics importēt confusion_matrix galīgos_rezultātus = confusion_matrix (faktiskos_datus, prognozētos_datus) drukāt (final_results) no sklearn.metrics importēt precizitātes_rezultātu precizitāti = precizitātes_score (faktiskos_datus, prognozētos_datus) no sklearn.metrics importēt klasifikācijas_ziņojumu ziņojumu faktiskie_dati, paredzētie_dati) druka (precizitāte) druka (pārskats)
Tātad, līdz ar to mēs esam nonākuši pie šī raksta beigām. Es ceru, ka visas jūsu neskaidrības par sajaukšanas matricu tagad ir atrisinātas.
Edureka palīdz jums iegūt zināšanas par dažādiem mašīnmācīšanās algoritmiem, piemēram, regresiju, kopu izveidi, lēmumu kokiem, izlases mežu, Naivajiem Beijiem un Q-Learning. Šī mašīnmācīšanās, izmantojot Python apmācību, piedāvā statistikas jēdzienus, laika rindas un dažādas mašīnmācīšanās algoritmu klases, piemēram, uzraudzītus, nepieskatītus un pastiprinošus algoritmus. Datu zinātnes sertifikācijas kursa laikā jūs risināsiet reālās dzīves gadījumu izpēti par plašsaziņas līdzekļiem, veselības aprūpi, sociālajiem medijiem, aviāciju, HR.