site navigation


Maschinelles Lernen

WS 97/98, (basierend auf der Vorlesung von Prof. Wysotzky, TU-Berlin)

Lernen wird definiert als Verbesserung eines informationsverarbeitenden Systems hinsichtlich eines Gütefunktionals
Man  unterscheidet zwischen überwachten und unüberwachten Lernen
Zum überwachten Lernen zählt das Begriffslernen , zum unüberwachten Lernen durch Entdecken
Inhalt:

Begriffslernen

Lernen durch Entdecken Lernen durch Umstrukturierung
 

Überblick:  (Versuch)


Begriffslernen (Klassifikationslernen)

Es gibt Symbolische Verfahren wie z.B.
 
Entscheidungsbaumverfahren induktive logische Progr. (ILP) graphbasierte Verfahren
Objektrepräsentation Merkmalsvektor Struktur Struktur
 

oder man kann Künstliche Neuronale Netze  verwenden


Lernen durch Entdecken
Entdeckende Lernverfahren haben als Trainingsmenge nur Merkmalsvektoren oder Terme (keine Klassen)
Sie treffen eine Klassifizierung selbstständig durch Mustererkennung oder heuristische Ansätze (z.B. WTA) oder allgemein durch Strukturerkennung( z.B. induktive Programmsynthese)


Lernen durch Umstrukturierung

Beispiele:


Entscheidungsbaumverfahren
 
Cal 2 Cal 3 Cal 5
Merkmale diskret diskret kontinuierlich
Trainingsmenge disjunkt nicht disjunkt nicht disjunkt

Cal 3 und Cal 5 sind statistische Verfahren


Cal 2  baut einen (zu Anfang leeren, mit * gekennzeichnet) Entscheidungsbaum aus einer Trainingsmenge auf, indem diese Menge sequentiell durchgegangen wird und die Ausgabe des bisherigen Klassifikators mit der tatsächlichen Klasse verglichen wird.
Es können 3 Fälle auftreten

Das Verfahren terminiert, wenn die Trainingsmenge disjunkt war
Es wird immer richtig klassifiziert, wenn alle für das Problem relevanten Fälle in der Trainingsmenge vorhanden waren
Der fertige Baum kann dann (eventuell nach Umstrukturierung) durch Eliminierung von Irrelevanzen und Redundanzen noch vereinfacht werden.

Dies entspricht Lernen durch Umstrukturierung
Welche Merkmalsreihenfolge am günstigsten ist, kann vor der Baumerzeugung durch Berechnung der Transinformation der Merkmale bestimmt werden


Cal 3
Oft ist eine eindeutige Klassifizierung nicht möglich:

Cal 3 ist ein Verfahren zur statistischen Klassenbildung. Der Baum wird dabei nicht bei jedem Fehler geändert, sondern es werden die Häufigkeiten der Klassen registriert.
Das Verfahren benötigt dazu zwei Parameter:

Liegen bei R Objekten die Häufigkeiten aller Klassen unter S, wird das nächste Merkmal hinzugezogen
Sind die Kosten für die Fehlentscheidung für eine Klasse höher als eine für eine andere, kann jeder Klasse ein Kostenfaktor gegeben werden, die Wahrscheinlichkeiten werden dann mit diesem multipliziert.


Cal 5 ist ein Klassifikationsverfahren für reellwertige Daten.
Es sucht eine Menge von Intervallen über ein kontinuierliches Merkmal und versucht, pro Intervall eine Dominanzentscheidung zu treffen
Das funktioniert nach folgenden Schritten:

  1. alle Beispiele der Trainingsmenge nach aufsteigender Ausprägung des Merkmals sortieren
  2. das nächste Beispiel dem aktuellen Intervall hinzufügen, gibt es Dominanz einer Klasse, Intervall abschließen
  3. sukzessive aller Nachbarintervalle gleicher Klassen vereinigen
  4. bei allen Intervallen mit Nichtdominanz nächstes Merkmal nehmen

Dafür wird auch wieder eine Schwelle S benötigt, liegt sie innerhalb eines Konfidenzintervalls, wird auf Dominanz entschieden
Auch hier können verschieden hohe Kosten für die Klassen angegeben werden


