začněme definováním toho, co se rozumí klasifikací, klasifikace je proces pokusu přiřadit něco jedné z dostupných skupin. Můžete mít 2 skupiny (binární klasifikace) nebo více než 2 skupiny(klasifikace více tříd).
Klasifikace Algoritmů zahrnuje: (Logistická Regrese, K-Nejbližšího Souseda, Support Vector Machine, Naivní Bayes…atd)
Pro datové vědce je opravdu důležité, aby se ujistil, jak dobře je vaše klasifikace modelu. Existuje několik známých možných způsobů, jak zhodnotit svůj model. Mohou být uvedeny takto:
- Matrix zmatku – lze ji snadno vypočítat pomocí implementace knihovny Scikit-Learn. Jen musíte krmit to vektor, který obsahuje předpovědi vaší závislá proměnná y ^ a vektor skutečných hodnot závislé proměnné y
Nyní po vypočítá váš confusion matrix, která, bude 2*2 matice pro jakoukoli binární klasifikační problém, výsledná matice by být jako je tato,
A confusion matrix consists of 4 values which are very valuable to know for every data scientist:
- Falešně Pozitivní (FP) — případy, které jsou nesprávně klasifikovány jako Pozitivní instance Třídy (0,1) = 5
- Falešně negativní (FN) — případy, které jsou nesprávně klasifikovány jako Negativní instance Třídy (1,0) = 10
- True Positive (TP) — případy, které jsou správně klasifikovány jako Pozitivní instance Třídy (1,1) = 50
- True Negative (TN) — případy, které jsou správně klasifikovány jako Negativní instance Třídy (0,0) = 35
Celkem instance dataset (školení + test případy) = 5+10+50+35 = 100
Teď můžeme vypočítat 2 důležité procenta:
1 – Přesnost = Správně/ celkem = (50+35)/ 100 = 85%
2 – chybovost = Nesprávné/ celkem = (5+10)/ 100 = 15%
Teď bych měl slavit po vybudování takové třídění má tak dobrou přesnost, rychlost, …, nebo Měl bych ?!
podívejme se, prosím, následujte mě v následující scénář „Jste dat vědec, který pracuje v bance a vybudovala klasifikace model pro klasifikaci podvodu a non-podvod transakce, chcete-li zhodnotit svůj model tak, jste se rozhodli pro výpočet matice záměn, a že byl výsledek:“
Analýzou matice záměn můžeme říci, že máme docela dobrou klasifikátor s Přesností frekvence = 9,800/ 10,000 = 98%
Ale data vědec mít docela divný nápad, že chce zkusit; Myšlenka je zastavit klasifikátor z klasifikace jakékoli transakce jako podvod (pozitivní třídy ‚1‘), pak, když vypočítává nové confusion matrix a bylo to, jako následující:
klasifikátor Přesnost sazba = 9,850/ 10,000 = 98.5% což znamená, že je o 0,5% zvýšení míry přesnosti i když třídění nefunguje správně!
a to se nazývá past na přesnost, takže rozhodně říkáme, že míra přesnosti měření nestačí k zodpovězení otázky “ jak dobrý je váš klasifikátor?!‘
řešením je vyzkoušet jinou metodu měření, která je
2. Křivka kumulativního profilu přesnosti (CAP) – jedná se o robustnější metodu, která pomáhá našemu modelu stroje. Chcete-li pochopit intuici za tím, musíte mě následovat v následujících scénářích:
Scénář#1 — Představte si, že jste jako datový vědec práci ve společnosti, které chtějí propagovat svůj nový produkt, takže budou posílat e-mail s jejich nabídkou pro všechny zákazníky, a to obvykle 10% zákazníků reakce a vlastně kupuje produkt, tak že i když to bude případ pro tento čas a tento scénář se nazývá Náhodný Scénář.
Scénář#2 — Stále pracují ve stejné společnosti, ale tentokrát jste se rozhodli udělat to ve více systematickým způsobem:
- Zkontrolujte, zda vaše historická data a vzít skupinu zákazníků, kteří vlastně koupil nabídnout a pokusit se získat tyto informace,
- Měřit tyto faktory a pokusit se zjistit, který z nich má vliv na počet Zakoupených produktů nebo jinými slovy fit data do modelu Logistické Regrese.
- proveďte předpověď, u kterých zákazníků je větší pravděpodobnost nákupu produktu.
- pak se speciálně zaměřte na ty lidi, u kterých jste předpokládali, že si produkt koupí.
- pak měřením odezvy těch cílených skupin reprezentovaných v této křivce „CAP Curve“.
rozhodně můžeme všimnout zlepšení;, když jste kontaktoval 20,000 cílené zákazníky máš asi 5000 pozitivní reakce, kde ve scénáři#1, kontaktovat stejný počet zákazníků, máte jen 2000 pozitivní reakce.
nápad tady je porovnání modelu na náhodné scénáře a můžete si vzít ji na další úroveň tím, že staví další model, možná Support Vector Machine (SVM)/ Kernel SVM model porovnat s aktuálním modelu logistické regrese.
Ale, Jak analyzovat výsledný graf ?
čím lepší je váš model, tím větší bude oblast mezi jeho křivkou CAP a náhodnou přímkou scénáře.
hypoteticky můžeme nakreslit tzv. dokonalý Model, který představuje model, který není možné postavit, pokud nemáte nějakou křišťálovou kouli . Ukazuje se, že při odesílání Nabídky 10,000 možnému zákazníkovi jste dostali perfektní pozitivní odpověď, kde všichni kontaktovaní lidé produkt zakoupili.
vykreslení takového hypotetického modelu nám pomůže jako odkaz na vyhodnocení křivek vašich modelů.
k Dispozici jsou 2 přístupy k analýze předchozí graf:
První
- Výpočet plochy pod Ideální Model Křivky (aP)
- Výpočet plochy pod Ideální Model Křivky (aR)
- Vypočítejte Přesnost rychlost(AR) s = aR/ aP; jako (AR)~1 (lepší je váš model) a jako (AR)~0 (horší je váš model)
Druhý
- Nakreslit čáru z bodu 50% (50 000 dolarů) v Celkové Kontaktoval osa do Modelu CAP Křivky
- Pak z toho průsečíku, Projektu je, aby Zakoupené osy
- X% hodnota představuje, jak dobrý je váš model je:
- Pokud X < 60% /(6000), pak máte odpadky model
- Pokud 60% < X < 70% /(7000), pak máte špatnou model
- Pokud 70% < X < 80% /(8000), pak máte dobrý model
- Pokud 80% < X < 90%/ (9000), pak máte velmi dobrý model
- Pokud 90% < X < 100% / (10 000 obyvatel), pak se váš model je příliš dobré, aby to byla pravda! co chci říct je, že toto se obvykle stává v důsledku Overfitting což rozhodně není dobrá věc, jako je váš model bude dobré při klasifikaci pouze data, je vycvičený, ale velmi špatná s novými neviditelné případech.