Machine Learning

Generalized Linear Models

Features und Wahrscheinlichkeiten

Angenommen wir kennen Position und Impuls jedes Atoms.
Dann könnten wir exakt vorhersagen ob als nächster rot oder schwarz fällt.

https://commons.wikimedia.org/wiki/File:NYE_Casino_Night_2016_(39)_(24208913576).jpg

Aber: Wir kennen den Zustand der Welt nicht komplett

    Nur Zugriff auf aggregierte Informationen

  • Geschwindigkeit Roulette Rad
  • Einwurf Position Kugel
  • Geschwindigkeit Kugel

Interpretation: Zufall entsteht durch fehlendes Wissen (mangelnde Features)

Angenommen es gibt nur 2 Features A und B mit jeweils 4 Zuständen

A R S R S
R R R S
S S S R
S R S R
B

Wenn wir B nicht beobachten können bekommen wir Unsicherheit

A 50% R 50% S
75% R 25% S
25% R 75% S
50% R 50% S

Aber: Bessere Vorhersage, als ganz ohne Features
(50% R, 50% S)

Für manche Probleme haben wir "perfekte" Features

Beispiel: Handschrifterkennung

$\Rightarrow$ 7

Oft gibt es mit den gegebenen Features eine fundamentale Unsicherheit

Wir versuchen die Unsicherheit zu modellieren, indem wir eine Wahrscheinlichkeitsverteilung für $y$ annehmen.

Annahmen unserer Modelle

  • Lineare Regression: $p(y | x; w)$ ist Normal-verteilt
  • Logistische Regression: $P(y | x; w)$ ist Bernoulli-verteilt

$P(y | x; w)$ ist Bernoulli-verteilt

Unser Modell ist schlechter, wenn die Daten anders verteilt sind, als wir angenommen haben

Beispiel: Regression für Klassifikation verwenden

Poisson Verteilung

Positiv ganzzahlige Daten

https://en.wikipedia.org/wiki/File:Poisson_pmf.svg

Beispiele für Poisson verteilte Ereignisse:

  • Patienten in der Notaufnahme am Tag
  • Anrufer in einem Call Center pro Stunde
  • Anzahl Photonen die einen Sensor pro Sekunde treffen

Poisson Verteilung bedeutet, dass die Ereignisse von einander unabhängig auftreten.

(also kein Netzwerkeffekt)

Exponential- / Gammaverteilung

Positiv realwertige Verteilung

https://en.wikipedia.org/wiki/File:Exponential_probability_density.svg

Beispiele:

  • Wartezeit von Poisson verteilten Kunden
  • Höhe von Versicherungsschäden
  • Zeit bis zum nächsten radioaktiven Zerfall eines Partikels (Klicken des Geigerzählers)

Alle diese Verteilung haben eines gemeinsam: Sie sind Teil der Exponential Family

Für alle diese Verteilung funktionieren Generalised Linear Models (GLMs)

Generalised Linear Model (GLM)

Unser Model ist: \[ h_w(x) = E[y | x; w] \] (Erwartungswert gemäß der gewählten Verteilung)

In all diesen Fällen bleibt das Update für SGD gleich: \[ w \gets w - \eta (h_w(x) - y) \phi(x) \]

Nur $h_w$ (bzw. die Aktivierungsfunktion $g$) verändert sich, je nachdem welche Verteilung wir zugrunde legen: \[ h_w(x) = {\color{red}g}(w \cdot \phi(x)) \]

Das $w \cdot \phi(x)$ wird oft auch "Logit" genannt.

Lineare Regression (Normalverteilte Daten): \[ g(z) = z \\[3mm] h_w(x) = w \cdot \phi(x) \]

Logistische Regression (Bernoulliverteilte Daten): \[ g(z) = \frac{1}{1+e^{- z}} \\[3mm] h_w(x) = \frac{1}{1+e^{- w \cdot \phi(x)}} \]

Poisson Regression: \[ g(z) = e^z \\[3mm] h_w(x) = e^{w \cdot \phi(x)} \]

Gamma Regression: \[ g(z) = e^z \\[3mm] h_w(x) = e^{w \cdot \phi(x)} \]

Durch GLM können wir eine große Klasse an (etwas exotischeren) Problemen besser modellieren.

No free lunch theorem

Für jeden Lernalgorithmus gibt es eine Verteilungsfunktion für die Daten, so dass der Algorithmus versagt.

Aber: Die meisten Verteilungen sind gutartig.

In sklearn: