Feature-skalering på data fra overvågningsforløb
Formål
I dette forløb undersøges begrebet feature-skalering med brug af data fra forløbet om overvågning i Monitorbian.
Man kan læse mere i noten om feature-skalering, men det er ikke en forudsætning for at arbejde med dette forløb.
De konkrete features
I datasættet er fodarealerne målt i \(cm^2\) med værdier fra 138 til 334, mens højderne er målt i \(cm\) med værdier fra 62 til 155. Så variationsbredden i fodarealer uden enhed er ca. 200, mens variationsbredden i højder uden enhed er ca. 100. Så når vi med kNN bestemmer nærmeste naboer, vil højden ofte betyde mere end fodarealet, da højderne ligger tættere på hinanden.
Enheden på data ændres
Men hvad ville der ske, hvis vi anvendte en anden enhed for eksempel for højderne. Hvad hvis vi i stedet målte højderne i \(mm\)? Så bliver variationsbredden i højderne ca. \(1000\), mens variationsbredden for fodarealerne stadig er ca. \(200\). Så vi må nu forvente, at fodarealerne betyder mere end højderne, når vi bestemmer nærmeste naboer, da fodarealerne nu ligger tættere på hinanden end højderne. Det skal vi se på i de følgende opgaver.
Det er naturligvis ikke praktisk, hvis den valgte enhed på data har betydning for, hvilke punkter der er tættest på hinanden.
Metode til at give begge features samme vægt
Som du måske har gættet, vil det bedste nok være, at fodareal og højde betød lige meget.
Det gøres i to trin. Først "flyttes" data, så både værdierne for fodarealer og værdierne for højder ligger omkring \(0\). På den måde vil værdier under gennemsnittet blive negative og værdier over gennemsnittet positive.
Dernæst gøres variationsbredderne nogenlunde lige store. Man kunne dividere alle værdierne for fodarealer med variationsbredden for fodarealerne, og tilsvarende for højderne. Derved ville de to features begge få en variationsbredde på \(1\), og dermed være ens. Man vælger dog at gøre noget lidt anderledes, blandt andet fordi variationsbredden kun afhænger af to af punkterne og ikke dem alle. I stedet for at dividere med variationsbredden, divideres med spredningen, hvorefter de fleste dataværdier kommer til at ligge mellem \(-2\) og \(2\) for begge features.
Vi skal have set, hvordan det ser ud.
Denne metode er en kendt standard til at sørge for, at begge (eller alle, hvis der er flere) features vægtes lige meget, så man undgår at den valgte enhed afgør, om den ene eller anden anden feature bliver dominerende.
For eksempel bruger programmet Orange, som du anvendte i forløbet Overvågning i Monitorbian denne form for feature-skalering.