Co je klasifikace?
Binární klasifikace je klasifikace se dvěma kategoriemi. Můžeme například označovat pacienty jako non-diabetic nebo diabetic.
Predikce třídy se provádí určením pravděpodobnosti pro každou možnou třídu jako hodnoty mezi 0 (nemožné) a 1 (určité). Celková pravděpodobnost pro všechny třídy je vždy 1, protože pacient je rozhodně buď diabetik nebo non-diabetic. Takže, pokud predikovaná pravděpodobnost pacienta je diabetik 0,3, pak existuje odpovídající pravděpodobnost 0,7, že pacient je non-diabetic.
Prahová hodnota, často 0,5, se používá k určení predikované třídy. Pokud pozitivní třída (v tomto případě diabetik) má předpovězenou pravděpodobnost větší než prahová hodnota, pak se predikuje klasifikace diabetika.
Trénování a vyhodnocení klasifikačního modelu
Klasifikace je příkladem techniky strojového učení pod dohledem, což znamená, že spoléhá na data, která obsahují známé hodnoty funkcí a známé hodnoty popisků. V tomto příkladu jsou hodnoty funkcí diagnostickými měřeními pro pacienty a hodnoty štítků jsou klasifikace non-diabetic nebo diabetic. Klasifikační algoritmus slouží k přizpůsobení podmnožiny dat do funkce, která dokáže vypočítat pravděpodobnost každého popisku třídy z hodnot funkcí. Zbývající data se používají k vyhodnocení modelu porovnáním předpovědí generovaných z funkcí se známými popisky tříd.
Jednoduchý příklad
Pojďme se podívat na příklad, který vám pomůže vysvětlit klíčové principy. Předpokládejme, že máme následující údaje o pacientech, které se skládají z jedné funkce (hladiny glukózy v krvi) a označení třídy 0 pro non-diabetic, 1 pro diabetika.
Glukóza v krvi | Diabetické |
---|---|
82 | 0 |
92 | 0 |
112 | 0 |
102 | 0 |
115 | 0 |
107 | 0 |
87 | 0 |
120 | 0 |
83 | 0 |
119 | 0 |
104 | 0 |
105 | 0 |
86 | 0 |
109 | 0 |
K trénování klasifikačního modelu použijeme prvních osm pozorování a začneme vykreslením funkce glukózy v krvi (x) a predikovaného diabetického popisku (y).
Potřebujeme funkci, která vypočítá hodnotu pravděpodobnosti pro y na základě x (jinými slovy, potřebujeme funkci f(x) = y). Z grafu vidíte, že pacienti s nízkou hladinou glukózy v krvi jsou všichni ne diabetici, zatímco pacienti s vyšší hladinou glukózy v krvi jsou diabetici. Zdá se, že čím vyšší je hladina glukózy v krvi, tím pravděpodobnější je, že pacient je diabetik, přičemž inflexní bod je někde mezi 100 a 110. Potřebujeme přizpůsobit funkci, která vypočítá hodnotu mezi 0 a 1 pro y na tyto hodnoty.
Jednou z těchto funkcí je logistická funkce, která tvoří křivku s tvarem S (sigmoidal).
Teď můžeme funkci použít k výpočtu hodnoty pravděpodobnosti, že y je pozitivní, což znamená, že pacient je diabetik, z libovolné hodnoty x nalezením bodu na spojnici funkce pro x. Jako mezní bod pro predikci popisku třídy můžeme nastavit prahovou hodnotu 0,5.
Pojďme to otestovat pomocí dvou hodnot dat, které jsme si podrželi.
Body vykreslené pod prahovou čárou poskytují predikovanou třídu 0 (non-diabetic) a body nad čárou jsou predikovány jako 1 (diabetik).
Nyní můžeme porovnat predikce popisků (ŷ nebo "y-hat"), na základě logistické funkce zapouzdřené v modelu s popisky skutečné třídy (y).
linka | y | ŷ |
---|---|---|
83 | 0 | 0 |
119 | 1 | 1 |
104 | 0 | 0 |
105 | 0 | 1 |
86 | 0 | 0 |
109 | 1 | 1 |