Beslissingsgrens
Laten we de resultaten van Logistische Regressie visualiseren. Beschouw het volgende voorbeeld met twee kenmerken:
Zodra een Logistische Regressie is opgebouwd, kan een beslissingsgrens worden gevisualiseerd. Deze toont voor elke klasse het gebied waarin nieuwe instanties als die klasse worden voorspeld. Hier volgt bijvoorbeeld de beslissingsgrens van Logistische Regressie toegepast op bovenstaande gegevens:
Hier is te zien dat de lijn de twee klassen perfect scheidt. In dat geval wordt de dataset lineair scheidbaar genoemd. Dit is echter niet altijd het geval. Stel dat de dataset er als volgt uitziet:
Hierboven staat een beslissingsgrens voor een iets andere dataset. In dit geval zijn de gegevens niet lineair scheidbaar; daarom zijn de voorspellingen van Logistische Regressie niet perfect. Helaas kan Logistische Regressie standaard geen complexere beslissingsgrenzen voorspellen, dus dit is de beste voorspelling die mogelijk is.
Houd er echter rekening mee dat Logistische Regressie is afgeleid van Lineaire Regressie, die een oplossing biedt voor het probleem dat het model te eenvoudig is. Deze oplossing is Polynomiale Regressie, en we kunnen de vergelijking hiervan gebruiken voor het berekenen van z om een complexere vorm van de beslissingsgrens te verkrijgen:
z=β0+β1x1+β2x2+β3x12+β4x1x2+β5x22Net als bij Polynomiale Regressie kunnen we de PolynomialFeatures-transformer gebruiken om polynomiale termen aan onze kenmerken toe te voegen - dit helpt het model om complexere patronen te leren.
from sklearn.preprocessing import PolynomialFeatures
X_poly = PolynomialFeatures(2, include_bias=False).fit_transform(X)
Deze regel transformeert de oorspronkelijke invoerkenmerken in X door toe te voegen:
- Kwadratische termen (bijv. x2);
- Interactietermen (bijv. x1⋅x2 als er meerdere kenmerken zijn).
Als X bijvoorbeeld oorspronkelijk twee kenmerken heeft: [x1,x2], dan krijg je na het toepassen van PolynomialFeatures(2, include_bias=False): [x1,x2,x12,x1x2,x22]
Hierdoor kunnen modellen zoals Logistische Regressie niet-lineaire relaties vastleggen en flexibelere, gebogen beslissingsgrenzen produceren. Het verhogen van de graad kan echter leiden tot een model dat te goed past op de trainingsgegevens - een probleem dat bekend staat als overfitting. Daarom proberen we meestal eerst lagere graden en evalueren we het model zorgvuldig.
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Awesome!
Completion rate improved to 4.17
Beslissingsgrens
Veeg om het menu te tonen
Laten we de resultaten van Logistische Regressie visualiseren. Beschouw het volgende voorbeeld met twee kenmerken:
Zodra een Logistische Regressie is opgebouwd, kan een beslissingsgrens worden gevisualiseerd. Deze toont voor elke klasse het gebied waarin nieuwe instanties als die klasse worden voorspeld. Hier volgt bijvoorbeeld de beslissingsgrens van Logistische Regressie toegepast op bovenstaande gegevens:
Hier is te zien dat de lijn de twee klassen perfect scheidt. In dat geval wordt de dataset lineair scheidbaar genoemd. Dit is echter niet altijd het geval. Stel dat de dataset er als volgt uitziet:
Hierboven staat een beslissingsgrens voor een iets andere dataset. In dit geval zijn de gegevens niet lineair scheidbaar; daarom zijn de voorspellingen van Logistische Regressie niet perfect. Helaas kan Logistische Regressie standaard geen complexere beslissingsgrenzen voorspellen, dus dit is de beste voorspelling die mogelijk is.
Houd er echter rekening mee dat Logistische Regressie is afgeleid van Lineaire Regressie, die een oplossing biedt voor het probleem dat het model te eenvoudig is. Deze oplossing is Polynomiale Regressie, en we kunnen de vergelijking hiervan gebruiken voor het berekenen van z om een complexere vorm van de beslissingsgrens te verkrijgen:
z=β0+β1x1+β2x2+β3x12+β4x1x2+β5x22Net als bij Polynomiale Regressie kunnen we de PolynomialFeatures-transformer gebruiken om polynomiale termen aan onze kenmerken toe te voegen - dit helpt het model om complexere patronen te leren.
from sklearn.preprocessing import PolynomialFeatures
X_poly = PolynomialFeatures(2, include_bias=False).fit_transform(X)
Deze regel transformeert de oorspronkelijke invoerkenmerken in X door toe te voegen:
- Kwadratische termen (bijv. x2);
- Interactietermen (bijv. x1⋅x2 als er meerdere kenmerken zijn).
Als X bijvoorbeeld oorspronkelijk twee kenmerken heeft: [x1,x2], dan krijg je na het toepassen van PolynomialFeatures(2, include_bias=False): [x1,x2,x12,x1x2,x22]
Hierdoor kunnen modellen zoals Logistische Regressie niet-lineaire relaties vastleggen en flexibelere, gebogen beslissingsgrenzen produceren. Het verhogen van de graad kan echter leiden tot een model dat te goed past op de trainingsgegevens - een probleem dat bekend staat als overfitting. Daarom proberen we meestal eerst lagere graden en evalueren we het model zorgvuldig.
Bedankt voor je feedback!