Zum Inhalt springen

Kurs:Maschinelles Lernen/Hypothesen aus Daten ableiten

Aus Wikiversity

Vorherige Seite: K1 - Grundbegriffe des maschinellen Lernens
Nächste Seite: K2 - Lineare Regression in einer Dimension

Formulierung des Problems

[Bearbeiten]

Mit dem vorliegenden Datensatz 𝔻:={(xi,yi):i{1,...,N}} hat man Informationen zwar endlich viele über eine unbekannte Funktion f:XY. Eine Hypothese ist ebenfalls eine Funktion h:XY aus einem Hypothesenraum H aller Abbildungen von X nach Y. Wie auf der vorherigen Seite bereits bemerkt, wird dazu der Hypothesenraum auf bestimmte Funktionsklassen eingeschränkt.

Parametrisierte Funktionenräume

[Bearbeiten]

Es bietet sich an, dazu ein Modell mit einer gewissen Anzahl an Parametern zu entwerfen. Diese Parameter können zu einem Vektor wn (oder auch Matrix WMat(m×n,)) als Parameterdarstellung zusammengefasst werden. Der betrachtete Hypothesenraum Hn ist ein Funktionenraum mit den Hypothesen, die man als Abbildungen h:XY darstellt. Formal beschreibt hHn, dass die Funktion h durch einen n-dimensionalen Vektor dargestellt wird. Hn ist damit eine Teilmenge des gesammten Hypothesenraums H.

Beispiel - Darstellung von Funktionen durch Vektoren

[Bearbeiten]

In dem Beispiel wird erläutert, wie man die Klasse der affin-lineare Funktionen durch einen Hypothesen H2=2 darstellen kann. Dabei stellt ein Vektor w=(w1,w2)2 die folgende Funktion fw dar:

fw:xfw(x)=w1x+w2

Mit Trainingsdaten 𝔻:={(xi,yi):i{1,...,N}} wird in diesem einfachen Fall die Suche nach der besten approximierenden Funktion fw durch die lineare Regression gelöst.

Bemerkung - Berechenbarkeit von optimalen Approximationen der unbekannten Funktion f

[Bearbeiten]

Im allgemeinen Fall gibt es nicht notwendigerweise explizite Lösungsverfahren, die beste Approximation liefern. In der Regel werden an dieser Stelle numerische oder statistische Lernverfahren für die Approximation eingesetzt.

Bemerkung - Hypothesenraum 1

[Bearbeiten]

Aufgrund der speziellen Wahl von w=(w1,,wn)n kann der betrachtete Hypothesenraum als isomorph zu n angesehen werden. Wie ein Parametervektor eine Funktion aus dem Hypothesenraum definiert wird über die Funktionenklasse angeben. Dies ist durch die Bezeichnung Hn nicht eindeutig festgelegt.

Beispiel - Hypothesenraum mit zwei unterschiedlichen Funktionsklassen

[Bearbeiten]

H_2 In dem Beispiel wird erläutert, wie man durch einen Parametervektor w=(w1,w2,w3)3 zwei unterschiedliche Hypothesenräume H3 und H3^ darstellen kann.

  • H3 ist ein polynomialer Hypothesenraum von Funktionen und
  • H3^ ist ein trigonometrischer Hypothesenraum von Funktionen

Polynomialer Hypothesenraum

[Bearbeiten]

Für H3 stellt ein Vektor w=(w1,w2,w3)3 die folgende Funktion fw dar:

fw:xfw(x)=w1x2+w2x+w3

Mit Trainingsdaten aus dem 2 mit 𝔻:={(xi,yi)2:i{1,...,N}}.


Trigonometrischer Hypothesenraum

[Bearbeiten]

Für H3^ stellt ein Vektor w=(w1,w2,w3)3 die folgende Funktion fw^ dar:

fw^:xfw(x)=w1sin(w2x)+w3

Auch für H3^ stammen die Trainingsdaten aus dem 2 mit 𝔻:={(xi,yi)2:i{1,...,N}}. Allerdings stellt der Vektor w3 im Vergleich zum polynomialen Hypothesenraum kein Polynom fw, sondern eine trigonometrische Funktion fw^ dar.

Aufgabe des maschinellen Lernens

[Bearbeiten]

In diesem Fall besteht die Aufgabe des maschinellen Lernens darin einen Parametervektor ŵ zu finden, so dass (salopp formuliert) hŵt gilt. Die Parameter w können bspw. im Rahmen der Neuronalen Netze die Gewichte der einzelnen Neuronen sein. Auf der anderen Seite gibt, es Parameter, die zwar festgelegt, aber nicht varriert werden, die also nicht in den Parametervektor w einfließen. Sie werden als Hyperparameter bezeichnet. Bei Neuronalen Netzen wäre dies bspw. die Zahl der Neuronen und die Architektur des Netzes.

