Oefenen met standaardiseren
Het is riskant om KNN blind toe te passen op onbekende verdelingen. De prestaties gaan sterk achteruit wanneer de verdelingen van features niet dezelfde schalen hebben. Ongeschaalde features vertekenen afstandsberekeningen en geven daardoor onrealistische anomaliescores terug.
Een veelgebruikte techniek om dit tegen te gaan is standaardiseren: je haalt het gemiddelde van een feature af en deelt vervolgens door de standaardafwijking. Hierdoor krijgt de feature een gemiddelde van 0 en een variantie van 1.
Oefen met standaardiseren op de gegevensset females, die al voor je is ingeladen.
Deze oefening maakt deel uit van de cursus
Anomaly Detection in Python
Oefeninstructies
- Maak een instantie van
StandardScaler()en sla die op alsss. - Haal de feature- en target-arrays op in
Xeny. De target is de kolomweightkg. - Fit
StandardScaler()op X en transformeer tegelijk. - Herhaal bovenstaande stappen maar behoud de kolomnamen van de DataFrame
X.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
from sklearn.preprocessing import StandardScaler
# Initialize a StandardScaler
ss = ____
# Extract feature and target arrays
X = ____
y = ____
# Fit/transform X
X_transformed = ____
# Fit/transform X but preserve the column names
X.____ = ____