Billedbehandling og mønstergenkendelse: Lidt elementær statistik (version 2) Klaus Hansen 4. november 23 Indhold 1 Elementære empiriske mål 1 2 Lidt sandsynlighedsregning 3 3 Fordelinger 3 3.1 Grundlæggende begreber................................. 3 3.2 Nogle eksempler på diskrete fordelinger......................... 5 3.3 Nogle eksempler på kontinuerte fordelinger...................... 6 4 Parameterestimation 8 5 Statistiske test 9 5.1 -test: følger forsøgsdata den teoretiske fordeling?.................. 9 5.2 To sæt data: er det den samme fordeling?........................ 1 1 Elementære empiriske mål Gennemsnit og varians Hvis vi har observationer kan vi udregne gennemsnit og varians : (1) (2) I mange tilfælde kan man bruge som estimat for den teoretiske varians i en fordeling og en bedre værdi fås da hvis der i udtrykket for divideres med beregnes på en bekvemmere måde som idet " og $&%'" i stedet for med. kan (3) kan beregnes i samme gennemløb af data og også bruges til at beregne. Gennemsnittet tilhører ofte ikke mængden af mulige observationer f.eks. hvis vi måler heltalsværdier men vi skal være forsigtige med at afrunde gennemsnittet. 1
&% ' Median og fraktiler Har man brug for at finde den observation der er tættest på midten kan vi bruge medianen. Vi sorterer observationerne (under brug af permutationen ) og får det sorterede sæt Det midterste element har indeks og kaldes medianen. Det er ét ud af mange mulige fraktiler som er elementer med indeks af formen. Bruges % er der tale om de tre kvartiler med indices (nedre kvartil) (median) og (øvre kvartil). Hvis observationerne kan have værdierne ( er f.eks. 256 for gråtonebilleder og ) kan vi tælle hvor mange observationer der har værdien. Sættet af kaldes et histogram og kan vises grafisk se figur 1 til højre. Figur 1: Til venstre billedet af Lena i en gråtoneudgave. Til højre histogrammet for billedet. De lodrette linjer er markeringer som er irrelevante i denne sammenhæng. Den vandrette akse angiver gråtoneværdierne den lodrette de tilsvarende antal ". Gennemsnittet kan udregnes ud fra histogrammet til at være. Entropi Et andet statistisk mål der kan udregnes fra histogrammet er den empiriske entropi (se side 5); man benytter som de enkelte sandsynligheder divideret med det samlede antal observationer idet summen af sandsynlighederne jo skal være 1. Multidimensionale data Gennemsnit og varians kan generaliseres hvis observationerne er multidimensionale mht. indeks: $ () '.... ' Da kan man regne forskellige gennemsnit og varianser for rækker ( ) og for alle ( og ): (4) og ) for søjler ( og (5) 2
' ' ' (6) (7) (8) (9) (1) 2 Lidt sandsynlighedsregning Ved et eksperiment tilhører udfaldene udfaldsrummet ( universet ). Vi er interesserede i en hændelse og specielt i sandsynligheden for at den indtræffer. Et fornuftigt mål for sandsynligheder af hændelser skal opføre sig på følgende måde: og hvis er et sæt disjunkte hændelser (dvs. har ikke udfald til fælles) er. Vi kan indføre et naturligt mål ved at tælle antallet af elementer og og sætte. Hvis mængderne ikke er tællelige må vi benytte et mål baseret på arealer dvs. anvende integralregning. Der gælder en lang række regneregler for sandsynligheder her følger et par eksempler: Formel 13 kaldes Bayes formel. og hændelsen. 3 Fordelinger (11) (12) (13) kaldes a posteriori-sandsynligheden givet a priori-sandsynligheden Vi vil nu kikke på sandsynligheder som kan beregnes ud fra en tabel eller en funktion med nogle få parametre parametriserede sandsynligheder. 3.1 Grundlæggende begreber Vi antager at vi har en tilfældig variabel som ved en stokastisk proces giver et tilfældigt udfald dvs. det kan ikke forudsiges eksakt. Vi har brug for to funktioner benævnt tæthedsfunktionen og fordelingsfunktionen. Hvis er diskret består den af en række udfald hver tilknyttet en sandsynlighed. Tæthedsfunktionen er da idet og fordelingsfunktionen er ". 3
( I det ikke-diskrete tilfælde er sandsynlighederne givet ved en tæthedsfunktionen som er en. Fordelingsfunktionen er reel funktion hvorom det gælder at og Der gælder derfor at ". Det er muligt at lave regneregler for summer af produkter af og kvotienter mellem statistiske variable og generelt for Momenter når tæthedsfunktionen eller fordelingsfunktionen er kendt. For statistiske variable kan man definere momenter som er en opsummeringer svarende til gennemnit og varians. Nulpunktsmomenter af k te orden har formerne (14) (15) Nulpunktmomentet af 1. orden eller kaldes middelværdien af og svarer til fordelingens tyngdepunkt. Nogle regneregler for : (16) (17) (18) (19) Den sidste formel forudsætter at og er statistisk uafhængige. De centrale momenter af k te orden har formerne (2) (21) Det centrale moment af 2. orden kaldes variansen af og betegnes eller. I lærebogen bruges disse begreber i afsnit 2.1.4 Images as a stochastic process. I formlerne 2.15 2.16 og 2.17 er notationen lidt anderledes idet der er generaliseret til " dimensioner dvs. at tæthedsfunktion ( ) og fordelingsfunktion (som ikke er navngivet men defineret som et integrale) egentlig er funktioner af " variable. - benævnes %$ & ' idet den statistiske variabel er & ' en funktion af én variabel for hvert punkt i et billede. I nærværende notation bliver $)$ & ' & ' til./ (her er tæthedsfunktionen som i bogen benævnes ) og $$ er derfor blot. I Peter Johansens noter om principalkomponentanalyse bruges betegnelsen for middelværdien og betegnelsen for en retningsbestemt udgave af variansen & idet er sat til nul ved en systematisk forskydning af koordinatsystemet. 4
Entropi Et andet statistisk mål er entropien og som defineres som idet led med udelades. Hvis der bruges logaritmen med grundtal 2 fås entropien i bit. Hvis man kun har naturlige logaritmer eller logaritmer med grundtal 1 kan man udnytte at Entropien kan også defineres for det ikke-diskrete tilfælde. 3.2 Nogle eksempler på diskrete fordelinger Ligefordelingen kan antage værdierne. Binomialfordelingen Parameter " ellers Binomialfordelingen (se figur 2) benyttes ved en række ens eksperimenter til at finde sandsynligheden for det totale antal forekomster af et udfald. Parametre Poissonfordelingen og ellers Poissonfordelingen (se figur 3) anvendes hvis der ingen statistsik sammenhæng er mellem de enkelte hændelser. Fordelingen bruges meget ofte i køteori for såvel antallet af ankommende som antal ekspederede i en given tidsperiode f.eks. for køen ved kasseapparater i supermarkeder. Parameter ellers 5
.7.6 Binomialfordelingen for n=1 p=.5 p=.5 p=.8 sandsynlighed p(x=x).5.4.3.2.1 1 2 3 4 5 6 7 8 9 x 1 1 2 3 Figur 2: Binomialfordelingen for tre værdier af parameteren 3.3 Nogle eksempler på kontinuerte fordelinger Den rektangulære fordeling Parametre og Normalfordelingen (Gauss-fordelingen) ellers Normalfordelingen (se figur 4) bruges meget ofte specielt i sammenhænge hvor man ikke kender den egentlige fordeling eller hvor et udfald skyldes en større række bidragende tilfældigheder. Parametre og Gauss-fordelingen med og kaldes også den normerede normalfordeling eller u- fordelingen. Det er fordelingen af en normeret statistisk normaltfordelt variabel. Denne type statistiske variable optræder i en del statistiske test. 6
sandsynlighed p(x=x).4.35.3.25.2.15.1.5 Poissonfordelingen µ=1 µ=5 µ=15 5 5 1 15 2 25 x 3 35 1 2 3 Figur 3: Poissonfordelingen for tre parameterværdier I MATLAB findes funktionen erf som ligner u-fordelingen men er defineret ved og ud fra den kan værdier af fordelings- Funktionen erfc har værdien funktionen for u-fordelingen beregnes: Laplace Laplacefordelingen (se figur 5) er et specialtilfælde af den generaliserede Gauss-fordeling. Den benyttes til at beskrive fordelingen af pixelværdier og fordelingen af koefficientværdier i DCT (Discrete Cosine Transform benyttes bl.a. i JPEG). Den generaliserede Gauss-fordeling: Parametre og 7
.5.45.4 Normalfordelingen (Gauss fordelingen) med µ=1. Varians 1. Varians 2. Varians 5. Varians 2.35 sandsynlighed p(x=x).3.25.2.15.1.5 4 2 2 4 6 x Figur 4: Normalfordelingen for fire varianser Parametre og Gamma-funktionen er den kontinuerte udgave af fakultetsfunktionen idet der for heltallige gælder at. Den matematiske definition er. Se figur 6. -fordelingen Anvendelse: se nedenfor i afsnit 5.1. Parameter ( ellers ) 4 Parameterestimation Har vi nogle forsøgsdata og en teoretisk fordeling med ukendte parametre kan vi estimere hvilken værdi af parametrene der bedst beskriver forsøgsdata. Der er mange måder at estimere på men et udmærket estimatet er den empiriske for middelværdien og udregnet med nævneren for variansen. 8
Laplacefordelingen med µ=1..5 b=1. b=2. b=5. b=2.4 sandsynlighed p(x=x).3.2.1 4 2 2 4 6 x Figur 5: Laplacefordelinegn 5 Statistiske test Statistiske test går ofte ud på at afgøre om forsøgsdata bekræfter eller afkræfter en hypotese der er opstillet før forsøget; det er en god ide at opstille hypotesen før forsøget idet forsøget i mange tilfælde da kan udformes så udfaldet af den statistiske test får størst mulig sikkerhed. En situation man ofte støder på er at data følger en kendt fordeling men parametrene til denne er ikke kendte. Man kan da opstille hypotesen at parametrene tilhører mængden som er en delmængde af alle de mulige parameterkombinationer. Hypotesen benævnes nulhypotesen og den modsatte hypotese er : at parametrene ikke tilhører. Der er nu følgende muligheder: accepteres forkastes er sand OK fejl af 1. art er falsk fejl af 2. art OK Vi er normalt interesserede i at sandsynligheden for en fejl af 1. art er så lille som mulig. Vi håber så at det også gælder for fejlen af 2. art. Da der er tale om stokastiske variable kan vi ikke helt undgå at begå fejl. En test med signifikansniveau er en test hvor. Denne vælges ofte til at være.5 dvs. højst 5% sandsynlighed for at forkaste. Hvis man forkaster kan man yderligere angive noget om : 1-stjernet () imod ikke forkastet på 1 % niveau svagt bevis for 2-stjernet () imod forkastet på 1 % niveau men ikke på.1 % bevis for 3-stjernet ( )imod også forkastet på.1 % niveau stærkt bevis for 5.1 -test: følger forsøgsdata den teoretiske fordeling? Har vi nogle observationer og en teoretisk fordeling kan vi teste om observationerne følger den teoretiske fordeling hvis vi har observationer nok. Vi grupperer observationerne fx ved at lave et histogram over de observerede data dvs. grupperer i " klasser. Histogrammet har antallet obeservationer i den te klasse idet ". Vi observationer. For hver klasse har vi en teoretisk sandsynlighed. har i alt 9
Figur 6: Gammafunktionen For at testen kan bruges skal hver være mindst 5 ellers er der for få observationer for klasserne med lille sandsynlighed. Man kan evt. slække på dette krav hvis over 8% af klasserne opfylder kravet samtidig med at ingen klasse har et forventet antal der er mindre end 1. Vi udregner nu '. følger nu med god tilnærmelse en - og " fordeling med frihedsgrader. -fordelingen beskriver egentlig fordelingen af summen af kvadraterne på stokastiske variable der hver er normeret normaltfordelt: $ " $. Når er stor nok vil man kunne tilnærme mange fordelinger med en normalfordeling (dette gælder fx Poisson-fordelingen og binomialfordelingen) og derfor kan man antage at kvadratet på normerede variable som i ovenstående formel med god tilnærmelse er $ -fordelt. Vi skal nu finde signifikansniveauet for at hypotesen om overensstemmelse mellem teoretisk fordeling og observationer skal forkastes. I MATLAB på DIKU mangler statistikpakken så -testen findes ikke som standardfunktion. C-programmører kan finde funktionen chsone i Numerical Recipes som blandt andet kan findes i /usr/local/image/src/archive/numericalrecipes/ansi-c/. Funktionen kaldes således: chsone(float bins[] float ebins[] int nbins int knstrn float df float chsq float prob) hvor nbins er antallet af klasser bins er histogrammet ebins de forventede værdier knstrn i dette tilfælde er 1 df er en pointer til en variabel niveauet men heller ikke under er der angiver antallet af frihedsgrader (denne ændres). I chsq returneres $ -testværdien og i prob andsynligheden for -værdien. Er denne over hypotesen bekræftet. 5.2 To sæt data: er det den samme fordeling? (Kilde: Brøndum og Monrad: Statistik I og II (Den private ingeniørfond 1993)) Vi får brug for to nye fordelinger: t-fordelingen og F-fordelingen. statistiske variabel $ t-fordelingen Har vi to statistiske variable (fordelt ) og (fordelt efter ) er fordelingen af den fordelt efter t-fordelingen med frihedsgradsantallet. Tæthedsfunktionen for denne er 1
$ $ $ $ (22) F-fordelingen Har vi to statistiske variable (T for tæller) og (N for nævner) som er fordelt henholdsvis vil sandsynlighedsfordelingen for den statistiske variabel være F- fordelt med tællerfrihedsgradsantal og nævnerfrihedsgradsantal. Tæthedsfunktionen for denne er $ $ $ $ $ (23) og To sæt data: er variansen den samme? Vi er i den situation at vi har to sæt normaltfordelte data med hver sine ukendte parametre og. Vi ønsker nu at afgøre om de ukendte er forskellige. Vi beregner først det empiriske gennemsnit og den empiriske varians for de to sæt data dvs. og. Vi benytter Bartletts test med nulhypotesen imod den alternative: at de ikke er lig hinanden. Forholdet er F-fordelt. Frihedsgraderne for nævner og tæller vælges ud fra hvad og er ud fra frihedsgraderne og. Hvis fx er mindre end holder nulhypotesen med konfidensniveau 2.5%. Et eksempel (hentet fra Brøndum og Monrad II side 385): To sæt observationer henholdsvis (162.2 161.3 161.9 161.2 163.4 162.4 162.5 162) og (163.3 162.6 161.8 163.8 163. 163.2 164.1). Vi beregner og. Af dette fås og da er der ingen tegn på forskellig varians. I Numerical Recipes kan testen på udføres ved hjælp af funktionen betai(a b x) (incomplete beta function) som med passende parametre vil give sandsynligheden for at ville have denne værdi hvis den ene varians faktisk var mindre end den anden. Funktionen kaldes med parametrene og $. I kursets MATLAB-katalog (i /usr/local/del1/datv-billed) findes i kataloget statistics m-filer for betai og hjælpefunktioner. To sæt data: er middelværdien den samme? Vi har nu afgjort at de to sæt normaltfordelte data har samme (men ukendte) varians. Har vi samme varians kan vi beregne et fællesestimat for denne på grundlag af samtlige data. Vi skal her benytte nævneren. Vi tester nu nulhypotesen imod alternativet: at de er forskellige. Størrelsen er t-fordelt med frihedsgrader. Er t-værdien fx mindre end grund til at afvise nulhypotesen. er der ingen 11
$. Da og er der tegn på at middelværdierne er forskellige. I Numerical Recipes kan testen på også udføres ved hjælp af betai med parametrene I eksemplet fra forrige afsnit er og og $. Resultatet skal trækkes fra 1 for at give sandsynligheden. I kursets MATLAB-katalog (i /usr/local/del1/datv-billed) findes i kataloget statistics m-filer for betai og hjælpefunktioner. Der findes også en m-fil variancetest der foretager en test på to sæt data. Ikke-parametriske test -testen fra afsnit 5.1 er ikke-parametrisk da den ikke antager noget om fordelingstype- og parametre. Der findes andre ikke-parametriske test fx Wilcoxsons rang-test. Vi har to statistiske variable og med ukendte fordelinger og med medianer og. Vi kan tage stikprøver fx (31 34 29 26 32 35) og (26 24 28 29 3 29 32 26) (eksemplet er hentet fra Brøndum og Monrad II side 494). Vi ønsker nu at teste nulhypotesen at de to fordelinger er ens (dvs. ). Vi sorterer samtlige stikprøver efter størrelse og giver dem rangtal idet mindste observation får rang 1 og identiske observationer får en rang som er gennemsnittet af de range de ville have fået: Obs (1) 26 29 31 32 34 35 Obs (2) 24 26 26 28 29 29 3 32 Rang (1) 3 7 1 11.5 13 14 Rang (2) 1 3 3 5 7 7 9 11.5 Summen af rangtallene for bliver 58.5. Når begge sæt observationer har tilstrækkelig mange elementer (større end 5) kan sandsynlighedsfordelingen approksimeres med normalfordelingen $ således at testet kan udføres som et almindeligt U-test. Vi får i eksemplet at $ & og. Da er større kan vi antage at de to fordelinger er identiske. I kursets MATLAB-katalog (i /usr/local/del1/datv-billed) findes i kataloget statistics m-filer for u-fordelinegn udistr. M-filen ranktest laver en rangtest på to sæt data. $ 12