Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Finne Parameterne | Logistisk Regresjon
Klassifisering med Python

Finne Parameterne

Sveip for å vise menyen

Logistisk regresjon krever bare at datamaskinen lærer de beste parameterne ββ. For dette må vi definere hva "beste parametere" betyr. La oss minne oss på hvordan modellen fungerer; den predikerer pp – sannsynligheten for å tilhøre klasse 1:

p=σ(z)=σ(β0+β1x1+...)p = \sigma (z) = \sigma (\beta_0 + \beta_1x_1 + ...)

Hvor

σ(z)=11+ez\sigma (z) = \frac{1}{1 + e^{-z}}

Åpenbart er en modell med gode parametere en som predikerer høy (nær 1) pp for observasjoner som faktisk tilhører klasse 1, og lav (nær 0) pp for observasjoner med faktisk klasse 0.

god dårlig logistisk regresjonsmodell

For å måle hvor dårlig eller god modellen er, bruker vi en kostnadsfunksjon. I lineær regresjon brukte vi MSE (mean squared error) som kostnadsfunksjon. Denne gangen brukes en annen funksjon:

kostnad

Her representerer pp sannsynligheten for å tilhøre klasse 1, slik modellen har forutsagt, mens yy angir den faktiske målverdien.

Denne funksjonen straffer ikke bare feilaktige prediksjoner, men tar også hensyn til modellens selvtillit i sine prediksjoner. Som illustrert i bildet over, når verdien av pp ligger nær yy (den faktiske målverdien), forblir kostnadsfunksjonen relativt liten, noe som indikerer at modellen trygt valgte riktig klasse. Omvendt, hvis prediksjonen er feil, øker kostnadsfunksjonen eksponentielt etter hvert som modellens selvtillit i feil klasse vokser.

god dårlig kostnad lr

I konteksten av binær klassifisering med en sigmoid-funksjon, brukes kostnadsfunksjonen som spesifikt kalles binær kryssentropitap, som vist ovenfor. Det er viktig å merke seg at det også finnes en generell form kjent som kryssentropitap (eller kategorisk kryssentropi) som brukes for flerklasses klassifiseringsproblemer.

Det kategoriske kryssentropitapet for én treningsinstans beregnes som følger:

Categorical Cross-Entropy Loss=i=1Cyilog(pi)\text{Categorical Cross-Entropy Loss} = -\sum_{i=1}^{C} y_i \log(p_i)

Hvor

  • CC er antall klasser;
  • yiy_i er den faktiske målverdien (1 hvis klassen er korrekt, 0 ellers);
  • pip_i er den predikerte sannsynligheten for at instansen tilhører klasse ii.

Vi beregner tapfunksjonen for hver treningsinstans og tar gjennomsnittet. Dette gjennomsnittet kalles kostnadsfunksjonen. Logistisk regresjon finner parameterne β\beta som minimerer kostnadsfunksjonen.

Sigmoid2
question mark

Hvilken av disse brukes som tap i klassifiseringsoppgaver?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 2

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 2. Kapittel 2
some-alt