Künstliche Neuronale Netze und Data Mining Catherine Janson, iCASUS GmbH Heidelberg Abstract Der Begriff "künstliche Neuronale Netze" fasst Methoden der Informationstechnik zusammen, deren Entwicklung durch vergleichende Betrachtung der Arbeitsweisen von Computer und menschlichem Gehirn motiviert war. Unter anderem können damit Aufgaben zur Klassifikation und Vorhersage erfüllt werden, die typischerweise im Data Mining auftreten. Im angebotenen Vortrag wird nach einer kurzen Einführung / Auffrischung in das Thema Data Mining zunächst der theoretische Hintergrund vorwärtsgerichteter Neuronaler Netze behandelt (Schlagworte sind: Berechnungselemente, Netzarchitektur, Lernen / Training). Zum Vergleich werden auch kurz weitere Klassifikationsverfahren besprochen. Anschliessend werden die Methoden an einem Klassifikationsbeispiel mit Hilfe des SAS Enterprise Miner demonstriert. [email protected] 1 Definition Data Mining DM ist ein Prozeß, aus großen, bislang unübersehbaren Datenmengen nichttriviale Informationen zu gewinnen, die bisher unbekannt waren und die in konkrete Aktionen und Business-Entscheidungen umsetzbar sind. Interdisziplinäres Feld: Techniken aus Visualisierung, ”machine learning”, Mustererkennung, Statistik allgemeine Aufgaben Aufdeckung unbekannter Gesetzmäßigkeiten, Gruppierungen in Beobachtungen oder Variablen - Visualisierung, explorative Datenanalyse, Clusterverfahren, Faktorenanalyse Herausfiltern derjenigen Informationen / Variablen, die für eine Vorhersage / Klassifikation relevant sind - Variablenselektion Prognose auf Basis von Informationen aus der Vergangenheit - überwachte Klassifikation, Funktionsanpassung 2 Ziel / Anwendungsgebiete Database-Marketing: gezieltere Marketing-Maßnahmen auf Basis von Kundendaten Customer Relationship Management: Segmentierung des Kundenbestandes in homogene Gruppen (Eigenschaften / Kaufverhalten) Identifikation profitabler / nicht profitabler Kunden (Scoring) Identifikation absprunggefährdeter Kunden, Bindung / Rückgewinnung weitere Anwendungsgebiete: Produkt-/Angebotsgestaltung / Warenpräsentation Cross-Selling Preis-/Tarifgestaltung Lagerhaltung, Disposition, Nachfrageprognose Aufdecken von Betrug Bonitätsprüfung / Kreditscoring Entwicklungsprognosen (Netzauslastung, Kundenzahl) WEB-Mining – personalisierte Seiten, Seitenstruktur / Nutzerführung 3 Branchen: Zugang, elektronische Haltung von (umfangreichen) Kundendaten: Banken, Versicherungen, Versandhandel, Telekommunikation, €-Business Datenbasis: Kundeneigenschaften - Alter, Geschlecht, Beruf, Familie, Lifestyle Kundenverhalten - Produktpräferenz, Kauffrequenz, Dauer der Geschäftsbeziehung ‘externe Daten’ - sozioökonomische Daten DM-Prozess “SEMMA”: Sample: Stichprobenziehen, Partitionierung Explore: Hypothesengenerierung, (multidimensionale) Visualisierung, Plausibilitäts- Konsistenzprüfung, Assoziations-, Sequenzanalysen Modifikation: Ausreisser, Missings, Transformation, Faktorenanalyse Modellierung: Regression, Entscheidungsbaum, Neuronale Netze, Diskriminanzanalyse, Zeitreihen Auswertung: Modellbewertung, -vergleich 4 Klassifikationsverfahren Unüberwachte Klassifikation: Klassifizieren der Daten nur aufgrund der erfaßten Merkmale, keine a priori Klassen-Variable vorhanden. > Clusterverfahren Überwachte Klassifikation: Erstellen eines Modells (Abbildungsvorschrift) auf Basis vorhandener Klasseninformation. Anwendung des Modells auf neue Daten > (logistische) Regression, Entscheidungsbäume, Neuronale Netze, Diskriminanzanalysen Klassifikation, Scoring: qualitative Zielgröße (kauft / kauft nicht) Vorhersage: quantitative Zielgröße (Absatzprognose) (Künstliche) Neuronale Netze • Idee: Verknüpfung von einfachen Berechungseinheiten • Neuronale Netze als Sammelbegriff für flexible, nichtlineare Modelle • Vielzahl von Architekturen, Trainingsalgorithmen, Aktivierungs- und Schwellwertfunktionen, Fehlerfunktionen • hier: vorwärtsgerichtete NN Input: Unabhängige Gewichtung Variablen, Einflußfaktoren Output: abhängige Variablen, Klassifikation, Zielgröße 5 Neuronale Netze: ein Berechnungselement (hier: Multilayer Perceptron) oi oi+1 oi+2 oi+3 oi+4 Wi,j Wi+1,j Wi+2,j Wi+3,j Wi+4,j Σ Ausgabe: f(θj + Σni wij⋅oi) f() +θj Schwellwertfunktion f – Aktivierungsfunktion sigmoid, z.B. tanh,(1+e-x) -1 Neuronale Netze: Architektur bedingt Modellgleichung logistische Regression, falls f logistisch, multivariate lineare Regression, f linear: out = f(θi + Σi wi⋅ini) multivariate, multiple nichtlineare Regression: outk= f(θk + Σn wjk⋅ f(θj + Σni wij⋅ini) h 6 “Lernen” = Schätzen der Parameter wiederholte Präsentation der Trainingsdaten und Anpassung der Gewichte wjk mit dem Ziel Minimierung des Klassifikationsfehlers bzw. der Fehlerfunktion, z.B. Quadratsumme (beobachtete – erwartete Ausgabe) über alle Ausgabe-Einheiten und alle Trainingsbeobachtungen Fehlerfunktion E = Σnp Σno (tik – oik)2 “Lernen”: Trainingsalgorithmus Gradientenabstiegsverfahren (Modifikationen des Backpropagation Algorithmus) ∆wjk = − γ ∂∂wEjk ? Lokale Minima Startpunkt 7 Probleme Stichprobengröße N ← Anzahl zu schätzender Parameter Np Daumenregel: N > 5 bis 25 mal Np Modellkomplexität Überanpassung an Trainingsdaten (Overtraining) -> DatenPartition und Nutzung von Validierungsdaten Interpretierbarkeit Neural networks are especially useful for prediction problems where: • no mathematical formula is known that relates inputs to outputs. • prediction is more important than explanation. • there is lots of training data. 8 Optimum der Fehlerfunktion 9