Czym jest funkcja straty?

Liniowe klasyfikatory w Pythonie

Michael Gelbart

Instructor, The University of British Columbia

Metoda najmniejszych kwadratów: strata kwadratowa

  • LinearRegression w scikit-learn minimalizuje stratę: $$\sum_{i=1}^n (\text{prawdziwa} \; i \text{-ta wartość docelowa}-\text{przewidziana} \; i \text{-ta wartość docelowa})^2$$
  • Minimalizacja odbywa się względem współczynników lub parametrów modelu.
  • Uwaga: model.score() w scikit-learn niekoniecznie jest funkcją straty.
Liniowe klasyfikatory w Pythonie

Błędy klasyfikacji: strata 0-1

  • Strata kwadratowa nie jest odpowiednia dla problemów klasyfikacji (więcej o tym później).
  • Naturalną stratą dla klasyfikacji jest liczba błędów.
  • To jest strata 0-1: 0 dla poprawnej predykcji i 1 dla niepoprawnej.
  • Jednak ta strata jest trudna do minimalizacji!
Liniowe klasyfikatory w Pythonie

Minimalizacja straty

from scipy.optimize import minimize
minimize(np.square, 0).x
array([0.])
minimize(np.square, 2).x
array([-1.88846401e-08])
Liniowe klasyfikatory w Pythonie

Czas na ćwiczenia!

Liniowe klasyfikatory w Pythonie

Preparing Video For Download...