Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Överanpassning och Regularisering | Logistisk Regression
Klassificering med Python

Överanpassning och Regularisering

Svep för att visa menyn

Som visades i föregående kapitel kan du med hjälp av PolynomialFeatures skapa en komplex beslutsgräns. Andragradspolynom kan till och med producera de gränser som visas i bilden nedan:

PolyFeaturesBoundaries

Och detta är bara en grad av två. En högre grad kan ge ännu mer komplexa former. Men det finns ett problem med detta. Beslutsgränsen som byggs av logistisk regression kan bli för komplicerad, vilket gör att modellen överanpassar sig.

Överanpassning innebär att modellen, istället för att lära sig generella mönster i data, bygger en mycket komplex beslutsgräns för att hantera varje träningsinstans. Den presterar dock inte lika bra på data den aldrig har sett tidigare, medan god prestanda på osedd data är en huvuduppgift för en maskininlärningsmodell.

överanpassning lr

Reguljärisering hanterar problemet med överanpassning. Faktum är att l2-reguljärisering används i LogisticRegression-klassen som standard. Men du behöver konfigurera hur starkt modellen ska reguljäriseras. Detta styrs av parametern C:

carousel-imgcarousel-imgcarousel-img
  • högre C – lägre regularisering, mer överanpassning;
  • lägre C – starkare regularisering, mindre överanpassning (men eventuellt underanpassning).

Vilka värden på C som ger en bra modell beror på datasetet, så det är bättre att välja det med hjälp av GridSearchCV.

Note
Notering

Vid användning av logistisk regression med regularisering är det viktigt att skala dina data. Regularisering bestraffar stora koefficienter, och utan skalning kan funktioner med större värden snedvrida resultaten. Faktum är att skalning nästan alltid är nödvändigt – även när regularisering inte används.

Klassen LogisticRegression inkluderar regularisering som standard, så du bör antingen ta bort regularisering (genom att sätta penalty=None) eller skala data (t.ex. med StandardScaler).

Note
Notering

Om du använder både PolynomialFeatures och StandardScaler, se till att tillämpa StandardScaler efter att de polynomiella funktionerna har genererats. Att skala data innan polynomiell expansion kan förvränga de resulterande funktionerna, eftersom operationer som att kvadrera eller multiplicera redan standardiserade värden kan leda till onaturliga fördelningar.

1. Välj det FELAKTIGA påståendet.

2. Vilken är den korrekta ordningen för att förbehandla data

question mark

Välj det FELAKTIGA påståendet.

Vänligen välj det korrekta svaret

question mark

Vilken är den korrekta ordningen för att förbehandla data

Vänligen välj det korrekta svaret

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 5

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Avsnitt 2. Kapitel 5
some-alt