Entscheidungsbäume. Benjamin Grünebast Andreas Löcken. WiSe 2011/2012

Größe: px
Ab Seite anzeigen:

Download "Entscheidungsbäume. Benjamin Grünebast Andreas Löcken. WiSe 2011/2012"

Transkript

1 Carl von Ossietzky Universität Oldenburg Data Mining in Astronomy Entscheidungsbäume Benjamin Grünebast Andreas Löcken WiSe 2011/2012 Zusammenfassung Diese Ausarbeitung untersucht die Anwendung von Entscheidungsbäumen zur Lösung des Klassifikationsproblems in der Astronomie. Dabei werden die Daten der Sloan Digital Sky Survey Datenbank anhand der Klassen Galaxie, Stern und Quasar klassifiziert. Mit Hilfe eines evolutionären Algorithmus über die Parameter zur Erstellung eines Entscheidungsbaumes wird versucht möglichst gute Kandidaten für dieses Problem zu finden. 1 Einleitung Die rasante technologische Entwicklung der heutigen Zeit macht es möglich immer mehr digitale Daten schneller zu erfassen und zu verarbeiten. Auch die Astronomie stellt dabei keine Ausnahme dar. Der Sloan Digital Sky Survey enthält heute bereits ungefähr 350 Millionen Objekte (wie Aufnahmen von Sternen, Galaxien und Quasaren) was wiederum ungefähr 60 TB an Daten entspricht. Ab 2014 wird beispielsweise das Large Synoptic Survey Telescope (LSST) ungefähr 30 TB an Daten pro Nacht erfassen. Diese Menge an Rohdaten macht eine manuelle Analyse und Betrachtung durch Experten unmöglich. Daher wird nun verstärkt nach Data-Mining-Methoden zur Klassifikation und Clustering der Rohdaten gesucht, die in diesem Anwendungsbereich zum Einsatz kommen können. In dieser Ausarbeitung wird die Klassifikation dieser Daten in Galaxien, Sterne und Quasare anhand von Entscheidungsbäumen untersucht und evaluiert. Dabei werden verschiedene Algorithmen zur Induktion von Entscheidungsbäumen untersucht und mit Hilfe eines genetischen Algorithmus über deren Parameter versucht möglichst optimale Kandidaten für diese Aufgabe zu finden. Als erstes wird kurz auf die Grundlagen der Klassifikation und der Verwendung von Entscheidungsbäumen in Abschnitt 2 eingegangen. Anschließend wird die allgemeine Vorgehensweise zur Induktion von Entscheidungsbäumen in Abschnitt 3 näher betrachtet. Darauf aufbauend werden Probleme und etablierte Optimierungsmöglichkeiten in Abschnitt 4 erläutert. In Abschnitt 5 werden Methoden zur Evaluation von Klassifikatoren betrachtet. Darauf aufbauend schließlich wird in Abschnitt 6 die Implementierung vorgestellt, mit dessen Hilfe möglichst gute Klassifikatoren gefunden werden sollen. Anschließend werden die Ergebnisse der Implementierung in Abschnitt 7 zusammengefasst und analysiert und in Abschnitt 8 ein Fazit zur Klassifikation mit Entscheidungsbäumen in der Astronomie gegeben. 1

2 2 Grundlagen Die Aufgabe Objekte einer Klasse aus einer gegebenen Menge von Klassen zuzuordnen wird allgemein als Klassifikation bezeichnet und findet in vielen Bereichen Anwendung. Zum Beispiel die Klassifikation von astronomischen Messdaten, in der entschieden werden muss, ob es sich bei der Messungen um Galaxien, Sterne oder Quasare handelt. In diesem Abschnitt wird die Klassifikation anhand von Entscheidungsbäumen näher erläutert und grundlegende Begriffe eingeführt die in den folgenden Abschnitten verwendet werden. Besitzt ein Datensatz der klassifiziert werden soll eine Menge von Attributen x und ein spezielles Attribut y, das als Klassenbezeichner dient, lässt sich die Klassifikation wie folgt definieren: Definition 1. Die Klassifikation ist die Aufgabe eine Zielfunktion f zu erlernen, die jeder Attributmenge x einen Klassenbezeichner y zuordnet [3]. Diese Zielfunktion f wird häufig auch als Klassifikationsmodell oder kurz Modell bezeichnet. Dieses Modell ermöglicht es Datensätze anhand ihrer Klassen zu unterteilen und für Datensätze mit unbekanntem Klassenbezeichner, diesen zu bestimmen bzw. vorherzusagen. Ein Entscheidungsbaum ist ein solches Modell. In dieser Baum-Datenstruktur besitzt jedes Blatt einen Klassenbezeichner. Alle anderen Knoten, die inneren Knoten sowie die Wurzel, enthalten Attribut-Testbedingungen. Diese Testbedingungen entscheiden anhand des Wertes Aussicht Temp. Luftf. windig Spiel sonnig heiß hoch ja? Aussicht Spiel = Nein sonnig bedeckt regnerisch Luftfeuchte Ja windig hoch ja Nein... Nein... Abbildung 1: Beispiel: Entscheidungsbaum eines oder mehrerer Attribute welche Kante entlang zum nächsten Knoten bis zu einem Blatt gewandert wird wie in Abbildung 1 dargestellt. In dem Beispiel erhält der Datensatz die Klassenbezeichnung Nein. Eine Klassifikationsmethode oder auch Klassifizierer ist ein systematischer Ansatz erlernte Modelle auf eine Eingabemenge von Datensätzen anzuwenden. Die Modelle werden durch einen Lernalgorithmus für die gegebene Eingabemenge so erzeugt, dass sie eine möglichst gute Relation zwischen der Attributmenge x und dem Klassenbezeicher y herstellt. In Abbildung 2 ist der allgemeine Ansatz zur Klassifikation gezeigt. Dabei soll das Modell nicht nur für die Eingabedaten geeignet sein, sondern zudem unbekannte Datensätze ebenso gut klassifizieren können. Die Datensätze die zum Erzeugen bzw. Lernen des Modells verwendet werden, bezeichnet man als Trainingsdaten. Nach dem Erlernen eines Modells werden typischerweise Testdaten verwendet, die von den Trainingsdaten unabhängig sind, um die Genauigkeit des Modells zu evaluieren. Diese Datensätze enthalten bereits jeweils eine gültige Zuordnung zu einer Klasse. 2

3 ID Attrib0 Attrib1 Class 0 no 55K yes 1 yes 125K yes 2 no 100K no 3 no 45K yes 4 yes 95K no Trainingsdaten Lern- Algorithmus Modell lernen Modell Modell anwenden ID Attrib0 Attrib1 Class 5 yes 10K? 6 yes 80K? 7 no 35K? Testdaten Abbildung 2: Allgemeiner Ansatz zur Klassifikation [3] Der worst-case Aufwand der Klassifikation einer Instanz mit einem Entscheidungsbaum liegt in O(N), wobei N die Anzahl der Knoten entlang des längsten Pfades entsprechen. Darüber hinaus lassen sich Entscheidungsbäume, speziell kleine Bäume, leicht interpretieren und präsentieren. 3 Induktion Die Induktion bedeutet in der Philosophie und der Logik das Folgern vom Speziellen auf das Allgemeine. Dies trifft auch auf die Induktion von Entscheidungsbäumen zu. Aus den speziellen und endlichen Trainingsdaten wird ein Entscheidungsbaum erzeugt der für allgemeine und unbekannte Datensätze deren Klasse schlussfolgert. In diesem Abschnitt wird das Erstellen von Entscheidungsbäumen aus Trainingsdaten genauer beschrieben. Im Prinzip können exponentiell viele verschiedene Entscheidungsbäume aus einem Datensatz mit einer Menge von Attributen erzeugt werden. Wobei manche genauer sind als andere. Den besten Baum zu finden, indem alle möglichen Bäume erstellt werden und dann der Beste ausgewählt wird, liegt jedoch in der Komplexitätsklasse NP und ist damit für nicht triviale Probleme nicht umsetzbar [2, 3]. Trotzdem gibt es effiziente Algorithmen die einen genügend genauen Baum induzieren können. Sie nutzen eine Greedy-Strategie, d.h. lokale Optima um Entscheidungen zum Aufbau des Baumes Schritt für Schritt zu treffen [3]. Ein solcher Algorithmus ist Hunt s Algorithmus, der die Basis für viele weitere Algorithmen wie z.b. CART, C4.5 und ID3 darstellt. Der Baum wird rekursiv aufgebaut, wobei die Trainingsdaten immer weiter in einheitlichere Mengen partitioniert werden. Abstrakt lässt sich der Algorithmus wie folgt definieren: Definition 2. Hunt s Algorithmus: Sei D t die Menge der Datensätze mit Test-Attributen und ein Klassen-Attribut im Knoten t. Wenn alle Instanzen zur gleichen Klasse C gehören, dann ist t ein Blatt mit der Bezeichnung von C. Wenn D t Instanzen verschiedener Klassen enthält, wähle eine Attribut als Testbedingung für t aus und partitioniere die Instanzen entsprechend der Testbedingung in kleinere Mengen. Für jeden Ausgang der Testbedingung wird ein neuer Kind-Knoten zu t erzeugt und jedem wird die zum Ausgang gehörende Partition der Instanzen hinzugefügt. Danach wird mit den Kind-Knoten rekursiv fortgefahren. 3

4 Wenn keine Attribute zum Testen mehr vorhanden sind, dann ist t ein Blatt mit der Bezeichnung von der Klasse C die am häufigsten in D t auftaucht. [3] Das Partitionieren der Instanzen anhand der Testbedingung und das Aufteilen auf die Kind- Knoten wird in der Literatur oft auch als Splitting bezeichnet. Jeder konkrete Algorithmus muss die Testbedingungen für verschiedene Typen von Attributen sowie eine Maßzahl für die Güte der Splits spezifizieren, die für das lokale Optimum genutzt wird. Diese Testbedingungen lassen sich zum einen davon abhängig festlegen, ob es sich um ein nominales, ordinales oder kardinales Attribut handelt und zum anderen von den unterstützten Aufteilungsmöglichkeiten. Ein nominales Attribut z.b. mit drei Ausprägungen lässt sich zum einen in drei Testbedingungen analog zu den Ausprägungen aufsplitten oder aber mit einer binären Testbedingung, indem zwei Ausprägungen zusammengefasst werden (vgl. Abbildung 3). Dazu müssen alle 2 k 1 1 mögliche Wege einen binären Split durchzuführen, bei einem Attribut mit k Ausprägungen berücksichtigt werden [3]. Bei ordinalen Attributen verringern sich nominal ordinal kardinal multi Familie Sport Autotyp Luxus M XL Größe XXL Gehalt < 400 >1200 [400, 800) [800, 1200) binär Familie Autotyp Sport, Luxus M Größe XL, XXL ja Gehalt >800 nein Abbildung 3: Aufteilungsmöglichkeiten abhängig vom Typ des Attributes in binär- und multi- Splits die möglichen Kombinationen zur Aufteilung bei binäre Splits, da dort die Ordnung erhalten bleiben muss. In dem Beispiel in Abbildung 3 ist die Aufteilung des Attributes Größe in {XL} und {M, XXL} nicht zulässig. Für kardinale Attribute kann die Testbedingung durch einen Vergleichstest in der Form (A < v) oder (A >= v) als binärer Split formuliert werden, oder mit Wertebereichen abgedeckt werden, wie in Abbildung 3 zu sehen. So werden aus den nominalen Attributwerten ordinale Kategorien gebildet. Neben dem Aufwand alle möglichen Splits Aussicht Temp. Luft. windig sonnig? bedeckt? regnerisch? heiß? mild? kühl? hoch? normal? ja? nein? Ja (2) Nein (3) Ja (4) Nein (0) Ja (3) Nein (2) Ja (2) Nein (2) Ja (4) Nein (2) Ja (3) Nein (1) Ja (3) Nein (4) Ja (6) Nein (1) Ja (3) Nein(3) Ja (6) Nein (2) Abbildung 4: Beispiel: Mögliche Splits für den nächsten Schritt, Frage: Welcher Split soll gewählt werden? zu finden, stellt sich die Frage, welcher denn nun ausgewählt werden soll, um den Baum weiter 4

5 aufzubauen. Aus den Trainingsdaten im Beispiel aus Abbildung 1 sind in Abbildung 4 alle möglichen Splits für den ersten Schritt gezeigt. Zusätzlich ist in den Kind-Knoten die Anzahl der Instanzen mit Ausprägungen der Klassen-Attribute nach der möglichen Partitionierung angegeben. Grundsätzlich werden Kind-Knoten mit homogeneren Klassenverteilungen bevorzugt. Dies lässt sich mit Maßzahlen zum Informationsgehalt ausdrücken, denn so kleiner der Informationsgehalt ist, desto homogener sind die Aufteilungen bzgl. des Klassenattributes. Beispiele für Maßzahlen zum Informationsgehalt sind: c 1 Entropy(t) = p(i, t) log 2 p(i, t) (1) i=0 c 1 Gini(t) = 1 [p(i, t)] 2 (2) i=0 classif icationerror(t) = 1 max[p(i, t)] (3) i Wobei c die Anzahl der Klassen ist, und p(i, t) der Anteil der Instanzen die zur Klasse i gehören [3]. Zur Bestimmung des besten Splits wird nun der Informationsgehalt des Vater-Knotens (vor dem Split) und dessen Kind-Knoten (nach dem Split) verglichen. Je größer diese Differenz ist, desto besser ist der Split. Dieses Kriterium wird als Gain und mit dem Symbol bezeichnet. Sei I(x) der Informationsgehalt eines Knoten x, N die Anzahl der Instanzen im Vater-Knoten und N(k) die Anzahl der Instanzen eines Kind-Knoten k,dann ist der Gain wie folgt definiert: = I(parent) k i=1 N(v i ) N I(v i) (4) Wird als Informationsgehalt Entropy(t) verwendet, wird der Gain auch Informationgain (info) bezeichnet. Es werden nun für alle möglichen Splits der Gain berechnet, und der Split mit dem maximalen Gain in den Baum eingebaut. Dies spiegelt die Greedy-Strategie mit dem lokalen Optimum wieder. Dabei ist für kardinale Attribut-Typen der Rechenaufwand besonders hoch. Es müssen z.b. für einen binären Split alle möglichen Werte aus den Trainingsdaten als mögliche Split-Kandidaten v in (A < v) und (A >= v) die Testbedingung bewertet und deren Klassenverteilung auf die Kind-Knoten gezählt werden. Mit einer brute-force Methode liegt der Aufwand in O(N 2 ). An stelle der brute-force Methode existieren intelligentere Algorithmen die am Anfang eine Sortierung der Werte vornehmen und diese effizient ausnutzen können. Damit liegt der Aufwand in O(N log(n)). Die vorgestellten Maßzahlen zum Informationsgehalt neigen dazu Attribute als Testbedingungen zu bevorzugen, die eine große Anzahl an unterschiedlichen Werten besitzen. Dies ist jedoch nicht immer sinnvoll. Betrachtet man z.b. Attribute die als Identifikation einer Instanz dienen. Sie sind für jede Instanz unterschiedlich und würden somit homogenere Knoten erzeugen. Auch in weniger extremen Situationen würden diese Attribute für eine große Anzahl an Splits sorgen und den Baum verbreitern, wodurch in jedem Knoten nur sehr wenige Instanzen vorhanden sind um noch eine zuverlässige Entscheidung über die weiteren Splits und der Klassenausprägung zu treffen. Eine Möglichkeit dieses Problem zu beheben ist es, nur binäre 5

6 Splits zu erlauben. Der C4.5-Algorithmus dagegen benutzt als Split-Kriterium das so genannte gain ratio. Sei k die Anzahl an möglichen Splits, dann ist der gain ratio wie folgt definiert: Gain ratio = (info) k i=1 P (v i ) log 2 P (v i ) (5) Das gain ratio sorgt dafür, das Attribute die eine sehr große Anzahl an Kindern erzeugen einen geringeren Wert bekommen [3]. Anzahl Datensätze: 14 (nein = 5, ja = 9) Informationsgehalt vor Split: Gini = Entropie = Error = sonnig nein ja 3 2 Gini = 1 (3/5) 2 (2/5) 2 = 0.48 Entropie = (3/5)log 2 (3/5) (2/5)log 2 (2/5) = Error = 1 max[3/5, 2/5] = 0.4 Aussicht bedeckt nein ja 0 4 Gini = 1 (0/4) 2 (4/4) 2 = 0 Entropie = (0/4)log 2 (0/4) (4/4)log 2 (4/4) = 0 Error = 1 max[0/4, 4/4] = 0 regnerisch nein ja 2 3 Gini = 1 (2/5) 2 (3/5) 2 = 0.48 Entropie = (2/5)log 2 (2/5) (3/5)log 2 (3/5) = Error = 1 max[2/5, 3/5] = 0.4 Abbildung 5: Beispiel: Berechnung des Informationsgehaltes (Entropy, Gini, Error) für die Testbedingung: Aussicht In Abbildung 5 ist als Beispiel die Berechnung des Informationsgehaltes für die Testbedingung des nominalen Attributes Aussicht gezeigt. Daraus berechnet sich der Gain wie folgt: ( 5 (gini) = ) = ( 5 (info) = ) = ( 5 (error) = ) = Diese Prozedur wird nun für alle möglichen Splits durchgeführt, und der beste Split mit dem maximalen Gain zum Aufbau des Baums verwenden. Daraufhin wird der Schritt für die Kind- Knoten wiederholt, bis entweder alle Instanzen in einem Knoten zur selben Klasse gehören, oder keine weiteren Testbedingungen gefunden werden können, dadurch das z.b. alle Werte der Test-Attribute identisch sind. Eine weitere Möglichkeit den Induktions-Prozess abzubrechen wäre durch die Einführung eines Grenzwertes, wie z.b. die minimale Anzahl an Instanzen in einem Knoten, oder ein bestimmter Informationsgehalt. Dies ist deshalb nützlich, da zu große Bäume oft zu spezifisch auf den Trainingsdaten zugeschnitten sind, und die Menge an Instanzen in den Blättern zu klein sein kann, um noch eine statistische Grundlage zur Klassifikation zu geben. Diese Problematik wird weiter in dem Abschnitt 4 behandelt. 6

7 4 Pruning In den vorangegangenen Abschnitten ging es darum, wie Entscheidungsbäume aufgebaut werden können. In diesem Abschnitt wird erläutert, warum ein Baum, der im Training gut funktioniert bei den realen Daten nicht mehr so gut abschneidet und welche Ansätze dabei helfen dem entgegenzuwirken. 4.1 Under- und Overfitting Abbildung 6: Beispiel: Overfitting (links), Underfitting (rechts) In Abbildung 6 wird ein Beispiel für Overfitting auf der linken Seite dargestellt, auf der rechten Seite eines für Underfitting. Die Aufgabe in diesem Beispiel ist es rote von blauen Punkten zu trennen. Die eingezeichneten Punkte sind dabei das Trainingsset, während die Kurve, die ein optimaler Klassifikator zur Trennung der Punkte nutzt, als schwarze Kurve eingezeichnet ist. Die Kurve des trainierten Klassifikator ist in grün eingezeichnet. Overfitting wird das Problem genannt, wenn ein Klassifikator übertrainiert ist. Das bedeutet, dass ein Klassifikator, wie zum Beispiel ein Entscheidungsbaum, so sehr auf die Trainingsdaten zugeschnitten ist, dass er für die realen Daten eine höhere Fehlerquote zeigt. In dem Beispiel hat der Klassifikator auf der linken Seite eine Fehlerquote von 0% für die gegebenen Trainingsdaten, es ist aber nicht zu erwarten, dass alle neuen Punkte, die nach dem optimalen Klassifikator richtig klassifiziert werden auch im trainierten Klassifikator richtig erkannt werden. Overfitting entsteht zum Beispiel durch Rauschen in den Trainingsdaten, so dass diese bereits zur Trainingszeit falsch klassifiziert sind. Underfitting entspricht in der Wirkung Overfitting, hat aber eine andere Ursache. Wie in der Abbildung gezeigt, ist der trainierte Klassifikator nicht zu spezifisch, sondern zu generell. Beim Underfitting liegt die Ursache häufig im Mangel von Trainingsdaten, sodass keine genaueren Regeln zum Klassifizieren abgeleitet werden können [1, 3, 4]. 7

8 4.2 Pre- und Postpruning Um Underfitting zu vermeiden müssen möglichst viele Trainingsdaten verwendet werden. Wenn allerdings viele Trainingsdaten verwendet werden steigt die Gefahr von Overfitting. Um diesem Problem zu begegnen werden Entscheidungsbäume beschnitten (engl. to prune). Für dieses sogenannte Pruning gibt es die kombinierbaren Ansätze Prepruning und Postpruning. Die Idee hinter Pruning ist, dass ein Entscheidungsbaum mit vielen Mustern trainiert werden kann um ein Underfitting zu vermeiden und durch das Pruning zu sehr spezialisierte Branches entfernt werden um Overfitting zu vermeiden. Prepruning beschreibt Ansätze bei denen der Baumaufbau gestoppt wird, sobald eine Bedingung erfüllt ist. Dieses Konzept wurde bereits im Abschnitt 3 im Rahmen der Induktion beschrieben. Weitere einfache Abbruchbedingungen für das weitere Splitten eines Knotens sind: Alle Muster gehören zu einer Klasse. Alle Eigenschaften der Muster sind gleich. Ein Mindestwert für die Anzahl der Muster ist unterschritten. Der Vorteil von Prepruning ist, dass der Baum schnell berechnet werden kann. Auf der anderen Seite führt eine nicht optimale Auswahl der Abbruchbedingung aber dazu, dass der generierte Baum trotzdem zu generell oder zu spezifisch wird [1, 2, 4]. Als Postpruning werden Vorgehensweisen bezeichnet, in denen Knoten aus dem fertigen Entscheidungsbaum entfernt werden. Um zu entscheiden welche Knoten entfernt werden, wird abgeschätzt, wie groß der Klassifizierungsfehler für unbekannte Daten sein wird; der sogenannte Generalisierungsfehler. Ein Knoten wird dann entfernt, wenn dieser Fehler dadurch gleich bleibt oder kleiner wird. Generell lässt sich das folgendermaßen darstellen: WennG err (T ) > G err (T ), dann: Prune mit G err (T ) als Generalisierungsfehler eines Entscheidungsbaumen und G err (T ) für den Fehler eines gestutzten Baumes. Die Formel G err (T ) = G err (child 1 ) G err (child N ) wird dabei rekursiv ausgeführt, bis der Generalisierungsfehler für ein Blatt mit F ormel ermittelt werden kann, für T ist die Formel entsprechend G err (T ) = F ormel, da dieser Knoten als Blatt behandelt wird. Zur Berechnung des Generalisierungsfehler gibt es verschiedene Ansätze, von denen einige im Folgenden vorgestellt werden. In Abbildung 7 in ein Beispiel für optimistisches Pruning dargestellt. Bei diesem Verfahren, wird der Klassifizierungsfehler als Generalisierungsfehler betrachtet. Dieser Fehler ist bereits vom Training her vorhanden, wodurch sich dieses Pruning schnell berechnen lässt. Ein optimistisches Verfahren hat den Nachteil, dass die Qualität des entstandenen Baumes immer 8

9 Abbildung 7: Optimistisches Postpruning noch sehr Abhängig von den Trainingsdaten ist [2]. Im Beispiel wird nach diesem Vorgehen unterhalb von B geschnitten, da G err (B) = = 0, 4 > 0, 125 = 1 8 = G err(b ). Abbildung 8: Reduced Error Postpruning Eine verbesserte Version wird Reduced Error Pruning genannt. Dabei werden die verfügbaren Muster in ein Trainingsset und ein Set zur Validierung zerlegt. Der Generalisierungsfehler entspricht dann dem Klassifizierungsfehler für die Muster des Validierungsets. Der Vorteil dieses Vorgehens ist, dass der Generalisierungsfehler unabhängig von den Trainingsdaten ist. Es müssen aber mehr Muster zur Verfügung stehen [4]. In Abbildung 8 ist in dem Baum unterhalb des Klassifizierungsfehlers auch der so ermittelte Generalisierungsfehler abgebildet. Wieder wird B gestutzt, E aber nicht, denn G err (E) = = 0 < 0, 25 = 1 4 = G err(e ). Eine Form, die ohne zusätzliche Muster auskommt ist das pessimistische Pruning. Ein einfaches Beispiel ist die Formel G err = T err + ΩN mit G err als Generalisierungsfehler, T err als Klassifizierungsfehler im Training, N als Anzahl der Blätter und Ω als Bestrafung pro Blatt. Diese einfache Formel bedeutet, dass ein Entscheidungsbaum dann gestutzt wird, wenn die gestutzte Variante weniger Blätter bei gleichem Fehler hat [2]. In dem Beispiel, das in 9

10 Abbildung 9: Pessimistic Postpruning Abbildung 9 dargestellt ist, ist Ω = 0, 5. Wie gehabt wird unter B geschnitten. Durch die Bestrafung wird nun aber auch unter E gestutzt, denn ( 1 G err (E) = 3 3) , 5 = > 5 6 = , 5 = G err(e ). Eine weitere Variante, die ohne weitere Muster auskommt ist das Pruning mit einer oberen Schranke. Dabei wird der Fehler statistisch mit der folgender Formel abgeschätzt: G err = f + z2 2N + z f N f 2 N + z2 4N z2 N f ist dabei der Klassifizierungsfehler im Training, und z die Standardabweichung zu einer gegebenen Konfidenz. Diese Pruning Methode wird bei C4.5 mit einer Konfidenz von 25% eingesetzt [4]. Der Vorteil des Postprunings gegenüber dem Prepruning ist, dass die Entscheidung darüber, welche Knoten beschnitten werden über den ganzen Baum getroffen wird und nicht pro Knoten in der lokalen Umgebung. Der Nachteil von Postpruning liegt in der Laufzeit, da zuerst der gesamte Baum generiert werden muss und dieser dann beschnitten wird. In der Praxis werden meist verschiedene Pruning Algorithmen kombiniert. Im Abschnitt 6 wird beschrieben, welche Algorithmen in dieser Arbeit benutzt wurden. 5 Evaluation Bisher wurde beschrieben, wie ein Entscheidungsbaum aufgebaut wird und dabei Overfitting und Underfitting vermieden werden kann. Oftmals ist aber vorher nicht bekannt, welche konkreten Methoden mit welchen Parametern am besten geeignet sind um Bäume oder anderer Klassifikatoren durch einen Lernalgorithmus generieren zu lassen. In diesem Abschnitt werden verschiedene Bewertungsmethoden beschrieben. Eine Methode die Qualität eines Lernalgorithmus zu bewerten, ist das Aufstellen einer Konfusionsmatrix. In eine Konfusionsmatrix wird für jede Kombination aus tatsächlicher und 10

11 Abbildung 10: Konfusionsmatrix für Klassifizierung von Galaxien, Sternen und Quasaren erkannter Klasse die Anzahl der Muster eingetragen, für die diese Kombination gilt. In Abbildung 10 ist eine Konfusionsmatrix für einen Entscheidungsbaum dargestellt, wie er für das gegebene Problem der Klassifizierung von Sternen, Quasaren und Galaxien aussehen könnte. In der Diagonalen befinden sich die meisten Muster. Je mehr Muster dort einsortiert sind, desto besser ist die Klassifizierung. Um einen konkreten Wert zu ermitteln, kann zum Beispiel die Formel G G + S S + Q Q 1 G G + S S + Q Q + G S + G Q + S G + S Q + Q G + Q S benutzt werden, wobei G G für die Klasse steht in der das Muster von der Klasse GALAXY ist und GALAXY zugeordnet wurde, während S Q Muster der Klasse ST AR enthält, die QSO zugeordnet wurden und so weiter. Das Ergebnis dieser Formel ist der einfache Klassifizierungsfehler, aber es kann zu jedem Term ein Gewicht angefügt werden um bestimmte Fehler stärker zu bestrafen [4]. Abbildung 11: Einteilung der Muster in Trainings- und Testset bei Holdout Während die Konfusionsmatrix anzeigt, wo die meisten Fehler liegen, ist das Ziel der Holdout-Methode einen Klassifizierungsfehler zu ermitteln, der unabhängig von dem Klassifizierungsfehler während des Trainings ist. Dazu werden die verfügbaren Muster zufällig in ein Trainingsset und ein Validierungsset unterteilt wie zum Beispiel in Abbildung 11 gezeigt. Dabei ist zu beachten, dass gegebenenfalls das Trainingsset in ein Trainingsset und ein Testset unterteilt ist, wie es im Abschnitt 4 unter Pruning beschrieben ist. In der Implementierung nutzen wir eine Aufteilung von 75 : 25 um die Qualität eines generierten Entscheidungsbaumes (nicht Learner!) zu ermitteln. Andere Einteilungen, wie 80 : 20 oder 50 : 50, sind ebenso üblich. Meist wird der größte Anteil für das Training und der kleinere für die Validierung verwendet, um möglichst viele Muster für das Training zur Verfügung zu haben. Ein Spezialfall von Holdout ist Stratified Holdout, bei dem während der Aufteilung der Muster sichergestellt wird, dass im Validierungs- und Trainingsset das Verhältnis der Muster pro Klasse gleich ist [1, 3, 4]. Der durch Holdout ermittelte Fehler ist sehr abhängig von der Aufteilung der Daten, daher wird die Bewertung meist mehrfach mit verschiedenen Einteilungen ausgeführt, um im Durchschnitt einen genaueren Fehler zu erhalten. Die einfachste Variante davon ist das Random 11

12 Subsampling, indem Holdout einfach mehrmals ausgeführt wird. Durch die zufällige Auswahl der Validierungsmuster kann es aber dazu kommen, dass einzelne Muster in mehreren Durchläufen zum Validierungsset gehören und dadurch das Ergebnis etwas verfälschen. Eine Weiterentwicklung von Random Subsampling ist die K-Fold-Kreuzvalidierung. Bei der K-Fold-Validierung werden die Muster in k Partitionen zerlegt. Dann wird Holdout k mal ausgeführt, wobei jede Partition einmal als Validierungsset dient. Der Vorteil dieses Vorgehens ist, dass alle Daten gleich häufig genutzt werden. In der Implementierung nutzen wir eine K-Fold- Kreuzvalidierung zum Bewerten der Learner. Ein Spezialfall von K-Fold ist Leave-One-Out (zu Abbildung 12: Einteilung der Muster in Trainings- und Testset bei Leave-One-Out deutsch: Lasse einen aus ) und wird in Abbildung 12 dargestellt. Diese Methode entspricht K-Fold mit k = N, wobei N die Anzahl der Muster ist. Das bedeutet, dass in jedem Durchlauf genau ein Muster im Validierungsset ist und damit die maximale Anzahl von Mustern für das Training zur Verfügung steht und den genauesten Fehler für die zur Verfügung stehenden Muster ausgibt. Dieses Vorgehen hat aber auch zur Folge, dass Holdout N mal ausgeführt werden muss und ist somit sehr rechenintensiv [1, 3, 4]. Eine Methode einen Fehler zu ermitteln, die nicht darauf basiert Holdout mehrfach auszuführen ist Bootstrap. Bei Bootstrap werden die die Daten für das Trainingsset zufällig, aber mit zurücklegen gewählt. Beim Spezialfall bootstrap wird genauso oft gezogen, wie Muster vorhanden sind. Die Wahrscheinlichkeit dafür, dass ein Muster gezogen wird ist bei jeder Ziehung also 1 N, die Wahrscheinlichkeit dafür, dass ein Muster nicht gezogen wird ist demnach 1 1 N. Werden diese Wahrscheinlichkeiten für alle Muster multipliziert ergibt sich ( 1 1 N ) N e 1 0, 368 als Wahrscheinlichkeit für eine große Anzahl von Mustern dafür, dass ein Muster überhaupt nicht gezogen wird. Die Anzahl der Muster im Validierungsset ist also aller Wahrscheinlichkeit nach 36, 8% während der Anteil der Daten im Trainingsset 63, 2% ist, aber einige Muster mehr als einmal vorkommen. Im Gegensatz zum Beispiel zur 10-Fold-Kreuvalidierung ist das ein relativ kleiner Anteil. Daher berechnet sich der Fehler nicht nur aus dem beobachteten Fehler beim Test mit dem Validierungset, sondern auch durch den Klassifizierungsfehler im Training: E gesamt = E test E training Die Bootstrap-Methode wird dann ebenfalls mehrfach ausgeführt und die durchschnittliche Fehlerrate zur Bewertung der Qualität benutzt [3, 4]. 12