Lernen (Induktion) im PK1
Induktive logische Programmierung (ILP)

Die Prototypen sind nicht eindeutig


graphbasierte Verfahren

strukturierte Objekte können durch eine relationale Algebra (logische Terme) und markierte Graphen dargestellt werden. Diese werden intern (z.B) als Adjazenzmatrix dargestellt.

Zum Vergleich zweier Graphen kann der Zelinka-Abstand verwendet werden d(G1, G2) = max(k(G1), k(G2)) - k(ggg(G1,G2)), wobei k(x) die Knotenanzahl und ggg(x1,x2) die größte gemeinsame Generalisierung ist.
Graphvergleiche (matching) können auch durch neuronale Netze bewerkstelligt werden (WTA).


statistische Klassifikation
Ein Klassifikator ordnet einem Eingabevektor einer Klasse zu. Die Eingabevektoren können dabei als Punkte in einem n-dimensionalem Merkmalsraum dargestellt werde. Idealerweise stellen die einzelnen Klassen Punktwolken in diesem Raum dar (dann können sie durch einen linearen Klassifikator wie Perceptron getrennt werden) , die durch Trennebenen möglichst eindeutig zu trennen sind. Prototypen der Klassen sind dabei in der Regel die Mittel- (Erwartungs-)werte der Wolken. Es können dann z.B. Abstandsmaße zur Klassifikation verwendet werden. In diesem Fall kann auch die k-nearest-neighbor-Methode verwendet werden, bei der ein Element immer der Klasse seines nächsten Nachbarn (ausgehend von den Prototypen) zugeteilt wird. Diese Methode approximiert die Trennebenen für mehrere Klassen stückweise linear.
Weitere statistische Verfahren:


Künstliche Neuronale Netze sind z.B.

Sie modellieren verschieden Aspekte der menschlichen Neuronen
Grundsätzlicher Aufbau eines Neurons ist

Es gibt immer zwei Phasen, Lernphase (z.B. Hebb'sche Lernregel) und Anwendungsphase.
Will man einen Ausgabevektor haben, braucht man ein neuronales Netz.


Ein Perceptron ist ein Automat, der eine 1 ausgibt, wenn die Summe der gewichteten Eingänge eine Schwelle Theta überschreitet, und sonst eine 0.  (Minsky und Papert) Er ist damit eine binärer Klassifikator

Der Lernalgorithmus für den Spezialfall d=0 und | x | = 1 lautet:
    Setze w mit | w | > 0 beliebig
    bis alle Objekt richtig klassifiziert wurden:
        neues Objekt anbieten
        wenn x elem k1 und wx > 0 oder x elem k2 und wx < 0
            tue nichts
        sonst
            wenn x elem k1 und wx < 0
                w = w+x
             wenn x elem k2 und wx > 0
                w = w-x
            done
        done
    done


Backpropagation


Winner Takes All-Netze


die Induktive Programmsynthese verwendet eine Trainingsmenge, die die extensionale (vollständige) Beschreibung eines rekursiven Programms darstellt, um daraus mittels eines Klassifikators eine intensionale Beschreibung zu generieren (ein RPS, rekursives Programm Schema)


Klassifikation durch Abstandsmaße
Muster können als Merkmalsvektoren in einem n-dimensionalem Merkmalsraum dargestellt werden.
Ähnlicheit zwischen Mustern kann dann durch Abstandsmaße bestimmt werden, was sowohl zum Entdeckungs- wie zum Klassifizierunglernen benutzt werden kann.

Durch eine Transformationsmatrix kann ein Input x_i in einen Output y_j transformiert werden, wenn y_j = sum_i(W_ij xi) gilt. Die Matrix stellt dann ein assoziatives Gedächtnis dar (Lernmatrix), sie kann durch die Hebb'sche Lernregel berechnet werden, die besagt, das die Gewichte eines feuernden Neurons stärker werden: w_ji(t+1) = w_ji(t) + eta  y_j x_i, wobei eta eine Proportionalitätskonstante ist (Lernrate).
Zur Mustererkennung werden oft neuronale Netze verwendet


author: Felix Burkhardt