1 1 Nugget Hunter Der Nugget Hunter dient der Datenanalyse mit Hilfe von künstlicher Intelligenz, multivariater Statistik sowie der deskriptiver Statistik (siehe Bild 1). Dabei können die zu untersuchenden Merkmale in Quantitative und Qualitative Größen eingeteilt werden (siehe Bild 5). Der Nugget Hunter bereitet schwer überschaubare Datenmengen auf, um sie betriebswirtschaftlich auswerten zu können. Dabei kann eine Spezialisierung auf den eBusiness- Bereich (z.B. durch ClickstreamAnalyse), wie im Bild 6 dargestellt oder finanzwirtschaftlichen Bereich in der Zeitreihenanalyse (siehe Bild 7) erfolgen.1 2 Projekte anlegen und verwalten Hier werden Aktionen und deren Ergebnisse der Analysen strukturiert abgespeichert. Dabei ist unter Aktionen der Import von Daten, das Verknüpfen von Daten und das Generieren von Modellen zu verstehen. Vor der eigentlichen Analyse der Datenbestände, muss eine Projektdatei geöffnet werden (siehe Bild 8).2 2.1 Datenimport/Selection Bei diesem Schritt werden Datensätze ausgewählt oder kreiert. Ziel des Prozesses ist die Datensammlung und Datenauswahl. Dies stellt die Datenintegration aus unterschiedlichen Quellen, Datenbanksystemen oder Anwendungen dar. Zu beachten sind jedoch Kompatibilitätsprobleme zwischen den einzelnen verschiedenen Datenbanken.3 1 Vgl. NH Consult: Nugget Hunter® (Desktop Edition), September 2000. II-1 ff. Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-1 3 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, 2000, S.9 f. 2 2 Um externe Daten importieren zu können, müssen sie vorher mit geeigneten Programmen aufbereitet werden. Die Daten können hierfür in Access oder Excel erfasst werden (siehe Bild 9).1 2.2 Preprocessing/Vorbereitung von Daten In diesem Schritt werden wichtige Daten herausgefiltert, modelliert oder berechnet. Dabei hängt das Resultat des Data Mining Prozesses maßgeblich von einer geeigneten Aufbereitung der Daten ab. Die Daten werden so aufbereitet, dass sie für automatische Data Mining Methoden genutzt werden. In dieser zeitintensiven und aufwendigen Vorbereitungsphase werden fehlerhaften Daten, die Behandlung fehlender Werte, die Erzeugung neuer Merkmale und Transformation der Daten und verwertbares Format vorgenommen.2 2.2.1 Externe Daten Externe Datenbestände stammen aus externen Datenquellen und werden als Datenquelle importiert. Eine Möglichkeit stellt der Import über eine Tabelle in der aktuell geöffneten Projektdatei dar. Der Datenimport erfolgt über den Menüeintrag Externe DatenNeu. Dies kann sowohl über eine Datenbank oder über die Zwischenablage erfolgen.3 2.2.1.1 Datenbank einbinden Der Nugget Hunter® bietet für den Import von Datenquellen (Bild 10) eine Schnittstelle über die ODBC- Treiber an. Hier können sowohl Datenbanktabellen als auch SQL- Abfragen importiert werden. Der Datenimportassistent nutzt hierfür die BDE (Bild 11).4 1 Vgl. NH Consult: Hunter Nugget®, a.a.O., III-4 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, 2000, S.10 3 Vgl. NH Consult: Hunter Nugget®, a.a.O., III-5 4 Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-3 2 3 Folgende Vorgehensweise wird von NH Consult empfohlen: 1. Die Spezifikation der ODBC Datenquelle (Bild 12 ). 2. Eine Entscheidung, ob SQL Abfrage (Bild 13) über mehrere Felder importiert werden soll oder über eine gesamte Tabelle (Bild 14), hier ist jeweils nur eine Tabelle möglich. Wenn mehrere Tabellen einbezogen werden sollen, dann muss eine neue Abfrage erstellt werden, z.B. über Access, die dann importiert werden könnte. 3. Die Eingabe des SQL Statements Abfrage Textes. 4. Der Aufbau der Verbindung zur Datenquelle, um durchführen“. Bei syntaktischen Fehlern, wird eine eine „Abfrage entsprechende Fehlermeldung angezeigt. 5. Die Festlegung der Felder, die in die Datenbankabfrage aufgenommen werden sollen. Der Assistent kann nur numerische (integer) Felder importieren. Es können jedoch keine Gruppierungen vorgenommen werden. 6. Die Beschriftung der Abfrage (Datensätze). 7. Der Datenassistent kopiert alle notwendigen Datenquellen in die Projektdatei in den „Externen Daten“ (Bild 13).1 2.2.1.2 Zwischenablage Hier erfolgt der Datenimport über die Zwischenablage. Dieser Import kann nur für die Zellenformatierung Integer/Datum (Zahl/Gleitkommawerte) erfolgen. Zeichen (Strings) können nicht über die Zwischenablage eingefügt werden (Bild 15).2 Wenn der Datenimport erfolgreich war, werden die Daten in einer Tabelle angezeigt. Und bei komplexen Daten zu Packages zusammengefasst. 1 2 Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-4 Vgl. NH Consult: Hunter Nugget®, a.a.O., III-1 4 2.2.2 Interne Daten Stellen mögliche Datenbanktabellen im Nugget Hunter® dar. 1. Von Modellen generierte Daten, wie z.B. Klassenzugehörigkeiten / Klassenmittelwerte oder 2. spezielle Sichten (Filter) auf externe Daten, die von Modellen für Trainingsund Recallzwecke genutzt werden. Bei Sichten handelt es sich um Filter. Es können einzelne externe Datentabellen ausgeblendet werden. Dadurch wird eine Untersuchung einer externen Datenquelle hinsichtlich verschiedener Gesichtspunkte möglich. Sichten sind jedoch immer an Packages gekoppelt. 1 2.3 Transformation Für das Ausgabeziel werden relevante Merkmale (sachlich, örtlich und /oder zeitlich) herausgefiltert, die in einer Datenbank abgelegt werden. Dadurch wird die Größe der Datenmenge automatisch oder manuell verkleinert. Dies geschieht durch die Beschränkung auf die Auswahl der Tupel (Anzahl, Art der Merkmale und/oder Wert). Ein möglicher Ansatz ist die Generierung einer zufälligen Stichprobe, die mit verschiedenen Tests ausgewertet werden kann. Über den Stichprobenfehler kann der Umfang der (Stichprobe) ermittelt werden. Die Standardabweichung stellt zudem ein Maß für die Streuung der untersuchten Stichprobe dar. Und über die Regressionsanalyse kann das Bestimmtheitsmaß (Stärke des Zusammenhangs) errechnet werden. Bei der Erzeugung von Modellen werden Daten generiert die Modelle im Anwendungsprozess Klassenbildungen erzeugen. Diese Test können nun bei der Bestimmung der Güte der Klassenbildung herangezogen werden.2 Das Package stellt im Nugget Hunter® eine Zusammenstellung von verschiedenen Datentabellen, die in einer Beziehung zueinander stehen. Diese Beziehung besteht 1 2 Vgl. NH Consult: Hunter Nugget®, a.a.O., III-1f. Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, 2000, S.11 f. 5 einerseits darin, dass die Methoden (Modelle) Ihre Ausgaben in das Package zurückschreiben.1 Andererseits sind die Inputdaten ebenfalls an das Package gebunden. Grund hierfür ist, dass die Modelle Sichten (Filter) als Eingabedaten verlangen.2 Zum Erstellen eines neuen Packages, (siehe Bild 16), kann man im Bereich Packages mit der rechten Maustaste -Kontextmenü- , den Menüeintrag PackagesNeu oder im Packagemanager den Menüeintrag Pool wählen. Der Packagemanager (siehe Bild 16) verwaltet Objektdaten, Objekt- und Klassendaten und Zeitreihendaten. Für die Klassenbildung sind Objektdaten erforderlich, für die die Klassen automatisch gefunden werden. Die Objekt- und Klassendaten stellen ein Modell zur Klassifizierung dar. Hierfür müssen zu den Objektdaten zusätzlich Klassenzuordnungen erzeugt werden. Für Zeitreihendaten müssen entsprechende Zeitreihendaten erzeugt werden.3 2.4 Methodenklassen Dieser Schritt ist der eigentliche Kernschritt des KDD Prozesses und wird als Data Mining bezeichnet. Hier werden spezielle Methoden angewandt, um Datenmuster zu finden. Im Ergebnis werden komplexe Musterbeschreibungen gewonnen. Mögliche Einteilungsmuster sind: Aufteilung nach Datenbanktypen: 1 - Relationale Datenbanktypen - Transaktions-Datenbanken - objektorientierte Datenbanken - deduktive Datenbanken - räumliche Datenbanken (spatial) - temporäre Datenbanken - Multimedia-Datenbanken - heterogene Datenbanken Vgl. NH Consult: Hunter Nugget®, a.a.O., III-4 Vgl. NH Consult: Hunter Nugget®, a.a.O., III-5 3 Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-8 2 6 - aktive Datenbanken - historische Datenbanken (legacy) - Datenbanken im Internet nach gesuchten Informationstyp: - Assoziationsregeln - Charakterisierungsregeln - Klassifikationsregelen - Unterscheidungsregeln - Gruppierung (clustering) nach angewandten Steuerungsmethoden: - unabhängig Data Miner - Datengesteuerte Data Miner - Anfragegesteuerte Data Miner - Interaktive Data Miner nach theoretischen Ansätzen: Der - Generaliserendes Data Mining - Musterbezogenes Data Mining - Anfragegesteuertes Data Mining - Statistik-basiertes Data Mining - KI-basiertes Data Mining1 Nugget Hunter unterstützt unter anderem die Klassenbildung, Klassifizierung und Neuronale Netze. 1 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, 2000, S.12 f. Methodenklassen 7 2.4.1 Klassenbildung Sie stellt die Einteilung von Mustern/Objekten in Klassen mit Hilfe von Ähnlichkeits- und Distanzmaßen dar. Vor der eigentlichen Analyse ist nur die Anzahl der Klassen oder Segmente bekannt, die im Vorfeld festgelegt werden muss. Die Einteilung in die einzelnen Segmente erfolgt dann während der eigentlichen Analyse, z.B. bei k-means, selbstorganisierende Karten (siehe Bild 17). Alle Ergebnisse können in einem Marktforschungsreport zusammengefasst werden. Es kann auf Wunsch auch eine optimale Klassenzahl bestimmt werden. 1 Modell generieren Um ein Modell zu generieren, wird im Menü BearbeitenKlassenbildung und dann ModellNeu gewählt. Daraufhin kann das gewünschte Klassenbildungsverfahren gewählt werden (siehe Bild 17). Die Auswahl kann auch über das Kontextmenü erfolgen. Es stehen dabei k-means oder selbstorganisierende Karten zur Verfügung. Der Nugget Hunter® bedient sich dabei eines Datenassistenten, der jedoch immer abhängig von der Analysemethode ist. Daten auswählen Zuerst muss die Trainingsdatenmenge ausgewählt werden (Bild 18). Hierfür wird ein Package und ein Datenpool selektiert.2 Verfahren konfigurieren Der Nugget Hunter® bietet in der Klassifizierung zwei unterschiedliche Verfahren an: K-Means (Klassenzuordnungsverfahren) oder SOM (selbstorganisierte Karte). 2.4.1.1 K-Means (Klassenzuordnung) Stellt ein Verfahren zur iterativen Partitionierung dar. Es werden Eingabedaten und deren Abstandsfunktionen Informationen 1 2 werden zwischen Cluster den gebildet. Vgl. NH Consult: Hunter Nugget®, a.a.O., II-7 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-4 f. Daten Im eingegeben. Lernprozess Aus diesen werden die 8 Abstandfunktionen neu berechnet, indem der näheste Nachbar einem entsprechenden Cluster zugeordnet wird. Aus diesen Clustern werden die Durchschnitte berechnet, dies stellt den means-Teil dar, und zu neuen Cluster geordnet. Dieser Vorgang erfolgt solange bis keine Änderungen mehr erfolgen.1 Bei diesem k-means-Algorithmus kann die Anzahl der Gruppen vorgegeben werden sowie eine ungefähre Angabe der Mittelwerte der Objektdaten, die in Gruppen eingeteilt werden sollen. Erfolgt diese Angabe nicht, errechnet der Algorithmus selbstständig Anfangswerte oder Zufallsgruppierungen der Mittelwerte.2 Mit Marktanalyse Bei Klassenbildungsprozessen ist im Vorfeld die Kenntnis der Anzahl der Klassen wichtig. Hierfür bietet der Nugget Hunter® eine Entscheidungshilfe in Form einer Marktanalyse. Hier werden verschiedene Modelle in verschiedenen Klassen trainiert, um das Modell zu finden, welches die Daten am besten repräsentiert. Der Nugget Hunter® verwendet hierfür das Elbow-Kriterium3 (siehe Bild 19). Hierfür muss jedoch ein neues Modell angelegt werden (siehe Daten auswählen). Zuerst muss die Anzahl der Cluster, in dem der Lösungsbereich liegen sollen, angegeben werden. Empfohlen wird mit einer minimalen Klassenzahl von 2 zu beginnen. Die maximale Anzahl sollte bei 3 und 7 liegen. Nach Abschluss der Marktanalyse (siehe Bild 20) wird der Marktforschungsbericht (Bild 21) erstellt.4 Dieser beinhaltet Tabellen mit: 1 - den Netzgüten der berechneten Modellen, sowie deren grafische Darstellung, - die Merkmalsmittelwerte und Signifikanzniveaus für das Modell und - die absoluten Häufigkeiten für die Segmente des besten Modells. Vgl. NN: k-means clustering, Internet Recherche vom 12.03.2002 http://www-agrw.informatik.unikl.de/damit/k/kmeans.html 2 Vgl. NN: k-means-verfahren, Internet Recherche vom 12.03.2002 http://www.imse.med.tumuenchen.de/mi/theormed/ihs9899ws/kreuzpoi/node17.html 3 Vgl. Zuber, Markus: Vortrag im Rahmen des speziellen Seminars zum Thema „Multivariate Analyseverfahren und deren Anwendung am Beispiel des 10 th GVU s WWW User Surveys,“ , a.a.O., o.S. 4 Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-11 ff. 9 ohne Marktanalyse: Zuerst muss die Anzahl der Cluster konfiguriert werden. Die Cluster beschreiben die Anzahl der Neuronen, die für den Klassenbildungsalgorithmus zu Grunde gelegt werden. Der Toleranzbereich liegt hier zwischen 2 und 100, angemessene Werte liegen zischen 5 und 30 (siehe Bild 22). 2.4.2.1 SOM (selbstorganisierende Karte)1: Bei der selbstorganisierenden Karte handelt es sich um einschichtige neuronale Netze, die eine Schicht aktive Neuronen besitzt. Diese Karten werden aber mit unüberwachten2 (das gewünschte Ausgabemuster ist nicht bekannt) Karten trainiert. Die Neuronen3 werden mit Gewichtsvektoren versehen, die so im n-dimensionalen Raum verteilt werden, das sie ihn möglichst gut beschreiben. Es existiert daher eine lokale Nachbarschaftsbeziehung zwischen den Neuronen, die mit einem mdimensionalen Gitter dargestellt werden. Durch die jeweilige Definition der Nachbarschaftsbeziehungen entsteht ein elastisches Gitternetz, das durch die einzelnen Gewichtungen der Neuronen bestimmt wird. Beim Lernvorgang werden Änderungen an einer Stelle vorgenommen, die wiederum die umliegenden Vektoren beeinflusst. Je weiter ein Vektor von der Stelle entfernt ist, an der die Änderung vorgenommen wurde, desto geringer ist der Einfluss der Änderung auf das entsprechende Neuron. Das eigentliche Lernverfahren gibt keine Ausgabemuster oder Klassenzugehörigkeiten, sondern nur Eingabevektoren. Es können Cluster in den Eingabedaten erkannt werden und neue unbekannte Cluster zugeordnet werden.4 Bei der SOM können diverse Konfigurationen vorgenommen werden (siehe Bild 23). 1 Vgl. Ritter, Helge / Martinez, Thomas/ Schulten, Klaus: Neuronale Netze, Einführung in die Neuroinformatik selbstorganisierender Netzwerke, 2. Auflage, Bonn, 1994, S. 61 2 Vgl. Corsten, Hans / Reiß, Michael / Steinle, Claus /Zelewski, Stephan: Neuronale Netze zur Prozess-Steuerung in der Zementindustrie, Wiesbaden, 1997, S. 10 3 Vgl. Füser, Karsten: Neuronale Netze in der Finanzwirtschaft, Wiesbaden 1995, S. 24 4 Vgl. Zell, Andreas: Simulation Neuronaler Netze, 1996, Bonn, S. 179 10 Es sind die Anzahl der Cluster und die Proximitätsfunktion festzulegen. „Clusteranalyse: fordert kein spezielles Skalenniveau der Merkmale. Proximitätsmaße: ermöglichen die Quantifizierung der Ähnlichkeit/Distanz der Objekte durch eine stat. Maßzahl. Ähnlichkeitsmaße: messen die Ähnlichkeit zwischen zwei Objekten: Je größer der Wert des Maßes, desto ähnlicher sind sich zwei Objekte. Distanzmaße: messen die Unähnlichkeit zwischen zwei Objekten: Je größer die Distanz, desto unähnlicher sind sich zwei Objekte.“1 Cluster: Die Anzahl der Neuronen, die für den Klassenbildungsalgorithmus zu Grunde gelegt werden. Diese wird für die Berechnung der Proximitäten zwischen den Objekten benötigt. Die Auswahl des Analyseziels ist abhängig vom jeweiligen Skalenniveau der Eingabedaten. Dabei werden unterschiedliche Ähnlichkeits- und Distanzmaße angeboten. Die Euklidische Distanz: als Lagemaß zur Messung der Distanz (Niveauunterschied). Cosinus: stellt die Ähnlichkeiten werden zwischen Objektvektoren fest. Pearson- Korrelationskoeffzient: stellt eine Mischform aus Distanz und Ähnlichkeitsmaßen dar. 2 1 Zuber, Markus: Vortrag im Rahmen des speziellen Seminars zum Thema „Multivariate Analyseverfahren und deren Anwendung am Beispiel des 10 th GVU s WWW User Surveys,“ Internet Recherche vom 12.03.2001 http://www.ecommerce.wiwi.unifrankfurt.de/lehre/99ws/seminarws9900/Seminararbeiten/Zuber_Cluster_praes.pdf+Elbow+Kriteriu m&hl=de&ie=ISO-8859-1, o.S. 2 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-6 11 Bei der Wahl der Proximitätsfunktion (siehe Bild 24) kommt es immer auf die gewünschte Ausgabe an. Dabei muss im Vorfeld geklärt werden, welche Zusammenhänge analysiert werden sollen. Dies bedeutet, dass im Vorfeld geklärt werden muss, nach welcher Aufgabenstellung die Analyse erfolgen soll. Das heißt, dass eine Klassenbildung entweder nach Niveauunterschieden oder nach dem Profilverlauf der einzelnen Merkmalswerte erfolgen könnte. Dies kann in der späteren Ausgabe zu großen Unterschieden in der Wissensgewinnung führen, da die Klassenbildung sich unterscheidet. Um die Niveauunterschiede auszugleichen, werden die Vektoren auf einen Einheitsvektor normiert und erst dann eine Klassenbildung vorgenommen. In diesem Beispiel könnten nach den Niveauunterschieden Merkmal 1 und 2 zusammengefasst werden, Merkmal 3 stellt eine eigene Klasse dar. Eine Normierung um den Einheitsvektor würde folgende Klassenbildung zu Folge haben, Merkmal 1 und 3 würden eine Klasse bilden ohne Merkmal 2 (siehe Bild 25). Das Programm erlaubt hier zusätzlich eine automatische Feinabstimmung oder eine manuelle Einstellung der Parameter (siehe Bild 26). Bei der Deaktivierung der automatischen Feinabstimmung können folgende Parameter manuell eingestellt werden: Lernrate: Die Lernrate gibt an, wie stark die Gewichte zwischen den Neuronen verteilt werden, dabei handelt es sich um eine relative Größe. Sie gibt an um wie viel Prozent die Verbindungsgewichte sich ändern. Die Werte liegen zwischen 0 - für keine Änderung der Gewichte - und 1 - für Verbindungsgewichte werden stark verändert. Start-Lernrate: stellt die Lernrate zu Beginn des Trainings dar. Minimal-Lernrate: gibt an, welche Lernrate nicht unterschritten werden darf. Wird beim Lernvorgang eine kleinere Lernrate erzielt, wird diese genutzt. 12 Lernratenänderung: gibt an wie stark die Lernrate nach jeder Lernepoche reduziert wird. Positive Werte stehen für eine Abnahme der Lernrate, negative für eine Zunahme. Anzahl der Lernepochen: ist ein Abschnitt des Lernvorgangs um genau einen Durchlauf einer Trainingsmenge, empfohlen werden 5 bis 30 Lernepochen. Änderungsfunktionen Lernrate: hier kann zusätzlich festgelegt werden, ob die entsprechende kontinuierlich, monoton oder exponentiell um den Änderungsbetrag verändert werden soll. Lernradius: Der Lernradius gibt an, wie nah ein Neuron an dem Gewinner liegen muss, dadurch werden die entsprechende Gewichte angepasst. Kennzeichnend für die SOM ist, dass nicht nur die Gewichte des Gewinnerneurons, sondern auch die Gewichte der in „direkter Nachbarschaft“ liegenden Neuronen geändert werden. Start-Lernradius: gilt für die erste Lernepoche. Minimal-Lernradius: hier wird die jede Lernepoche angepasst, dass bei der letzten Lernepoche immer nur der „Minimal-Lernradius“ zur Anwendung kommen soll. Nachbarschaftsfunktion: hier werden die Nachbarschaftsfunktionen (Proximitäten) festgelegt. Netzgüte: stellt eine Kennziffer für die Homogenität in der Klasse und für die Unterscheidung zwischen den Klassen dar. Dafür werden die einzelnen Distanzen in und zwischen den Klassen aufsummiert und anschließend dividiert.1 1 Vgl. NH Consult: Hunter Nugget®, a.a.O., 13 2.4.2.2 Klassenbildungsverfahren auswerten SOM Die Ergebnisse der Analysen befinden sich im Packagemanager. Weiterhin können sie proximativen Klassen zugeordnet werden (Klassenzuordnung). Hier werden auf Basis vorher trainierter Modelle, Klassen zugeordnet. Die Objekte werden mit Hilfe Klassenzuordnungsverfahren eingeteilt. Diese Zuordnung kann später im Packagemanager über das Tabellensymbol eingesehen werden (siehe Bild 27).1 Weiterhin ist dann eine grafische Auswertung der Methoden möglich. Dies kann durch Doppelklick auf die entsprechende Ausgabe oder über das Icon Diagramm erfolgen. Über die Registerkarten Kreisdiagramm, Karte und Ausreißeranalyse können die jeweiligen Ergebnisse grafisch betrachtet werden. Die Eigenschaften der Klassen, die Merkmalsmittelwerte, können durch Klick auf die jeweilige Klasse angezeigt werden. Die jeweiligen Ausprägungen sind farblich für jede Klasse dargestellt. Es werden für jede Klasse die jeweiligen Merkmalsmittelwerte angezeigt, die für jede Klasse bestimmt wurden (siehe Bild 28). K-Means Auch bei den selbstorganisierenden Karten kann die Klassenzugehörigkeit über das Tabellensymbol aufgerufen werden. Die grafische Anzeige ist ebenfalls kongruent zur der in SOM. Hier können ebenfalls durch Doppelklick auf die einzelnen Klassen die jeweiligen Merkmalsmittelwerte angezeigt werden (siehe Bild 29). 2 Es können jeweils Unterschiede zwischen beiden Modellen in der Klassenzugehörigkeit auftreten, auch unter der Vorraussetzung, dass die gleichen Inputdaten verwendet werden (siehe Bild 30). Interne/Externe Anwendung generierter Modelle Über den sogenannten „Recall“ können neue Daten zugeordnet werden. Hier ist jedoch zu beachten das die Tabellenfelder (Spaltenköpfe) identisch zum vorherigen 1 2 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-10. Vgl. NH Consult: Hunter Nugget®, a.a.O., V-11 14 Modell sind (siehe Bild 31). Dies bedeutet, dass neue externe Daten importiert und auf gegebenenfalls vorhandene interne Daten zurückgegriffen werden kann. Das kann unter Verwendung des schon generierten Modells geschehen, über den Menüeintrag ModellAnwenden. Intern bedeutet, generell mit Daten zu arbeiten, die bereits im Package vorhanden sind. Extern Anwenden bietet die Möglichkeit, Datenanalysen zu exportieren (siehe Bild 32).1 2.4.2 Klassifizierung Datenklassifizierungsregeln haben die Aufgabe, gemeinsame Eigenschaften von Objekten einer Datenbank herauszufinden oder diese in bereits vorhandene Klassen mit Hilfe eines Klassifikationsmodells einzuordnen.2 Es gibt bereits eine Reihe von Methoden die auf maschinelles Lernen beruhen. Eine Klassifikationsregel versucht einen Wert einer abhängigen Zielvariable (die Klasse) aus den Werten von bekannten Variablen vorauszusagen. Meist wird versucht eine Menge von Regeln zu finden, die für alle vorkommenden Klassen Bedingungen angeben und einen möglichst großen Anteil der möglichen Objekte abdeckt. Die Regeln sollten dabei möglichst einfach gestaltet werden.3 Mit Hilfe der Klassifizierung werden Modelle entwickelt, die Objekte in Klassen einteilen.4 Analog zu Modellen zur Klassenbildung ist für die Klassifizierung zunächst ein Package auszuwählen. Danach ist jedoch zusätzlich zu den Objektdaten noch Klassenzugehörigkeiten der auszuwählen. Datenpool Dies mit setzt den jedoch entsprechenden bereits bekannte Klassenzugehörigkeiten der zu analysierenden Daten voraus. Aus diesen wird dann durch einen Klassifizierungsalgorithmus ein Modell entwickelt. Mit diesem Algorithmus können neue Daten (z.B. Kunden) zugeordnet werden. Mögliche Verfahren, die im Nugget Hunter® Anwendung finden, stellen Backpropagation, CART oder CHAID dar. Diese gewonnenen Informationen können dann zur Sicherung von Wettbewerbsvorteilen Entscheidungen genutzt werden. 1 oder unternehmensstrategischen 5 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-9 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, a.a.O., S.12 f. 3 Vgl. Gruber J.: Data Mining – Knowleegde Discovery in Database, a.a.O.; S. 14 f. 4 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-11 f. 5 Vgl. NH Consult: Hunter Nugget®, a.a.O., II-7 2 15 Es gibt im Data Mining drei wichtige Ansätze: Lernen vom Entscheidungsbaum1 Sie stellt eine Methode zur Bearbeitung von Entscheidungsproblemen dar. Hier werden mit Hilfe eines Baumverfahrens, Versuche zur Klassifizierung eines Objekts unternommen (siehe Bild 33). 2 Regellernen mittels Covering In diesem Verfahren wird versucht eine einzige Regel zu finden, die möglichst viele Objekte einer Klasse abdeckt. Diese Objekte werden entfernt, und aus den restlichen Objekte werden neue Regeln gelernt, bis alle Objekte durch eine Regel abgedeckt werden. 3 Attribut-orientierte Induktion Hier werden Regeln generiert, um identische Datensätze einer Datenbank zu finden. Diese werden verschmolzen, indem die Merkmalswerte generalisiert werden. Es werden jedoch als Informationen, Abstraktionshierarchien für die vorkommenden Werte benötigt. 4 Dabei können Klassifizierungen mit Hilfe Neuronaler Netze vorgenommen werden. Dieser Ansatz entspräche dann dem Regellernen mittels Covering. Ein Neuronales Netz zeichnet dabei aus: „Ein neuronales Netz kann als Abbildungsvorschrift verstanden werden, das eine Menge von Eingaben, deren spezifische Eigenschaften durch sogenannte 1 Vgl. Richter, Michael M.: Prinzipien der künstlichen Intelligenz, Stuttgart, 1989, S. 325 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, a.a.O., S. 14 3 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, a.a.O., S. 14 4 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, a.a.O., S. 14 2 16 Eingabevektoren kodiert werden, in eine Menge von Ausgaben, die ebenfalls durch Vektoren beschrieben werden.“ 1 Backprogation (Fehlerrückführung)2 Hier wird mit Hilfe neuronaler Netze die biologische Informationsverarbeitung nachgeahmt. Die Intelligenz entsteht nicht durch Eingabe oder Verarbeitung von Regeln, sondern durch Präsentation von Beispielen, mit dessen Hilfe das neuronale Netz die Lösung des Problems anpasst. Hierfür ist ein Ursache- Wirkungszusammenhang maßgebend. Dieser Zusammenhang ist am Beispiel einer Kreditwürdigkeitsprüfung dargestellt (siehe Bild 34). Die Untere Ebene stellt den „Input Layer“ mit den Eingangsvariablen dar3. Die mittlere Ebene wird als „Hidden Layer“ bezeichnet, die eine variable Anzahl von Knoten aufweist. Diese Ebene besitzt die größte Funktionalität, da diese Ebene lernt. Die oberste Ebene gibt die Ausgabewerte an „Output Layer“. Jeder Knoten der mittleren Ebene ist dabei mit jedem Eingabeknoten verbunden. Daher ist in der Lernprozess von allen Eingabedaten abhängig. In jedem Knoten der Ebene wird dann eine gewichtete Summe errechnet, welche die Interaktion des Netzwerkes darstellt. Das Netzwerk lernt dabei den Fehler zu reduzieren, indem es von bekannten Bespielen lernt und die Gewichtungen entsprechend ändert. Zur Anpassung des Netzwerkes wird die Datenmenge, die den Ursache- Wirkungszusammenhang beschreibt, in eine Trainings- und eine Testmenge eingeteilt. Wenn das neuronale Netz trainiert wurde, wird es anhand einer Testmenge bewertet. Das Wissen, das aus der Trainingsmenge gewonnen wurde, überträgt sich dann auf die Allgemeinheit. Das heißt es findet ein Generalisierungsprozess statt. Das Netz wird solange trainiert bis es iterativ wird. Ist die Anzahl der Lernschritte zu groß, ist die Generalisierungsfähigkeit zu gering. Das Ergebnis des neuronalen Netzes stellt sich als undurchsichtige black box dar.4 Im Nugget Hunter® ist eine Klassifizierung mit Hilfe von Neuronalen Netzen folgendermaßen möglich. 1 Scherer, Andreas: Neuronale Netze, Grundlagen und Anwendungen; Wiesbaden, 1997, S. 3 f. Vgl: Stanley, Jeanette / Bak, Evan: Neuronale Netze, Computersimulation biologischer Intelligenz, München, 1991, S. 103 3 Vgl. Brause, Rüdiger.: Neuronale Netze, Stuttgart, 1995, S.42 4 Vgl. Gruber J.: Data Mining-Knowledge Discovery in Database, a.a.O., S. 15 f. 2 17 Modell generieren Hier wird wie im Kapitel Daten auswählen zuerst ein Package erstellt. Danach wird das relevante Package ausgewählt. Auswahl der Trainingsdaten Nachdem die Trainingsmenge ausgewählt wurde, werden der Input (unabhängige Variablen) gewählt und der Output (abhängig Variablen) generiert. Netzstruktur konfigurieren Hier wird die Netzstruktur festgelegt. Im Fall des Backpropagation wird zuerst die Anzahl der verdeckten Schichten und der darin enthaltenen Neuronen eingestellt (siehe Bild 35). Für die Einstellungen der Neuronen wird folgende Formel empfohlen: h=n/(5*(i+o)) n: Anzahl der Trainingsmuster i: Anzahl der Eingabeneuronen o: Anzahl der Ausgabeneuronen Einstellen der Parameter Der Nugget Hunter® erlaubt die Parameter manuell einzustellen. Für die meisten Anwendungsfälle ist es jedoch sinnvoll, die voreingestellten Werte zu übernehmen. Es ist in jedem Fall immer ein Abbruchkriterium anzugeben, die Anzahl der Lernzyklen oder der relative Fehler.1 1 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-14 f. 18 Training des Netzes Wenn der Algorithmus ausgeführt wird, kann der Lernfortschritt, die Entwicklung des relativen Fehlers und die Anzahl der Zyklen beobachtet werden. Im Feld Zyklen wird eine Balkengrafik angezeigt. Es wird die Anzahl der durchlaufenden Zyklen ,jedoch ohne eine Verbesserung des Modells, anzeigt. Erst mit Erreichung eines Balkens in der Grafik, ist eine Verbesserung des Modells erreicht (siehe Bild 36). 1 Modellassistent Falls keine Abbruchbedingung angegeben ist, wird nach voreingestellten 2.500 Zyklen der Lernvorgang abgebrochen. Andernfalls kann das Verfahren bis zu 1.000.000 Zyklen durchlaufen.2 Das Verfahren kann jedoch auch im Vorfeld abgebrochen werden. Negativ ist die lange Berechnungszeit des Modells. Das neue Modell steht dann zu Verfügung und die Trainings- und Validierungsdaten wurden erzielt. Für diese werden jeweils Güte und Trefferquote ausgewiesen. Auf Basis dieses Modells können dann neue Objekte diesen Klassen zugeordnet werden. Über das Kontextmenü Informationen können zusätzliche Angaben zu dem Modell eingesehen werden ( siehe Bild 37).3 Klassifizierungsmodell anwenden Über das Kontextmenü Anwendenintern kann das Modell genutzt werden (Bild 38).4 1 Vgl. NH Consult: Hunter Nugget®, Vgl. NH Consult: Hunter Nugget®, 3 Vgl. NH Consult: Hunter Nugget®, 4 Vgl. NH Consult: Hunter Nugget®, 2 a.a.O., V-12 f. a.a.O., IV-14 a.a.O., V-15 a.a.O., V-16 f. 19 Klassifizierungsmodell auswerten Das Ergebnis des Klassifizierungsprozesses kann im Packagemanager eingesehen werden. Die grafische Beschreibung ist ähnlich wie im Kapitel Klassenbildungsverfahren auswerten beschrieben.1 2.4.4 Zeitreihenanalyse Es wird versucht mit Hilfe von elementar-deterministischen Systemen eine exakte Vorhersage zu treffen. Es liegen sonst nur unscharfe Beschreibung der Gegenwartsdaten auf die Zukunft vor. Diese Methoden werden auch als Prognosen oder Trend bezeichnet.2 Diese Analysen können sowohl mit Klassifizierung (Trend) als auch mit Funktionsapproximation (Punktprognose) durchgeführt werden. Für die Zeitreihenanalyse wurden im Nugget Hunter® diese Methoden spezifiziert.3 Zuerst muss eine externe Datenquelle ausgewählt werden. Diese Merkmale müssen einen genauen Zeitpunkt (Datum, Uhrzeit) spezifizieren.4 Durch die Anwendung eines Zeitreihenmodells können auf Basis der aktuellen Zeitreihen, Prognosen5 erstellt werden. Hierfür muss nur das entsprechende Package und der Zeitreihenpool ausgewählt werden, die als Eingabeinformationen dienen. Abschließend wird der Bereich, in dem sich die Prognosedaten bewegen, angegeben.6 1 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-18 Vgl. Kinnebrock, Werner: Neuronale Netze, Grundlagen, Anwendungen, Beispiele; 2. Auflage, Oldenburg, S. 108 3 Vgl. NH Consult: Hunter Nugget®, a.a.O., II-7 4 Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-9 f. 5 Vgl. Kratzer, Peter Klaus: Neuronale Netze, Grundlagen und Anwendungen, Wien, 1990,S. 175 6 Vgl. NH Consult: Hunter Nugget®, a.a.O., IV-15 2 20 2.4.5 Korrelationsanalyse Ziel der Korrelationsanalyse ist die Berechnung von Korrelationskoeffizienten r.1 Hier wird der Zusammenhang zwischen zwei Objekten berechnet. Es können Aussagen über funktionale (speziell lineare) Korrelationen getroffen werden. Dies kann dann zur Klassifikation oder Klassenbildung herangezogen werden.2 2.4.6 Deskriptive Statistik Durch die Anwendung von Häufigkeiten, Varianzen, Mittelwerten und Kreuztabellen können statistische Analysen durchgeführt.3 Die Häufigkeiten finden sich dann in Kreuztabellen wieder, die eine Auswertung je Klasse zu lassen. Es werden die Häufigkeiten der Ausprägungen zweier Merkmale in einer Tabelle dargestellt. Diese Tabellen sind auch unter der Bezeichnung Kontingenztabellen bekannt.4 2.5 Interpretation In diesem Schritt wird untersucht, ob die Muster im Sinne der jeweiligen Aufgabenstellung interessant sind, und die statistische Signifikanz berechnet. Oftmals wird zur Unterstützung eine Visualisierung herangezogen. Wurden die entsprechenden Muster nicht gefunden, müssen die Eingabedaten angepasst werden. Weiterhin ist zu überprüfen, ob das gefundene Wissen5 auch entsprechend neuwertigen Charakter besitzt, es muss gegebenenfalls mit bestehenden Wissensbasen verglichen werden. Dabei können bereits bekannte oder neu entdeckte Zusammenhänge herausgearbeitet werden. Es empfiehlt sich jedoch immer Redundanz frei im Verfahren zu arbeiten.1 1 Vgl. Schöneburg, Eberhard / Hansen, Nikolaus / Gawelczyk : Neuronale Netzwerke, München 1990, S. 112 f. 2 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-15 ff. 3 Vgl. Rojas, Raul: Theorie der neuronalen Netze, eine systematische Einführung, Berlin, 1993, S. 321 4 Vgl. NH Consult: Hunter Nugget®, a.a.O., V-27 ff. 5 Vgl. Görz, Günther, Einführung in die künstliche Intelligenz, Bonn, 1993, S. 717 21II Zusammenfassung .........................................................................................................I 1 Nugget Hunter ...........................................................................................................1 2 Projekte anlegen und verwalten ................................................................................1 2.1 Datenimport/Selection............................................................................................1 2.2 Preprocessing/Vorbereitung von Daten..................................................................2 2.2.1 Externe Daten ......................................................................................................2 2.2.1.1 Datenbank einbinden ........................................................................................2 2.2.1.2 Zwischenablage ................................................................................................3 2.2.2 Interne Daten .......................................................................................................4 2.3 Transformation .......................................................................................................4 2.4 Methodenklassen ...................................................................................................5 2.4.1 Klassenbildung ....................................................................................................7 2.4.1.1 K-Means (Klassenzuordnung)..........................................................................7 2.4.2.1 SOM (selbstorganisierende Karte): ..................................................................9 2.4.2.2 Klassenbildungsverfahren auswerten .............................................................13 2.4.2 Klassifizierung...................................................................................................14 2.4.4 Zeitreihenanalyse...............................................................................................19 2.4.5 Korrelationsanalyse ...........................................................................................20 2.4.6 Deskriptive Statistik ..........................................................................................20 2.5 Interpretation ........................................................................................................20 Abkürzungsverzeichnis...............................................................................................21 Literaturverzeichnis................................................................................................... 22 Anlagenverzeichnis.................................................................................................... 24 1 Vgl. Gruber J.: Data Mining – Knowledge Discovery in Database, a.a.O., S. 17 f.