13 6 Implementierung Die Aufgabe ist es ein Modell (hier: Entscheidungsbaum) zu finden, das die Daten automatisch und möglichst gut in die drei Gruppen Galaxien, Sterne und Quasare einteilt. Zu diesem Zweck wurde eine Python-Implementierung entwickelt, die es ermöglicht solche Entscheidungsbäume zu finden. In diesem Abschnitt wird eine Übersicht der Implementierungs-Arbeiten gegeben und anschließend auf einige Details eingegangen. 6.1 Konzept Es gibt eine Vielzahl verschiedener etablierter Induktions-Algorithmen die zur Erstellung der Entscheidungsbäume in Betracht gezogen werden müssen. Zudem besitzt jeder Algorithmus weitere Einstellungsmöglichkeiten bzw. Parameter und kann so je nach der Art der Daten und des zu lösenden Klassifikationsproblems parametrisiert werden. Andersherum sind einige Algorithmen für bestimmte Daten besser geeignet als andere und besitzen z.b. verschiedene Methoden zum Aufbau eines Baumes, der Split-Terminierung, sowie des Prunings. Learner Algorithm EA Recombine EA Mutate SkyServer DB Traindata, Testdata SQL Traindata, Testdata Testdata EA Tree Generator Tree Ranking store, update store load load Learner Storage.json Tree Storage.json.dot.png.pickle Abbildung 13: Architekur - Übersicht Die Grundidee ist es, diese verschiedenen Induktions-Algorithmen, hier kurz Learner genannt, hinsichtlich ihrer Parameter mit Hilfe eines evolutionären Algorithmus für die Astronomie- Daten zu optimieren. Anschließend werden mit den besten Learnern Bäume generiert, die hinsichtlich ihrer Genauigkeit und Charakteristika untersucht werden können. In Abbildung 13 ist die Architektur-Übersicht mit ihren Komponenten abgebildet und der Datenfluss gezeigt. Als Klassifikations-Bibliothek wird die Orange Python API genutzt. Sie bietet neben dem C4.5 Algorithmus eine eigene generische Implementierung eines Learners mit umfangreichen Einstellungsmöglichkeiten an. Diese beiden Induktions-Algorithmen wurden für die Lösung der Aufgabe ausgewählt. Außerdem wird eine SQL-Schnittstelle zur Datenbank des Skyservers genutzt um flexibel Trainings- und Testdaten generieren zu können. Im folgenden werden die einzelnen Komponenten und ihr Zusammenspiel aus Abbildung 13 genauer betrachtet. 13

14 6.2 Evolutionärer Algorithmus Parameter Wertebereich Beschreibung Die Komponente des evolutionären Algorithmus (Abbildung 13: EA) selbst bietet nur ein Grundgerüst an. Es lassen sich verschiedene Learner, sowie Rekombination und Mutation einbetten und auswechseln. Damit ist es möglich in einer modularen Art und Weise verschiedene Induktions-Algorithmen zu testen. Im folgenden werden die zwei implementierten Learner anhand ihrer Parameter die innerhalb des evolutionären Algorithmus verwendet werden beschrieben (siehe Abbildung 14 und 15). Ein weiterer Parameter der allen Implementierunmeasure worst_acceptable relief_m relief_k min_subset min_instances max_depth [1-4] Maß für Informationsgehalt: (1 = Informationgain, 2 = gini, 3 = gain ratio, 4 = relief) Abhängig von Maß Informationsgehalt Ganzzahl Default = 5 Ganzzahl Default = 100 Ganzzahl Default = 0 Ganzzahl Default = 1 Ganzzahl Default = 100 Spezieller Parameter für Relief-Maß Spezieller Parameter für Relief-Maß Partitionen mit weniger Instanzen werden nicht weiter gesplittet Ist die maximale Tiefe des Baumes erreicht, wird nicht wieder gesplittet max_majority [0-1] Splitting wird gestoppt, wenn der Anteil einer Klasse im Knoten den Wert überschreitet m_pruning [0-10] Wenn nicht 0, dann bottom-up post-pruning mit einem M-Schätzer same_majority_pruning True, False Unterschreitet die beste Testbedingung den Wert, wird nicht weiter gespittet Sind im kleinstem neuen Blatt, weniger Instanzen, dann führe den Split nicht aus Wenn aktiviert, post-pruning, indem alle Blätter eines Knoten entfernt werden, so sie die selbe Klasse klassifizieren Abbildung 14: Parameter - Orange gen zur Verfügung steht, ist dynamic_feature_subsets. Dieser erlaubt auch in der Mutation und Rekombination einzelne Attribute der Trainingsdaten zu aktivieren bzw. zu deaktivieren, wodurch diese Attribute vom Learner entsprechend ignoriert werden. Die Fitness-Funktion des EA ist ebenfalls pro Algorithmus austauchbar. Als Fitness wird in der Implementierung die Genauigkeit bzgl. einer Kreuzvalidierung durchgeführt. Dies verhindert, dass die Parameter zu speziell auf den Testdaten ausgerichtet sind und gibt somit ein erstes realistisches Maß für die Güte der Learner. Beim Aufbau jeder Generation werden die bis dahin besten Learner mit ihren Parameter in dem so genannten Learner Storage (vgl. Abbildung 13) für spätere Analysen und zum Generieren der Bäume gespeichert. Zusätzlich ist es durch den Learner Storage möglich, abgebrochene oder beendete Durchläufe des EA fortzusetzen oder bereits vorab Induviduen in die Startpopulation zu laden. Zudem kann eingestellt werden wie viele externe Learner während der Evolution pro Generation in die Population geladen werden. Wird ein externer Learner geladen, wird er erneut auf Basis der Trainingsdaten für diese Population bewertet und die alte Fitness ersetzt. Diese alte Fitness geht aber nicht verloren, sondern fließt in die durchschnittliche Fitness des Learners ein, so dass über die Zeit die durchschnittliche Fitness immer genauer wird. Diese Mechanismen ermöglichen es sogar in einem gewissen Maße (Dateisystem-Synchronisierung), dass mehrere 14

