340 likes | 456 Views
Maschinelles Lernen und automatische Textklassifikation. Lernen von Konzepten. Konzepte. Was ist ein Konzept? Eigenschaft, Tatsache, ... die auf ein bestimmtes Objekt zutrifft oder nicht C(x) = {0,1} Binäre Klassifikation. Beispiel: SportTreiben. SportTreiben.
E N D
Maschinelles Lernen und automatische Textklassifikation Lernen von Konzepten
Konzepte • Was ist ein Konzept? • Eigenschaft, Tatsache, ... die auf ein bestimmtes Objekt zutrifft oder nicht • C(x) = {0,1} • Binäre Klassifikation
SportTreiben • Repräsentation: betrachte Vektor der Wettereigenschaften, SportTreiben wird durch +/- angezeigt: • <himmel,temperatur,feuchtigk,wind,wasser,vorhersage>,{+,-}
SportTreiben: Repräsentation • Hypothese h: • Konjunktion von Constraints Ci auf Attributen • Ci kann sein: • Spezieller Wert: Wasser = warm • Egal: Wasser = ? • Kein Wert erlaubt: Wasser = Ø • Beispiel: <sonnig,?,?,stark,?,stabil>
Typisches Lernen von Konzepten • Gegeben: • Instanzen X = mögliche Tage, die durch die Wetterattribute beschrieben sind • Zielfunktion c: SportTreiben : X -> {0,1} • Hypothesen H: Konjunktionen von Literalen, z.B. <?,kalt,hoch,?,?,?> • Trainingsbeispiele T: positive und negative Beispiele für die Zielfunktion: <x1,c(x1)>, ..., <xn,c(xn)> • Gesucht: • Hypothese h in H, so dass h(x) = c(x) für alle x in T
Grundannahme • Hypothese des induktiven Lernens • „Jede Hypothese, die die Zielfunktion auf einer hinreichenden Menge von Trainingsbeispielen approximiert, wird die Zielfunktion auch für neue Instanzen approximieren.“
Vergleich von Hypothesen • Betrachte Instanzen: • X1 = <sonnig,warm,hoch,stark,kalt,stabil> • X2 = <sonnig,warm,hoch,leicht,warm,stabil> • Und Hypothesen • h1= <sonnig,?,?,stark,?,?> • h2 = <sonnig,?,?,?,?,?> • h3 = <sonnig,?,?,?,kalt,?>
Allgemein - spezifisch • Def.: Seien hi und hk Hypothesen aus H, hj ist allgemeiner-oder-gleich zu hk (hj≥g hk) gdw für jedes x aus X gilt: hk(x) = 1 => hj(x) = 1
Simpler Lern-Algorithmus: Find-S • Grundidee: • Gehe von sehr spezifischer Hypothese aus, und „verallgemeinere“ diese sukzessive für jedes Trainingsbeispiel.
Simpler Lern-Algorithmus: Find-S • Wähle die spezifischste Hypothese h aus H • Für jede positive Trainingsinstanz x • Für jeden Attribut-Constraint ai in h: • wenn ai wird in h von x erfüllt, • Dann weiter, • sonst ersetze ai in h durch den nächst allgemeineren Constraint, der von x erfüllt wird • Ergebnis: Hypothese h
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>,
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil>
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil> • x2 = <sonnig,warm,hoch,stark,warm,stabil>,+
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil> • x2 = <sonnig,warm,hoch,stark,warm,stabil>,+ • h2 = <sonnig,warm,?,stark,warm,stabil>
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil> • x2 = <sonnig,warm,hoch,stark,warm,stabil>,+ • h2 = <sonnig,warm,?,stark,warm,stabil> • x3 = <regen,kalt,hoch,stark,warm,wechselhaft>,-
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil> • x2 = <sonnig,warm,hoch,stark,warm,stabil>,+ • h2 = <sonnig,warm,?,stark,warm,stabil> • x3 = <regen,kalt,hoch,stark,warm,wechselhaft>,- • h3 = <sonnig,warm,?,stark,warm,stabil>
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil> • x2 = <sonnig,warm,hoch,stark,warm,stabil>,+ • h2 = <sonnig,warm,?,stark,warm,stabil> • x3 = <regen,kalt,hoch,stark,warm,wechselhaft>,- • h3 = <sonnig,warm,?,stark,warm,stabil> • x4 = <sonnig,warm,hoch,stark,kühl,wechselhaft>,+
Beispielanwendung von Find-S • h0 = <Ø, Ø, Ø, Ø, Ø, Ø, Ø,>, • x1 = <sonnig,warm,normal,stark,warm,stabil>,+ • h1 = <sonnig,warm,normal,stark,warm,stabil> • x2 = <sonnig,warm,hoch,stark,warm,stabil>,+ • h2 = <sonnig,warm,?,stark,warm,stabil> • x3 = <regen,kalt,hoch,stark,warm,wechselhaft>,- • h3 = <sonnig,warm,?,stark,warm,stabil> • x4 = <sonnig,warm,hoch,stark,kühl,wechselhaft>,+ • h4 = <sonnig,warm,?,stark,?,?>
Bewertung Find-S • Kein Feedback, wann das Konzept tatsächlich gelernt wurde • Kein Feedback bei inkonsistentem Input (konvergiert nicht notwendig!) • Keine Toleranz gegenüber fehlerhaftem Input • Ergebnis ist immer die/eine maximal spezifische Hypothese, keine Beschreibung aller korrekten Hypothesen • Starke Abhängigkeit von H
Versions-Räume • Def.: Eine Hypothese h ist konsistent mit einer Trainingsmenge T für ein Zielkonzept c, gdw. für jede Instanz <x,c(x)> in T: h(x) = c(x) • Def.: der Versions-RaumVSH,T in Bezug auf eine Hypothesen-Menge H und eine Trainingsmenge T ist die maximale Teilmenge von H, die mit allen Instanzen in T konsistent ist.
„List-then-eliminate“-Algorithmus • Ziel: schränke den Versionsraum sukzessive ein • Vorgehen: • 1. Versions-Raum VSH,T = Menge aller Hypothesen • 2. für jede Instanz <x,c(x)> der Trainigsmenge T, eliminiere aus VSH,T diejenigen h aus H für die h(x) ≠ c(x) • 3. Ergebnis ist die Liste VSH,T
Repräsentation des Versions-Raums • Idee: repräsentiere den VS durch obere und untere Schranken bzgl. Der allgemeiner-oder-gleich Relation
Repräsentation des Versions-Raums • Def.: Die allgemeine Schranke G des Versions-Raums VSH,T ist die Menge seiner maximal allgemeinen Elemente (bzgl ≤g). • Def.: Die spezifische Schranke S des Versions-Raums VSH,T ist die Menge seiner maximal spezifischen Elemente (bzgl ≤g). • Jedes Element des Versions-Raums liegt zwischen diesen Schranken: • VSH,T = {hH| s S und g G: g ≥ h ≥ s}
„Candidate Elimination“ Algorithmus • Idee: statt VSH,T komplett zu durchlaufen, modifiziere in jedem Schrit S und G • Setze: • G = Menge der maximal allgemeinen Hypothesen in H • S = Menge der maximal spezifischen Hypothesen in H • Für jedes positive Trainingsbeispiel t: • Entferne alle mit t inkonsistenten Hypothesen aus G • Für jede Hypothese s in S, die nicht konsistent mit t ist: • Entferne s aus S • Füge alle minimalen Generalisierungen h von s hinzu, so dass • h ist konsistent mit t • Es gibt in G ein allgemeineres Element als h • Entferne alle Hypothesen aus S, die allgemeiner als andere Hypothesen in S sind
„Candidate Elimination“ Algorithmus • Für jedes negative Trainingsbeispiel t: • Entferne alle mit t inkonsistenten Hypothesen aus S • Für jede Hypothese g in G, die nicht konsistent mit t ist: • Entferne g aus G • Füge alle minimalen Spezialisierungen h von g hinzu, so dass • h ist konsistent mit t • Es gibt in S ein spezifischeres Element als h • Entferne alle Hypothesen aus G, die spezifischer als andere Hypothesen in G sind
Was heißt Lernen? • Gegeben: • <sonnig,warm,normal,stark,kalt,wechselhaft>,+ • <sonnig,warm,normal,leicht,warm,stabil>,+ • Frage: • <sonnig,warm,normal,stark, warm,stabil>,?
Was heißt Lernen? • Gegeben: • <sonnig,warm,normal,stark,kalt,wechselhaft>,+ • <sonnig,warm,normal,leicht,warm,stabil>,+ • Vorschlag: • <sonnig,warm,normal,stark, warm,stabil>,+ • Warum?
Was heißt Lernen? • Gegeben: • <sonnig,warm,normal,stark,kalt,wechselhaft>,+ • <sonnig,warm,normal,leicht,warm,stabil>,+ • Vorschlag: • <sonnig,warm,normal,stark, warm,stabil>,+ • Wegen: • <sonnig,warm,normal,?,?,?>
Grundannahmen • Hypothesen sind Konjunktionen von Constraints • Ohne Einschränkung: Hypothesen sind Disjunktionen, Konjunktionen oder Negationen über der Potenzmenge von X: • <sonnig,warm,normal,?,?,?> <?,?,?,?,?,wecheselhaft> • Alternative Grundannahme: • klassifiziere x gdw. wenn x in T
Zusammenfassung • Lernen von Konzepten = Durchsuchen von Hypothesen • Hypothesen lassen sich nach Spezifizität bzw. Allgemeinheit anordnen • Versions-Raum = Menge der mit T konsistenten Hypothesen • Versions-Raum lässt sich charakterisieren durch obere und untere Schranken • Induktionsschritte nur möglich durch Zusatzannahmen bzgl H
Aufgaben • Wie groß ist der Hypothesenraum für das Lernbeispiel? • Prinzipiell gibt es mehr mögliche Funktionen, die die Zielfunktion approximieren können als H! Welche? • Was besagt die Annahme einer Konjunktion von Constraints? • Was ist die Konsequenz für die beschriebenen Verfahren ? • Was passiert, wenn man diese Annahme nicht macht? Wie groß ist dann der Hypothesen-Raum? • Wie sehen S und G in diesem Fall aus?