Risiko-, Verlust-, Fehlerfunktion

[Bearbeiten]

Um nun wn zu finden, bietet es sich an, die Fehler des Modells durch eine Risikofunktion R oder Fehlerfunktion E ("Error") zu beschreiben.

Risikofunktion

[Bearbeiten]

Eine Risikofunktion beschreibt das Risiko R, das bei der Verwendung der Hypothese h:XY als Beschreibung für die unbekannte Funktion f:XY

R:H×H0+,(h,f)R(h,f)

entsteht. Die Funktion R wird als Risiko bezeichnet.


Fehlerfunktion

[Bearbeiten]

Da f allerdings nicht bekannt ist, berechnet man einen Fehler E auf Grundlage eines vorliegenden Datensatzes 𝔻={(x1,y1),(x2,y2),,(xN,yN)}. Dieses empirische Risiko wird über eine Fehlerfunktion E berechnet, die zu einer Hypothese und Daten 𝔻X×Y

E:H×(X×Y)0+,h,𝔻R̂D(h)=1Ni=1Nl(h(xi),yi)

mit der Verlustfunktion (engl. loss function)

l:X×Y0+

eingeführt. Häufig wird stattdessen das empirische Risiko auch als Funktion des Datensatzes unter vorliegen einer bestimmten Hypothese R̂h(D) aufgefasst. An die Verlustfunktion werden zwei Bedingungen gestellt:

  • Da das Minimum von R̂ gesucht werden soll, sollte diese Funktion nach unten beschränkt sein. Gleichzeitig sollen Fehler den Wert des empirischen Risikos erhöhen. Daher sollte für alle Hypothesen, Eingabe- und Ausgabewerte der Zusammenhang l(h(x),y)0 gelten.
  • Das Minimum einer Funktion kann mit den Methoden der Differentialrechung gefunden werden, wenn die Funktion differenzierbar ist. Da Ableitungen linear sind, muss jeder Summand differenzzierbar sein, womit sich die Bedingung einer differenzierbaren Verlustfunktion motivieren lässt.

Für Regressionen wird häufig der quadratische Fehler

l(h(x),y)=(h(x)y)2

als Verlustfunktion verwendet.
Für eine Klassifikation wird stattdessen die sog. Kreuzentropie

l(h(x),y)=[yln(h(x))+(1y)ln(1h(x))]

verwendet, wobei hier die Vereinbarung 0ln(0)=0 getroffen wird.

Verallgemeinerungsfehler

[Bearbeiten]

Da R̂ nur eine Näherung für R ist, kann es passieren, dass bei der Minimierung des empirischen Risikos zunächst auch das Risiko sinkt, es aber ab einem bestimmten Punkt wieder ansteigt. Ab diesem Moment passt sich das Modell Ausreißer des vorliegenden Datensatzes an und es wird vom Overfitting gesprochen. Um dies zu Quantifizieren wird der Verallgemeinerungsfehler (engl. generalization gap)

G=|RR̂|

eingeführt. Dieser soll möglichst klein gehalten werden. In der Praxis wird ein vorliegender Datensatz dazu in drei Teile aufgespalten:

  • Trainingsdatensatz: Der Trainingsdatensatz DTr besteht aus etwa 70 % der Daten und wird dem Namen entsprechend dazu verwendet, das Modell zu trainieren, also passende Parameter w, welche das empirische Risiko minimieren, zu finden. Aus diesem wird ständig der Trainingsfehler R̂(DTr) bestimmt, welcher eine monoton fallende Funktion darstellt.
  • Validierungsdatensatz: Der Validierungsdatensatz DV besteht aus etwa 20 % des Datensatzes und evaluiert während des Trainings für verschiedene Hypothesen das empirische Risiko, woraus der Validierungsfehler R̂(DV) bestimmt wird. Dieser wird zwar zunächst fallen, für ein zu lange andauerendes Training aber wieder beginnen zu steigen, da das Modell beginnt, die Ausreißer des Trainingsdatensatzes zu lernen. Der Punkt an dem der Validierungsfehler minimal ist, stellt oft den besten Satz an Parametern dar.
  • Testdatensatz: Die verbleibenden etwa 10 % des Datensatzes stellen den Testdatensatz DT dar, der verwendet wird, um die Vorhersagekraft des Systems zu bestimmen. Durch auswerten des empirischen Risikos für diesen Datensatz wird der Testfehler R̂(DT) zu bestimmen. Um den Verallgemeinerungsfehler abzuschätzen wird die Größe Ĝ=|R̂(DTr)R̂(DT)|G bestimmt.