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

bookÖveranpassning och Regularisering

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:

Och detta är endast 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 leder till att modellen överanpassar.

Ö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. Trots detta presterar den inte lika bra på data den aldrig sett tidigare, medan god prestanda på osedd data är en huvuduppgift för en maskininlärningsmodell.

Reguljärisering hanterar problemet med överanpassning. Faktum är att l2-reguljärisering används i klassen LogisticRegression 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, därför är det bättre att välja det med hjälp av GridSearchCV.

Note
Notera

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ändig – även när regularisering inte används.

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

Note
Notera

Om du använder både PolynomialFeatures och StandardScaler, se till att applicera 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.

Select the correct answer

question mark

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

Select the correct answer

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

Suggested prompts:

Can you explain how to use GridSearchCV to find the best C value?

What is the difference between overfitting and underfitting?

How does regularization help prevent overfitting in logistic regression?

Awesome!

Completion rate improved to 4.17

bookÖ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:

Och detta är endast 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 leder till att modellen överanpassar.

Ö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. Trots detta presterar den inte lika bra på data den aldrig sett tidigare, medan god prestanda på osedd data är en huvuduppgift för en maskininlärningsmodell.

Reguljärisering hanterar problemet med överanpassning. Faktum är att l2-reguljärisering används i klassen LogisticRegression 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, därför är det bättre att välja det med hjälp av GridSearchCV.

Note
Notera

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ändig – även när regularisering inte används.

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

Note
Notera

Om du använder både PolynomialFeatures och StandardScaler, se till att applicera 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.

Select the correct answer

question mark

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

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 5
some-alt