Osztályozók összehasonlításának módszerei
Gyakran hasznos összehasonlítani különböző osztályozók
teljesítményét annak meghatározása céljából, hogy melyik osztályozó
működik jobban egy adott adathalmazon. Két osztályozó pontossága között
megfigyelt különbség azonban, az adatok méretétől függően, lehet, hogy
statisztikailag nem szignifikáns. Ebben a szakaszban néhány olyan
statisztikai próbát vizsgálunk meg, amelyek különböző modellek és
osztályozók teljesítményének az összehasonlítására
alkalmazhatóak.
Szemléltetés céljából tekintsük osztályozási modellek egy
M
A
és
M
B
párját. Tegyük fel, hogy
M
A
85%
-os pontosságot ér el, amikor egy
30
rekordot tartalmazó teszthalmazon értékeljük ki, míg
M
B
75%
-os pontosságot ér el egy másik 5000 rekordot
tartalmazó teszthalmazon. Ezen információk alapján
M
A
jobb modell-e, mint
M
B
?
Az előző példa két kulcskérdést vet fel a teljesítménymetrikák
statisztikai szignifikanciáját illetően:
-
Bár
M A
pontossága nagyobb, mint
M B
-é, egy kisebb teszthalmazon lett vizsgálva.
Mennyire megbízható
M A
pontossága?
-
Lehet-e teszthalmazok összetételbeli ingadozásával magyarázni
a pontosságbeli különbséget?
Az első kérdés egy adott modell pontosságára való konfidencia
intervallum szerkesztésének a kérdésével függ össze. A második kérdés
pedig a megfigyelt eltérés statisztikai szignifikanciája vizsgálatának
kérdésével kapcsolatos. Ezeket a kérdéseket vizsgáljuk e szakasz további
részében.
A pontosság becslése konfidencia intervallummal
A konfidencia intervallum meghatározásához arra a valószínűségi
eloszlásra van szükségünk, amelyet a pontosságmérték követ. Ez a
szakasz egy megközelítést ismertet a konfidencia intervallum
meghatározására akkor, ha az osztályozási feladatot mint egy
binomiális kísérletsorozatot modellezzük. A következőkben egy
binomiális kísérletsorozat jellemzőit soroljuk fel:
-
A kísérletsorozat
N
számú független kísérletből áll, ahol minden
kísérletnek két lehetséges kimenetele van: siker vagy
kudarc.
-
A siker
p
valószínűsége mindegyik kísérletben
állandó.
Binomiális kísérletsorozatra egy példa az előforduló fejek
száma, amikor egy érmét
N
alkalommal feldobunk. Ha
X
a megfigyelt sikeres kimenetelek száma
N
darab kísérlet során, akkor annak a valószínűsége,
hogy
X
egy bizonyos értéket felvesz, binomiális eloszlást
követ
Np
várható értékkel és
Np(1−p)
szórásnégyzettel:
P(X=v)=(
N
v
) p
v (1−p)
N−v
.
Amennyiben például az érme szabályos (
p=0,5
) és ötvenszer dobjuk fel, akkor annak a
valószínűsége, hogy
20
-szor kapunk fejet
P(X=20)=(
50
20
)
0,5 20
(1−0,5)
30
=0,0419.
Ha a kísérletet többször megismételjük, akkor a fejek átlagos
száma várhatóan
50×0,5=25
lesz, míg a varianciája
50×0,5×0,5=12,5
.
A tesztrekordok osztálycímkéi előrejelzésének a feladatát
szintén tekinthetjük egy binomiális kísérletsorozatnak. Egy adott
N
számú rekordot tartalmazó teszthalmaz esetén
legyen
X
azon rekordok száma, amelyeket helyesen jelez
előre a modell, és legyen
p
a modell igazi pontossága. Az előrejelzési
feladatot binomiális kísérletsorozatként modellezve
X
binomiális eloszlást követ
pN
várható értékkel és
Np(1−p)
szórásnégyzettel. Belátható, hogy az
acc=X/N
empirikus pontosság szintén binomiális eloszlású
p
várható értékkel és
p(1−p)/N
szórásnégyzettel (lásd 12. feladatot). Bár a
binomiális eloszlás használható arra, hogy konfidencia intervallumot
szerkesszünk
acc
-re, gyakran normális eloszlással közelítünk, ha
N
elég nagy. A normális eloszlás alapján a következő
konfidencia intervallumot lehet
acc
-re levezetni:
P(−
Z
α/2
≤
acc−p
p(1−p)/N
≤ Z
1−α/2
)=1−α,
(4.12)
ahol
Z
α/2
és
Z
1−α/2
egy standard normális eloszlásra kapott alsó és
felső határok
(1−α)
megbízhatósági szinten. Mivel a standard normális
eloszlás szimmetrikus
Z=0
körül, ebből következik, hogy
Z
α/2
=− Z
1−α/2
. Az egyenlőtlenség átrendezése
p
következő konfidencia intervallumára vezet:
2×N×acc+
Z
α/2
2 ±
Z
α/2
Z
α/2
2
+4Nacc−4Nac
c 2
2(N+
Z
α/2
2 )
.
(4.13)
Az alábbi táblázat
Z
α/2
értékeit mutatja különböző megbízhatósági
szinteken:
4.4. Példa.
Tekintsünk egy olyan modellt, amely pontossága
80%
, ha
100
tesztrekordon értékeljük ki. Mi a valós pontosság
konfidencia intervalluma
95%
-os megbízhatósági szinten? A
95%
-os megbízhatósági szint a fenti táblázat szerint
Z
α/2
=1,96
-nak felel meg. Ezt a kifejezést (4.13) egyenletbe
behelyettesítve kapjuk a
71,1%
és
86,7%
közötti konfidencia intervallumot. A következő
táblázat ezt a konfidencia intervallumot mutatja, ha a rekordok
N
száma nő:
Megjegyezzük, hogy a konfidencia intervallum rövidebb lesz,
amennyiben
N
nő.
Két modell teljesítményének az összehasonlítása
Tekintsük az
M
1
és
M
2
modellek egy olyan párját, amelyeket két független
D
1
és
D
2
teszthalmazon értékelünk ki. Jelölje
n
1
a rekordok számát
D
1
-ben és
n
2
a rekordok számát
D
2
-ben. Tegyük fel továbbá, hogy a hibaarány
e
1
az
M
1
modellre
D
1
-en, és
e
2
az
M
2
modellre
D
2
-n. A célunk annak tesztelése, hogy az
e
1
és
e
2
között megfigyelt különbség statisztikailag
szignifikáns-e.
Feltételezve, hogy
n
1
és
n
2
kellően nagy, az
e
1
és
e
2
hibaarányokat normális eloszlásokkal lehet
közelíteni. Ha a hibaarányokban megfigyelt különbséget
d= e
1 −
e 2
-vel jelöljük, akkor
d
is normális eloszlású lesz
d
t
várható értékkel, mint valódi különbséggel, és
σ d 2
szórásnégyzettel. A
d
különbség szórásnégyzetét az alábbiak szerint
lehet kiszámítani:
σ d 2
≃ σ ^
d 2
=
e 1 (1−
e 1 )
n 1
+
e 2 (1−
e 2 )
n 2
,
(4.14)
ahol
e
1 (1−
e 1 )/
n 1
és
e
2 (1−
e 2 )/
n 2
a hibaarányok szórásnégyzete. Végül megmutatható,
hogy a
d
t
valódi különbségre az
(1−α)%
-os megbízhatósági szintű konfidencia
intervallumot a következő egyenletet adja meg:
d
t
=d±
z
α/2
σ
̂ d
.
(4.15)
4.5. Példa.
Tekintsük a szakasz elején leírt feladatot. Az
M
A
modell hibaaránya
e
1
=0,15
, amikor
N
1
=30
darab tesztrekordra alkalmazzuk, míg az
M
B
modell hibaaránya
e
2
=0,25
, amikor
N
2
=5000
darab tesztrekordra alkalmazzuk. A hibaarányaikban
megfigyelt különbség
d=|0,15−0,25|=0,1
. Ebben a példában kétoldali próbát hajtunk végre
annak ellenőrzésére, hogy
d
t
=0
vagy
d
t
≠0
. A hibaarányok között megfigyelt különbség
becsült varianciáját az alábbiak szerint lehet kiszámítani:
σ ̂
d 2
=
0,15(1−0,15)
30
+
0,25(1−0,25)
5000
=0,0043
vagy
σ ̂
d
=0,0655
. Ezt az értéket (4.15) egyenletbe behelyettesítve
a következő konfidencia intervallumot kapjuk
d
t
-re
95%
-os megbízhatósági szinten:
d
t
=0,1±1,96×0,0655=0,1±0,128.
Mivel az intervallum lefedi a nulla értéket, azt a
következtetést vonhatjuk le, hogy a megfigyelt különbség nem
szignifikáns statisztikailag
95%
-os megbízhatósági szinten.
Milyen megbízhatósági szinten tudjuk elvetni a
d
t
=0
hipotézist? Ehhez egy olyan
Z
α/2
érték meghatározására van szükség, amelynél a
d
t
-re kapott konfidencia intervallum nem tartalmazza
a nulla értéket. Az előző számítást megfordítva azt a
Z
α/2
értéket keressük, amelyre
d≥
Z
α/2
σ
̂ d
. A
d
és
σ ̂
d
értékeinek behelyettesítésével kapjuk, hogy
Z
α/2
≤1,527
. Ez az érték akkor fordul elő először, ha
(1−α)
≤ ˜
0,936
(kétoldali próbánál). Az eredmény azt sugallja,
hogy a nullhipotézist
93,6%
-os, vagy annál alacsonyabb megbízhatósági szinten
lehet elutasítani.
Két osztályozó teljesítményének az összehasonlítása
Tegyük fel, hogy két osztályozó teljesítményét szeretnénk
összehasonlítani a
k
-szoros keresztellenőrzés megközelítésével.
Kezdetben a
D
adatállományt
k
egyenlő méretű részre osztjuk. Ezt követően
mindegyik osztályozót alkalmazva egy-egy modellt építünk fel
k−1
darab partíción, és a fennmaradó partíción
teszteljük őket. Ezt a lépést
k
-szor megismételjük, minden alkalommal egy másik
partíciót használva teszthalmazként.
Jelölje
M
ij
az
L
i
osztályozási módszerrel felépített modellt a
j
-edik iteráció alatt. Megjegyezzük, hogy mindegyik
M
1j
és
M
2j
modellpárt ugyanazon a
j
-edik partíción teszteljük. Legyenek
e
1j
és
e
2j
a megfelelő hibaarányaik. A hibaarányok közötti
különbség a
j
-edik partíción
d
j =
e 1j
−
e 2j
. Ha
k
elég nagy, akkor
d
j
normális eloszlású
d t
cv
várható értékkel, ami a hibaarányok közötti igazi
különbség, és
σ
cv
szórással. A korábbi megközelítéssel szemben a
megfigyelt különbségek teljes szórásnégyzete az alábbi képlettel
becsülhető:
σ ^
d
cv
2
= ∑
j=1
k ( d
j − d Ż
) 2
k(k−1)
,
(4.16)
ahol
d Ż
az átlagos különbség. Ennél a megközelítésnél a
t
-eloszlást kell használnunk, hogy
d t
cv
-re kiszámoljuk a konfidencia
intervallumot:
d t
cv
= d
Ż ±
t (1−α),k−1
σ ̂
d
cv
.
A
t
(1−α),k−1
együtthatót egy valószínűségi táblázatból kapjuk,
amelynek két bemenő paramétere van, az
(1−α)
megbízhatósági szint és a
k−1
szabadsági fok. A
t
-eloszlás valószínűségi táblázatát a 4.6. táblázat
mutatja.
4.6. táblázat - A
t
-eloszlás valószínűségi táblázata
|
(1−á)
| | | | |
k−1
| 0,90 | 0,95 | 0,975 | 0,99 | 0,995 |
1 | 3,08 | 6,31 | 12,7 | 31,8 | 63,7 |
2 | 1,89 | 2,92 | 4,30 | 6,96 | 9,92 |
4 | 1,53 | 2,13 | 2,78 | 3,75 | 4,60 |
9 | 1,38 | 1,83 | 2,26 | 2,82 | 3,25 |
14 | 1,34 | 1,76 | 2,14 | 2,62 | 2,98 |
19 | 1,33 | 1,73 | 2,09 | 2,54 | 2,86 |
24 | 1,32 | 1,71 | 2,06 | 2,49 | 2,80 |
29 | 1,31 | 1,70 | 2,04 | 2,46 | 2,76 |
Tegyük fel, hogy két osztályozási módszer által generált modell
pontossága közötti becsült különbség várható értéke
0,05
és szórása
0,002
. Ha a pontosságot 30-szoros keresztellenőrzési
megközelítéssel becsüljük, akkor
95%
-os megbízhatósági szinten a valódi pontosságbeli
különbség
d t
cv
=0,05±1,70×0,002.
(4.17)
Mivel a konfidencia intervallum nem fedi le a nulla értéket, a
módszerek között megfigyelt különbség statisztikailag
szignifikáns.