Problem z dokładnością
Standardowa dokładność jest zdefiniowana jako stosunek poprawnych klasyfikacji do liczby dokonanych klasyfikacji.
accuracy:=correct classificationsnumber of classifications
Jest to zatem ogólna miara dla wszystkich klas i jak wkrótce zobaczymy, nie jest dobrą miarą powiedzieć wyrocznię oprócz rzeczywistego przydatnego testu. Wyrocznia to funkcja klasyfikacji, która zwraca losowe przypuszczenie dla każdej próbki. Podobnie, chcemy być w stanie ocenić wydajność klasyfikacyjną naszej funkcji klasyfikacyjnej. Dokładność \ textit {może} być użyteczną miarą, jeśli mamy taką samą liczbę próbek na klasę, ale jeśli mamy niezrównoważony zestaw dokładności próbek, wcale nie jest przydatny. Co więcej, test może mieć wysoką dokładność, ale w rzeczywistości działa gorzej niż test o niższej dokładności.
ABC0.9
classify(sample):={Aif ⊤
classify
classify(sample):=guess⎧⎩⎨ABCwith p =0.96with p =0.02with p =0.02
0.96⋅0.9+0.02⋅0.05⋅2=0.866Aclassify
Dokładność według klasy
accuracy:=correct/(correct+incorrect)A1.00A0.331.000.00>0.5AABA
Czułość i swoistość
W testach medycznych czułość definiuje się jako stosunek osób prawidłowo zidentyfikowanych jako cierpiące na chorobę do liczby osób faktycznie chorujących. Swoistość definiuje się jako stosunek osób prawidłowo zidentyfikowanych jako zdrowe do liczby osób, które są faktycznie zdrowe. Liczba osób faktycznie cierpiących na tę chorobę to liczba prawdziwie pozytywnych wyników testu plus liczba wyników fałszywie ujemnych. Liczba faktycznie zdrowych osób to liczba wyników prawdziwie ujemnych plus liczba wyników fałszywie dodatnich.
Klasyfikacja binarna
PNTnnFnn
sensitivity:=TPTP+FNspecificity:=TNTN+FP
TPFNTNFPαβαTααTα+FβαTβαTβ+FααββTββTβ+FαβTαβTα+Fβ
sensitivityα:=TαTα+Fβspecificityα:=TβTβ+Fαsensitivityβ:=TβTβ+Fαspecificityβ:=TαTα+Fβ
sensitivityα=specificityβspecificityα=sensitivityβ. Oznacza to, że jeśli mamy tylko dwie klasy, nie potrzebujemy czułości i specyficzności na klasę.
Klasyfikacja N-Ary
Czułość i specyficzność na klasę nie jest przydatna, jeśli mamy tylko dwie klasy, ale możemy rozszerzyć ją na wiele klas. Czułość i swoistość definiuje się jako:
sensitivity:=true positivestrue positives+false negativesspecificity:=true negativestrue negatives+false-positives
Tn∑i(Fn,i)∑i(Fi,n)n∑i(Ti)−T(n)nn∑i(∑k(Fi,k))nn∑i(Fn,i)n∑i(Fi,n)∑i(Ti)−T(n)+∑i(∑k(Fn,i))−∑i(Fn,i)−∑i(Fi,n). Podsumowując, mamy:
true positives:=Tntrue negatives:=∑i(Ti)−T(n)+∑i(∑k(Fn,i))−∑i(Fn,i)−∑i(Fi,n)false positives:=∑i(Fi,n)false negatives:=∑i(Fn,i)
sensitivity(n):=TnTn+∑i(Fn,i)specificity(n):=∑i(Ti)−Tn+∑i(∑k(Fi,k))−∑i(Fn,i)−∑i(Fi,n)∑i(Ti)−Tn+∑i(∑k(Fi,k))−∑i(Fn,i)
Wprowadzenie zaufania
confidence⊤Tn+∑i(Fi,n)nTn
confidence⊤(n):=TnTn+∑i(Fi,n)
confidence⊥nn
∑i(∑k(Fi,k))−∑i(Fi,n)+∑i(Ti)−Tn∑i(Fn,i)
confidence⊥(n)=∑i(∑k(Fi,k))−∑i(Fi,n)+∑i(Ti)−Tn−∑i(Fn,i)∑i(∑k(Fi,k))−∑i(Fi,n)+∑i(Ti)−Tn