15 Parameter Wertebereich Beschreibung gain_ratio True, False Maß für Informationsgehalt: (True = gain ratio, False = informationgain subset True, False Aktiviert/Deaktiviert Feature Subsets, d.h. einzelne Attribute könnten ignoriert werden (Vermutung) prop_thresh True, False Verwende eine Wahrscheinlichkeit als Grenzwert für kardinale Attribute min_obj Ganzzahl Default = 2 window Ganzzahl % Default = 20 increment Ganzzahl % Default = 20 cf Ganzzahl % Default = 25 trials Ganzzahl Default = 10 Minimale Anzahl an Instanzen in einem Blatt Initiale Fenstergröße der Daten Maximale Anzahl an Instanzen die zum Fenster pro Iteration hinzugefügt werden können Konfidenzintervall fürs Pruning Azahl der Versuche prune True, False Immer einen geprunten Baum zurückliefern Abbildung 15: Parameter - C4.5 EAs untereinander Learner austauschen und deren Bewertung weiter qualitativ verbessern. 6.3 Tree Generator Der Tree Generator dient wie der Name schon sagt, dazu, die konkreten Entscheidungsbäume zu erzeugen. Zu diesem Zweck läd der Tree Generator eine bestimmte Menge der gespeicherten Learner wieder ein, und führt jeweils nochmal eine Kreuzvalidierung durch, die im allgemeinen eine höhere Anzahl an Partitionen nutzt. Anschließend werden die Entscheidungsbäume, die endgültigen Klassifizierungsmodelle, aus den besten Learnern erzeugt und getestet. In diesem Schritt werden die Daten immer im Verhältnis von 75% Trainingsdaten und 25% Testdaten aufgeteilt um vergleichbare Ergebnisse zu haben. Anschließend werden die besten Bäume mit ihrer Genauigkeit in dem Tree Storage abgelegt. In diesem Datencontainer werden zusätzlich mit Metadaten wie die Anzahl Knoten und ähnlichem, die Relation zum jeweiligen Learner, sowie eine.dot-datei (Graphviz) und ein PNG-Bild des Baumes gespeichert. Mit Hilfe der Daten aus dem Tree Storage können nun nicht nur die Bäume wieder geladen und zur Klassifikation genutzt werden, sondern weitere Analysen und visuelle Ergebnisse generiert werden. 7 Ergebnisse In diesem Abschnitt werden die Ergebnisse der Ausarbeitung sowie die wichtigsten Erkenntnisse die sich während der Implementierungsphase gebildet haben, präsentiert. Als erstes werden einige der besten Parameter der Learner, die der evolutionäre Algorithmus generiert hat, vorgestellt. Anschließend werden einige der besten Entscheidungsbäume mit den markantesten Merkmalen aufgelistet. Daraufhin wird der Zusammenhang zwischen der Anzahl an Trainingsdaten und der Genauigkeit der Learner und der Modelle untersucht. 15

16 ID accuracy nodes leaves learner size_training size_test 3 0, C , C , C , orange , orange , orange , orange , orange Tabelle 1: Ranking: Entscheidungsbäume In der Tabelle 1 ist eine Auswahl der besten Entscheidungsbäume zusehen die durch die Python-Implementierung entstanden sind. Neben der Genauigkeit(accuracy) sind weitere Qualitätsmerkmale angegeben, wie z.b. die Anzahl an Knoten(nodes). ID avgfitness fitness measure min_instances max_depth max_majority m_pruning Tabelle 2: Orange Learner zu den Entscheidungsbäumen mit einigen Parametern Zusätzlich sind durch die IDs die dazugehörigen Learner in den Tabellen 2 und 3 referenziert und deren durchschnittliche Genauigkeit(avgFitness) sowie einige Parameter gezeigt. ID avgfitness fitness gain_ratio False False False False prop_thresh False True True True subset True True False True cf min_obj window increment trials Tabelle 3: C4.5 Learner zu den Entscheidungsbäumen mit einigen Parametern Während der Entwicklung hat sich gezeigt, dass der wichtigste Faktor für die gute Entwicklung von Entscheidungsbäumen die Anzahl an Trainingsdaten ist. In Abbildung 16 ist die Genauigkeit eines Learners in Relation zur Größe der Trainingsdaten gezeigt. Daran ist zu 16

17 erkennen, dass die Genauigkeit der Bäume unter 1000 Instanzen von Trainingsdaten zunächst größeren Schwankungen unterliegt. Erst ab ca Instanzen beginnt die Genauigkeit sich einzupendeln. 1 0,9 0,8 Genauigkeit % 0,7 0,6 0,5 0, Anzahl Trainingsdaten Abbildung 16: Relation zwischen der Genauigkeit und Menge der Trainingsdaten mit 75% Training und 25% Test Anteil an der jeweiligen Gesamtmenge an Instanzen (Orange-Learner) Trotz des Prunings nimmt nicht nur die Genauigkeit der Bäume, sondern auch ihre Anzahl von Knoten und Blättern bei steigender Anzahl von Trainingsmustern zu. Um dieses Verhalten zu visualisieren ist in Abbildung 17 die Relation zwischen der Anzahl der Knoten und der Menge an Trainingsdaten zu sehen Anzahl Knoten Anzahl Trainingsdaten Abbildung 17: Relation zwischen der Anzahl der Knoten und Menge der Trainingsdaten Es ist zwar zu erkennen, dass die Steigung der Anzahl an Knoten proportional zur Anzahl der Trainingsdaten flacher wird. Jedoch nehmen die Schwankungen und Extremwerte der Anzahl an Knoten zu. Ein Entscheidungsbaum, der trotz vieler Eingabedaten klein bleibt und gute 17

18 Ergebnisse liefert ist also selten. Die Grafiken in Abbildung 16 und 17 können auch als Anhaltspunkt dafür dienen eine geeignete und akzeptable Größe für die Menge an Trainingsdaten zu wählen. Im Folgenden werden Abbildung 18: Entscheidungsbäume mit steigender Anzahl von Testmustern noch einmal einige Modelle mit einer variablen Anzahl an Testdaten evaluiert. Dazu kommt schließlich die letzte Komponente der Implementierung (Tree Ranking) zum Einsatz. Diese erlaubt es die erstellten Bäume aus dem Tree Storage nicht nur hinsichtlich der Genauigkeit zu bewerten, sondern führt eine neue Güte-Funktion ein, die z.b. auch Anzahl der Knoten berücksichtigt und eine Übersicht der besten Bäume bezüglich der einzelnen Qualitäts-Kriterien schafft. In der Tabelle in Abbildung 18 sind einige Bäume hinsichtlich der Anzahl der Knoten und der Menge an Testdaten aufgelistet. Zusätzlich wird zwischen randomisierten Trainingsdaten, in denen die drei Klassen nicht gleich verteilt sein müssen (rand), und gleich verteilten Klassenausprägungen (even). Interessant ist zum Beispiel der erste Baum im Validierungsset mit der Größe 100 mit der ID 1. Dieser hat eine Genauigkeit von 99%, kommt aber bei größeren Validierungssets nicht mehr vor. Mit steigender Größe des Validierungssets nimmt die Genauigkeit ab. Dafür kommen gute Bäume aber häufiger vor, was dafür spricht, dass diese nicht nur auf einem konkreten Validierungsset gut arbeiten. Werden die Bäume anhand der Art der Aufteilung miteinander verglichen, fällt auf, dass die Bäume, die mit einem gleichmäßig verteilten Satz von Mustern getestet werden um wenige Prozent schlechter abschneiden. Der Fehler wird dadurch kleiner, dass in dem ungleichmäßigen Datensatz die Klasse, die häufig falsch klassifiziert wird, seltener vorkommt. Dies kann an dem 18

19 Baum mit der ID 14 beobachtet werden, der für die Größe 5000 auf beiden Seiten der Tabelle vorkommt und bei gleichmäßiger Verteilung der Muster 2% schlechter bewertet wird. 8 Zusammenfassung Entscheidungsbäume sind Klassifikationsmodelle bei dessen Induktion keinerlei Vorkenntnisse über die zu klassifizierenden Daten vorliegen müssen. Außerdem lassen sich auch aus größeren Mengen von Trainingsdaten Bäume generieren. Diese Entscheidungsbäume können leicht von Menschen interpretiert und deren Entscheidungen nachverfolgt werden. Des weiteren gibt es viele Algorithmen und Methoden um das Ergebnis der Induktion weiter zu verbessern. Ist ein Entscheidungsbaum generiert, ist der Aufwand zur eigentlichen Klassifizierung von Instanzen schließlich gering. Diese Gründe machen den Entscheidungsbaum als Klassifikator für eine erste Sichtung von Daten zum idealen Kandidaten. Die Aufgabe ein möglichst gutes Modell zu finden, das die Astronomiedaten der Sloan Digital Sky Survey Datenbank in Galaxien, Sterne und Quasare klassifiziert, konnten wir erfolgreich lösen. Der schnell entwickelte Prototyp ist in manchen Bereichen noch suboptimal und unübersichtlich implementiert. Trotzdem zeigt sich, das sich das Konzept und die Architektur bewährt haben. Es wurde nicht nur ein modularer und evolutionärer Algorithmus entwickelt, sondern auch ein Werkzeugkasten um möglichst optimale Entscheidungsbäume und Induktions-Algorithmen zu finden, zu speichern, zu analysieren und anzuzeigen. Von ersten Versuchen, die selten über eine Genauigkeit von 84% hinausgekommen sind, konnten wir zuletzt Entscheidungsbäume mit einer Genauigkeit um 92% erzeugen. Mit einem einfachen Holdout haben wir sogar Bäume von über 97% bei 1000 Mustern erzeugen können, diese haben sich aber mittels Kreuzvalidierung bisher immer als überoptimiert herausgestellt. Es befinden sich noch umfangreiche Ergebnisse in dem Learner- und Tree Storage, die analysiert und interpretiert werden können. Zudem haben die bisherigen Ergebnisse auf den Astronomiedaten gezeigt, dass mit einem Entscheidungsbaum auch Klassifikationen vorgenommen werden können, die über die 90%-Marke hinausgehen. Zieht man nun noch die geringen Betriebskosten eines Entscheidungsbaums mit in Betracht, spricht unserer Meinung nach nichts gegen den Einsatz eines Entscheidungsbaums für die jetzigen und zukünftigen Daten des Sloan Digital Sky Survey. Literatur [1] Jiawei, H., and Kamber, M. Data mining: concepts and techniques. San Francisco, CA, itd: Morgan Kaufmann 5 (2001). [2] Tan, P., Steinbach, M., and Kumar, V. Data mining classification: Basic concepts, decision trees, and model evaluation, lecture notes for chapter 4, introduction to data mining [3] Tan, P., Steinbach, M., and Kumar, V. Introduction to Data Mining. Addison-Wesley, [4] Witten, Ian H. ; Frank, E. Data mining, practical machine learning tools and techniques, 2. ed., repr. ed. Morgan Kaufmann Pubs [u.a.], Ian H. Witten ; Eibe Frank. 19

Entscheidungsbäume. Minh-Khanh Do Erlangen,

Entscheidungsbäume. Minh-Khanh Do Erlangen, Entscheidungsbäume Minh-Khanh Do Erlangen, 11.07.2013 Übersicht Allgemeines Konzept Konstruktion Attributwahl Probleme Random forest E-Mail Filter Erlangen, 11.07.2013 Minh-Khanh Do Entscheidungsbäume

Mehr

Vergleich von SVM und Regel- und Entscheidungsbaum-Lernern

Vergleich von SVM und Regel- und Entscheidungsbaum-Lernern Vergleich von SVM und Regel- und Entscheidungsbaum-Lernern Chahine Abid Bachelor Arbeit Betreuer: Prof. Johannes Fürnkranz Frederik Janssen 28. November 2013 Fachbereich Informatik Fachgebiet Knowledge

Mehr

3.3 Nächste-Nachbarn-Klassifikatoren

3.3 Nächste-Nachbarn-Klassifikatoren 3.3 Nächste-Nachbarn-Klassifikatoren Schrauben Nägel Klammern Neues Objekt Instanzbasiertes Lernen (instance based learning) Einfachster Nächste-Nachbar-Klassifikator: Zuordnung zu der Klasse des nächsten

Mehr

Maschinelles Lernen: Symbolische Ansätze

Maschinelles Lernen: Symbolische Ansätze Maschinelles Lernen: Symbolische Ansätze Wintersemester 2009/2010 Musterlösung für das 9. Übungsblatt Aufgabe 1: Decision Trees Gegeben sei folgende Beispielmenge: Age Education Married Income Credit?

Mehr

INTELLIGENTE DATENANALYSE IN MATLAB. Überwachtes Lernen: Entscheidungsbäume

INTELLIGENTE DATENANALYSE IN MATLAB. Überwachtes Lernen: Entscheidungsbäume INTELLIGENTE DATENANALYSE IN MATLAB Überwachtes Lernen: Entscheidungsbäume Literatur Stuart Russell und Peter Norvig: Artificial Intelligence. Andrew W. Moore: http://www.autonlab.org/tutorials. 2 Überblick

Mehr

INTELLIGENTE DATENANALYSE IN MATLAB

INTELLIGENTE DATENANALYSE IN MATLAB INTELLIGENTE DATENANALYSE IN MATLAB Überwachtes Lernen: Entscheidungsbäume Literatur Stuart Russell und Peter Norvig: Artificial i Intelligence. Andrew W. Moore: http://www.autonlab.org/tutorials. 2 Überblick

Mehr

Entscheidungsbäume aus großen Datenbanken: SLIQ

Entscheidungsbäume aus großen Datenbanken: SLIQ Entscheidungsbäume aus großen Datenbanken: SLIQ C4.5 iteriert häufig über die Trainingsmenge Wie häufig? Wenn die Trainingsmenge nicht in den Hauptspeicher passt, wird das Swapping unpraktikabel! SLIQ:

Mehr

Decision Trees* von Julia Heise, Philipp Thoms, Hans-Martin Wulfmeyer. *Entscheidungsbäume

Decision Trees* von Julia Heise, Philipp Thoms, Hans-Martin Wulfmeyer. *Entscheidungsbäume Decision Trees* von Julia Heise, Philipp Thoms, Hans-Martin Wulfmeyer *Entscheidungsbäume Gliederung 1. Einführung 2. Induktion 3. Beispiel 4. Fazit Einführung 1. Einführung a. Was sind Decision Trees?

Mehr

4. Lernen von Entscheidungsbäumen

4. Lernen von Entscheidungsbäumen 4. Lernen von Entscheidungsbäumen Entscheidungsbäume 4. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse

Mehr

Maschinelles Lernen: Symbolische Ansätze

Maschinelles Lernen: Symbolische Ansätze Maschinelles Lernen: Symbolische Ansätze Musterlösung für das 7. Übungsblatt Aufgabe 1 Gegeben sei folgende Beispielmenge: Day Outlook Temperature Humidity Wind PlayTennis D1? Hot High Weak No D2 Sunny

Mehr

Maschinelles Lernen: Symbolische Ansätze

Maschinelles Lernen: Symbolische Ansätze Maschinelles Lernen: Symbolische Ansätze Wintersemester 2009/2010 Musterlösung für das 1. Übungsblatt Aufgabe 1: Anwendungsszenario Überlegen Sie sich ein neues Szenario des klassifizierenden Lernens (kein

Mehr

Prädiktion und Klassifikation mit

Prädiktion und Klassifikation mit Prädiktion und Klassifikation mit Random Forest Prof. Dr. T. Nouri Nouri@acm.org Technical University NW-Switzerland /35 Übersicht a. Probleme mit Decision Tree b. Der Random Forests RF c. Implementation

Mehr

, Data Mining, 2 VO Sommersemester 2008

, Data Mining, 2 VO Sommersemester 2008 Evaluation 188.646, Data Mining, 2 VO Sommersemester 2008 Dieter Merkl e-commerce Arbeitsgruppe Institut für Softwaretechnik und Interaktive Systeme Technische Universität Wien www.ec.tuwien.ac.at/~dieter/

Mehr

Decision-Tree-Klassifikator

Decision-Tree-Klassifikator D3kjd3Di38lk323nnm Decision-Tree-Klassifikator Decision Trees haben einige Vorteile gegenüber den beiden schon beschriebenen Klassifikationsmethoden. Man benötigt in der Regel keine so aufwendige Vorverarbeitung

Mehr

Kapitel 4: Data Mining DATABASE SYSTEMS GROUP. Überblick. 4.1 Einleitung. 4.2 Clustering. 4.3 Klassifikation

Kapitel 4: Data Mining DATABASE SYSTEMS GROUP. Überblick. 4.1 Einleitung. 4.2 Clustering. 4.3 Klassifikation Überblick 4.1 Einleitung 4.2 Clustering 4.3 Klassifikation 1 Klassifikationsproblem Gegeben: eine Menge O D von Objekten o = (o 1,..., o d ) O mit Attributen A i, 1 i d eine Menge von Klassen C = {c 1,...,c

Mehr

Bayessches Lernen Aufgaben

Bayessches Lernen Aufgaben Bayessches Lernen Aufgaben martin.loesch@kit.edu (0721) 608 45944 Aufgabe 1: Autodiebstahl-Beispiel Wie würde man ein NB-Klassifikator für folgenden Datensatz aufstellen? # Color Type Origin Stolen? 1

Mehr

Data Mining und Maschinelles Lernen Lösungsvorschlag für das 1. Übungsblatt

Data Mining und Maschinelles Lernen Lösungsvorschlag für das 1. Übungsblatt Data Mining und Maschinelles Lernen Lösungsvorschlag für das 1. Übungsblatt Knowledge Engineering Group Data Mining und Maschinelles Lernen Lösungsvorschlag 1. Übungsblatt 1 1. Anwendungsszenario Überlegen

Mehr

Data Mining und Maschinelles Lernen Wintersemester 2015/2016 Lösungsvorschlag für das 12. Übungsblatt

Data Mining und Maschinelles Lernen Wintersemester 2015/2016 Lösungsvorschlag für das 12. Übungsblatt Data Mining und Maschinelles Lernen Wintersemester 2015/2016 Lösungsvorschlag für das 12. Übungsblatt 9. Februar 2016 1 Aufgabe 1: RelieF (1) Gegeben sind folgende 12 Beispiele der Wetter-Daten: ID outlook

Mehr

Maschinelles Lernen: Symbolische Ansätze

Maschinelles Lernen: Symbolische Ansätze Maschinelles Lernen: Symbolische Ansätze Musterlösung für das 6. Übungsblatt Aufgabe 1 Gegeben sei eine Beispielmenge mit folgenden Eigenschaften: Jedes Beispiel ist durch 10 nominale Attribute A 1,...,

Mehr

5.4 Nächste-Nachbarn-Klassifikatoren

5.4 Nächste-Nachbarn-Klassifikatoren 5.4 Nächste-Nachbarn-Klassifikatoren Schrauben Nägel Klammern Neues Objekt Instanzbasiertes Lernen (instance based learning) Einfacher Nächster-Nachbar-Klassifikator: Zuordnung zu der Klasse des nächsten

Mehr

TEIL 13: DIE EINFACHE LINEARE REGRESSION

TEIL 13: DIE EINFACHE LINEARE REGRESSION TEIL 13: DIE EINFACHE LINEARE REGRESSION Die einfache lineare Regression Grundlagen Die einfache lineare Regression ist ebenfalls den bivariaten Verfahren für metrische Daten zuzuordnen 1 Sie hat einen

Mehr

Data Mining - Wiederholung

Data Mining - Wiederholung Data Mining - Wiederholung Norbert Fuhr 18. Januar 2006 Problemstellungen Problemstellungen Daten vs. Information Def. Data Mining Arten von strukturellen Beschreibungen Regeln (Klassifikation, Assoziations-)

Mehr

Analytics Entscheidungsbäume

Analytics Entscheidungsbäume Analytics Entscheidungsbäume Professional IT Master Prof. Dr. Ingo Claßen Hochschule für Technik und Wirtschaft Berlin Regression Klassifikation Quellen Regression Beispiel Baseball-Gehälter Gehalt: gering

Mehr

Kapitel ML: III (Fortsetzung)

Kapitel ML: III (Fortsetzung) Kapitel ML: III (Fortsetzung) III. Entscheidungsbäume Repräsentation und Konstruktion Impurity-Funktionen Entscheidungsbaumalgorithmen Pruning ML: III-87 Decision Trees c STEIN/LETTMANN 2005-2011 Missklassifikationskosten

Mehr

Decision Tree Learning

Decision Tree Learning Decision Tree Learning Computational Linguistics Universität des Saarlandes Sommersemester 2011 28.04.2011 Entscheidungsbäume Repräsentation von Regeln als Entscheidungsbaum (1) Wann spielt Max Tennis?

Mehr

Maschinelles Lernen und Data Mining

Maschinelles Lernen und Data Mining Semestralklausur zur Vorlesung Maschinelles Lernen und Data Mining Prof. J. Fürnkranz / Dr. G. Grieser Technische Universität Darmstadt Wintersemester 2004/05 Termin: 14. 2. 2005 Name: Vorname: Matrikelnummer:

Mehr

Effizienz von Algorithmen

Effizienz von Algorithmen Effizienz von Algorithmen Letzte Bearbeitung: Jan 211 Ein wichtiger Aspekt bei Algorithmen sind seine "Kosten". Wir wollen uns hier ausschließlich mit der Laufzeit des gewählten Algorithmus beschäftigen.

Mehr

Klassifikation im Bereich Musik

Klassifikation im Bereich Musik Klassifikation im Bereich Musik Michael Günnewig 30. Mai 2006 Michael Günnewig 1 30. Mai 2006 Inhaltsverzeichnis 1 Was ist eine Klassifikation? 3 1.1 Arten und Aufbau von Klassifikationen.................

Mehr

Vorlesung. Machine Learning - Entscheidungsbäume

Vorlesung. Machine Learning - Entscheidungsbäume Vorlesung Machine Learning - Entscheidungsbäume Vorlesung Machine Learning - Entscheidungsbäume http://de.wikipedia.org/wiki/datei:deu_tutorial_-_hochladen_von_bildern_neu%2bcommons.svg http://www.rulequest.com/personal/

Mehr

Erstes Mathe-Tutorium am Themen können gewählt werden unter:

Erstes Mathe-Tutorium am Themen können gewählt werden unter: Mathe-Tutorium Erstes Mathe-Tutorium am 07.05. Themen können gewählt werden unter: https://docs.google.com/forms/d/1lyfgke7skvql cgzspjt4mkirnrgnrfpkkn3j2vqos/iewform 1 Uniersität Potsdam Institut für

Mehr

2. Lernen von Entscheidungsbäumen

2. Lernen von Entscheidungsbäumen 2. Lernen von Entscheidungsbäumen Entscheidungsbäume 2. Lernen von Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch Attribut/Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse

Mehr

Mathematische Grundlagen III

Mathematische Grundlagen III Mathematische Grundlagen III Maschinelles Lernen II: Klassifikation mit Entscheidungsbäumen Vera Demberg Universität des Saarlandes 12. Juli 2012 Vera Demberg (UdS) Mathe III 12. Juli 2012 1 / 38 Einleitung

Mehr

Rückblick. Entscheidungsunterstützende Systeme / Kapitel 4: Klassifikation

Rückblick. Entscheidungsunterstützende Systeme / Kapitel 4: Klassifikation Rückblick k-nächste Nachbarn als distanzbasiertes Verfahren zur Klassifikation benötigt sinnvolles Distanzmaß und weist vorher unbekanntem Datenpunkt dann die häufigste Klasse seiner k nächsten Nachbarn

Mehr

3.2 Streuungsmaße. 3 Lage- und Streuungsmaße 133. mittlere Variabilität. geringe Variabilität. große Variabilität 0.0 0.1 0.2 0.3 0.4 0.

3.2 Streuungsmaße. 3 Lage- und Streuungsmaße 133. mittlere Variabilität. geringe Variabilität. große Variabilität 0.0 0.1 0.2 0.3 0.4 0. Eine Verteilung ist durch die Angabe von einem oder mehreren Mittelwerten nur unzureichend beschrieben. Beispiel: Häufigkeitsverteilungen mit gleicher zentraler Tendenz: geringe Variabilität mittlere Variabilität

Mehr

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke

Vorlesungsplan. Von Naïve Bayes zu Bayesischen Netzwerk- Klassifikatoren. Naïve Bayes. Bayesische Netzwerke Vorlesungsplan 17.10. Einleitung 24.10. Ein- und Ausgabe 31.10. Reformationstag, Einfache Regeln 7.11. Naïve Bayes, Entscheidungsbäume 14.11. Entscheidungsregeln, Assoziationsregeln 21.11. Lineare Modelle,

Mehr

Mathematische Grundlagen III

Mathematische Grundlagen III Mathematische Grundlagen III Maschinelles Lernen III: Clustering Vera Demberg Universität des Saarlandes 7. Juli 202 Vera Demberg (UdS) Mathe III 7. Juli 202 / 35 Clustering vs. Klassifikation In den letzten

Mehr

Randomisierte Algorithmen

Randomisierte Algorithmen Randomisierte Algorithmen Randomisierte Algorithmen 5. Zwei spieltheoretische Aspekte Thomas Worsch Fakultät für Informatik Karlsruher Institut für Technologie Wintersemester 2015/2016 1 / 36 Überblick

Mehr

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum 4. Lernen von Entscheidungsbäumen Klassifikation mit Entscheidungsbäumen Gegeben sei eine Menge von Objekten, die durch /Wert- Paare beschrieben sind. Jedes Objekt kann einer Klasse zugeordnet werden.

Mehr

Wir sollen erarbeiten, wie man mit Hilfe der Mondentfernung die Entfernung zur Sonne bestimmen kann.

Wir sollen erarbeiten, wie man mit Hilfe der Mondentfernung die Entfernung zur Sonne bestimmen kann. Expertengruppenarbeit Sonnenentfernung Das ist unsere Aufgabe: Wir sollen erarbeiten, wie man mit Hilfe der Mondentfernung die Entfernung zur Sonne bestimmen kann. Konkret ist Folgendes zu tun: Lesen Sie

Mehr

TEIL 13: DIE LINEARE REGRESSION

TEIL 13: DIE LINEARE REGRESSION TEIL 13: DIE LINEARE REGRESSION Dozent: Dawid Bekalarczyk GLIEDERUNG Dozent: Dawid Bekalarczyk Lineare Regression Grundlagen Prognosen / Schätzungen Verbindung zwischen Prognose und Zusammenhang zwischen

Mehr

Folien zu Data Mining von I. H. Witten und E. Frank. übersetzt von N. Fuhr

Folien zu Data Mining von I. H. Witten und E. Frank. übersetzt von N. Fuhr Folien zu Data Mining von I. H. Witten und E. Frank übersetzt von N. Fuhr Von Naivem Bayes zu Bayes'schen Netzwerken Naiver Bayes Annahme: Attribute bedingt unabhängig bei gegebener Klasse Stimmt in der

Mehr

Projekt Maschinelles Lernen WS 06/07

Projekt Maschinelles Lernen WS 06/07 Projekt Maschinelles Lernen WS 06/07 1. Auswahl der Daten 2. Evaluierung 3. Noise und Pruning 4. Regel-Lernen 5. ROC-Kurven 6. Pre-Processing 7. Entdecken von Assoziationsregeln 8. Ensemble-Lernen 9. Wettbewerb

Mehr

Deskriptive Statistik Kapitel IX - Kontingenzkoeffizient

Deskriptive Statistik Kapitel IX - Kontingenzkoeffizient Deskriptive Statistik Kapitel IX - Kontingenzkoeffizient Georg Bol bol@statistik.uni-karlsruhe.de Markus Höchstötter hoechstoetter@statistik.uni-karlsruhe.de Agenda 1. Untersuchung der Abhängigkeit 2.

Mehr

Splitting. Impurity. c 1. c 2. c 3. c 4

Splitting. Impurity. c 1. c 2. c 3. c 4 Splitting Impurity Sei D(t) eine Menge von Lernbeispielen, in der X(t) auf die Klassen C = {c 1, c 2, c 3, c 4 } verteilt ist. Illustration von zwei möglichen Splits: c 1 c 2 c 3 c 4 ML: III-29 Decision

Mehr

ID3 und Apriori im Vergleich

ID3 und Apriori im Vergleich ID3 und Apriori im Vergleich Lassen sich bei der Klassifikation mittels Apriori bessere Ergebnisse als durch ID3 erzielen? Sebastian Boldt, Christian Schulz, Marc Thielbeer KURZFASSUNG Das folgende Dokument

Mehr

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Binomialverteilung und Bernoulli- Experiment

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Binomialverteilung und Bernoulli- Experiment Unterrichtsmaterialien in digitaler und in gedruckter Form Auszug aus: Binomialverteilung und Bernoulli- Experiment Das komplette Material finden Sie hier: Download bei School-Scout.de TOSSNET Der persönliche

Mehr

Analytische Statistik II

Analytische Statistik II Analytische Statistik II Institut für Geographie 1 Schätz- und Teststatistik 2 Grundproblem Generell sind wir nur selten in der Geographie in der Lage, Daten über die Grundgesamtheit zur Verfügung zu haben.

Mehr

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing

Domain-independent. independent Duplicate Detection. Vortrag von Marko Pilop & Jens Kleine. SE Data Cleansing SE Data Cleansing Domain-independent independent Duplicate Detection Vortrag von Marko Pilop & Jens Kleine http://www.informatik.hu-berlin.de/~pilop/didd.pdf {pilop jkleine}@informatik.hu-berlin.de 1.0

Mehr

T (n) = max. g(x)=n t(n) S(n) = max. g(x)=n s(n)

T (n) = max. g(x)=n t(n) S(n) = max. g(x)=n s(n) Beim Logarithmischen Kostenmaß wird, im Gegensatz zum EKM, die Stelligkeit der Werte berücksichtigt und mit in die Laufzeit eingerechnet. Beispiel: R1 := R2 (R3), wobei R2 den Wert 5, R3 den Wert 10 und

Mehr

Ausführen eines Makros beim Starten von OpenOffice.org

Ausführen eines Makros beim Starten von OpenOffice.org Ausführen eines Makros beim Starten von OpenOffice.org Es ist möglich, beim Starten und Beenden von OpenOffice.org oder einzelner Komponenten Makros auszuführen. Dies geschieht mittels Zuordnung jeweiliger

Mehr

Data Mining auf Datenströmen Andreas M. Weiner

Data Mining auf Datenströmen Andreas M. Weiner Technische Universität Kaiserslautern Fachbereich Informatik Lehrgebiet Datenverwaltungssysteme Integriertes Seminar Datenbanken und Informationssysteme Sommersemester 2005 Thema: Data Streams Andreas

Mehr

Christian Klotz Alois Klotz Mario Steinwender 12. Oktober 2014. Vielen Dank, dass Sie sich für die EASY4ME-Apps entschieden haben.

Christian Klotz Alois Klotz Mario Steinwender 12. Oktober 2014. Vielen Dank, dass Sie sich für die EASY4ME-Apps entschieden haben. Christian Klotz Alois Klotz Mario Steinwender 12. Oktober 2014 EASY4ME - Apps Willkommen! Vielen Dank, dass Sie sich für die EASY4ME-Apps entschieden haben. Dieser Guide erklärt Ihnen, wie Sie die EASY4ME-Apps

Mehr

Übungsblatt 1. f(n) = f(n) = O(g(n)) g(n) = O(f(n)) Zeigen oder widerlegen Sie: 3 n = Θ(2 n ) Aufgabe 1.2 Gegeben sei die folgende Funktion:

Übungsblatt 1. f(n) = f(n) = O(g(n)) g(n) = O(f(n)) Zeigen oder widerlegen Sie: 3 n = Θ(2 n ) Aufgabe 1.2 Gegeben sei die folgende Funktion: Übungsblatt 1 Aufgabe 1.1 Beweisen oder widerlegen Sie, dass für die im Folgenden definierte Funktion f(n) die Beziehung f(n) = Θ(n 4 ) gilt. Beachten Sie, dass zu einem vollständigen Beweis gegebenenfalls

Mehr

Kapitel 1: Deskriptive Statistik

Kapitel 1: Deskriptive Statistik Kapitel 1: Deskriptive Statistik Grafiken Mit Hilfe von SPSS lassen sich eine Vielzahl unterschiedlicher Grafiken für unterschiedliche Zwecke erstellen. Wir besprechen hier die zwei in Kapitel 1.1 thematisierten

Mehr

Aufzählung, Bennenung, Bedienung der wichtigsten Steuerelemente Verwenden von Menüs, Schaltflächen, Bildlaufleisten und Kontrollkästchen

Aufzählung, Bennenung, Bedienung der wichtigsten Steuerelemente Verwenden von Menüs, Schaltflächen, Bildlaufleisten und Kontrollkästchen Aufzählung, Bennenung, Bedienung der wichtigsten Steuerelemente Verwenden von Menüs, Schaltflächen, Bildlaufleisten und Kontrollkästchen Menüs, Schaltflächen, Bildlaufleisten und Kontrollkästchen sind

Mehr

LAF Mathematik. Näherungsweises Berechnen von Nullstellen von Funktionen

LAF Mathematik. Näherungsweises Berechnen von Nullstellen von Funktionen LAF Mathematik Näherungsweises Berechnen von Nullstellen von Funktionen von Holger Langlotz Jahrgangsstufe 12, 2002/2003 Halbjahr 12.1 Fachlehrer: Endres Inhalt 1. Vorkenntnisse 1.1 Nicht abbrechende Dezimalzahlen;

Mehr

Praktikum Data Warehousing und Data Mining

Praktikum Data Warehousing und Data Mining Klassifikation I Praktikum Data Warehousing und Data Mining Klassifikationsprobleme Idee Bestimmung eines unbekannten kategorischen Attributwertes (ordinal mit Einschränkung) Unter Benutzung beliebiger

Mehr

Data Mining und Maschinelles Lernen

Data Mining und Maschinelles Lernen Data Mining und Maschinelles Lernen Wintersemester 2015/16 Musterlösung für das 7. Übungsblatt Aufgabe 1 Evaluierungsmethoden Ein Datenset enthält 2 n Beispiele, wobei genau n Beispiele positiv sind und

Mehr

Übersicht. Definition Daten Problemklassen Fehlerfunktionen

Übersicht. Definition Daten Problemklassen Fehlerfunktionen Übersicht 1 Maschinelle Lernverfahren Definition Daten Problemklassen Fehlerfunktionen 2 Entwickeln von maschinellen Lernverfahren Aufteilung der Daten Underfitting und Overfitting Erkennen Regularisierung

Mehr

E-Mail-Abwesenheitsnachricht einrichten

E-Mail-Abwesenheitsnachricht einrichten E-Mail-Abwesenheitsnachricht einrichten Inhalt 1. Abwesenheitsnachricht erstellen... 2 1.1. Textbaustein... 2 1.2. E-Mail-Nachricht... 4 2. Filter für die automatische Benachrichtigung erstellen... 5 2.1.

Mehr

Ü b u n g s b l a t t 15

Ü b u n g s b l a t t 15 Einführung in die Stochastik Sommersemester 07 Dr. Walter Oevel 2. 7. 2007 Ü b u n g s b l a t t 15 Hier ist zusätzliches Übungsmaterial zur Klausurvorbereitung quer durch die Inhalte der Vorlesung. Eine

Mehr

Maschinelles Lernen Entscheidungsbäume

Maschinelles Lernen Entscheidungsbäume Universität Potsdam Institut für Informatik Lehrstuhl Maschinelles Lernen Maschinelles Lernen Entscheidungsbäume Paul Prasse Entscheidungsbäume Eine von vielen Anwendungen: Kreditrisiken Kredit - Sicherheiten

Mehr

fuzzy-entscheidungsbäume

fuzzy-entscheidungsbäume fuzzy-entscheidungsbäume klassische Entscheidungsbaumverfahren fuzzy Entscheidungsbaumverfahren Entscheidungsbäume Was ist ein guter Mietwagen für einen Familienurlaub auf Kreta? 27. März 23 Sebastian

Mehr

Probeklausur zur Vorlesung Statistik II für Studierende der Soziologie und Nebenfachstudierende

Probeklausur zur Vorlesung Statistik II für Studierende der Soziologie und Nebenfachstudierende Probeklausur zur Vorlesung Statistik II für Studierende der Soziologie und Nebenfachstudierende im Sommersemester 2012 Prof. Dr. H. Küchenhoff, J. Brandt, G. Schollmeyer, G. Walter Aufgabe 1 Betrachten

Mehr

Eins für alle. Das neue Prüfzeichen von TÜV Rheinland.

Eins für alle. Das neue Prüfzeichen von TÜV Rheinland. Eins für alle. Das neue Prüfzeichen von TÜV Rheinland. Wir geben Antworten... auf alles, was Sie über das neue Prüfzeichen von TÜV Rheinland wissen wollen. Nach dem Motto Eins für alle ersetzt das neue

Mehr

Vorlesung Wissensentdeckung

Vorlesung Wissensentdeckung Gliederung Vorlesung Wissensentdeckung Additive Modelle Katharina Morik, Weihs 1 Merkmalsauswahl Gütemaße und Fehlerabschätzung.6.015 1 von 33 von 33 Ausgangspunkt: Funktionsapproximation Aufteilen der

Mehr

Begriffsbestimmung CRISP-DM-Modell Betriebswirtschaftliche Einsatzgebiete des Data Mining Web Mining und Text Mining

Begriffsbestimmung CRISP-DM-Modell Betriebswirtschaftliche Einsatzgebiete des Data Mining Web Mining und Text Mining Gliederung 1. Einführung 2. Grundlagen Data Mining Begriffsbestimmung CRISP-DM-Modell Betriebswirtschaftliche Einsatzgebiete des Data Mining Web Mining und Text Mining 3. Ausgewählte Methoden des Data

Mehr

Mining High-Speed Data Streams

Mining High-Speed Data Streams Mining High-Speed Data Streams Pedro Domingos & Geoff Hulten Departement of Computer Science & Engineering University of Washington Datum : 212006 Seminar: Maschinelles Lernen und symbolische Ansätze Vortragender:

Mehr

Künstliche Intelligenz Maschinelles Lernen

Künstliche Intelligenz Maschinelles Lernen Künstliche Intelligenz Maschinelles Lernen Stephan Schwiebert Sommersemester 2009 Sprachliche Informationsverarbeitung Institut für Linguistik Universität zu Köln Maschinelles Lernen Überwachtes Lernen

Mehr

Elemente der Stochastik (SoSe 2016) 9. Übungsblatt

Elemente der Stochastik (SoSe 2016) 9. Übungsblatt Dr. M. Weimar 06.06.2016 Elemente der Stochastik (SoSe 2016) 9. Übungsblatt Aufgabe 1 (2+2+2+2+1=9 Punkte) In einer Urne befinden sich sieben Lose, darunter genau ein Gewinnlos. Diese Lose werden nacheinander

Mehr

Klausur zur Wahrscheinlichkeitstheorie für Lehramtsstudierende

Klausur zur Wahrscheinlichkeitstheorie für Lehramtsstudierende Universität Duisburg-Essen Essen, den 0.0.009 Fachbereich Mathematik Prof. Dr. M. Winkler C. Stinner Klausur zur Wahrscheinlichkeitstheorie für Lehramtsstudierende Lösung Die Klausur gilt als bestanden,

Mehr

5 Kontinuierliches Wachstum

5 Kontinuierliches Wachstum 5 Kontinuierliches Wachstum Kontinuierlich meßbare Größe Wir betrachten nun eine Größe a, die man kontinuierlich messen kann. Den Wert von a zum Zeitpunkt t schreiben wir nun als a(t). Wir können jedem

Mehr

Classification and Regression Trees. Markus Müller

Classification and Regression Trees. Markus Müller Classification and Regression Trees Markus Müller Gliederung Lernen Entscheidungsbäume Induktives Lernen von Bäumen ID3 Algorithmus Einfluß der Beispielmenge auf den Baum Möglichkeiten zur Verbesserung

Mehr

INTELLIGENTE DATENANALYSE IN MATLAB. Evaluation & Exploitation von Modellen

INTELLIGENTE DATENANALYSE IN MATLAB. Evaluation & Exploitation von Modellen INTELLIGENTE DATENANALYSE IN MATLAB Evaluation & Exploitation von Modellen Überblick Schritte der Datenanalyse: Datenvorverarbeitung Problemanalyse Problemlösung Anwendung der Lösung Aggregation und Selektion

Mehr

General Video Game AI Competition 2016

General Video Game AI Competition 2016 General Video Game AI Competition 2016 BFS, MCTS und GA - Einführung Miriam Moneke, Nils Schröder, Tobias Joppen Christan Wirth, Prof. J. Fürnkranz 27.04.2016 Fachbereich Informatik Knowledge Engineering

Mehr

Teil 2: Dynamische Spiele mit vollständigen Informationen

Teil 2: Dynamische Spiele mit vollständigen Informationen Teil : Dynamische Spiele mit vollständigen Informationen Kapitel 5: Grundsätzliches Literatur: Tadelis Chapter 7 Problem Manche Spiele entwickeln sich über die Zeit Dynamik kann aber nicht in Spielen in

Mehr

Seminar Kompressionsalgorithmen Huffman-Codierung, arithmetische Codierung

Seminar Kompressionsalgorithmen Huffman-Codierung, arithmetische Codierung Huffman-Codierung, arithmetische Codierung Theoretische Informatik RWTH-Aachen 4. April 2012 Übersicht 1 Einführung 2 3 4 5 6 Einführung Datenkompression Disziplin,die Kompressionsalgorithmen entwirft

Mehr

Clustering. Ausarbeitung von Michael Speckner. Proseminar Data Mining

Clustering. Ausarbeitung von Michael Speckner. Proseminar Data Mining Clustering Ausarbeitung von Michael Speckner Proseminar Data Mining Einleitung Das Clustering wird verwendet, wenn man keine Klassen vorhersagen kann, aber die Instanzen in natürliche Gruppen einteilen

Mehr

Kapitel 5: Einfaktorielle Varianzanalyse

Kapitel 5: Einfaktorielle Varianzanalyse Kapitel 5: Einfaktorielle Varianzanalyse Durchführung einer einfaktoriellen Varianzanalyse ohne Messwiederholung 1 Berechnung der Effektstärke und der beobachteten Teststärke einer einfaktoriellen Varianzanalyse

Mehr

IR Seminar SoSe 2012 Martin Leinberger

IR Seminar SoSe 2012 Martin Leinberger IR Seminar SoSe 2012 Martin Leinberger Suchmaschinen stellen Ergebnisse häppchenweise dar Google: 10 Ergebnisse auf der ersten Seite Mehr Ergebnisse gibt es nur auf Nachfrage Nutzer geht selten auf zweite

Mehr

Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden:

Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1. Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden: Objektorientierter Software-Entwurf Ergebnisse der funktionalen Zerlegung 3 1 Vergleich der Zerlegungsmethoden Die Zerlegungsmethoden sollen in zwei Dimensionen betrachtet werden: Vergleich nach Ergebnissen

Mehr

Datenbankdesign - Normalisierung

Datenbankdesign - Normalisierung 1 Datenbankdesign - Normalisierung In einer Datenbank sollen Daten einer realen Welt abgebildet werden. Dazu ist es notwendig, die Struktur des zu bearbeitenden Teilausschnittes in einem möglichst getreuen

Mehr

2 Rationale und reelle Zahlen

2 Rationale und reelle Zahlen 2 reelle Es gibt Mathematik mit Grenzwert (Analysis) und Mathematik ohne Grenzwert (z.b Algebra). Grenzwerte existieren sicher nur dann, wenn der Zahlbereich vollständig ist, also keine Lücken aufweist

Mehr

Hackenbusch und Spieltheorie

Hackenbusch und Spieltheorie Hackenbusch und Spieltheorie Was sind Spiele? Definition. Ein Spiel besteht für uns aus zwei Spielern, Positionen oder Stellungen, in welchen sich das Spiel befinden kann (insbesondere eine besondere Startposition)

Mehr

Kann aus einem Pflichtenheft ein Lastenheft abgeleitet werden?

Kann aus einem Pflichtenheft ein Lastenheft abgeleitet werden? Kann aus einem Pflichtenheft ein Lastenheft abgeleitet werden? Nein. Das Pflichtenheft ist eine Weiterentwicklung des Lastenhefts und beschreibt das WIE und WOMIT. Die Anforderungen des Kunden (WAS und

Mehr

2.7 Der Shannon-Fano-Elias Code

2.7 Der Shannon-Fano-Elias Code 2.7 Der Shannon-Fano-Elias Code Die Huffman-Codierung ist ein asymptotisch optimales Verfahren. Wir haben auch gesehen, dass sich die Huffman-Codierung gut berechnen und dann auch gut decodieren lassen.

Mehr

Die Korrelation von Merkmalen

Die Korrelation von Merkmalen Die Korrelation von Merkmalen In der Analse von Datenmaterial ist eines der Hauptziele der Statistik eine Abhängigkeit bzw. einen Zusammenhang zwischen Merkmalen zu erkennen. Die Korrelation ermittelt

Mehr

Benutzerhandbuch EMAS-LogoGenerator

Benutzerhandbuch EMAS-LogoGenerator Benutzerhandbuch EMAS-LogoGenerator Seite1 Inhaltsverzeichnis Einleitung:...3 LogoGenerator installieren:...3 Startseite...4 LogoGenerator (Logo erstellen)...6 Einstellungsmöglichkeiten:...8 Dateiformat:...8

Mehr

PREISE UND PREISLISTEN UNTER ORGAMAX BEARBEITEN

PREISE UND PREISLISTEN UNTER ORGAMAX BEARBEITEN PREISE UND PREISLISTEN UNTER ORGAMAX BEARBEITEN Inhalt 1 Einführung... 1 2 Kundenspezifische Preise für bestimmte Artikel hinterlegen... 1 3 Anlegen einer Preisliste... 5 4 Bearbeitung von Preislisten:

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & Algorithmen Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Rot-schwarz Bäume Eigenschaften Rotationen Einfügen (Löschen) 2 Einführung Binäre Suchbäume Höhe h O(h) für Operationen

Mehr

INTELLIGENTE DATENANALYSE IN MATLAB. Evaluation & Exploitation von Modellen

INTELLIGENTE DATENANALYSE IN MATLAB. Evaluation & Exploitation von Modellen INTELLIGENTE DATENANALYSE IN MATLAB Evaluation & Exploitation von Modellen Überblick Schritte der Datenanalyse: Datenvorverarbeitung Problemanalyse Problemlösung Anwendung der Lösung Aggregation und Selektion

Mehr

Kapitel 10. Maschinelles Lernen Lineare Regression. Welche Gerade? Problemstellung. Th. Jahn. Sommersemester 2017

Kapitel 10. Maschinelles Lernen Lineare Regression. Welche Gerade? Problemstellung. Th. Jahn. Sommersemester 2017 10.1 Sommersemester 2017 Problemstellung Welche Gerade? Gegeben sind folgende Messungen: Masse (kg) 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 Kraft (N) 1.6 2.2 3.2 3.0 4.9 5.7 7.1 7.3 8.1 Annahme: Es gibt eine Funktion

Mehr

Pareto optimale lineare Klassifikation

Pareto optimale lineare Klassifikation Seminar aus Maschinellem Lernen Pareto optimale lineare Klassifikation Vesselina Poulkova Betreuer: Eneldo Loza Mencía Gliederung 1. Einleitung 2. Pareto optimale lineare Klassifizierer 3. Generelle Voraussetzung

Mehr

Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n)

Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n) Beweis: Annahme: T (n) c n, wobei c = c(m) konstant ist. Die Annahme ist ok, falls T (n) ( ( ) n 3 T + T m ) 4 n n 3 c + m 4 n c + n n + C m + cn; dies gilt, falls m 2 n m C m + n 2 (bis auf, ) c m + 3

Mehr

Zyklisch evaluieren 1 (Auszug aus dem Leitfaden zur Selbstevaluation )

Zyklisch evaluieren 1 (Auszug aus dem Leitfaden zur Selbstevaluation ) Zyklisch evaluieren 1 (Auszug aus dem Leitfaden zur Selbstevaluation ) Auf Basis des Qualitätsrahmens für Schulen in Baden-Württemberg lassen sich die unterschiedlichen Bereiche mit dem hier dargestellten

Mehr

Hypothesenbewertungen: Übersicht

Hypothesenbewertungen: Übersicht Hypothesenbewertungen: Übersicht Wie kann man Fehler einer Hypothese abschätzen? Wie kann man einschätzen, ob ein Algorithmus besser ist als ein anderer? Trainingsfehler, wirklicher Fehler Kreuzvalidierung

Mehr

11. Übung Knowledge Discovery

11. Übung Knowledge Discovery Prof. Dr. Gerd Stumme, Robert Jäsche Fachgebiet Wissensverarbeitung. Übung Knowledge Discovery.7.7 Sommersemester 7 Informationsgewinn Im folgenden betrachten wir die Menge von n rainingsobjeten, mit den

Mehr

Lineare Algebra II 5. Übungsblatt

Lineare Algebra II 5. Übungsblatt Lineare Algebra II Übungsblatt Fachbereich Mathematik SS Prof Dr Kollross / Mai Susanne Kürsten Tristan Alex Gruppenübung Aufgabe G (Algebraisch abgeschlossener Körper) Ein Körper heißt algebraisch abgeschlossen,

Mehr