Data Warehousing und Data Mining Zusammenfassung 02.08.2002 André Maurer [email protected] www.andre.maurer.name Wirtschaftsinformatik FH 2.5 Fachhochschule Solothurn, Olten Data Warehousing & Data Mining Inhaltsverzeichnis andre.maurer.name Inhaltsverzeichnis 1 Einführung ...................................................................................... 1 1.1 Entscheidungen 1 1.2 Datengrundlage eines EUS 1 1.2.1 Interne Analyse 1 1.2.2 Externe Analyse 2 1.2.3 Herkunft der Daten für EUS / FIS 2 Data Warehouse vs operative Systeme 3 1.3 1.3.1 1.4 Data Mining 4 4 1.4.1 Arten von Data Mining Problemen 5 1.4.2 Methoden des Data Mining 6 1.4.3 Prozessschritte der Wissensentdeckung 7 1.5 2 Gründe für die Trennung von DaWa und operativen Systemen: Business Inteligence 7 Data Warehousing .......................................................................... 8 2.1 Probleme beim Data Warehouse 9 2.2 Inhalt eines Data Warehouse 10 2.3 Architektur 11 2.3.1 Zentralisierte Architektur 11 2.3.2 Data Marts 12 2.3.3 Modularisierung: Enterprise Data Mart 12 2.3.4 Enterprise Data Warehouse (EDaWa) 13 2.3.5 Entwicklung von DM und DW 14 Ladeprozess – Datentransformation 14 2.4 2.4.1 Logische Transformation 15 2.4.2 Physische Transformation 15 2.5 Analyseprozesse in Data Warehouses 16 2.5.1 Standardberichte und –anfragen 16 2.5.2 Anfragen an Übersichtstabellen, OLAP 16 2.5.3 Data Mining auf Detail-Daten 16 2.5.4 Schnittstellen zu anderen Anwendungen 16 2.5.5 Zugriffe auf operative und analytische Daten 16 2.6 Modellierung von Data Warehouses 19 2.6.1 Objekte eines analytischen Datenmodells 20 2.6.2 Modellierungsebenen 22 zf_DW_DM.doc Seite I Data Warehousing & Data Mining 2.6.3 2.7 andre.maurer.name Mehrdimensionale und Multirelationale Datenbanken Entwicklung und Betrieb von Data Warehouses 2.7.1 3 Inhaltsverzeichnis Performanceprobleme 22 26 28 Data Mining................................................................................... 31 3.1 Klassifikation (Methoden) 4 3.1.1 Entscheidungsbäume 3.1.2 Neuronale Netze 12 3.1.3 K Nearest Neighbour (kNN) 25 3.1.4 Batch Nested Generized Exemplars (BNGE) 27 3.2 Clusteranalyse 3.2.1 3.3 Clustermethoden Assoziationsregeln 5 28 29 32 3.3.1 Transaktionen und Assoziationsregeln 32 3.3.2 Kennzahlen für Assoziationen 33 3.3.3 Prinzip des Assoziationsregellernens 33 3.4 Sequenzmuster 3.4.1 3.5 Prinzip der Sequenzmuster-Erkennung Data Mining Prozess – CRISP-DM 3.5.1 3.6 Das CRISP-DM Referenzmodell Web-Mining 34 34 35 36 37 3.6.1 Clickstream als Datenquelle 38 3.6.2 Mögliche Dimensionen der Analyse 38 3.6.3 Design der Website zur Unterstützung des Web Usage Mining 39 3.6.4 Clickstream Data Mart 41 4 Literaturverzeichnis ...................................................................... 43 5 Abbildungs- / Tabellenverzeichnis................................................ 44 zf_DW_DM.doc Seite II Data Warehousing & Data Mining 1 andre.maurer.name Einführung Ziel von Data Warehousing und Data Mining ist es aus Unternehmensdaten entscheidungsrelevantes Wissen herleiten zu können. 1.1 Entscheidungen Eine Entscheidung ist eine rationale Wahl einer Aktion in einer gegebenen Umwelt. Ein Entscheidungsprozess ist nur rational, wenn er auf sinnvollen Kriterien und gültigen Daten basiert. Das Ergebnis einer Entscheidung ist eine Aktion oder Strategie. Entscheidungsunterstützende Systeme (EUS) helfen den Entscheidungsträgern bei der Lösung komplexer Probleme:  Führungsinformationssystem (FIS) Bereitstellung der relevanten Informationen zur Vorbereitung einer Entscheidung  Entscheidungsunterstützende Systeme (EUS) Zusätzlich zum FIS stehen Methoden und Modelle für Planungs-, Entscheidungs- und Kontrollprozesse zur Verfügung. Entscheidungen können in verschiedene Kategorien unterteilt werden: Reichweite Neuigkeitsgrad Strukturierungsgrad Automatisierbarkeit Informationssysteme Langfristig (strategisch) Innovativ Schlecht strukturiert Niedrig EUS, FIS (eingeschränkt) mittelfristig (taktisch) Adaptiv Semi-strukturiert Mittel EUS Kurzfristig (operativ) Routiniert Wohl-strukturiert hoch administrative / dispositive Systeme Tabelle 1: Kategorien von Entscheidungen 1.2 Datengrundlage eines EUS Ein EUS benötigt interne und Externe Daten 1.2.1 Interne Analyse Daten die aus der Unternehmung kommen: z.B. Kapazitätsauslastung, technischer Stand, Personalentwicklung, Finanzsituation, Betriebsergebnis…. Die     Internen Daten können folgendes sein: Mengen (Erzeugungen, Verbrauche, Bestände, techn. Kapazitäten) Werte (Umsätze, Kosten, Betriebsergebnisse, Deckungsbeiträge) Personal (Anzahl, Einsatz, Qualifikation, Altersstruktur) Kennzahlen (Verknüpfung von Mengen-, Wert-, und Personaldaten) Gliederungszahlen (Prozentanteile) (z.B. Anteile der Entwicklungskosten an Gesamtkosten eines Produkts) Beziehungszahlen (z.B. Fr./Kopf, Materialverbrauch/Artikel) zf_DW_DM.doc Seite 1 Data Warehousing & Data Mining andre.maurer.name Das EUS macht aus internen Daten folgende Auswertungen:  Funktionsübergreifende Berechnungen (Cross Referencing) (z.B. Personalkosten pro Produkt)  Zeitbezogene Auswertungen (z.B. Verkäufe pro Woche, Monat, Quartal…)  Vergleichswerte über längere Zeiträume (z.B. Verkäufe jeweils im 1. Quartal der letzten 4 Jahre)  Funktionsübergreifende Berechnungen über Zeiträume (z.B. Auswirkung einer Marketingkampagne auf die Verkäufe der vergangenen sechs Monate) 1.2.2 Externe Analyse Externe Daten sind z.B. Marktentwicklung, Konjunkturverlauf, Käufereinstellung, Konkurrenzverhalten, technologische Innovation, Rohstoffpreise, politische Entscheidungen (Zinspolitik, Steuergesetzgebung…), soziologische Einflüsse…. 1.2.3 Herkunft der Daten für EUS / FIS Direkter Zugriff Das EUS / FIS greift direkt auf operative Informationsquellen zu: Operative Operative Anwendungen Anwendungen EUSEUSAnwendungen Anwendungen DatenbankDatenbankverwaltungsverwaltungssystem(e) system(e) Datenbanken operative Systeme Nachteile:  Zu Viele Daten werden gespeichert Æ lange Berechnungszeiten für Auswertungen  Behinderung des operativen Geschäfts während Auswertungen durch das EUS  Zu grosse Datenmengen  Keine einheitlichen Formate Abbildung 1: Zugriff auf operative Informationsquellen Data Warehouse Zur Verhinderung der Nachteile aus dem direkten Zugriff dient ein Data Warehouse (DaWa). Ein DaWa macht eine Selektion (Auswahl) und Aggregation (Verdichtung nach Dimensionen) aller für das EUS relevanten Daten in einer eigenen Datenbank. Die Übernahme aus operativen Systemen erfolgt bei Erreichen eines stabilen Zustandes oder zyklisch (täglich, wöchentlich…) bei sich ständig ändernden Daten. Die Trennung operativer Daten von Analysedaten ist ein fundamentales Konzept eines DaWa. zf_DW_DM.doc Seite 2 Data Warehousing & Data Mining andre.maurer.name Operative Operative Anwendungen Anwendungen EUSEUSAnwendungen Anwendungen DatenbankDatenbankverwaltungsverwaltungssystem(e) system(e) DatenbankDatenbankverwaltungsverwaltungssystem system Datenbanken operativer Systeme Periodische Periodische Selektion Selektion und und Transformation Transformation Datenabruf aus externen Quellen Data Warehouse Manuelle Manuelle Eingabe Eingabe Abbildung 2: Daten aus dem DaWa 1.3 Data Warehouse vs operative Systeme Datenbestand Administrations- und Dispositionssysteme Entscheidungsunterstützende Systeme Operative Daten: Analysedaten:   Datenformate    Datenzugriff   In der Regel aktuelle Daten Oft nur für abgegrenzten Unternehmens- und Funktionsbereich  Datenbestände oft unkoordiniert gewachsen Unterschiedliche Formate Kein einheitliches Datenmodell    Einheitliches Datenmodell Einheitliches Format Semantisch angepasst Sehr häufige Transaktionen Kurze Transaktionszeiten  Langfristige aufwendige Analysen und Berechnungen  Kombination von Daten mehrerer Systeme Daten über längeren Zeitraum Tabelle 2: Anforderungen: DaWa - operative Systeme      Ein DaWa vereinigt Daten mehrerer operativer Systeme (z.B. mehrerer Abteilungen, Filialen, Tochtergesellschaften…). Die Formate müssen bei der Übernahme aus operativen Systemen transformiert werden. Die Semantische Integration muss vorgenommen werden (z.B. Ein Kunde wird in verschiedenen Systemen mit versch. Kd-Nr. geführt, im DaWa muss der Kunde unter einer einheitlichen Kd-Nr. geführt werden.) Daten im DaWa sind beständig Im Gegensatz zu operativen Systemen werden die Daten im DaWa nur in Ausnahmefällen geändert oder gelöscht. In operativen Systemen gibt es unbeständige Daten (z.B. Lagerbestand) Es ist nicht sinnvoll, dynamische Daten im DaWa zu verwalten Erst bei Erreichen eines stabilen Zustands Oder durch periodische Schnappschüsse bei sich ständig ändernden Daten. In operativen Systemen gibt es Transaktionen, im DaWa Analyseprozesse Transaktionen sind in operativen Systemen häufig Der Umfang an Transaktionen ist gut abschätzbar zf_DW_DM.doc Seite 3 Data Warehousing & Data Mining  Analyseprozesse sind teilweise sehr aufwendig sind betreffen grosse Datenmengen verschiedener Bereiche haben keinen von vornherein abschätzbaren Aufwand Die Analyse auf operativen Datenbanken gefährdet deren Performance Daten im DaWa werden über einen längeren Zeitraum aufbewahrt Grosse Mengen inaktiver Daten verringern die Performance. Deshalb werden Daten in operativen Systemen gelöscht bzw. archiviert. Ein DaWa benötigt Daten über einen langen Zeitraum (>5 Jahre) Die Speicherkosten im DaWa sind relativ gering. Die meisten Kosten (ca. 50 – 70%) entstehen bei der Datenübernahme und –bereinigung. 1.3.1     1.4    andre.maurer.name Gründe für die Trennung von DaWa und operativen Systemen: Unterschiedliche Performance-Anforderungen Kombination von Daten mehrerer Anwendungen Daten sind beständig Speicherung der Daten über längeren Zeitraum Data Mining Mit Data Mining (DaMi) bedeutet die Identifikation von wettbewerbsrelevantem Wissen aus grossen Datenmengen. Vorhersagen Automatische Extraktion von Informationen zu Vorhersage von Trends und Verhalten z.B. Marketing auf Basis kundenindividueller Informationen, Lebensversicherung, Kreditbeurteilung Mustererkennung Automatische Erkennung vorher unbekannter Muster z.B. Typisches Kundenverhalten, Betrugserkennung Data Mining ist jedoch nicht…  Data Warehousing  Ad hoc Anfragen / Reportgenerierung  Online Analytic Processing (OLAP Æ siehe 2.5.5) (das die Frage WAS passiert beantwortet)  Datenvisualisierung  Software Agenten Data Mining dient der Vereinfachung und Automatisierung statischer Prozesse (Datenanalyse, Anwendung der Modelle). Mittels DaMi können nicht bekannte Zusammenhänge erkannt werden. Data Mining sagt, WARUM Dinge passiert sind. zf_DW_DM.doc Seite 4 Data Warehousing & Data Mining 1.4.1 andre.maurer.name Arten von Data Mining Problemen Klassifikation Lernen einer Menge von Regeln, die Objekte aufgrund ihrer Attribute vorgegebenen Klassen zuordnen. Clustering Aufteilung einer Datenmenge in disjunkte Gruppen (Gruppen ohne gemeinsame Teilmenge) ähnlicher Objekte:  Anders als bei der Klassifikation sind keine Klassen vorgegeben  Ähnliche Datensätze bilden eine Klasse Möglichst grosse Ähnlichkeit mit anderen Objekten der Klasse Möglichst geringe Ähnlichkeit mit Objekten ausserhalb der Klasse. xx x x x xx x x xxx x xx x x x x x xxx x x x x x xx x x x x x x x xx x x xxxx xx x x x x xx xx x x x x x x xx x x x xx x x x x x xx x x x xx x xx x x x x x x x x x x x xx xx x Abbildung 3: Clustering Regression (Vorhersage) Lernen der Beziehungen einer Zielvariable von Ausgangsvariablen. Daten Januar 2001 Historische Daten (1996-2000) Data Data Mining Mining System System Modell Vorhersage Februar 2001 Abbildung 4: Entstehung und Nutzung von Vorhersagemodellen Assoziationen (Warenkorbanalyse) Lernen von Abhängigkeiten zwischen Daten, z.B. welche Gruppen von Werten kommen in Transaktionen gemeinsam vor. Abweichungs- und Änderungsentdeckung Entdecken von Unterschieden zu früher aufgezeichneten Daten oder vorgegebenen normativen Werten. Zeitreihenanalyse Lernen von Regeln für typische Abläufe zur Prognose zeitlicher Veränderungen. zf_DW_DM.doc Seite 5 Data Warehousing & Data Mining 1.4.2 andre.maurer.name Methoden des Data Mining Entscheidungsbäume Grafische Darstellung einer Menge von Regeln für ein Klassifikationsproblem:   Knoten = Entscheidungen Blätter = Klassen Neuronale Netze Regelinduktion1 IF IF ... ... THEN THEN ... ... Nearest Neighbor Genetsiche Algorithmen Die Verschiedenen Methoden / Modelle unterscheiden sich bezüglich ihrer Verständlichkeit Genauigkeit Entscheidungsbäume Einfach verständlich Weniger genau Regelinduktion Mittel verständlich Mittel genau Neuronale Netze Schwer verständlich Sehr genau Tabelle 3: Verständlichkeit, Genauigkeit der MiMa-Methoden Ein Modell kann verschieden genutzt werden:  Qualitativ Gibt dem Marketing ein Verständnis über die Kunden und den Markt Erfordert Interaktionsmöglichkeiten und gute Visualisierung  Quantitativ Automatisierter Prozess Es gibt verschiedene Typen von Datenanalyse:  Beaufsichtigt (Supervised): Problemlösung Getrieben durch konkrete Probleme Analytiker gibt Untersuchungsrichtung vor Anwendung z.B. zur Optimierung eines gegebenen Marktes  Unbeaufsichtigt (Unsupervised): Erkundigung Relevanz erkennen Nützlich um neue (unerwartete) Zusammenhänge zu erkunden 1 Induzieren: Ableiten, folgern, schliessen, herleiten zf_DW_DM.doc Seite 6 Data Warehousing & Data Mining 1.4.3 andre.maurer.name Prozessschritte der Wissensentdeckung Interpretation/ Evaluation periodischer Update Wissen Data Mining Transformation Vorverarbeitung Auswahl Muster Transformierte Daten Zieldaten Data Warehouse Daten Abbildung 5: Zusammenhang DaWa und DaMi   Auswahl Vorverarbeitung    Transformation   Data Mining  Interpretation / Evaluierung       1.5 Fokussierung, Auswahl relevanter Daten Bereinigung der Daten (z.B. was tun mit leeren Feldern) Verdichtung der Daten durch Datenreduktion und –projektion Datenformat vereinheitlichen Auswahl von Techniken und Methoden Evtl. viele Testläufe mit verschiedenen Parametern Beurteilung der Ergebnisse bzgl. festgelegter Kriterien Dokumentation, Visualisierung der Ergebnisse Überführung in die Anwendung Business Inteligence Data Mining und Data Warehousing bietet Beispielsweise folgende Anwendungen:  Customer Relationship Management Kundenprofile erstellen Zusätzliche Kundenkontaktpunkte (z.B. Call Center, eBusiness)  Efficient Consumer Response Optimierung von Logistikprozessen / Regal- und Lagerflächen  Marketing Database Marketing (Zielgruppenorientierte Aktionen) Typisches Kundenverhalten Cross Selling  Bearbeitung von Geschäftsprozessen Klassifikationskriterien für Bonitätsbeurteilung Risikoanalyse von Versicherungen Betrugserkennung (z.B. Kreditkartenbetrug) Qualitätsanalyse (z.B. Schadensursache identifizieren) zf_DW_DM.doc Seite 7 Data Warehousing & Data Mining 2   andre.maurer.name Data Warehousing Das Data Warehousing ist die Gedächtnisfunktion von EUS Das Data Mining ist die Beurteilungsfunktion von EUS Definition 1: Ein DaWa (dt. Lagerhaus – Daten einlagern) ist eine Datenbank, die strategische Entscheidungen unterstützt, indem sie umfangreiche und regelmässige Auszüge aus operativen Datenbanken periodenbezogen und oft aggregiert (zusammengefasst) Endbenutzern auch zur ad hoc-Analyse (unvorbereitet) bereitstellt. Definition 2: Dt.: Datenlager Ein Data-Warehouse umfasst eine spezielle Datenbank, in die Daten aus vielen einzelnen (firmeninternen wie -externen) Datenbanken einfliessen, sowie ein Management-Informationssystems (MIS) zur Verarbeitung dieser Daten für einzelne Verwaltungsebenen. Das Data-Warehouse dient dazu, Führungskräften die Informationen zukommen zu lassen, die sie zur Kontrolle interner Abläufe und zur Entscheidungsfindung benötigen. Die Basisdaten müssen vor dem Transfer in das Data-Warehouse in ein einheitliches Format konvertiert werden, wobei so genannte Meta-Daten festhalten, welche Daten woher stammen und wie sie aufbereitet wurden. Danach erst kann der Gesamtbestand der Daten analysiert und ausgewertet werden. Ein Vorteil eines solchen Data-Warehouse ist, dass Mitarbeiter ohne Kenntnisse der "Standard Query Language" (SQL) oder anderer Abfragesprachen über eine grafische Benutzeroberfläche (GUI) ermitteln können, woher die einzelnen Daten stammen und wie sie bearbeitet wurden. Der Datenbestand kann nach Kriterien wie Zeitreihenanalyse und Trendermittlung ausgewertet werden. Solche Informationen finden in der Entscheidungsfindung des Unternehmensmanagements Verwendung. Als Erfinder des Data Warehouse gilt Bill Inmon, der den Begriff 1992 für ein solches System prägte, das er bei IBM entwickelt hat. Definition 3: Ein DaWa ist eine Themenorientiertec, integrierted, zeitbezogenee und nicht flüchtigef Sammlung von Daten zur Unterstützung der Entscheidungen des Managements. c Das DaWa ist themenbezogen und erhält Daten von vielen operationalen Systemen. Die Daten werden nach dem betriebswirtschaftlichen Umfeld des Unternehmens organisiert. Im Gegensatz zum DaWa sind operationelle Systeme prozessorientiert und werden durch ein System verwaltet. d Das DaWa wird aus einer Vielzahl interner und externer Datenquellen gefüllt. Dabei spielt die Datenqualität eine wesentliche Rolle. zf_DW_DM.doc Seite 8 Data Warehousing & Data Mining andre.maurer.name Im Gegensatz zum DaWa werden in operationellen Systemen DBs und Anwendungen unabhängig voneinander (und über lange Zeit) entwickelt. e Daten eines DaWa werden langfristig gespeichert. Zeitreihenanalysen stellen den Hauptteil der Analysen dar. f Die Daten werden persistent (Dauerhaftig) gespeichert. Auf ein DaWa wird nur lesend zugegriffen. Das Data Warehousing und Data Mining dient der  Operativen Planung (Ausschöpfung vorhandener Erfolgspotentiale) mittels operativen Daten  Strategischen Planung (Aufbau langfristiger Erfolgspotentiale) mittels strategischen Daten Data Warehouses sind analytische Datenbanken die Berichtsgeneratoren und Abfrage- und Analysewerkzeuge zur Verfügung stellen. Sie dienen Managern zur Entscheidungsunterstützung und zum nachträglichen Monitoring von Entscheidungen. Zudem dienen sie den Spezialisten zum Data Mining. Produktionsdatenbank (operative DB) Data Warehouse (analytische DB) Daten operativ 5 Daten vollständig 5 Daten detailliert 5 Daten redundanzarm 5 (fortschreibungsfreundlich) 5 Daten änderungsintensiv 5 Schlüssel i.d.R. natürlich 5 5 meist Auswahlabfragen Abfragen häufig ad hoc 5 Daten strategisch 5 Daten periodenbezogen 5 Daten oft abgeleitet (v.a. zusammenfassend) 5 Endbenutzerorientiert / abfrageorientiert 5 Schlüssel i.d.R. künstlich 5 Tabelle 4: Operative vs. Analytische Datenbanken 2.1   Probleme beim Data Warehouse Betriebswirtschaftliche Probleme Datenauswahl Datenpräsentation Datenmodellierung Informationstechnische Probleme Unterschiedliche Datenformate bei operativen und analytischen Daten zf_DW_DM.doc Seite 9 Data Warehousing & Data Mining andre.maurer.name Verbindung von Transaktionssystemen (oft Grossrechner) und Data Warehouse (oft Client-Server) Zeitpunkt für Datenauszüge Datenvolumen 2.2 Inhalt eines Data Warehouse Typisch für ein DaWa ist die Unterscheidung von  Fakten (Indikatoren, Kennzahlen, Business Measure) Betriebswirtschaftlicher Erfolgsfaktor Aggregierbar Meist numerisches und kontinuierliches Attribut Erlaubt mehrdimensionale Messung Benötigen grosses Datenvolumen (ca. 70% des DaWa) Primärschlüssel aus den Fremdschlüsseln der Dimensionen z.B. Mengenumsatz, Geldumsatz, Kundenzahl…  Dimensionen Kriterien der Beurteilung Meist symbolisches und diskretes Attribut Erlaubt eine Auswahl, Zusammenfassung und Navigation eines Indikators Sind Primärschlüssel Nicht immer eindeutig erkennbar z.B. Periode, Standort, Produkt, Organisationseinheit, Kunden, Lieferanten Dimensionen und Fakten werden in einem Würfel (Cube bzw. Hypercube) vereinigt: Mehrdimensionale Datenstruktur, welche die gleichzeitige Analyse mehrerer Indikatoren und Dimensionen ermöglicht. Aufgabe eines DaWa ist es, einen Indikator nach seinen Dimensionen zu messen. z.B. wie hoch ist der Umsatz (Indikator) nach Periode, Produkt und Region (Dimensionen)? Region Haidhausen 47 11 8 Schwabing 53 9 14 Zeit Zentrum 77 26 Juli 15 Juni Mai Racer Future zf_DW_DM.doc TriaRacer Racer Junior Produkt Seite 10 Data Warehousing & Data Mining andre.maurer.name Abbildung 6: Mehrdimensionaler Würfel (Hypercube) 2.3 Architektur Operative Daten • • • • • Externe Daten Ladeprozess • Auswahl • Transformation • Integration Konkurrenz Branche Daten Konjunkturentwicklung Demographische Daten … Data Warehouse • Einzelheiten • Zusammenfassungen • Metadaten (Daten über Daten)1 1 Endbenutzerzugriff Zugriffswerkzeuge • Berichtsgenerator • Zweidimensionale Abfrage • Mehrdimensionale Abfrage (OLAP) • Data Mining • ... • • • • • • • z.B. über Attribut „Umsatz“ Fakt oder Dimension Aggergierbar (JA / NEIN) Wie aggregierbar Berechnungsformel Quelldaten Update, Periodizität Speicherformat Information Entscheidung Abbildung 7: Architektur eines DaWa 2.3.1 Zentralisierte Architektur Datenbanken operativer Systeme Data Warehouse Alle analytischen Daten sind auf einer Plattform bedeutet:  Geringe Redundanz2  Hardwareersparnis Die    Entwicklung eines zentralen DaWa ist jedoch Für die meisten Unternehmungen zu komplex Nur für kleinere Unternehmen geeignet Für heterogene Benutzerkreise zu benutzerunfreundlich und abfrageineffizient Abbildung 8: Zentralisierte DaWa-Architektur 2 Redundanz: Anteil einer Nachricht, der keine Information vermittelt Æ ist überflüssig. zf_DW_DM.doc Seite 11 Data Warehousing & Data Mining 2.3.2 andre.maurer.name Data Marts Definition DM Ein Data Mart (DM) ist ein lokales Data Warehouse, das sich auf die Daten eines Funktionsbereichs, einer Abteilung, einer Arbeitsgruppe oder einer komplexen Anwendung beschränkt.  Vorteile Entwicklungskomplexität kleiner Datenbanken Endbenutzerbeteiligung wahrscheinlicher operativer Systeme Flexibilität grösser Datenmodell einfacher Abfrageeffizienz grösser  Probleme DM DM Nicht immer skalierbar (keine lineare Zunahme der Antwortzeiten) Probleme bei Integration in Enterprise Data Warehouse Redundanzen sind schwer kontrollierbar Eventuelle Inkonsistenz unter Data Marts Höhere Entwicklungs- und Wartungskosten Abbildung 9: Data Mart 2.3.3 Modularisierung: Enterprise Data Mart   Datenbanken operativer Systeme DM DM  DM Koordination Abbildung 10: Enterprise Data Mart zf_DW_DM.doc   Verteilung analyt. Daten auf mehrere DM Vorteile Benutzeradäquate Werkzeuge Leicht verständliches Datenmodell Effizienter Zugriff Problem Übergreifende Analysen Koordination Ladezyklen Datenmodell: Attribute mit gleicher Bedeutung verwenden in allen DM die gleiche Bezeichner, Datentypen, Schlüssel und Datenquellen. Ziele Intramodulare Bindung maximieren Benutzer so homogen, dass: Antwortzeiten minimal Benutzerfreundlichkeit maximal Werkzeug an Anforderungen angepasst Intermodulare Koppelung minimieren Schnittstellen zwischen DM so schmal, dass DM-übergreifende Abfragen selten werden. Seite 12 Data Warehousing & Data Mining 2.3.4 andre.maurer.name Enterprise Data Warehouse (EDaWa) EDaWa Zentrales DaWa oder Vereinigung von Data Marts, das die unternehmensweite Information verteilt. Zentrales DaWa DaWa, das operative Daten transformiert und koordiniert Data Marts zur Verfügung stellt.   Datenbanken operativer Systeme  Zentrales Data Warehouse DM DM DM Abbildung 11: Hierarchische Architektur   Koordination lokaler DM durch ein EDaWa Ziel Extraktion, Integration und Verteilung der Daten Ziel der DM Abfrage und Analysen auf Teilen der Daten Anpassung an Bedürfnisse einer Organisationseinheit Datenverteilung Zeitgesteuert Ereignisorientiert auf Verlangen Koordinierte Attribute über EDaWa Voraussetzungen zur Koordination von DM:  Fakten und Dimensionen müssen gleiche Bedeutung haben Gleich benennen (Synonyme vermeiden) Mit den gleichen Attributen beschreiben  Fakten und Dimensionen mit unterschiedlicher Bedeutung Verschieden benennen (Homonyme vermeiden) Architektur Zentralisiert: auf einer Plattform Hierarchisch: eDaWa übernimmt Extraktion, Integration und Verteilung der Daten Koordiniert: Koordination versch. DMs Unkoordiniert: Keine Koordination zw. DMs Zentrales DW Data Marts 5 Koordinierte DM 5 5 5 5 5 5 Tabelle 5: Architekturen im Vergleich Unkoordinierte Architekturen führen zu  Unkontrollierten Redundanzen  Inkonsistenz  Hohem Entwicklungsaufwand  Ungenügender Skalierbarkeit3 3 Skalierbarkeit: Ausbaubarkeit von Clients, Servern und Netz zf_DW_DM.doc Seite 13 Data Warehousing & Data Mining 2.3.5 andre.maurer.name Entwicklung von DM und DW  Zentrales Data Warehouse operative Daten DM top - down bottom - up Abbildung 12: Entwicklungsmethoden   Bottom-up: Aus der Verknüpfung mehrerer DM entsteht ein zentrales DaWa, das die untergeordneten DM mit koordinierten Daten beliefert. Probleme: Koordination: Redundanzen und Inkonsistenzen versch. DM Verträglichkeit der lokal entstehenden Datenmodelle Skalierbarkeit (Anpassung der Werkzeuge für grössere Datenmengen) Top-Down: Aus einem bestehenden DaWa werden DM herausgelöst. Parallel: Koordinierte Entwicklung von DM und EDaWa Data Mart (DM) EDW Ähnliche Begriffe lokales DW globales DW Hauptziel Modularisierung lokaler Daten und Abfragen redundanzarmes Unternehmungsdatenmodell für EUS Domäne Abteilung oder Anwendung Unternehmung Entwicklung / Betrieb Fachabteilung IT-Zentrale Grössenordnung bis 100 Gb (10 9 Byte) bis Terabytes (10 12 Byte, oft grösser als Produktionsdaten) Datenquelle EDW oder operative DB operative DB Granularität (Datendetail) oft gross (eher aus Aggregaten) meist klein (viele Transaktionsdetails) Normalisierungsgrad klein gross Hauptzugriffsart OLAP (meist ad hoc) SQL (oft vordefiniert) Entwicklung gut überblickbar aufwendig Typische Plattform mehrdimensionaler oder relationaler Datenbankserver RDBMS auf Unix-, Windows NToder Grossrechner Abbildung 13: Data Marts vs. EDaWa 2.4 Ladeprozess – Datentransformation Die Datenübernahme aus den operativen Systemen in das DaWa erfolgt in periodischen Selektionen und Transformationen. Vor    der Übernahme werden die Daten transformiert: Einheitliches Format Einheitliche Bezeichner Semantische Integration zf_DW_DM.doc Seite 14 Data Warehousing & Data Mining andre.maurer.name Dazu werden die Daten in einen oder mehrere Zwischenspeicher (Data Staging Area), bearbeitet und dann erst in das DaWa übernommen. Werkzeuge zur Datentransformation nennt man ETL-Werkzeuge (Extract – Transform – Load) Nicht alle Zustandswechsel werden in das DaWa übertragen.  Daten werden in das DaWa übernommen, sobald ein Endzustand erreicht ist  Für Bestandesdaten werden periodische Schnappschüsse übertragen 2.4.1 Logische Transformation Operationale Datenbanken sind normalisiert, um Redundanzen und Inkonsistenzen bei Datenveränderungen zu vermeiden. Die Transformation für das DaWa beinhaltet auch eine De-Normalisierung:  Performancesteigerung  Beziehungen im DaWa sind statisch  Vergangene Zusammenhänge sollen erhalten bleiben (z.B. Preise zur Zeit der Auftragsbearbeitung) Order processing Customer orders Data Warehouse Product price Available Inventory Product Price/inventory Product price Product Inventory Product Price changes De-normalized data Customers Products Orders Transform State Product Inventory Product Price Marketing Customer Profile Product price Marketing programs Abbildung 14: De-Normalisierung 2.4.2     Physische Transformation Einheitliche Begriffe Einheitliche Datentypen für das gleiche Datenelement Konsistente Verwendung von Attributwerten Behandlung unvollständiger Datensätze, Ersatzwerte Oft werden einfache Übersichten und Berichte schon bei der Transformation berechnet. Dies ergibt einen Effizienzgewinn (kürzere Rechnungszeiten) bei der Analyse.  Anfragen und Berichte reichen von einfachen Aggragetionen / Summen bis zu komplexen Berechnungen  Berechnung der Übersichten kann sehr aufwendig sein (z.B. Joins über mehrere Tabellen)  Übersichtstabellen sind nicht nur einfache Berechnungen sondern basieren auf Geschäftsregeln (z.B. Was wird als Verkauf angesehen, was fällt unter Wartung) zf_DW_DM.doc Seite 15 Data Warehousing & Data Mining  andre.maurer.name Übersichten verstecken die Komplexität der Detaildaten und der Berechnungen. Der Anwender muss die Geschäftsregeln nicht kennen. 2.5 Analyseprozesse in Data Warehouses 2.5.1 Standardberichte und –anfragen Standerdberichte und –anfragen werden für verschiedene Benutzer periodisch generiert. Sie sind nützlich für aufwendige Berechnungen und mehrfache Nutzung. Der DaWa-Administrator legt fest, was zu einem Standardbericht werden soll, indem er nachsieht welche Anfragen häufig durch die User gemacht werden und welche Anfragen die DB am meisten belasten. Der DaWa-User hat ebenfalls die Möglichkeiten einen Standardbericht zusammenzustellen. 2.5.2 Anfragen an Übersichtstabellen, OLAP Übersichtstabellen entstehen aus Detaildaten durch  Filterung (z.B. Verkaufszahlen ausgewählter Warengruppen)  Summierung (Aggregation) (z.B. Umsatz mit Produkt X) Übersichtstabellen sind die Grundlage der meisten Analysen im DaWa:  Übertragung in multidimensionale Datenmodelle (z.B. Umsätze pro Jahr, Region, Produktegruppe) 2.5.3 Data Mining auf Detail-Daten Die weitreichendste und nützlichste Analyse erfolgt auf Detaildaten  Anfragen an Übersichtstabellen beantworten Fragen nach dem WAS  Tiefergehende Detailanalyse kann Antworten geben auf Fragen nach dem WARUM und WIE Data Mining beginnt ebenso wie OLAP (siehe Kapitel 2.5.5) oft mit aggregierten Daten und verwendet die detaillierten Daten um  Hypothesen zu verifizieren  Gründe für Entdeckungen zu finden Analysen auf Detaildaten kommen nur für einen kleinen Teil der DaWa-Nutzer in Frage. 2.5.4 Schnittstellen zu anderen Anwendungen Schnittstellen zu anderen Anwendungen bieten die vierte Möglichkeit um Auswertungen zu machen. Wird auch für Data Mining benötitgt. 2.5.5  Zugriffe auf operative und analytische Daten Programmierte Berichte (erfordern oft Codeänderungen und sind zeitintensiv). zf_DW_DM.doc Seite 16 Data Warehousing & Data Mining   andre.maurer.name Abfrage- und Berichtssprachen wie SQL und QBE sind standardisiert und mächtig, aber für gelegentliche Benutzer zu schwierig. OLAP-Werkezuge erlauben auch dem gelegentlichen Benutzer flexible multidimensionale Abfragen. Abfragesprachen  Prozedurale Abfragen (sind flexibler) Navigation meist Satzweise Anweisungsreihenfolge wichtig z.B. Visual Basic, Cobol, dBASE  Nichtporzedurale (deklarative) sind komfortabler Navigation tabellenweise Einzelne verbale oder grafische Anweisung z.B. QBE, SQL Grobübersicht SQL (Structured Query Language):  Datenbankobjekte definieren create  Datenbankobjekte manipulieren insert, update, delete  Datenbankobjekte abfragen select  Datananken schützen grant SQL-Kategorie Zweck Anweisungen Data Definition Language (DDL) Definition von Datenbankobjekten create, alter, drop, table, view, index Data Manipulation Language (DML) Abfrage Änderung select insert, delete, update Data Control Language (DCL) Transaktion Schutz / Sicherheit lock, commit, rollback grant, revoke Tabelle 6: SQL-Teilsprachen Mehrdimensionale SQL-Abfragen sind benutzerunfreundlich, weil oft  Anweisungen zahlreich vorkommen müssen  Anweisungen komplex sind (Mehrtabellenverbund, Aggregationen, Sortieren, Views)  Zeitreihenanalyse aufwendig sind  Rechenfunktion unzureichend ist (z.B. finanzmathematische, statische) OnLine Analytical Processing OLAP Definition OLAP ist eine Abfragemethode, die Endbenutzern einen mehrdimensionalen, schnellen Zugriff und eine benutzerfreundliche interaktive Analyse auf Data Marts ermöglicht. OLAP ist…  Mehrdimensional (weil es Indikatoren nach ihren Dimensionen analysiert)  Endbenutzerfreundlich weil Direkte Manipulation möglich ist Ergebnisse einfach dargestellt und visualisiert werden zf_DW_DM.doc Seite 17 Data Warehousing & Data Mining     andre.maurer.name Detaillierend und zusammenfassend (weil Daten übersichtlich zusammengefasst und nur auf Verlangen detailliert sind) Analysierend und synthetisieren (weil der Benutzer Dimensionen einfach hinzufügen und weglassen kann) Schnell (weil es ad hoc-Abfragen in Sekunden beantwortet und aufwendige ad-hoc-Berechnungen durch Voraggregationen vermeidet) Data-Mart-orientiert Mit dem FASMI-Test kann mit 5 Kriterien getestet werden ob ein Produkt ein OLAP-Werkzeug ist:  Fast Kommt die Antwort innert weniger Sekunden?  Analysis Sind betriebswirtschaftliche und statistische Analysen sowie ad-hoc Berechnungen ohne Programmierkenntnisse möglich?  Shared Ist Mehrbenutzerbetrieb möglich, Zugriffsrechte geregelt…?  Multidimensional Sind Multidimensionale Anfragen möglich?  Information Werden alle relevanten Informationen, unabhängig vom Umfang und Inhalt verarbeitet? SQL sucht nach Details, OLAP fasst zusammen und vergleicht (im Hintergrund generieren OLAP-Werkzeuge allerdings auch SQL-Abfragen).  Zusammenfassung (Aggregation)  Vergleich Absoluter Vergleich Relativer Vergleich (Prozentualer Teil…) In OLAP-Werkzeugen stehen folgende Browsing-Möglichkeiten zur Verfügung: Drilling Down Detaillieren. Zu kleine Fallzahlen können bei mehrdimensionalen Analysen zu Informationsverlusten führen. Drilling Up Zusammenfassen (aggregieren). Eine Aggrgation kann zu Informationsverlusten führen. Drilling Through Detailzugriff auf operative Datenbanken (meist über vordefinierte SQL-Anweisungen) Drilling Across Zugriff auf mehrere Data Marts Filtern Wertauswahl Von einem Würfel sind auf einer zweidimensionalen Oberfläche nur zwei Dimensionen zu sehen (z.B. als Tabelle). Ein OLAP-Würfel ist in der Regel ein mehrdimensionaler Würfel mit mehr als drei Dimensionen Slicing Mittels Slicing (Slice = Scheibe) wird der Würfel um Dimensionen reduziert (in Scheiben geschnitten). Dicing / Pivoting Mittels Dicing (würfeln) wird der Würfel zum Anzeigen anderer Dimensionen gedreht (Rotation der Resultate um andere zf_DW_DM.doc Seite 18 Data Warehousing & Data Mining andre.maurer.name Sichten zu zeigen). Pivoting ist eine besondere Form des Dicing und bedeutet das Tauschen von Zeilen und Spalten Es gibt auch verschiedene Arten von OLAP ROLAP MOLAP DOLAP Abkürzung Relationales OLAP Mehrdimensionales OLAP Desktop- OLAP Beschrieb OLAP mit mehrdimensionalen Metadaten in einem relationalen Server-Datenbanksystem. Der Würfel ist nur virtuell vorhanden. OLAP mit mehrdimensionalen Objektdaten in einem proprietären Server-DBsystem. Der Würfel ist real auf dem mehrdimensionalen DBServer. MOLAP oder ROLAP auf einem Client. Der Würfel ist Real auf dem Client. EDW-Daten i.d.R. relational relational Relational / multdimensional Mehrdimensionalität in den ... Metadaten (Direktzugriff auf EDW möglich) Objektdaten Metadaten / Objektdaten Datenumfang gross gross klein Datenort Server Server Client (PC) Datenmodell standardisiert Abfrageeffizienz - + + Flexibilität + - +/- Skalierbarkeit + ∅ - Integrierbarkeit + - +/- Vorberechnung geringer umfangreich umfangreich Beispielanbieter Information Advantage Arbor, Oracle Cognos, Brio proprietär proprietär Tabelle 7: Arten von OLAP Hybride OLAP sind  MOLAP auf einem mehrdimensionalen Würfel  ROLAP durch generiertes SQL auf einem relationalen DW Neben den OLAP-Werkzeugen gibt es noch die OLTP (Online Transaction Processing) Werkzeuge die Abfragen auf operativen Transaktionsdaten ausführen. 2.6 Modellierung von Data Warehouses Das Datenmodell operativer Datenbanken kann nicht für das DaWa übernommen werden:  Ziele operative Datenbanken Transaktionsverarbeitung durch hohe Granularität (Detaillierungsgrad) Fortschreibungsfreundlichkeit durch Normalisierung Speichereffizienz durch Normalisierung  Ziele DB DaWa Benutzerfreundlichkeit durch geringe Granularität (Verdichtung) Abfrageeffizienz durch Denormalisierung zf_DW_DM.doc Seite 19 Data Warehousing & Data Mining andre.maurer.name Betriebsnähe durch Indikatoren und deren Dimensionen Operatives Unternehmensdatenmodell Ð Operative Bereichsdatenmodelle Ð Logische Verbindung grober Bereichsmodelle Detaillierte logische EntityRelationship-Diagramme Enterprise Data Warehouse-Modell Ð Globale Datenmodelle mit einigen physischen Festlegungen Data Mart Modell Lokale Datenmodelle mit vielen physischen Festlegungen (denormalisiert) 2.6.1 Objekte eines analytischen Datenmodells Betriebswirtschaftliche Kennzahlen/-gruppen Kennzahlen sind verdichtete numerische Messgrössen, die sich auf wichtige Tatbestände im Unternehmen beziehen und diese in konzentrierter Form darstellen. Sie informieren problemorientiert über betriebswirtschaftliche Sachverhalte und erfüllen so wichtige Aufgaben in allen Phasen des unternehmerischen Entscheidungsprozesses.  Absolute Kennzahlen Unabhängig von anderen Zahlengrössen (z.B. Umsatz) Bedeutung durch Verhältnis (z.B. Soll/Ist) oder Zeitreihenanalyse  Relative Kennzahlen (Verhältniszahlen) Zwei Kennzahlen zueinander in Beziehung gesetzt Gliederungszahlen (Teilgrösse zu Gesamtgrösse, z.B. Anteil an Produktumsatz am Gesamtumsatz) Beziehungszahlen (inhaltlich nicht gleiche Fakten zueinander in Beziehung gesetzt. z.B. Umsatz pro Mitarbeiter) Messzahlen (relative Veränderung zu einem definierten Nullpunkt, Spezialfall Index) Betreibswirtschaftliche Kennzahlen Absolute Zahlen Basiszahlen Summen Differenzen Verhältniszahlen Mittelwerte Gliederungszahlen Messzahlen Einfache Messzahlen Beziehungszahlen Indexzahlen Abbildung 15: Klassifikation von Kennzahlen zf_DW_DM.doc Seite 20 Data Warehousing & Data Mining andre.maurer.name Deckungsbeitrag Gewinn Fixkosten ROI / Anlagevermögen Kapital + Umlaufvermögen Abbildung 16: Kennzahlensysteme (Auswerte)-Dimensionen  Eine Dimension beschreibt die mögliche Sicht eines Anwenders auf die assoziierte betriebswirtschaftliche Kennzahl.  Eine Dimension kann als eine endliche Menge an Hierarchieobjekten, die eine Beziehung zueinander aufweisen, verstanden werden.  Jede Dimension besteht aus mindestens einem realen Hierarchieobjekt und dem virtuellen All-Knoten.  Der unterste Knoten definiert den Level of Grannularity (Detaillierungsgrad) Aggregatsebenen der Dimensionen Die Hierarchieobjekte sind in einem gerichteten azyklischen Graphen zwischen dem LoG- und dem All-Knoten angeordnet. Jahr Quartal Woche Monat Tag zf_DW_DM.doc Seite 21 Data Warehousing & Data Mining andre.maurer.name Aggregatsfunktionen Aggregatsfunkionen beschreiben, wie sich eine Kennzahl beim Wechseln der Aggregatsebene verhält:  Additive Fakten Diese Art von Fakten können zwischen sämtlichen Aggregatsebenen der assoziierten Dimensionen durch einfach Additionsoperationen berechnet werden (z.B. Umsatz)  Semi-additive Fakten Die Addition ist nur bei gewissen Dimensionen erlaubt (z.B. Lagerstand summiert sich in der Geografie aber nicht in der Zeitdimension)  Nicht-additive Fakten Diese Art von Fakten können nicht mit Additionsoperationen berechnet werden (z.B. Durchschnitte oder Prozentwerte) 2.6.2 Modellierungsebenen Analog der herkömmlichen Datenmodellierung haben Benutzer, Entwickler und Datenbank-Administratoren eine andere Sicht auf die Daten in einem DaWa. Dies wird durch verschiedene Abstraktionsebenen erreicht:  Semantische Ebene (externe Sicht)  Logische / konzeptuelle Ebene (Gesamtsicht)  Physische Ebene (interne Sicht) Abbildung 17: Abstraktionsebenen 2.6.3 Mehrdimensionale und Multirelationale Datenbanken Mehrdimensionale Datenbanksysteme  Direkte Umsetzung mehrdimensionaler Würfel  Speicher- und laufzeiteffizient  Kein standardisiertes Modell Multirelationale Datenbanksysteme / Sternschema  Ausgehend von relationalem Datenbanksystem  Metadaten vermitteln zwischen dem physischen Modell relationaler Datenbank und dem logischem Schema des DaWa  Wird für ROLAP verwendet (siehe Kapitel 2.5.5)  Verbreitetstes logisches Modell: Sternschema Das Sternschema ist ein logisches Datenbankschema, das Dimensionstabellen eines relationalen DaWa abfragefreundlich um eine Faktentabelle ordnet. Abbildung mehrdimensionaler Daten auf zweidimensionale Tabellen. zf_DW_DM.doc Seite 22 Data Warehousing & Data Mining andre.maurer.name DIMENSION DIMENSION BB DIMENSION DIMENSION AA Schlüssel Schlüssel Beschreibung Beschreibung Kategorie Kategorie A1 A1 Kategorie Kategorie A2 A2 ... ... D D D F DIMENSION DIMENSION CC Schlüssel Schlüssel Beschreibung Beschreibung Kategorie Kategorie C1 C1 Kategorie Kategorie C2 C2 ... ... D D FAKTEN FAKTEN Schlüssel Schlüssel AA Schlüssel Schlüssel BB Schlüssel Schlüssel CC Schlüssel Schlüssel DD Attribut1 Attribut1 Attribut2 Attribut2 ... ... Schlüssel Schlüssel Beschreibung Beschreibung Kategorie Kategorie B1 B1 Kategorie Kategorie B2 B2 ... ... DIMENSION DIMENSION DD Schlüssel Schlüssel Beschreibung Beschreibung Kategorie Kategorie D1 D1 Kategorie Kategorie D2 D2 ... ... Abbildung 18: Sternschema Entwicklung eines Sternschemas:  Betriebliche Anforderungen sammeln Welche Fakten interessieren nach welchen Kriterien? Verfügbare Daten und Wünschbare Auswertungen (aus Interviews)?  Anforderungsdiagramm erstellen Identifikation von Erforderlichen Indikatoren (Fakten) Æ Attribute der Faktentabelle Dimensionen Æ Frage nach WAS? WANN? WO? Aggregatebenen Æ Wertebereiche Indikatoren: Mengenumsatz, Geldumsatz, Kundenzahl… Dimensionen Aggregatebenen Produkt Produktegruppe, Farbe, Marke… Periode Jahr, Quartal, Monat… Ort Land, Region, Filiale… … … Abbildung 19: Beispiel eines Anforderungsdiagramms Sternschema durch Denormalisierung: FILIALE Filiale Land Strasse Ort ... LÄNDERREGION LAND n Land 1 Region Verantwortlicher ... n Region 1 Sprache ... Denormalisierung operativer Daten führt zu • mehr Redundanz • weniger Verbundoperationen (Joins) Fakten VERKÄUFE Dimension FILIALE Filiale Land Region Strasse Ort Verantwortlicher Sprache ... 1 Periode Produkt Filiale n Aktion ... Abbildung 20: Denormalisierung zf_DW_DM.doc Seite 23 Data Warehousing & Data Mining andre.maurer.name Attribute in Dimensionstabellen  Dimensionstabellen können berechenbare (z.B. Sonntag, Werktag) und nicht berechenbare (z.B. Feiertag) bzw. ableitbare Attribute enthalten  Eine Dimension enthält oft mehrere Kategorie Hierarchische Kategorien (z.B. PERIODE: Jahr, Quartal, Monat, Woche…) Unabhängige Kategorien (z.B. PRODUKTE: Produktegruppe, Farbe…) Die Faktentabelle und Dimensionstabelle stehen in 1:n-Beziehungen. Jeder Zeile einer Dimensionstabelle sind in der Regel mehrere Zeilen der Faktentabelle zugeordnet. Filtern von Abfragen in Sternschemata: 1. Dimensionstabelle auswählen z.B. PRODUKTE 2. Einschränkung durch Selektion (Filterung) z.B. Produktekat. = MTB und Gewicht < 10 3. Ergibt eingeschränkte Dimensionstabelle z.B Produkte 231 und 348 4. Abfrage auf Faktentabelle Eigenschaften von Sternschemata:  Mehrere Dimensionstabellen beziehen sich auf eine Faktentabelle  Die Faktentabelle enthält die Attribute, die betrieblichen Erfolgsfaktoren messen  Jede Dimensionstabelle steht in einer 1:n-Beziehung zu einer Faktentabelle Die 1:n-Beziehung wird durch einen Schlüssel der Dimensionstabelle und einen Fremdschlüssel der Faktentabelle vermittelt Der Schlüssel der Faktentabelle besteht also aus den Schlüsseln der Dimensionstabellen als Fremdschlüsseln  Die Faktentabelle integriert m:n-Beziehungen implizit in einer einzigen Tabelle und enthält deswegen viel Redundanz  Die Dimensionstabellen nehmen symbolische und diskrete Attribute auf und erlauben eine Auswahl, Zusammenfassung und Navigation der Fakten. Vorteile des Sternschemas  Einfachheit Wenige Tabellen Konzentration auf wesentliche Aussagen Eine Faktentabelle liefert nur eine Grundaussage  Verständlichkeit Modernisierung des Berichtswesens Datensammlung zur Trenderkennung Datensammlung für Data Mining  Physikalische Umsetzung Antwortzeiten minimieren Nachvollziehbarkeit Very large Databases zf_DW_DM.doc Seite 24 Data Warehousing & Data Mining andre.maurer.name Sternschema vs. Normalisiertes Schema Normalisiertes Schema   Sternschema Ziele  Redundanzminimierung Effiziente Transaktionsverarbeitung Ergebnis Komplexes, globales und idiosynkratisches Schema Viele Entitäten und Beziehungen Ziele Benutzerfreundliche Abfrage   Ergebnis Einfaches, lokales und standardisiertes Datenmodell (10-25 Sternschemata für grössere Unternehmungen) 1 Faktentabelle und wenige Dimensionstabellen (i.d.R. 5-15) Nachteile unvollständiger wartungsaufwändiger / änderungsfeindlicher Tabelle 8: Sternschema vs. Normalisiertes Schema Erweitertes Sternschemata: Snowflakeschema Das Snowflakeschema bietet einen Kompromiss zwischen Effizienz und Redundanzminimierung  Vorteil Weniger Redundante Einträge in den Dimensionstabellen Weniger Speicherplatz Sonst nicht darstellbare Beziehungen Bildung von Aggregaten wird optimal unterstützt Browsing Funktionalität wird unterstützt  Nachteile Benutzerunfreundlichkeit durch höherer Aufwand bei Wartung komplexere SQL Befehlsgenerierung Abfrageeffizienz ist schlechter durch erhöhte Anzahl an physikalischen RDBMS-Joins erhöhte Anzahl physikalischer DWH-Tabellen TAG MONAT ZEIT AKTIONEN VERKÄUFE FILIALEN PRODUKT Abbildung 21: Snowflakeschema zf_DW_DM.doc Seite 25 Data Warehousing & Data Mining 2.7   andre.maurer.name Entwicklung und Betrieb von Data Warehouses Entwicklung Spezifikation (Anforderungsdefinition) Æ Was ist das Ziel? IST-Analyse Endbenutzerbefragung Geschäftsziele (z.B. Welche Indikatoren messen den Erfolg der Einheit? Welche Merkmale eignen sich zur Früherkennung von Risiken?…) Analysebedürfnisse (z.B. Wie gross ist der Anteil der Routineund ad-hoc-Analysen? Wie gross ist der Anteil an historischen Auswertungen? Gibt es Zusatzmaterial für die Analyse?…) SOLL-Konzept Realisierung Æ Wie soll das Ziel erreicht werden? Entwurf Logische Datenmodellierung Physische Datenmodellierung Dialogentwurf Modularisierung Implementierung und Test Daten, Abfragen, Prozeduren Installation Betrieb Laden operativer Daten Extraktion Daten aus operativen Datenbanken kopieren Gekaufte und neu erhobene Daten hinzufügen Transformation Validität prüfen (Vollständigkeit und Konsistenz) Syntaktische Prüfungen Namenskonventionen (z.B. Punkt vor Abkürzungen, ausgeschriebener Vorname) Fehlende Werte (z.B. Fehlende Geschlechtsangaben) Semantische Prüfungen Wertbereichskontrolle (z.B. Monatszahlen zw. 1 + 12) Homonymerkennung: Identische Wörter mit unterschiedlicher Bedeutung Synonymerkennung: Unterschiedliche Wörter mit identischer Bedeutung Inkonsistenzprüfung (z.B. Transaktion 1997 mit einem Produkt mit Einführungsjahr 1998) Datentypen konvertieren (z.B. von EBCDIC zu ASCII) Formate vereinheitlichen Duplikate und irrelevante Daten entfernen Nicht-plausible Werte berichtigen oder weglassen Attribute redefinieren (z.B. Einzelwerte in Klassen zusammenfassen) zf_DW_DM.doc Seite 26 Data Warehousing & Data Mining  andre.maurer.name Attribute neu einfügen (z.B. Zeitdimension, Ladezeit…) Werte vorberechnen (z.B. Zeilen aggregieren) Integration Geladene Daten Direkt in DaWa-Tabellen einfügen In einer Staging Area zwischenspeichern Datenmodell vorbereiten Mehrdimensionaler Würfel Relationales Sternschema Geprüfte und transformierte Daten integrieren Indizes neu aufbauen und fortschreiben Metadaten nachführen Daten auf Data Marts replizieren Daten abfragen Data Mining Ergebnisse interpretieren Verwalten analytischer Daten Zugriff auf das Data Warehouse Speicher- und Laufzeitoptimierung ETL - Extraction, Transform, Load Dieser Prozess beträgt über 50% an einem DaWa-Projekt Folgende Arbeitsschritte werden durchlaufen:  Analyse und Dokumentation der operativen internen und externen Quelldatensysteme  Extrahieren der ausgewählten Informationsobjekte  Transformieren (mit SQL) anhand der DaWa-Konvention  Validieren und Bereinigen der transformierten Objekte  Vorbereiten der Ladeoperationen  Periodisches Laden Anforderungen an Ladeoperation  Zugriff auf ein zentrales Data Dictionary muss möglich sein  Stapelweise und inkrementell laden  Auf Verlangen automatisch laden  Extraktion Aus verschiedenen Quellen laden, vor allem aus flachen und indizierten Dateien relationalen und anderen Datenbanken Bedingt lesen (wenn Datensatz bestimmte Bedingungen erfüllt)  Ladeprozesse müssen die Eigenheit unterschiedlicher Datenquellen berücksichtigen Datensätze können fest oder variabel lang sein Sätze können aus Datenbanksystemen oder Einzeldateien stammen zf_DW_DM.doc Seite 27 Data Warehousing & Data Mining andre.maurer.name Die Architektur des Datenbanksystems kann hierarchisch, netzwerkartig oder relational sein Einzeldateien können sequentiell, relativ oder indiziert organisiert sein Datenverwaltungssoftware kann von verschiedenen Herstellern stammen Die Definition der Tabellen, Sätze und Attribute kann unterschiedlichen Konventionen folgen Physische Modellierung  Tabellen definieren  Schlüssel physisch definieren  Integritätsprüfung physisch definieren  Performance optimieren Entwicklungsprobleme  Anforderungsdefinition: Koordination von Fachabteilungen  Laden operativer Daten: Datenextraktion, -transformation und –integration  Komplexität und Redundanz der Datenmodelle der bestehenden Systeme Definition und Wartung komplexer Tabellenstrukturen Einführung von Redundanz  Speicher- und Zugriffseffizienz durch Mehrere Faktentabellen und grosse Dimensionstabellen Umfangreiche Indizes und Vorberechnungen  Datenverantwortung und –sicherheit: Datenhoheit der Fachabteilungen  Evaluation und Schulung  Projektmanagement Zu lange Projektdauer (Jahre statt Monate) Mangelnde Erfahrung 2.7.1 Performanceprobleme Aggregation  Berechnungen brauchen Zeit  Vordefinierte oder ad-hoc-Aggregation? Betriebliche Bedeutung Häufigkeit der Verwendung Prozessor- und Speicherbelastung  Wenn die Aggregation mehr als 10% oder 1% der Fakten ausmacht werden die Aggregate abgespeichert. Mehrdimensionalität In Abhängigkeit von der Kardinalität der Dimensionen kann die Faktentabelle eines Sternschemas explodieren. zf_DW_DM.doc Seite 28 Data Warehousing & Data Mining andre.maurer.name Performancesteigerung Logisches Datenbankmodell    Minimierung der Objekte und Beziehungen Modularisierung nach Data Marts Sternschema und Denormalisierung (Verbesserung der Antwortzeit auf Kosten der Speichereffizienz und Fortschreibungsfreundlichkeit) Vorberechnung z.B. Verkäufe nach Dimensionen Jahr, Monat und Woche zusammenfassen Spaltenreplikation Zur Vermeidung aufwendiger Verbundoperationen wird ein Teil einer Tabelle in eine andere Tabelle kopiert Vorverbund Eine Verbundoperation wird einmal durchgeführt und dann permanent gespeichert Physisches Datenbankmodell     Indexierung B-Baum Bitmusterindex Hashfunktion Künstliche Faktenschlüssel Speicherung Partitionierung Nullwerte Kompression Abfragen vordefinieren und überwachen Ablaufplan Parallelisierung Tabelle 9: Performance verbessern durch Modellierung Beim DaWa werden im Gegensatz zu den Produktionsdatenbanken durch die Denormalisierung Redundanzen eingeführt. Diese Denormalisierung werden die Abfragen beschleunigt. Optimierungsmassnahmen Partitionierung (Tabellenspaltung)  Zweck Zugriffszeit optimieren Speichereffizienz optimieren Partitionsweise Lösch- und Updateoperationen erleichtern  Arten Horizontale Partitionierung (z.B. n ach dem Transaktionsdatum) Vertikale Partitionierung (z.B. nach der Normalisierung)  Partitionsschlüssel Reihenfolge der Zeilen bzw. Spalten Statische und dynamische Daten Häufig zusammen verwendete Daten Grösse von eingabe-/Ausgabeblöcken … Optimierungsmassnahme Indexierung  Nutzen Zeitgewinn durch Direktzugriff Suche im Index: Adresse der Datensätze  Kosten Speicheraufwand Erzeugung und Verwaltung des Index  Indexierung bei Datenbanken B-Bäume Bitmusterindex Vorgehensweise zf_DW_DM.doc Seite 29 Data Warehousing & Data Mining andre.maurer.name Transformation der Attribute in binäre Merkmale Bitmuster-Index für jede mögliche Transformation Mehrwertige Attribute in zweiwertige Attribute transformieren z.B. Wirtschafssektor [Dienstleistung, nicht-Dienstleistung] Æ [0/1] [Industrie, nicht-Industrie] Æ [0/1] [Landwirtschaft, nicht-Landwirtschaft] Æ [0/1] Voraussetzung Statische Daten Read-Only bzw. seltener Update Gilt immer für analytische Daten Attribute niederiger Kardinalität Wenige Attributwerte pro Spalte (z.B. Westschweiz/Mittelland/Tessin/Ostschweiz) Trifft auf viele Wertebereiche von Dimensionstabellen zu Nutzen Bei kleiner Kardinalität kleinerer Index als B-Baum Kurze Abfragezeit (Kleiner Index und bitweise Operationen) Optimierungsmassnahme Hardware  Prozessorleistung Ein- oder Mehrprozessor  Internspeicherleistung Kapazität Zugriffszeit  Externspeicherleistung Kapazität = Rohdatenvolumen + Overhead (Index, Temporärspeicher) Durchsatz  Kommunikation Systembus Netz Trade-offs einiger Optimierungsmassnahmen Vorteile Nachteil Sternschema    Benutzerfreundlich Relativ schnell Relativ felxibel   Unvollständig Redundant Vorberechnung  Schnell    Unvollständig Speicheraufwendig Unflexibel Unkomprimierte Bitmusterindizes   Schnell Flexibel    Read only Speicheraufwendig Kleine Kardinalität Komprimierte Bitmusterindizes    Schnell Flexibel Grosse Kardinalität   Read only speicheraufwendig Tabelle 10: Optimierungsmassnahmen zf_DW_DM.doc Seite 30 Data Warehousing & Data Mining andre.maurer.name Allgemeine Anforderungen an Data Warehouses  Abbildungstreue Einfache Abbildung betrieblicher Fakten und Dimensionen  Benutzerfreundlichkeit Mehrdimensionalität (Würfel oder Sternschema), Drilling, Slicing and Dicing, Pivoting, Visualisierung, Views  Flexibilität Vordefinierte ad hoc-Abfragen  Skalierbarkeit Ausbaubarkeit von Clients, Servern und Netz  Performance Durchsatz, Laufzeiteffizienz, Speichereffizienz  Verfügbarkeit Multiprozessoren, RAID, Festplattenspiegelung, Stand by-Server, Online-Verwaltung ohne Shut Down von Systemkomponenten  Wartbarkeit Synchronisation mit OLTP, Metadatenverwaltung  Kompatibilität Data Mining Tools, Produktionsdatebanken, Anwendungssoftware 3 Data Mining Definition I Engl.: to mine, dt.: (zutage) fördern Der Begriff wurde 1996 geprägt und umfasst Techniken wie statistische Auswertungen, Zeitreihenanalysen, neuronale Netze (siehe KI) und Mustererkennung. Beim Data-Mining geht es also nicht, wie der Begriff suggeriert, um die Gewinnung, sondern vielmehr um die Auswertung von Daten. Dafür werden Daten, die aus Datenbanken oder anderen Quellen stammen, in einem Pool zusammengefasst und so ein DataWarehouse angelegt. Durch die Analyse und statistische Auswertung der Daten lassen sich gewisse Zusammenhänge herstellen und Gesetzmässigkeiten ableiten. Diese "Datenschätze" können nun firmenintern genutzt oder auch an externe Interessenten weiterverkauft werden. Definition II zf_DW_DM.doc (dt. Daten schürfen, wie in einem Bergwerk) Methoden, um verborgene Zusammenhänge aufzuspüren. In der Regel kennt man die Gesetzmässigkeiten, die man zu finden hofft, gar nicht, sondern lässt allgemein nach Mustern oder auffälligen Häufungen suchen. Seite 31 Data Warehousing & Data Mining andre.maurer.name  Data Warehouse   Abfrage- und Berichtssprachen wie SQL OLAP-Werkzeuge Data Mining Werkzeuge Abfragen und Berichte standardisiert und mächtig, aber für gelegentlichen Benutzer zu schwierig. OLAP-Werkzeuge flexible, mehrdimensionale Anfrage Data Mining Komplexe Methoden zur Datenanalyse. Extrapolieren von Bekanntem auf neue Situationen Abbildung 22: Eingliederung von DaMI Im Gegensatz zu Abfragen, Berichten und OLAP gibt Data Mining nicht Auskunft über die Vergangenheit sondern macht eine Analyse der historischen Daten um davon eine Regel bzw. ein Modell abzuleiten und dann Vorhersagen für zukünftige Ereignisse machen zu können. Einige Beispiele von Data Mining Anwendungen:  Kreditwürdigkeitsbeurteilung  Warenkorbanalyse  Entdeckung von Kreditkartenbe Beurteilung der Werbewirksamtrug keit  Analyse von Zahlungsgewohn Antwortrate eines Direct Mailing heiten  Vorhersage der Kundenfluktuati Mitarbeiterzufriedenheit on Ein Vorhersagemodell ist eine „Black Box“, die Voraussagen über die Zukunft macht auf Basis von Informationen aus Vergangenheit und Gegenwart. Aktuelle Daten Historische Daten (1996-2000) Data Data Mining Mining System System Modell Die Historischen Daten müssen relevant, genügend und zuverlässig sein. Dazu benötigt man für Data Mining auch Hypothesen über wichtige Attribute und Beziehungen (Betriebliches Fachwissen) Vorhersage Abbildung 23: Anwendung von Modellen Eine Analyse kann von verschiedener Art sein:  Datengetriebene oder explorative Analyse Ausgangspunkt sind die Daten, deren Muster beschrieben und verallgemeinert werden soll.  Modellgetriebene Analyse Ausgangspunkt ist eine Hypothese, die aus einer Stichprobe bestätigt werden soll. zf_DW_DM.doc Seite 32 Data Warehousing & Data Mining andre.maurer.name Im Data Mining werden verschiedene Methoden unterschieden: Entscheidungsbäume (siehe Kapitel 3.1.1) Neuronale Netze (siehe Kapitel 3.1.2) Regelinduktion IF IF ... ... THEN THEN ... ... Nearest Neigbor (siehe Kapitel 3.1.3) Genetische Algorithmen Konventionelle Statistik Visualisierung ergänzt in der Regel andere Data Mining Techniken: Bildliche Darstellung komplexer Daten zur Entdeckung von Hypothesen oder Veranschaulichung von Hypothesen oder Veranschaulichung von AnalyseErgebnissen. Verbreitete Diagrammklassen sind: Kurven-, Flächen, Balken-, Kreis-, Streu- und Kartendiagramme. Begriff Synonyme Verwandte Begriffe Datengesamtheit Lernmenge Grundgesamtheit, Stichprobe, Testmenge, Datenbank Datenelement Satz, Zeile, Tupel, Individuum, Beispiel, Beobachtung Variable Unabhängige Variable Abhängige Variable 5 4 Attribut, Merkmal, Feld, Spalte Fakt, Indikator, Dimension Exogene Variable Prädikator, Klassifikator Endogene Variable, Kriterium Vorhergesagte oder klassifizierte Variable Tabelle 11: Grundbegriffe der Datenanalyse Güte einer Data Mining Analyse  Der Erfolg einer Data Mining Methode ist abhängig von der Relevanz, der Zuverlässigkeit und der Validität (Verallgemeinerungsfähigkeit) der Variablen  Die Validität der Ergebnisse hängt davon ab, ob die Fachabteilung Hypothesen über Attribute und Beziehung der Datengesamtheit beisteuert 4 Unabhängige Variablen: z.B. Einkommen, Zivilstand, Alter, Beruf, Vermögen… 5 Abhängige Variable: Merkmal, dessen Wert vom Modell selbst erklärt wird (z.B. Kreditwürdig: ja/nein) zf_DW_DM.doc Seite 2 Data Warehousing & Data Mining   andre.maurer.name Steht lediglich eine Auswahl der Datengesamtheit als Datenelemente zur Verfügung (Teilerhebung), muss der Analytiker fragen, wie sicher er die Ergebnisse der Stichprobe verallgemeinern kann (Qualität der Stichprobe) Lernmenge und Testmenge werden unterschieden, wenn eine zweite Datengesamtheit (die Testmenge) das Ergebnis der Lernmenge validieren soll. Treffsicherheit von ad-hoc und methodischen Vorhersagen  Prognosen von Data Mining sind in der Regel treffsicherer als naive ad-hoc Vorhersagen  Naive Vorhersage: uninformiert Leitet zukünftigen Wert nur aus der Verteilung des Merkmals in der Vergangenheit her Keine Berücksichtigung der Faktoren, auf denen die Werte basieren  Methodische Vorhersage Schätzung von bedingten Wahrscheinlichkeiten Berücksichtigung unabhängiger Variablen, die die vorherzusagenden abhängigen Variablen beeinflussen. Interpretation/ Evaluation periodischer Update Wissen Data Mining Transformation Vorverarbeitung Auswahl Muster Transformierte Daten Zieldaten Data Warehouse Daten Abbildung 24: Zusammenhang: Data Mining und Data Warehousing Vereinfachtes Phasenschema der Anwendung von Data Mining  Problem spezifizieren Abhängige Variablen bestimmen Unabhängige Variablen bestimmen Hypothese formulieren  Daten sammeln und aufbereiten Datengesamtheit allenfalls in Lern- und Testmenge aufteilen Variablen für Modellierungszwecke transformieren  Daten explorieren Daten visualisieren Ausreisser analysieren Verteilungsmasse berechnen (Varianz) Variablen zueinander in Beziehung setzen Ergänzende Hypothesen generieren zf_DW_DM.doc Seite 3 Data Warehousing & Data Mining andre.maurer.name Hauptmethode anwenden Methode auswählen Hypothesen testen Zusammenhänge identifizieren und quantifizieren Kausalität von Korrelation unterscheiden Einfluss intervenierender Variablen identifizieren Ergebnisse validieren, präsentieren und anwenden Unsicherheit der Ergebnisse quantifizieren (Signifkanztest) Ergebnisse visualisieren Ergebnisse auf neue Stichproben anwenden   3.1 Klassifikation (Methoden) Die Aufgabe der Klassifikation ist es die Individuen (z.B. Bankkunden) bekannten Klassen (z.B. kreditwürdig, nicht kreditwürdig) zuzuordnen. Der Klassifikator entscheidet, welcher Klasse ein Individuum zuzuordnen ist. Der Klassifikator ist ein Modell der Anwendung. Im Klassifikator sind relevante Kriterien für die Klassenzuordnung codiert: Klassendefinition („Etikett“). Problem:  Die Kriterien für die Entscheidung sind nicht immer offensichtlich.  Die Erstellung eines Klassifikators ist aufwendig und benötigt Wissen. Mit Data Mining werden aus Beispielsdaten die Klassifikationsbeispiele gelernt. Die Klassifikation kann in eine Trainings- und eine Anwendungsphase unterteilt werden: Trainingsphase Anwendungsphase Aktuelle Daten (Individuen) Beispieldaten Lernen Lernen  Klassendefinitionen  Klassifikation Klassifikation (Modell) Training: Lernen der Kriterien für die Zuordnung der Individuen zu den einzelnen Klassen Gegeben: Menge von Beispielsindividuen Beschrieben durch Attribute (unabhängige Variablen) Klassenzugehörigkeit (abhängige Variable) Resultat: Klassendefinition Entspricht Data Mining Anwendung: Zuordnung von Individuen zu Klassen Gegeben: Beschreibung einzelner Individuen durch Attribute Resultat: Klassenzugehörigkeit (abhängige Variable) Klassenzugehörigkeit Abbildung 25: Trainings- und Anwendungsphase Klassifikator = Klassendefinitionen + Klassifikationsmethode  Es gibt verschiedene Methoden für die Klassifikation Entscheidungsbaum (siehe Kapitel 3.1.1) Neuronale Netze (siehe Kapitel 3.1.2) k-Nerest Neighbor (siehe Kapitel 3.1.3) Case-based Reasoning zf_DW_DM.doc Seite 4 Data Warehousing & Data Mining   Je nach Methode gibt es jeweils unterschiedliche Darstellungen der Klassendefinitionen Dadurch gibt es auch unterschiedliche Data-Mining-Verfahren 3.1.1    andre.maurer.name Entscheidungsbäume Entscheidungsbäume werden primär für die Klassifikation eingesetzt Entscheidungsbäume sind spezielle Darstellungen von Regelsystemen Entscheidungsbäume sind nicht die beste, jedoch die am besten visualisierbare Klassifikationsmethoden. Bäume – eine fundamentale Datenstruktur  Ein Baum ist entweder Leer Besteht aus einem Knoten (der Wurzel) und einer Liste von Bäumen (den Söhnen)  Die Verbindungen von einem Knoten zu den Söhnen heissen Kanten  Einen Knoten ohne Söhne nennt man Blatt  Ein innerer Knoten ist ein Knoten, der kein Blatt ist. innerer Knoten  Teilweise verwendet man auch die BeBlatt zeichnung (direkter) Vorgänger für VaAbbildung 26: Bäume terknoten und (direkter) Nachfolger für Söhne         Entscheidungsbäume sind spezielle Formen von Bäumen zur Repräsentation von Wissen Die inneren Knoten eines Entscheidungsbaums repräsentieren Entscheidungen Für jede Alternative gibt es einen Nachfolgeknoten Die Blätter eines Entscheidungsbaums enthalten das Ergebnis einer Entscheidung Ein Entscheidungsbaum ist eine Repräsentation für eine Hierarchie von Regeln Regeln haben die Form: WENN Bedingung DANN Folgerung Ein Pfad von der Wurzel zu einem Blatt entspricht einer Regel Die Entscheidungen sind unverknüpfte Bedingungen Das Blatt ist die Folgerung Algorithmus: Starte mit dem Wurzelknoten Solang der erreichte Knoten kein Blattknoten ist Beantworte die Frage des Knotens Folge der Kante, auf die Deine Antwort zutrifft Der Inhalt des erreichten Blattknotens ist das Ergebnis zf_DW_DM.doc Seite 5 Data Warehousing & Data Mining andre.maurer.name Beispiel: Welche Personen sind für eine Werbeaktion einer Autoversicherung interessant? Einkommen >20000 < 20000 nein Geschlecht weiblich männlich Familienstand ledig ja ja verheiratet nein Abbildung 27: Beispiel eines Entscheidungsbaums Aufbau eines Entscheidungsbaums  Manuell: Aufbau von Entscheidungsbäumen bzw. Regelsystemen durch Experten Æ Regeln sind oft redundant, lückenhaft, widersprüchlich oder ineffizient  Regelinduktion: automatische Ableitung eines Entscheidungsbaums oder von Regeln aus Beispielsdaten. Regelinduktion kann die manuelle Regeldefinition unterstützen. Enumerativer Ansatz Dieses Verfahren findet den bestklassifizierenden Baum, ist aber ineffizient. Erzeuge alle möglichen Entscheidungsbäume Wähle den Baum mit den wenigsten Fragen Heuristischer6 Ansatz Dieses Verfahren ist effizienter, findet aber nicht den bestklassifizierenden Baum. Ergänze einen bestehenden Baum jeweils durch einen neuen Entscheidungsknoten und stoppe, wenn die gewünschte Homogenität erreicht ist. Berechne für jedes Attribut, wie gut es allein die Elemente der Lernmenge klassifiziert Klassifiziere mit dem besten Attribut Wiederhole für jeden so entstandenen Teilbaum die ersten beiden Schritte 6 Heuristik: Lehre von den möglichst erfolgreich arbeitenden Lösungsverfahren. Bezeichnung für ein Lösungsverfahren, das nur zum Teil auf wissenschaftlich gesicherten Erkenntnissen, sondern vorwiegend auf Hypothesen, Analogien oder Erfahrungen aufbaut. Die Güte solcher Verfahren ist deshalb meist nicht beweisbar, sondern wird durch wiederholte Experimente an typischen Problemstellungen nachgewiesen zf_DW_DM.doc Seite 6 Data Warehousing & Data Mining andre.maurer.name Brich den rekursiven Prozess ab, sobald er ein bestimmtes Abbruchkriterium erfüllt. Fragen Welches Attribut wählt man als nächstes Entscheidungskriterium? Welchen Trennwert wählt man? Wie kann man die Klassifikationsgüte einer Entscheidung beurteilen? Ablauf der Induktion  Problem  Lernmenge Unabhängige ... ... ... ... ... ... Abhängige ... ...     Entscheidungsbaum  Lernmenge definieren Sammlung von Daten in Datenbank, SpreadsheetTabellen oder Textdatei Untersuchung von abhängigen und unabhängigen Variablen Daten in Data Mining System laden Importieren oder zugreifen auf Datenbank z.B. über ODBC Daten analysieren und anpassen Variablen mit offensichtlich geringem Klassifikationsbeitrag aussortieren Induktionsparameter anpassen Der Benutzer kann die Generierung des Entscheidungsbaums beeinflussen Entscheidungsbaum induzieren Entscheidungsbaum an einer Testmenge validieren Die Verallgemeinerung von Beispielen ist unsicher, so dass die gelernten Regeln an unabhängigen Beispielen getestet werden sollten Entscheidungsbaum anwenden Gelernte Regeln in Anwendung integrieren Abbildung 28: Aufbau Entscheidungsbau Daten und Muster Datenbankabfragen sind nicht mit Data Mining gleichzustellen  Datenbankabfragen Æ Welche Daten passen zu meinem Abfragemuster?  Data Mining Æ welches Muster passt zu den Daten? Datenarten  Diskret: endliche Zahl möglicher Werte z.B. Zivilstand, Geschlecht, Beruf Trennwerte: Auswahl einzelner Werte oder Gruppen  Numerisch: unendliche Zahl von Werten, auf denen eine Ordnung definiert ist z.B. Alter, Einkommen Trennwerte: Intervallgrenzen festlegen zf_DW_DM.doc Seite 7 Data Warehousing & Data Mining andre.maurer.name Erstellung von Entscheidungsbäumen Zivilstand verwitwet geschieden verheiratet ledig 8 8 988888889 8 8 8888888 99 89 9 888 9998 9 8 8 88 89 9 9 9 99 8999 99 9 999 989 99 9 9 8 9 9 9 999 99 9 99 2000 4000 8 88888 98 6000 99 9 Einkommen Abbildung 29: Jede Entscheidung teilt die Fläche in neue Abschnitte Fragen eines Entscheidungsbaums bestimmen  Welche Attribute trennen in welcher Reihenfolge am besten?  Welche Werte trennen am besten? Vorbereitung der Lernmenge  Zusammenführen der relevanten Daten in einer Relation (Tabelle) Evtl. Joins über mehrere Tabellen Meist sind nur wenige Attribute relevant  Aufteilung in Trainings- und Testmenge Trainingsmenge wird zum Lernen des Entscheidungsbaums verwendet Testmenge zum Prüfen des fertigen Entscheidungsbaums  Diskretisieren Umwandlung von numerischen Werten in diskrete Werte z.B. durch festlegen von Intervallen (z.B. Einkommen: <2000; 2000-5000, 50008000,>8000)  Ersetzen von Nullwerten z.B. durch arithmetisches Mittel  Datenkonversion Integerwerte z.B. durch Auf-/Abrunden Güte von Entscheidungsbäumen: Klassifikationsleistung  Das Gütekriterium jedes Entscheidungsbaums ist die Wahrscheinlichkeit der richtigen Klassifikation neuer, bisher unbekannter Objekte  Problem der Induktion Der Entscheidungsbaum verallgemeinert die Attributbeziehungen der Beispielsdaten Aber: Gelten die relativen Häufigkeiten der Beispielsdaten auch für künftige Objekte zf_DW_DM.doc Seite 8 Data Warehousing & Data Mining   andre.maurer.name Validierung der Klassifikationsleistung des Baumes Aufteilung der Daten in Trainings- und Testmenge Messen der Trefferquote des Baumes an einer Testdatenmenge Die Trefferquote ist der Quotient zwischen der Zahl der richtigen Klassifikation und der Gesamtzahl der Klassifikationsversuche Damit der Benutzer erkennen kann, was jeder einzelne Knoten zur Klassifikationsleistung beiträgt können verschiedene Messungen pro Knoten gemacht werden: Anzahl der eingehenden Objekte Art der Klassifizierung, wenn dieser Knoten ein Blatt wäre Anzahl der korrekt klassifizierten Objekte in diesem Knoten Induktionsparameter anpassen  Der Benutzer kann die Auswahl der Klassifikationsattribute und Trennwerte durch Parameter beeinflussen um eine möglichst hohe Klassifikationsleistung der Bäume zu erhalten  Beispiel für Parameter Minimale Klassengrösse Maximale Baumhöhe Wertzusammenfassung: Gruppierung von diskreten Werten Signkifikanzniveau (Irrtumswahrscheinlichkeit) Pruning: Grad der Beschneidung des Baums  Verschiedene Algorithmen lassen sich durch unterschiedliche Parameter beeinflussen Verbesserung der Klassifikationsleistung durch Pruning  Die Klassifikationsgenauigkeit eines Baums kann verbessert werden, indem „schwache“ Äste zurückgeschnitten werden Æ Pruning  Dies ist notwendig für Algorithmen, die zum „Übertrainieren“ neigen Ein übertrainierter Baum generalisiert schlecht, da er zu komplex aufgebaut ist und dadurch die Trainingsdaten zu genau abbildet  Ein zurückgeschnittener Baum ist auch leichter verständlich für den Anwender Abbildung 30: Baum vor dem Pruning zf_DW_DM.doc Abbildung 31: Baum nach dem Pruning Seite 9 Data Warehousing & Data Mining andre.maurer.name Algorithmen zum Aufbau von Entscheidungsbäumen Die am weitesten verbreiteten Algorithmen zum Aufbau von Entscheidungsbäumen sind:  C4.5 (Nachfolger von ID3, Vorgänger von C5.0)  CART (Classification and Regression Trees)  CHAID (CHI-squared Automatic Interaction Detection) Viele Data Mining Werkzeuge enthalten mindestens einen dieser Algorithmen.  Die Algorithmen zeigen im Durchschnitt ähnliche Klassifikationsleistung  Pruning führt zu deutlich besserer Leistung  Die Leistung hängt von den Daten und dem Problem ab Die Verfahren sind auch für mehr als zwei Klassen anwendbar (z.B. Qualitätsbeurteilung: Ausschuss, Nachbearbeitung, o.k.) Die Verfahren können Boolesche Entscheidungen treffen (z.B. Wenn Einkommen > 5000 und Alter > 30 dann kreditwürdig) oder durch Verallgemeinerung die Wahrscheinlichkeiten der Klassenzugehörigkeit angeben (z.B. Wenn Einkommen > 5000 und Alter > 30 dann kreditwürdig mit Wahrscheinlichkeit 0.92) Die Entscheidungsbaumgenerierung durch lernen:  Berechne für jedes Attribut, wie gut es allein die Elemente der Lernmenge klassifiziert  Klassifiziere mit dem besten Attribut  Wiederhole für jeden so entstandenen Teilbaum die ersten beiden Schritte  Brich diesen rekursiven Prozess ab, sobald er ein bestimmtes Abbruchkriterium erfüllt. Chi-Quadrat, Entropie, Signifikanzwert  Chi Quadrat-Wert und Entropie sind die Masse für die Wahrscheinlichkeit mit der ein Attribut noch zur Klassifikation mit einem Entscheidungsbaum beiträgt  Das Signifikanzniveau setzt einen Mindestwert für den Chi Quadratwert bzw. die Entropie eines Attributkandidaten Informationsgehalt Informationen können durch ihren Informationsgehalt (Entscheidungsgehalt) quantifiziert werden. Je mehr Binärentscheidungen die Darstellung einer Information benötigt, desto grösser ist der Gehalt dieser Information. Beispiel: Um ein Objekt einer von 10 Klassen zuzuordnen benötigt man maximal 10 Entscheidungen. Die Darstellung von 10 Entscheidungen benötigt 4 Bit (10 = 23 + 21) oder Genauer 3.32 Bit (Log210) Das Attribut mit dem höchsten Informationsgehalt wird zuerst als Entscheidungskriterium gewählt. zf_DW_DM.doc Seite 10 Data Warehousing & Data Mining andre.maurer.name ID3-Algorithmus Der ID3-Algorithmus verwendet das Attribut mit dem höchsten Klassifikationsgewinn. Zur Berechnung des Klassifikationsgewinns eines Attributs benötigt man  Die Entropie (Grad der Unordnung) einer Klassifikation Die Entropie quantifiziert die Information, die eine Klassifikation ohne Testattribute benötigen würde (Je mehr Klassifikationsinformationen ein Entscheidungsbaum enthält, desto kleiner die Entropie) Die Entropie verhält sich umgekehrt zum Informationsgehalt: Je grösser der Informationsgehalt, desto kleiner die Entropie Ziel von ID3: Baum mit minimaler Entropie Die Entropie nimmt mit wachsender Ungleichverteilung ab Hohe Entropie: Niedrige Entropie: − + −+ ++ + −+ −+− −− − − −− − −− − − − +− − − Die Entropie l für einen Entscheidungsbaum, der die Datensätze in die beiden Klassen – (Anzahl der Elemente in Klasse - = n) und + (Anzahl der Elemente in Klasse + = p) einteilt (binäre Klassifikation) sieht wird folgendermassen berechnet: p p n n − I ( p, n) = − * log 2 * log 2 p + n p + n p n p n + + Formel 1: Entropieberechnung  Den Erwartungswert des Attributs Die Entropie geht in den Erwartungswert ein, den man zur Definition des Klassifikationsgewinns benötigt: Der Erwartungswert misst die Information, die eine Klassifizierung mit Testattribut A benötigt. Sei A ein Attribut mit v möglichen Werten (a1,…, ai, …, av) Das Attribut A teilt als die Knotenelemente in V Partitionen (v Unterbäume) (z.B. A = Zivilstand; V = 4: ledig, verheiratet, geschieden, verwittwet) Erwartungswert EA der für die Klassifikation mit Wurzelattribut A erforderlichen Information = gewichtetes Mittel der Entropien der durch Ai aufgespannten Teilbäume EA = v ∑ i =1 pi + ni *l ( pi , ni ) p+n Formel 2: Erwartungswert l ( p i , n i ) = Entropie des durch Attributwert ai erzeugten Teilbaums i  Zur Auswahl des Testattributs verwendet ID3 den Klassifikationsgewinn G GA misst den Gewinn, dein eine Klassifikation mit Testattribut A im Vergleich zu einer Klassifikation ohne Testattribut erzielt zf_DW_DM.doc Seite 11 Data Warehousing & Data Mining andre.maurer.name Dazu berechnet man die Entropie des Teilbaums mit der Wurzel A und subtrahiert den Erwartungswert der durch A aufgespannten Teilbäume G A = I A ( p , n) − E A Formel 3: Klassifikationsgewinn Höchster Klassifikationsgewinn Wähle auf jeder Baumstufe das Wurzelattribut mit dem höchsten Klassifikationsgewinn Die rekursive Berechnung von Testattributen dauert solange, bis alle Partitionen nur noch entweder positive oder negative Instanzen enthalten oder ein benutzerdefinierter Schwellwert erreicht ist. Grober Induktionsalgorithmus mit ID3:  Erstelle aus der Datengesamtheit einen Entscheidungsbaum Wähle eine zufällige Lernmenge aus der Datengesamtheit Erstelle daraus einen Entscheidungsbaum FÜR JEDES Attribut Berechne den Klassifikationsgewinn Erstelle aus der Partition einen Entscheidungsbaum FALLS die Partition nur positive Instanzen enthält markiere den Knoten als Folgerung + FALLS die Partition nur negative Instanzen enthält Markiere den Knoten als Folgerung – BIS der Entscheidungsbaum die Datengesamtheit korrekt klassifiziert Füge ausgewählte falsch klassifizierte Elemente zur Lernmenge Erstelle aus der neuen Lernmenge einen Entscheidungsbaum 3.1.2 Neuronale Netze Menschliches Gehirn Künstliche Neuronale Netze orientieren sich an der Struktur der Gehirnzellen.  Das Menschliche Gehirn besteht aus etwa Eingabe 1011 Neuronen, die eng miteinander ver(Dendriten) netzt sind und parallel arbeiten  Jedes biologische Neuron besteht aus Verarbeitung Soma (Zellkörper) Æ zur Verarbeitung (Zellkörper) Dendriten (Nervenzellfortsätze) Æ entspricht der Eingabe Ausgabe Axon (Achsenzylinder) Æ entspricht (Axon) der Ausgabe  Informationsaustausch erfolgt mittels Botenstoffen (Neurotransmitter) über Synapsen (Berührungspunkten mit den Nachbarzellen bzw. Peripherie) Abbildung 32: Gehirnzellen zf_DW_DM.doc Seite 12 Data Warehousing & Data Mining     andre.maurer.name Die Informationsverarbeitung beruht im wesentlichen auf der Übertragung von Erregung zwischen Neuronen Die Art der Verbindung ist durch den Synapsentyp festgelegt Exzitatorisch (erregend) Inhibitorisch (hemmend) Der Informationsfluss verläuft immer von den Dendriten zum Zellkörper und weiter zu den Axonen Die neuronale Aktivität wird bestimmt durch die Entstehung des internen Potentials Dendriten summieren die Ausgabesignale der vorgeschalteten Neuronen und leiten sie in Form elektrochemischen Potentials dem Zellkörper zu Den Synapsen kommt dabei die Aufgabe zu, diese Potential entweder zu verstärken oder abzuschwächen Übersteigt das durch die Eingaben veränderte Membranpotential einer Zelle einen Schwellwert, so erzeugt der Zellkörper einen kurzfristigen elektrischen Impuls, das Aktionspotential: Das Neuron „feuert“ und schüttet das Aktionspotential über das Axon aus (Erregung verbundener Neuronen) Die Häufigkeit der Informationsübertragung bestimmt ganz entscheidend die Art und Weise der Aktivitätsübertragung  Synapsen haben bei häufigem Gebrauch die Eigenschaft zu wachsen  Bei seltener Benutzung degenerieren die Synapsen Das nachgeschaltene Neuron wird dementsprechend stärker oder schwächer beeinflusst. Künstliche Neuronale Netze Definition I: Ein neuronales Netz besteht aus vielen formalen Neuronen eines bestimmten Typs, die untereinander verbunden sind. Ein neuronales Netz ist somit ein gerichteter Graph, dessen Knoten formale Neuronen sind. Gewisse Eingabeleitungen kommen von aussen, die formalen Neuronen, in die diese Leitungen einlaufen, bilden die Eingänge des Netzes. Andere Leitungen führen nach aussen; die entsprechenden Neuronen stellen die Ausgänge des Netzes dar. Bezüglich der Anordnung der formalen Neuronen und ihrer Verbindungen unterscheidet man zyklenfrei und rückgekoppelte, geschichtete, vollständig vernetzte und beliebige Netzstrukturen. Definition II: Künstliche neuronale Netze sind massiv parallel verbundene Netzwerke aus einfachen (üblicherweise adaptiven) Elementen in hierarchischer Anordnung oder Organisation, die mit der Welt in der selben Art wie biologische Nervensysteme interagieren sollen. Neuron lernfähige Verarbeitungseinheit, die Eingaben aus Neuronen verarbeitet und an andere Neuronen ausgibt. Im Gegensatz zu natürlichen Neuronen, welche nur binäre Antworten senden können, können künstliche neuronale Systeme alles aufnehmen und ausgeben. zf_DW_DM.doc Seite 13 Data Warehousing & Data Mining andre.maurer.name Neuronales Netz Menge von Neuronen (von denen jedes aus eingaben eine einzige Ausgabe berechnet) mit einfacher Architektur (statt der Milliarden biologischer Nervenzellen) und wenigen zahlenübertragenden Verbindungen (statt der bis zu 100'000 biologischen Verbindungen). Durch neuronale Netze können Muster erkennt werden (z.B. Handschrift):  Gegeben Eingabe (z.B. eine Zahl zwischen 0 und 9 in Handschrift) Tatsächliche Ausgabe (z.B. die Ziffern 0 bis 9)  Gesucht Algorithmus, der einer beliebigen Eingabe die korrekte Ausgabe zuordnet (z.B. der handgeschriebenen 4 die Ziffer 4 zuordnet) Elemente Künstlicher Neuronaler Netze  Informationsverarbeitung im Knoten (schnelle Ebene der Informationsverarbeitung): EVA: ein Knoten verarbeitet mehrerer EINGABEN über VERARBEITUNGsgewichte zu einer einzigen AUSGABE e1 e2 . . . en g1j g2j Neuronj aj Ei Eingabe von Neuron i oder der Umwelt Æ gerichtete und gewichtete Verbindung gij Verbindungsgewicht zwischen Neuron i und Neuron j (entspricht den Synapsen biologischer Neuronen) aj Ausgabe des Neurons j f Transferfunktion (auch Aktivierungsfunktion genannt) Transferfunktion f gnj Abbildung 33: Informationsverarbeitung im Knoten   Lernverfahren (langsame Ebene der Informationsverarbeitung) Siehe Kapitel „Neuronales lernen“ Topologie (Architektur) Die Topologie beschreibt die Struktur eines Netzes (Welche Neuronen sind miteinander verbunden?) Geschichtete Modelle Unterscheidung von Eingabe-, Ausgabe, und verdeckten Neuronen Die Eingabeneuronen dienen zur Aufnahmen von an das Netz angelegten Mustern An den Ausgabeneuronen kann das Ergebnis der Verarbeitung abgelesen werden Darüber hinaus können eine oder mehrere Zwischenschichten existieren, die von aussen nicht direkt zugänglich oder beeinflussbar sind zf_DW_DM.doc Seite 14 Data Warehousing & Data Mining andre.maurer.name . . . verdeckte Schicht(en) Ausgabeschicht . . . AUSGABEMUSTER EINGABEMUSTER Eingabeschicht Abbildung 34: geschichtetes Modell Ungeschichtete Modelle Eingabemuster werden an alle Neuronen angelegt Ergebnis wird an allen Neuronen ausgelesen Abbildung 35: ungeschichtetes Modell Verbindungsrichtung (In welche Rechtung breitet sich die Aktivität im Netz aus?) Feedforward-Modelle Aktivierung erfolgt nur in einer Richtung von Eingabe- zu Ausgabeneuronen Abbildung 36: Feedforward-Modell Feedback-Modelle Rückkopplung bei Aktivitätsausbreitung möglich Abbildung 37: Feedback-Modelle Neuronales Lernen Theoretisch gibt es sehr viele Arten, wie Neuronale netze lernen können (am häufigsten ist jedoch die Variante 3, mit der auch die Varianten 1 und 2 realisiert werden können) 1. Aufbau neuer Verbindungen zf_DW_DM.doc Seite 15 Data Warehousing & Data Mining andre.maurer.name 2. Löschen existierender Verbindungen 3. Modifikation der Gewichte von Verbindungen 4. Modifikation des Schwellwerts von Neuronen 5. Modifikation der Aktivierungs- oder Ausgabefunktion 6. Entwicklung neuer Zellen 7. Löschen von Zellen Lernverfahren: e1 e2 Initialisiere g1 und g2 beliebig g1 g0 Ausgabeklasse a BIS berechnete Ausgaben = tatsächliche Ausgaben g2 FALLS a > e1*g1*e2*g2 Vergrössere g1 oder g2 um 0.1 SONST Verkleinere g1 oder g2 um 0.1 Abbildung 38: Lernverfahren Neuronale Netze werden für folgendes benötigt:  Klassifikationen (Beobachtungen bekannten Klassen zuordnen)  Clustering (Aus Beobachtungen bisher unbekannte Gruppen bilden)  Vorhersagen (Kontinuierliche Werte aus bekannten unabhängigen Variablen berechnen) Es gibt verschiedene Lernarten:  Überwachtes Lernen Ein „Lehrer“ ordnet jedem Eingabetupel die Lösung zu Lernmenge: Eingabe mit korrekten Ausgaben (Musterlösungen) Anwendung: Lernen von Klassifikationen Analoge Verfahren: Entscheidungsbäume, Regelinduktion Architekturen: einstufiges Perzeptron, mehrstufiges Perzeptron,…  Unüberwachtes Lernen Ein „Schüler“ lernt allein aus der Beobachtung der Eingaben Lernmenge: Eingabe ohne explizite Lösungen Analoge Verfahren aus der Clusteranalyse Architekturen: Kohonen-Netzwerke… Phasen der Anwendung Neuronaler Netze Die Phasen der Anwendung neuronaler Netze sind analog zur Klassifikation mit Entscheidungsbäumen: 1. Lern- und Testmenge definieren 2. Daten aufbereiten Neuronale Modelle Verlangen Numerische Eingaben Die oft in einen kleinen Bereich fallen müssen Zur Aufbereitung gehören deshalb auch Skalierung zf_DW_DM.doc Seite 16 Data Warehousing & Data Mining andre.maurer.name Codierung Abbildung numerischer Werte auf den Bereich zwischen 0 und 1 Normierungsfunktion (mit 0 als Min und 1 als Max): f ( x) = x − min max − min 3. Variablen auswählen Variablen mit geringem Klassifikationsbeitrag aussortieren Unterscheidung von abhängigen und unabhängigen Variablen 4. Spezifikation und Berechnung des Modells (Modelltyp wählen) Unterscheidungskriterien für verschiedene Modelltypen: Anzahl der Gewichtungsstufen (Æ Topologie) Anzahl der Eingabedimensionen Anzahl der Ausgabeklassen Datentypen (binär oder kontinuierlich) Transferfunktionen 5. Neuronales Netz an einer Testmenge validieren z.B. Kreuzvalidierung Daten austauschen (Testmenge und Lernmenge) Lernprozess noch einmal durchführen 6. Neuronales Netz anwenden zf_DW_DM.doc g11 1 . . . i . . . n 1 g1j . . . gij j . . . gnj gnm m AUSGABEMUSTER Neuronales Netz aus Eingabe- und Ausgabeneuronen, die nur über eine Gewichtungsstufe verbunden sind EINGABEMUSTER Architekturen  Einstufige Architektur Seite 17 Data Warehousing & Data Mining Neuronales Netz aus Eingabe- und Ausgabeneuronen, die durch mehr als eine Gewichtungsstufe verbunden sind Eingabeschicht  Dreistufige vorwärtsgerichtete 3-2-3-2Architektur     Eingabedimensionen    Anzahl Ausgabeklassen   verdeckte Schicht(en) Ausgabeschicht Verbindungsrichtung: vorwärts Verbindungspartner: nur Neuronen benachbarter Schichten Neuronenzahl: 10 Schichten: 4 Eingabeschicht  . . . . . . AUSGABEMUSTER Mehrstufige Architektur EINGABEMUSTER  andre.maurer.name verborgene Schichten Ausgabeschicht Eine Eingabedimension: ein Eingabeneuron Mehrere Eingabedimensionen: mehrere Eingabeneuronen (z.B. bei Boolescher Codierung je Klasse ein Eingabeneuron) Zweiklassen-Perzeptron: Ein Ausgabeneuron (mit dem booleschen Werte a1=0 oder a1=1) Mehrklassen-Perzeptron: mehrere Ausgabeneuronen Bei Boolescher Codierung benötigt man für 2n Klassen n Ausgabeneuronen Transferfunktion Die Transferfunktion (f) transferiert alle mit gij gewichteten Eingaben (ei) als Ausgabe (aj) auf einem bestimmten Wertbereich (oft -1 …+1). Die Berechnung der Ausgabe kann in drei Phasen unterteilt werden  Berechnung der Nettoeingabe Für ein Neuron ergibt sich die Nettoeingabe über die Propagierungsfunktion: Verknüpfung der Eingaben ei eines Neurons zu einem einzigen Wert Eine übliche Propagierungsfuktion: Summe der Produkte aus den Ausgaben der vorgeschaltenen Neuronen mit den jeweiligen Verbindungs- zf_DW_DM.doc Seite 18 Data Warehousing & Data Mining andre.maurer.name gewichten: n net j = ∑ g ij = g1 j * e1 + g 2 j * e2 + ... + g nj * en i =1   Die Transferunktion verarbeitet also die Nettoeingabe aj = f(netj) Berechnung der Aktivierung Berechnung der Ausgabe Beispiele für Transferfunktionen:  Lineare Transferfunktion  Je höher die Eingabe, desto höher die Aktivierung. z.B. Identitätsfunktion f(netj)= netj aj +1.0 netj -1.0  Lineare Transferfunktion mit Begrenzung  Vermeidet extreme Aktivierungspotentiale. +1 z.B. f (net j ) = − 1 falls falls sonst net j > 1 net j < −1 net j aj +1.0 netj -1.0  Sigmoide Transferfunktion (Monotone nichtlineare Funktion)  Im Verhalten vergleichbar zur Schwellwertfunktion z.B. f ( net j ) = 1 1+ e −γnet j aj +1.0 +0.5 netj  Schwellwertfunktion   Nur zwei Aktivierungszustände Sprunghafter Übergang bei Überschreiten eines Schwellwertes z.B. f (net j ) = zf_DW_DM.doc +1 fall net j > 0 − 1 sonst Seite 19 Data Warehousing & Data Mining andre.maurer.name aj +1.0 netj -1.0   Die Schwellkonstante ist der Wert, den die Nettoeingabe kompensieren muss, damit das Neuron feuert Man kann die Schwellwertkonstante als negatives Gewicht g0 interpretieren. Dann lautet die Formel für die Ausgabe: net’j=f(g0 + netj) Neuronj Σ Gewichtung Netto-- Aktivierung Transfereingabe (feuern), falls funktion Nettoeingabe > Schwellenkonstante aj Abbildung 39: Neuron mit Schwellwertfunktion Auf den Ausgabewert eines Neurons hat neben der darin festgelegten Funktion auch der Zeitpunkt der Berechnung einen Einfluss:  Synchrone Verarbeitung: Alle Neuronen einer Schicht berechnen ihren Nettoinput, danach werden Aktivierungs- und Ausgabewert berechnet  Asynchrone Verarbeitung: Ein zufällig ausgewähltes Neuron berechnet Nettoinput, Aktivierung und Ausgabe Dieser Wert geht in die Berechnung des nächsten zufällig gewählten Neurons ein Die Berechnung endet, wenn die Ausgabe aller Neuronen im Netz konstant bleibt. Dies kann (bei Feedback-Netzen) zu einem langwierigen Einschwingungsprozess führen. zf_DW_DM.doc Seite 20 Data Warehousing & Data Mining andre.maurer.name Netztypen feed-forward einlagig, binär mehrlagig Perzeptron MehrstufenPerzeptron feed back deterministisch KohonenModell HopfieldNetz stochastisch BoltzmannMaschine Abbildung 40: Arten von Netztypen   Merschichten-Perzeptron Mindestens eine verborgene Schicht Jedes Element einer Schicht ist mit jedem Knoten der nächsten Schicht verbunden Innerhalb einer Schicht sind keine Verbindungen erlaubt Perzeptron Bestehen aus zwei Schichten (Eingabe- und Ausgabeschicht) Neuronen sind einfache, binäre Schwellwertelemente Einstellungskriterium Erläuterung Mögliche Ausprägung Gewichtungsstufen Anzahl der Schichten Einstufig Æ können nur linear verlaufen Mehrstufig Eingabedimensionen Anzahl der Eingabeneuronen Eindimensional Æ Eingabe: 1 Variable Mehrdimensional Ausgabeklassen Anzahl der möglichen Klassen Zweiklassen Æ Ausgabe: Binär Æ benötigt 1 Neuron Mehrklassen-P Æ benötigt >1 Neuronen Daten der Variablen Kontinuierlich Binär Transferfunktion Schwellwert Andere Tabelle 12: Einteilungskriterien für Perzeptrone  Eindimensionales Zweiklassen-Perzeptron Eingabe: eine Variable e1 (=ein-dimensional) Ausgabe: Binär (Zuordnung zu einer von zwei Klassen) Transferfunktion Argument der Transferfunktion ist netj=g0+g1*e1 Beispiel Schwellwertfunktion e1 g0 g1 Ausgabeklasse a Abbildung 41: Eindimensionales Zweilassen-Perzeptron  Zweidimensionales Zweiklassen-Perzeptron Eingabe: zwei Variablen e1 und e2 (=zwei-dimensional) Ausgabe: Binär (Zuordnung zu einer von zwei Klassen) Transferfunktion Argument der Transferfunktion ist: netj=g0 + g1*e1+g2*e2 Beispiel Schwellwertfunktion zf_DW_DM.doc Seite 21 Data Warehousing & Data Mining andre.maurer.name e1 g0 g1 Ausgabeklasse a g2 e2 Abbildung 42: Zweidimensionales Zweiklassen-Perzeptron  Mehrdimensionales Zweiklassen-Perzeptron Eingabe: mehrere Variablen e1 und en (=mehr-dimensional) Ausgabe: Binär (Zuordnung zu einer von zwei Klassen) Transferfunktion Argument der Transferfunktion ist: netj=g0 + g1*e1+…+gn*en Beispiel Schwellwertfunktion e1 e2 g1 g0 Ausgabeklasse a g2 gn en Abbildung 43: Mehrdimensionales Zweiklassen-Perzeptron  Einstufige Perzeptrone können nur linear klassifiziert werden: e1 0 0.83 0.33 0.7 0.17 1 0.45 a −1 +1 −1 +1 −1 +1 −1 0 0.17 0.33 0.45 0.7 0.83 1 Trenngerade Abbildung 44: lineare Klassifikation Es gibt auch Einstufige Perzeptrone die nicht gelernt werden können Lernen beim Perzeptron Gesucht sind die Gewichte eines einstufigen Perzeptrons, das beliebige kontinuierliche Eingaben in Klassen einteilt. Dabei wird folgendes unterschieden:  Lernregeln Die Lernregel bestimmt, wie die Gewichte verändert werden müssen, solange die Abbruchbedingung nicht zutrifft.  Lernalgorithmus Der Lernalgorithmus startet mit beliebigen Gewichte- und Schwellwerten und modifiziert diese iterativ so lange, bis die tatsächlichen und berechneten Ausgaben ganz oder „fast“ übereinstimmen (Abbruchbedingung) zf_DW_DM.doc Seite 22 Data Warehousing & Data Mining andre.maurer.name Lernalgorithmus Beschrieb für zweidimensionales ZweiklassenPerzeptron Initialisiere die Gewichte g0, g1 und g2 beliebig Berechne alle Ausgaben a = f(g0+g1*e1+g2*e2) GEHE WIEDERHOLT DURCH ALLE Tripel (e1, e2, k) FALLS a die Eingaben e1 und e2 fehlklassifiziert g0=g0+∆g0 g1=g1+∆g1 g2=g2+∆g2 Berechne alle Ausgaben a neu BIS a = k für alle Eingaben e1 und e2. (gi ist die Gewichtsänderung, die durch die Lernregel berechnet wird) für mehrdimensionales Zweiklassen-Perzeptron Initialisiere die Gewichte g0, g1,…,gn beliebig Berechne alle Ausgaben a = f(g0+g1*e1+…+gn*en) GEHE WIEDERHOLT DURCH ALLE Tripel (e1, e2, …, en,k) FALLS a die Eingaben e1 bis en fehlklassifiziert g0=g0+∆g0 g1=g1+∆g1 … gn=gn+∆gn Berechne alle Ausgaben a neu BIS a = k für alle Eingaben e1 bis en. Mehrdimensionales MehrklassenPerzeptron    Hebb’sche Lernregel Jedes Neuron der Eingabeschicht ist mit jedem Neuron der Ausgabeschicht verbunden Der Ausgabewert ist ein Vektor aus n Elementen (jedes Ausgabeneuron lieferte ein Element des Vektors Lernalgorithmus In jedem Lernschritt sind die Gewichte aller Ausgabeneuronen anzupassen Die Anpassung des Gewichtes eines Ausgabeneurons entspricht dem Fall des Zweiklassenprzeptrons Die Hebb’sche Lernregel ist biologisch motiviert und bildet die Grundlage für die meisten komplexeren Lernregeln: Wenn Zelle j eine Eingabe von Zelle i erhält und beide gleichzeitig stark aktiviert sind, dann erhöhe das Gewicht gij (die Stärke der Verbindung von i nach j) ∆gij = ∀ * ei * aj ∆gij Änderung von Gewicht ∀ Lernrate (beeinflusst die Lerngeschwindigkeit) ∀ ist eine Konstant und beeinflusst die Lerngeschwindigkeit (je kleiner ∀, desto langsamer lernt das Netz). Ein zu grosses ∀ kann dazu führen, dass die korrekten Gewichte nicht gefunden werden (Erfahrungsgemäss sollt ∀ zwischen 0 und 1 sein) Ausgabe von (Vorgänger-)Neuron i ei aj Aktivierung von Neuron j Delta-Regel Die Delta-Regel berücksichtigt, im Gegensatz zur Hebb’schen Lernregel – die Höhe des Fehlers. Die Delta-Regel verändert die Gewichte proportional zur Differenz zwischen tatsächlicher und erwarteter Ausgabe ∆gij = ∀ * ei * (kj - aj) kj (kj – aj) zf_DW_DM.doc die tatsächliche Klasse (erwartete Ausgabe von Neuron j) Grösse des Fehlers in Neuron j Seite 23 Data Warehousing & Data Mining andre.maurer.name Mehrstufige Perzeptrons mit Backpropagation Mehrstufige, vorwärtsgerichtete Perzeptrons mit Fehlerrückführung nennt man Backpropagation. Backpropagation ist ein Lernverfahren, das nach einer Fehlklassifikation in der Ausgabeschicht alle Gewichte anpasst Überwachtes Lernen mit einstufigem Perzeptron An einem Beispiel: Problemspezifikation Entwicklung eines Neuronalen Netzes, das die logische Verknüpfung UND aus vier Beispielaussagen lernt. Die Lernmenge des UND-Netzes kann als Wahrheitstafel beschrieben werden: Aussage e 1 WAHR FALSCH WAHR FALSCH Aussage e 2 WAHR FALSCH FALSCH WAHR Aussage a 3 WAHR FALSCH FALSCH FALSCH Datenaufbereitung Ein Neuronales Netz kann nur numerische Werte verarbeiten. Deshalb wird WAHR als 1 und FALSCH als 0 codiert. Transferfunktion Folgende multiplikative Transferfunktion wird verwendet: 1 e1 g13 3 2 Lernverfahren Transferfunktion e2 a3 a3 = g13 * e1 * g23 * e2 g23 Um jedoch zu den Gewichten (g) zu kommen benötigt man ein Lernverfahren  Initialisiere g13 und g23 beliebig  BIS berechnete Ausgaben = tatsächliche Ausgaben FALLS a3 > g13 * e1 * g23 * e2 Vergrössere g13 oder g23 um 0.1 SONST Verkleinere g13 oder g23 um 0.1 Ein mögliches Ergebnis des Lernalgorithmus ist: g13 = 2 g23 = 0.5 g 13 × e 1 2×1 2×0 2×1 2×0 g 23 × e 2 0.5 × 1 0.5 × 0 0.5 × 0 0.5 × 1 berechnete Ausgabe a 3 1 0 0 0 Neuronale Netze vs. Entscheidungsbäume  Die Klassifikationsleistung neuronaler Netze ist sehr gut  Wegen der besseren Erklärungsleistung sind Entscheidungsbäume für viele vertrauenswürdiger  Regeln sind, im Gegensatz zu Gewichten neuronaler Netze, nachvollziehbar zf_DW_DM.doc Seite 24 Data Warehousing & Data Mining  Anwendungen Neuronaler Netze kommen vor allem im medizinischen Bereich vor (z.B. Krankheitsbilder in Chromosomen zu erkennen) 3.1.3    andre.maurer.name K Nearest Neighbour (kNN) Neue Datensätze werden aufgrund ihrer Ähnlichkeit zu anderen Datensätzen klassifiziert kNN bildet kein abstraktes Modell der gegebenen Daten. Der neue Datensatz wird mit allen vorhandenen Datensätzen verglichen Das Verfahren benutzt einen Entfernungsmass um neue Datensätze zu klassifizieren Die Entfernung zu allen gespeicherten Datensätzen wird berechnet Die Mehrheit der nächsten Datensätze bestimmt die Klasse des neuen Datensatzes Klasse A Klasse B Neuer Datensatz Beispiel: k = 3 Klassifikationsgüte  Die Klassifikationsgüte hängt von der Anzahl k der nächsten Nachbarn und der Qualität des Entfernungsmasses ab  Anzahl nächste Nachbarn Die Zahl k legt fest, wie viele Elemente für die Klassifikation berücksichtigt werden Die Mehrheit der k ähnlichsten Datensätze bestimmt die Klassenzugehörigkeit von X k=1 : Die Klasse des ähnlichsten Elements D wird geliefert: k>1 : Die Mehrheit der k ähnlichsten Datensätze bestimmt die Klassenzugehörigkeit von X Schätzung des optimalen k durch Kreuzvalidierung Die Kreuzvalidierung hilft, den optimalen Wert für k zu schätzen Jeder Datensatz der Trainingstabelle wird mit allen anderen Datensätzen nach dem Kriterium Entfernung verglichen (Entfernungsmetrik): Euklidische Behandelt jedes Attribut bei der Entfernungsmessung gleich ( x1 − y1 ) 2 + ... + ( x n − y n ) 2 Formel 4: Euklidische Entfernung x entspricht den Attributwerten des neuen Datenelements y entspricht den Attributwerten des zu vergleichenden Datenelementes zf_DW_DM.doc Seite 25 Data Warehousing & Data Mining andre.maurer.name Bei diskreten Attributen wird die Distanz mit 0 (bei Übereinstimmung) oder 1 (wenn keine Übereinstimmung) festgelegt Attributgewichtung Attribute werden bezüglich ihres Klassifikationsbeitrags gewichtet. Dies entspricht einer Skalierung der Dimensionen des euklidischen Raums Methoden zur Berechnung der Attributgewichtungen sind Mutual Information (Ziel: Beitrag jedes unabhängigen Attributs zum abhängigen Attribut berechnen). M(C,A): Mutual Information von Attribut A und Klasse C Mass für gemeinsame Information der beiden Attribute A und C , d.h. ihre gemeinsame Entropie M(C,A) ist maximal, wenn der Wert von C bekannt ist, sobald der Wert von A bekannt ist, d.h. das Attribut A besitzt alle Informationen, um die Klasse zu bestimmen. Sind die Attribute A und C unabhängig, ist M(A,C)=0, d.h. A trägt nichts zur Klassifikation bei Berechnung M (C , A) = ∑p iJ ij log( pij π i qi ) Formel 5: Mutual Information pij = Wahrscheinlichkeit, dass der Wert i von C und der Wert j von A gemeinsam auftreten π i = Wahrscheinlichkeit, dass C den Wert i hat qi = Wahrscheinlichkeit, dass A den Wert j hat Chi-quadrat, Chi-square Dann wird jeder Datensatz der Trainingstabelle mit verschiedenen Werten für k = 1 bis N (vorgegebener Maximalwert) klassifiziert Für jedes k wird aufgezeichnet, wie viele der Trainingsdaten korrekt klassifiziert wurden Das Ergebnis ist ein Wert für k, bei dem die meisten Datensätze korrekt klassifiziert wurden Die Beurteilung der Klassifikationsgüte nennt man Konfusionsmatrix. In dieser werden die Ergebnisse eines Testlaufs dargestellt. Sie zeigt zu jeder Klasse Die Gesamtzahl der Elemente der Klasse Die Anzahl der fehlklassifizierten Elemente Welchen Klassen wie viele Elemente zugeordnet wurden Annahme Ablehnung keine Antwort total 335 177 532 Fehler 25 12 64 Annahme 310 6 26 Ablehnung 16 165 38 keine Antwort 9 6 468 Tabelle 13: Konfusionsmatrix  Entfernungsmass zf_DW_DM.doc Seite 26 Data Warehousing & Data Mining  andre.maurer.name Welche Attribute werden für den Vergleich verwendet? Werden die Attribute gleich oder unterschiedlich gewichtet? Kann man Informationen über die Ähnlichkeit von Attributwerten nutzen? In der Trainingsphase wird versucht, die optimalen Parameter zu identifizieren Beurteilung von kNN  kNN liefert bei kleinen Datenmengen relativ gute Klassifikationsergebnisse  Vorteil: Geringer Trainingsaufwand  Nachteil: hoher Klassifikationsaufwand (weil ein neuer Datensatz mit allen bekannten Datensätzen verglichen werden muss) Verbesserungsvorschläge der Klassifikationszeit Statt des Vergleichs mit jedem Datensatz fasse ähnliche Datensätze zu Gruppen zusammen Vergleich erfolgt zu Repräsentanten der Gruppe Ein Element jeder Gruppe (Durchschnittselement) Trainingsaufwand: gering Klassifikationszeit ist proportional zur Anzahl Gruppe 3.1.4   Batch Nested Generized Exemplars (BNGE) BNGE ist eine Verallgemeinerung des kNN-Verfahrens Nahe beieinander liegende Datensätze der gleichen Klasse werden soweit wie möglich zu multi-dimensionalen Rechtecken zusammengefasst, bis sie drohen, Datensätze anderer Klassen zu überdecken. Alle Rechtecke enthalten nur Elemente einer Klasse Klassifikation mit BNGE Fällt ein Datensatz in ein Rechteck, dann wird er der Klasse des Rechtecks zugeordnet Fällt ein Datensatz in kein Rechteck, verweigert BNGE die Klassifikation (in diesem Fall könnte man z.B. kNN einsetzen) Abbildung 45: BNGE-Verfahren BNGE     Bottom-up Verfahren Fasst immer nur einzelne Beispiele zusammen Alle Daten eines Rechtecks sind in der gleichen Klasse Konservativ: Datensätze die in kein Rechteck fallen, werden nicht klassifiziert Entscheidungsbäume   Teilen den ganzen Raum in achsenparallele Rechtecke Klassifizieren auch Datensätze, die fernab von allen bekannten Datensätzen liegen Tabelle 14: Vergleich BNGE - Entscheidungsbäume zf_DW_DM.doc Seite 27 Data Warehousing & Data Mining 3.2 andre.maurer.name Clusteranalyse Clustering-Methoden werden angewandt, wenn es nicht darum geht, eine Klasse vorherzusagen, sondern Objekte in homogene Gruppen einzuteilen (Segmentierung). Die Entscheidung, in welche Teilmenge ein Objekt fällt, wird aufgrund von Ähnlichkeiten gefällt. 1 1 1 1 1 Homogene Teilmengen 2 2 2 erkennen (Clustering) B1 Beschreibung erzeugen (Klassifikation) 3 3 3 3 Unabhängige Variablen B2 B3 Neue abhängige Variable Unabhängige Variablen Abbildung 46: Clusteranalyse  Clustering   Klassifikation Anwendung Identifikation einzelner Zielgruppen durch Segmentierung des Kundenstammes Charakterisierung der Teilgruppen Generierung zielgruppenspezifischer Angebote Clustering Klassifikation  Nicht überwachtes Lernen  Übewachtes Lernen  Zuordnung von Objekten zu Klassen ist nicht bekannt, d.h. es gibt keine abhängige Variable  Für eine Menge von Beispielen sind korrekte Ergebnisse bekannt. D.h. es gibt eine abhängige Variable, die der Klasse entspricht  Kriterium für Segmentierung: alle Datensätze einer Partition sollten ähnlich sein.  Die Korrektheit einer Zuordnung kann für die Lern- und Testmenge überprüft werden.  Da im Vorfeld nicht bekannt ist, welche Objekte in welche Klasse kommen, kann die korrekte Zuordnung nicht überprüft werden Tabelle 15: Unterschiede Klassifikation – Clustering    Clustering ist ein heuristisches Verfahren Viele Clustering-Verfahren starten mit zufälligen Ausgangswerten, so dass aufeinander folgende Anwendungen zu unterschiedlichen Klasseneinteilungen führen können. Unterschiedliche Clustering-Verfahren führen zu unterschiedlichen Klasseneinteilungen Meist wird ein Clusteringverfahren mehrfach auf den gleichen Daten angewendet. Ein Experte beurteilt jeweils die gefundene Klasseneinteilung auf ihre Sinnhaftigkeit. Anschliessend können durch Klassifikation die als gut erachteten Klassen gelernt und für Vorhersagen verwendet werden. zf_DW_DM.doc Seite 28 Data Warehousing & Data Mining andre.maurer.name Es gibt verschiedene Arten von Clustern: K las s e 1 2 2 1 2 3 3 1 3 1 a b c d e f g h i j a c j h k f g a b e d k j h g i c j h c a k i g 1 0. 4 0. 1 0. 3 0. 1 0. 4 0. 1 0. 7 0. 5 0. 5 0. 3 2 0. 1 0. 8 0. 3 0. 1 0. 2 0. 4 0. 2 0. 4 0. 2 0. 1 b Die identifizierten Gruppen können einander überlappen, so dass ein Objekt in mehrere Gruppen fällt b f f Die identifizierten Gruppen können einander ausschliessen: jedes Objekt gehört nur einer Gruppe an. i e d a b c d e f g h i j e d Die identifizierten Gruppen können wahrscheinlichkeitsverteilt sein. D.h. ein Objekt gehört einer Gruppe einer gewissen Wahrscheinlichkeit an. 3 0 .5 0 .1 0 .4 0 .8 0 .4 0 .5 0 .1 0 .1 0 .3 0 .6 Die identifizierten Gruppen können hierarchisch sein, so dass Instanzen auf der obersten Ebene grob eingeteilt und jede dieser Gruppen weiter verfeinert wird. g i f a d k h j b c e Die Wahl der Cluster sollte eigentlich von der Anwendung abhängen. Da man jedoch die Cluster erst finden will, kann man im Vorfeld die richtige Clusterung nicht erkennen. Deshalb hängt die Wahl von den verfügbaren ClusteringWerkzeugen ab. 3.2.1 Clustermethoden  Clusteranalyse Deterministische Verfahren hierarchisch agglomerativ Probabilistische Verfahren partitionierend divisiv Minimaldistanz Austausch Abbildung 47: Clustermethoden zf_DW_DM.doc  Probalistisches Verfahren Objekte werden Klassen mit einer Wahrscheinlichkeit zugeordnet Deterministisches Verfahren Binäre Zuordnung von Objekten zu Klassen Partitionierend Ausgehend von einer zufälligen Gruppeneinteilung werden Cluster durch Austausch von Objekten verbessert Hierarchisch Die optimale Klassenzahl kann sukzessive ermittelt werden Agglomerative Verfahren Zu Beginn stellt jedes Objekt ein eigenes Cluster dar, die schrittweise unter möglichst geringem Homogenitätsverlust zusammengefasst werden Seite 29 Data Warehousing & Data Mining andre.maurer.name Divisive Verfahren Alle Datenobjekte bilden ein Cluster, das schrittweise aufgeteilt wird Bayes’sches Clustering: Autoclass Autoclass ist ein aus der Wahrscheinlichkeit basierendes Clusteringverfahren (probalistisches Clustering) und bestimmt die Anzahl der Klassen selbst. Autoclass kann diskrete und numerische Werte verarbeiten. Der Zeitaufwand ist linear zur Anzahl an Datensätzen. K-Means Methode (K-Mittelwert-Methode) K-Means-Mehtode ist ein iteratives distanzbasiertes Clustering und arbeitet nach folgendem Verfahren: 1. Bei der K-Means Methode wird im Vorfeld spezifiziert, wie viele Cluster gebildet werden sollen (Parameter k) 2. Dann werden k verschiedene Punkte (Datenobjekte) als Clusterzentrum ausgewählt 3. Objekte werden unter Verwendung der euklidischen Distanz ihrem nächstgelegenen Clusterzentrum zugewiesen 4. Als nächstes wird der Mittelwert aller Objekte in jedem Cluster berechnet. Die Mittelwerte werden als neue Zentrumswerte angenommen 5. Die Punkte 3 und 4 werden so lange wiederholt, bis in aufeinander folgenden Runden jedem Cluster die gleichen Objekte zugewiesen sind (bis die Cluster stabil sind und sich die Mittelwerte nicht mehr verschieben) K-Means ist eine klassische Technik, zu der es viele Varianten gibt. Der grundlegende Algorithmus kann ziemlich zeitaufwendig sein:  Unter Umständen sind viele Iterationen notwendig  In jeder Iteration müssen die Distanzen aller Instanzen zu allen Clusterzentren berechnet werden, um jeweils das passende Cluster zu ermitteln.  Es gibt Optimierungen, teilweise aber auf Kosten der Qualität K-Means kann auch angewendet werden, um hierarchische Cluster zu identifizieren.  Wende K-Means an (z.B. mit k=2)  Für jedes Cluster wiederhole K-Means Inkrementelles Clustering Inkrementelles Clustering verwendet die Datenobjekte nacheinander zur Clusterbildung. Das Ergebnis ist ein Baum bei dem  Jeder innere Knoten einem Cluster  Jedes Blatte einem Datensatz entspricht Bei Hinzunahme eines neuen Datensatzes kann einer der folgenden Fälle auftreten zf_DW_DM.doc Seite 30 Data Warehousing & Data Mining  andre.maurer.name Der Datensatz pass zu keinem bisherigen Cluster Æ neues Cluster a  b  d e Der Datensatz pass zu einem bisherigen Cluster a  c Die beiden zu dem neuen Datensatz ähnlichsten Cluster werden zu einem neuen Cluster verschmolzen und mit dem Datensatz verbunden Das zu einem Datensatz ähnlichste Cluster wird aufgeteilt und der eine Teil mit dem neuen Datensatz verbunden b c d b a d a d h f e f c h b e c f e g Kohonen-Lernverfahren Kohonen-Netze (auch Kohonen-Maps genannt) sind spezielle Neuronale Netze (siehe Kapitel 3.1.2) für unüberwachtes Lernen. Kohonen-Netze bestehen aus zwei Schichten:  Jedes Neuron der Eingabeschicht ist mit jedem Neuron der Ausgangsschicht verbunden  Die Ausgabeschicht ist eine zwei- oder dreidimensionale Anordnung von Neuronen Ziel ist es jedem Eingabesignal genau ein Neuron zuzuordnen, das am stärksten aktiviert ist. Abbildung 48: Kohonen-Netz    Der Kohonen-Lernalgorithmus ist ein iterativer Algorithmus, der versucht, zufällige Eingangssignale korrekt auf der Ausgabeschicht abzubilden Zu Beginn werden die Gewichte der Ausgabeneuronen beliebig gewählt Zum Trainieren des Netzes werden Eingabesignale angelegt zf_DW_DM.doc Seite 31 Data Warehousing & Data Mining   andre.maurer.name Die Gewichte des Ausgabeneurons, das am stärksten auf das Eingabesignal reagiert, werden angepasst, so dass es beim nächsten gleichen oder ähnlichen Eingangssignal noch stärker reagiert. Gleichzeitig werden auch die Gewichte der umliegenden Neuronen angepasst (allerdings weniger stark) Wenn das Netzwerk trainiert ist, sind ähnliche Eingabesignale benachbarten Neuronen der Ausgabeschicht zugeordnet. 3.3 Assoziationsregeln Assoziationsregeln beschreiben Abhängigkeiten zwischen Attributen einer Transaktion. (z.B. Kunden, die Zahnbürsten kaufen, kaufen meist auch Zahncreme) {Zahnbürste} Æ {Zahncreme} {Regelrumpf} Æ {Regelkopf} Anwendungsmöglichkeit ist zum Beispiel bei Aktionswaren: Um den Kauf anderer Produkte anzuregen müssen Assoziierte Waren nicht gemeinsam Aktion sein aber nebeneinander liegen. Somit fördert die Aktion den Verkauf assoziierter Ware. 3.3.1     Transaktionen und Assoziationsregeln Jede Transaktion besteht aus einer Menge einzelner Elemente (Items) Eine Assoziationsregel wird mit „X Æ Y“ bezeichnet und bedeutet, dass das Auftreten der Itemmenge X zu dem Auftreten der Itemmenge Y führt Eine Transaktion erfüllt eine Assoziationsregel X Æ Y, wenn alle Items, die in der Regel vorkommen, auch in der Transaktion vorkommen. Transaktionen können über mehrere Datensätze mit einem gemeinsamen Transaktionsattribut verteilt sein. Jede Transaktion ein Datensatz: Einkaufstransaktion gekaufte Artikel (Items) t1 Saft, Cola, Bier t2 Saft, Cola, Wein t3 Saft, Wasser t4 Cola, Bier, Saft t5 Saft, Wein, Bier, Cola t6 Wasser Die Transaktionsregel {Cola} → {Saft} wird von Transaktionen t1, t2, t4 und t5 erfüllt. Die Transaktionsregeln {Cola,Bier} → {Saft} {Cola} → {Saft, Bier} werden von den Transaktionen t1, t4 und t5 erfüllt. Transaktion auf mehrere Datensätze verteilt: Einkaufstransaktion gekaufte Artikel (Items) t1 Saft t1 t1 Cola Bier t2 t2 Saft Cola t2 Wein t3 t3 Saft Wasser t4 t4 Cola Bier t4 t5 Saft Saft t5 t5 Wein Bier t5 t6 Cola Wasser Abbildung 49: Transaktionen zf_DW_DM.doc Seite 32 Data Warehousing & Data Mining 3.3.2 andre.maurer.name Kennzahlen für Assoziationen Support  Für welchen Anteil aller Transaktionen gilt die Regel X Æ Y  Die Vorgabe eines Mindestsupport blendet Regeln aus, die nur für einen Bruchteil des Datenbestandes gelten.  Zur Berechnung des Support wird die Anzahl der Transaktionen, in denen beide interessierenden Itemmengen vorkommen, durch die Anzahl aller Transaktionen geteilt Support(X Æ Y) = Anzahl der Transaktionen, in denen X und Y vorkommen Anzahl aller Transaktionen Formel 6: Kennzahl für Assoziationen: Support Konfidenz  Für welchen Anteil der Transaktionen, in denen X gilt, gilt die Assoziationsregel XÆ Y. In wie vielen Transaktionen, in denen X vorkommt, kommt auch Y vor  Die Vorgabe eines Mindestkonfidenz blendet Regeln aus, die nur für einen Bruchteil des Datenbestandes gelten.  Zur Berechnung der Konfidenz wird die Anzahl aller regelerfüllenden Transaktionen durch die Anzahl der Transaktionen, die X enthalten geteilt. Konfidenz(X Æ Y) = Anzahl der Transaktionen, in denen X und Y vorkommen Anzahl der Transaktionen, in denen X vorkommt Formel 7: Kennzahl für Assoziationen: Konfidenz Lift  Der Lift gibt an, wie hoch der Konfidenzwert für die Regel den erwarteten Konfidenzwert übertrifft  Der Lift zeigt also die generelle Bedeutung einer Regel  Beispiel: Gegeben sei die Regel {Zahnbürste}Æ{Zahncreme} Angenommen 10% aller Kunden kaufen Zahncreme, aber 50% aller Kunden, die eine Zahnbürste kaufen, kaufen Zahncreme Dann hat die Regel einen 5-fachen Lift 3.3.3   Prinzip des Assoziationsregellernens Finde alle Konstellationen von Items {i1,…,in}, die den geforderten Mindestsupport aufweisen Für alle gefundenen Konstellationen {i1,…,in} und alle Items i mit einer Auftretenshäufigkeit, die höher ist als der geforderte Mindestsupport, generiere Regeln der Form {i1,…,in}Æ i berechne den Support und die Konfidenz der Regel und wenn Support und Konfidenz nicht den Mindestanforderungen entsprechen, verwerfe die Regel wieder. zf_DW_DM.doc Seite 33 Data Warehousing & Data Mining  andre.maurer.name Beispiel: Assoziationsregeln mit 1 oder 2 Items im Regelrumpf, einem Item im Regelkopf und einem Mindestsupport von 50% Assoziationsregeln erfüllende Transaktionen Support Konfidenz Saft → Cola t1, t2, t4, t5 66% 80% Cola → Saft t1, t2, t4, t5 66% 100% Cola → Bier t1, t4, t5 50% 75% Bier → Cola t1, t4, t5 50% 100% {Saft, Cola} → Bier t1, t2, t4, t5 66% 75% {Bier, Cola} → Saft t1, t4, t5 50% 100% {Saft, Bier} → Cola t1, t4, t5 50% 100% Cola und Bier sind in 50% der Transaktionen enthalten 75% der Kunden, die Cola kaufen, kaufen auch Bier 100% der Kunden, die Bier kaufen, kaufen auch Cola 75% der Kunden, die Saft und Cola kaufen, kaufen auch Bier 100% der Kunden, die Bier und Cola kaufen, kaufen auch Saft Abbildung 50: Beispiel von Assoziationsregeln 3.4 Sequenzmuster Ein Sequenzmuster ist die gleichförmige Abfolge von Elementen in den Transaktionen. Beispiel:  Assoziation: „Welcher Artikel werden zusammen gekauft?“  Sequenzmuster: „Welche Artikel werden nacheinander gekauft?“ Für die Untersuchung auf Sequenzmuster muss die Transaktionsdatenbank neben den Elementen der Transaktion auch folgende Merkmale enthalten:  Transaktionszeit  Zusammengehörigkeitsmerkmal (z.B. Kundennummer) 3.4.1  Prinzip der Sequenzmuster-Erkennung Sortierung der Datenbank Nach Zusammengehörigkeitsmerkmal als Primärschlüssel (Tabelle 1) Nach Transaktionszeit als Sekundärschlüssel (Tabelle 1) Aufbau der Sequenzen sortiert nach Zusammengehörigkeitsmerkmal (Tabelle 2) Tabelle 2 Tabelle 1 Kunden-ID 1 1 2 2 2 3 4 4 4 5 Transaktionsdatum 25. Okt 97 30. Okt 97 10. Okt 97 15. Okt 97 20. Okt 97 23. Okt 97 27. Okt 97 30. Okt 97 06. Nov 97 12. Okt 97 gekaufte Artikel A30 A90 A10, A20 A30 A40, A60, A70 A30, A50, A70 A30 A40, A70 A90 A90 Kunden-ID Kunden-Sequenz 1 {(A30) (A90)} 2 {(A10 A20) (A30) (A40 A60 A70)} 3 {(A30 A50 A70)} 4 {(A30) (A40 A70) (A90)} 5 {(A90)} Abbildung 51: Sortierung der Datenbank zf_DW_DM.doc Seite 34 Data Warehousing & Data Mining andre.maurer.name Finden der häufigen Itemmengen Analog zum Finden der Kandidaten für Assoziationsregeln Transformation der Datenbank Nur noch die häufigen Itemmengen werden den Kunden zugeordnet (dient lediglich der Effizienzsteigerung) Finden der Sequenzmuster Häufige Itemmengen werden zu Sequenzmustern kombiniert und geprüft, ob sie den Mindestsupport erreichen (Analog zum Finden von Assoziationsregeln) Es muss beachtet werden, dass ein gefundenes Muster nicht in einem längeren enthalten ist.    3.5 Data Mining Prozess – CRISP-DM CRIPS-DM = Cross-Industry Standard Process for Data Mining Die CRISP-DM Methodology ist folgendermassen aufgebaut: Phases CRISP Process Model Generic Tasks Mapping Specialized Tasks Process Instances CRISP Process Abbildung 52: CRIPS-DM-Methodology     Phasen: Der Data Mining Prozess ist in verschiedene Phasen gegliedert Generic Tasks: Jede Phase besteht aus mehreren generischen Aufgaben, allgemein genug, um alle Data Mining Anwendungen abzudecken (z.B. Daten bereinigen) Specialized Tasks: Beschreibt, wie die generischen Aufgaben in einer konkreten Situation bearbeitet werden (z.B. Bereinigung numerischer oder diskreter Daten). Die Aufgaben müssen nicht in fester Reihenfolge ablaufen, insbesondere können Schleifen notwendig sein. Process instance: Beschreibt die Aktionen, die konkret im jeweiligen Anwendungsfall ausgeführt werden. Der Data Mining Context bestimmt die Abbildung der generischen auf die spezialisierte Ebene. Es werden vier Dimensionen unterschieden, die die konkreten Aktionen beeinflussen:  Application Domain (z.B. Bonitätsprüfung, Kaufverhalten,…)  Data Mining Problem (z.B. Klassifikation, Clustering, Assoziation,…)  Technical Aspects (z.B. Fehlende Daten, Ausreisser in den Daten,…) zf_DW_DM.doc Seite 35 Data Warehousing & Data Mining  andre.maurer.name Tool and Technique (Eingesetzte Data Mining Werkzeuge und/oder Techniken. Z.B. D-Miner, Clementine, MineSet, C4.5, Neural Nets) 3.5.1 Das CRISP-DM Referenzmodell  Business Business understanding understanding Data Data understanding understanding  Data Data preparation preparation  Data Deployment Deployment Modelling Modelling  Evaluation Evaluation Abbildung 53: CRISP-DM Referenzmodell   Business Business understanding understanding Determine Business Objectives Background Business Objectives Business Success Criteria Assess Situation Inventory of Resources Requirements, Assumptions and Constraints Risks and Contingencies Terminology Costs and benefits Describe Data Mining Goals Data Mining goals Data Mining Success Criteria Data Data understanding understanding Data Data preparation preparation Collect Initial Data Initial Data Collection Report Data Set Data Set Description Describe Data Data Description Report Explore Data Data Exploration Report Verify Data quality Data Quality Report Select Data Rationale for Inclusion/Exclusion Business understanding Verstehen der Projektziele und –Anforderungen aus Unternehmenssicht; Aufstellen einer Problemdefinition und eines Vorgehensplans. Data understanding Daten sammeln, Probleme der Datenqualität erkennen, erste Einsichten in Daten gewinnen, interessante Teilmengen entdecken um Hypothesen zu formulieren Data preparation Auswahl von Tabellen, Datensätzen und Attributen, Transformation und Aufbereitung der Daten Modelling Auswahl und Anwendung verschiedener DaMiMethoden, Kalabrieren der Parameter. Typischerweise gibt es mehrere Techniken für ein Problem mit unterschiedlichen Anforderungen an die Daten, so dass mehrfache Datenaufbereitungen notwendig werden können Evaluation Überprüfen, ob die Modelle die Unternehmesnanforderungen erfüllen, insbesondere überprüfen, ob wichtige Business issues nicht ausreichen berücksichtigt wurden (mittels TestDatenemenge) Deployment Einbetten der gefundenen Modelle in die Entscheidungsprozesse der Organisation; dies kann reichen vom Schreiben eines einfachen Reports bis zur Implementierung eines wiederholbaren Anwendungssystems. Modelling Modelling Select modeling Evaluate Results technique Assessment of Data Modeling Techniques Mining Results with Modeling respect to Business Assumptions Success Criteria Generated test Clean Data design Data Cleaning Report Test Design Construct Data Derived Attributes Generated Record Integrate Data Merged Data Format Data Reformatted Data Evaluation Evaluation Build model Parameter Settings Models Models Descriptions Assess model Modell Assessment Revised Parameter Setting Review Process Review of Process Determine Next Steps List of Possible Actions Decision Deployment Deployment Plan deployment Deployment Plan Plan Monitoring and Maintenance Monitoring and Maintenance Plan Produce Final Report Final Report Final Presentation Review Project Experience Documentation Prepare Project Plan Data Mining Plan Initial Assessment of Tools and Techniques Abbildung 54: Generische Aufgaben und Output zf_DW_DM.doc Seite 36 Data Warehousing & Data Mining 3.6 andre.maurer.name Web-Mining Definition Web Mining ist die Anwendung von Data Mining Technologien auf Daten aus dem WWW. Es wird unterschieden zwischen Web Content Mining, web Structure Mining und Web Usage Mining. Web Mining Web Content Mining Web Page Content Mining Web Structure Mining Search Result Mining Web Usage Mining General Access Pattern Tracking Customized Usage Tracking Abbildung 55: Arten von Web-Mining Web Usage Mining Web Usage Mining wird oft gleichgesetzt mit Clickstream Analysis. Es umfasst aber häufig mehr. Mit dem Clickstream wird quasi jede Bewegung, die der Benutzer unseres Webauftritts macht, aufgezeichnet. Mit Web Usage Mining können auch Motive hinter den Handlungen erahnt werden. Ziele des Web Usage Mining:  Finden der Zielkunden  Besitzen des gesamten Kundenverhaltens  Verbessern der Geschäftsprozesse für den Kunden  360 Grad Sicht der Kundenbeziehung  Hilfe zur Selbsthilfe für den Kunden  Unterstützen der Kunden bei der Erreichung ihrer Ziele  Personalisierte Dienste  Unterstützen von Communities Verhaltensmuster  Erfolgreicher Einkauf  Abgebrochener, unvollständiger oder erfolgloser Kaufversuch  Gesuchte Information gefunden  Gesuchte Information nicht gefunden  Session Killer (User verlässt unsere Seite)  Unvollständige Anzeige einer Information, aber Benutzer bleibt innerhalb unserer Seite  Unvollständige Anzeige einer Information, Benutzer verlässt unsere Seite  Falscher Pfad  Benutzer ist wütend  Benutzer ist glücklich  Benutzer ist beschwichtigt Online-Kaufprozess  Erkennen eines Bedürfnisses  Suche nach Deckung des Bedürfnisses zf_DW_DM.doc Seite 37 Data Warehousing & Data Mining     andre.maurer.name Suche nach möglichen Alternativen Auswahl Cross-Selling (Zusatzprodukte) Checkout (Zahlungsvorgang) Bestellung überprüfen Zahlungsart festlegen Adressierung Validierung Lieferart festlegen Vertragsunterzeichnung Bestätigung 3.6.1 Clickstream als Datenquelle Ziel ist es, die Daten, die bei der Benutzung unserer Web Seite entstehen, so aufzubereiten, dass wir sie anschliessend analysieren können. Damit sollte es möglich sein, verschiedene Benutzerkategorien festzustellen und entsprechend mit personalisierten Inhalten zu versorgen. Web Server Log Data Element Beschreibung Host Voll qualifizierter Domain Name des Clients oder seine IP-Adresse (Es ist möglich die IP-Adresse durch einen reverse address lookup in den Domain Namen zurückzuverwandeln. Dies verlagsamt aber den Server um ca. 40%). PC’s die in einem Netzwerk sind oder über einen ISP (Internet Service Provider) kommen, haben meist dynamische IPAdressen. Innerhalb einer Session ist die IP-Adresse aber fix, so dass Sequenzanalysen innerhalb einer Session möglich sind. Ident Identitätsinformation des Clients, falls ident aktiviert ist Authuser User-ID, falls ein Passwort-geschütztes Dokument angefordert wird Time Zeitpunkt der Anfrage (dd/Mmm/yyyy:hh:mm:ss zone) Request Erste Zeile der Anfrage des Clients (in Anführungszeichen). Z.B. „GET /pics/bg_f7f7f7.gif http/1.1“ Status Dreistelliger Statuscode der an den Client zurückgesendet wurde Bytes Anzahl gesendeter Bytes (ohne Header) Refferer URL der verweisenden Seite (in Anführungszeichen). Dieser Eintrag zeigt den Ursprung, woher auf eine Seite verzweigt wurde. Dies ist sehr wichtig zur Optimierung von Einträgen in Suchmaschinen, Verfolgung von Banneraktionen und Optimierung von Links. User-Agent Name und Version des Browsers Abbildung 56: Elemente eines Web-Server Log 3.6.2  Mögliche Dimensionen der Analyse Benutzerherkunft    zf_DW_DM.doc Suchmaschine (falls der Benutzer über eine Suchmaschine kam, ist im Referrer die Abfrage gespeichert) Bookmarks (Dies ist nicht zu unterscheiden von einem normalen Eintippen der Adresse) Links Der Benutzer clickt auf einen Link oder Banner Zur Unterscheidung sollte für jeden Link eine dummy Einstiegsseite erstellt werden, um individuelle Statistiken erstellen zu können. Seite 38 Data Warehousing & Data Mining  Sessionidentifikation andre.maurer.name     Benutzeridentifikation  Einstiegsseite       Verweilzeit (dwell)         Suchargumente    Navigationspfade Ausstiegspunkt  http bietet keine Session-ID an (es gibt kein Login und Logout) IP-Adresse (Innerhalb einer Session wird die IP nur von einem Benutzer verwendet) Session-level Cookie (wird temporär in Browser Session gespeichert) SSL Dynamischer Inhalt (Session ID als verstecktes Feld) Persistent Cookie (wird auf der Festplatte gespeichert) Nur für Shoplösungen oder bei personalisiertem Inhalt akzeptabel Risiko von falschen Angaben Der Benutzer steigt nicht zwingend über die Homepage ein (Bookmark, Suchresultat) Jede Seite sollte einen Link zur Homepage haben Der Benutzer sollte wissen, wo er sich befindet (Navigation) Gemessen wird die Zeit, in der eine Seite im Browser des Benutzers sichtbar ist (Zeit zwischen zwei HTTP Requests minus Zeit für Download der Seite) Falls die Verweilzeit sehr kurz ist, hat der Benutzer die Seite irrtümlich geladen oder Inhalt interessiert ihn nicht Ist die Verweilzeit sehr lang (gemessen am Inhalt) wurde der Benutzer abgelenkt und ist nicht im Browser Ist die Verweilzeit negativ, hat der Benutzer den Download unterbrochen Hat unsere Webseite eine eigene Suchmaschine, so ist die Analyse der eingegebenen Suchbegriffe und die Reaktion des Benutzers ein wichtiger Hinweis auf die Benutzerfreundlichkeit unserer Webseite. (Allenfalls sind Pulldown Menues besser geeignet als eine freie Textsuche) Letzte HTML-Seite unseres Webauftrittes in der Session des Benutzers Proxy Server und Browser Cache  Die Anfrage des Browser wird nicht immer durch den in der URL angegebenen Server beantwortet. Häufige Anfragen können von einem Proxi-Server beim Informationsanbieter (reverse proxy) oder beim ISP (forward proxy) beantwortet werden.  Falls der Benutzer Seiten aufruft, die er kürzlich bereits einmal angesehen hat (z.B. durch Drücken des Back-Buttons) so werden diese aus dem Browser Cache geladen Diese beiden Eigenschaften dienen zwar der Performance aber unterbrechen die Sequenz im Log File. 3.6.3  Design der Website zur Unterstützung des Web Usage Mining Ausarbeitung einer Attributierung der Webseiten, so dass ersichtlich wird, was die Zielsetzung des Besuchers war. Mögliche Attribute sind: Quelle Statisch Dynamisch Template Catalog page (linke Navigationsseite) Index page (obere Navigationsseite) News frame Funktion zf_DW_DM.doc Seite 39 Data Warehousing & Data Mining   andre.maurer.name Portal Seitenindex Produkteindex Katalogseite Produktspezifikation FAQ Pressemitteilung News Erstellen einer Cookie Anwendung, so dass der Besucher über die Zeit und Server wieder erkannt werden. Definition von Cookies: Ein Web-Server kann, wenn er Daten an den Client zurück sendet, eine Statusinformation mitgeben, die der Client bei sich speichert. In diesem Objekt ist auch die URL angegeben, für welche diese Statusinformation gültig ist. Bei weiteren Anfragen des Clients an diese URL oder untergeordnete Seiten, wird diese Statusinformation in der Anfrage mitgeschickt. Cookie-Attribute: NAME=VALUE (Der Name und Wert des Cookies kann frei gewählt werden. Dies ist die einzige obligatorische Angabe) expires=DATE (Falls keine Angabe gemacht wird, verliert das Cookie am Ende der Session seine Gültigkeit. Format DD-Mmm-YYYY HH.MM.SS GMT) domain=DOMAIN_NAME (Ein Server kann nur einen DOMAIN-NAME setzen, zu dem er selber gehört. path=PATH (Durch PATH kann die Gültigkeit des Cookies auf ein Subset der Domain beschränkt werden) secure (Falls das Attribut secure gesetzt wird, wird das Cookie nur bei einer sicheren Verbindung verschickt. Ein Cookie wird mit folgendem Befehl gesetzt Set-Cookie:NAME=VALUE; expires=DATE; path=PATH; domain=DOMAIN_NAME; secure Ein Cookie kann nicht durch den Server gelöscht werden. Die einzige Möglichkeit ist es, mit einem expires Datum das in der Vergangenheit liegt zu überschreiben. Damit das Cookie vom Browser gelöscht oder nicht mehr verwendet wird. Null Logging Server Vor allem in grossen Unternehmungen sind Web-Auftritte auf verschiedene (Departements-)Server verteilt. Um trotzdem zu einem Gesamtlog zu kommen ist der Einsatz eines Null Logging Servers möglich. Der Inhalt dieses Servers besteht aus einem transparenten 1-Pixel-Bild. Dieses Bild wird am Ende jeder Webseite eingefügt. Dabei wird auch die Seiteninformation in den Aufruf mitgegeben: <IMG SRC=“http://logserver.mysite.ch/nullpic.gif?type=catalog&inhalt=produkt089“>  Somit kann auch bei dynamisch generierten Inhalten ein Teil der Information ins Log gebracht werden. Personifizierte Anwendung Damit ein Benutzer einem Siteanbieter persönliche Angaben anvertraut müssen einige Punkte erfüllt sein: zf_DW_DM.doc Seite 40 Data Warehousing & Data Mining andre.maurer.name Vertrauen in die Seriosität des Betreibers Vertrauensbildende Massnahmen sind: Nur Angaben verlangen, die notwendig sind und die einen persönlichen Nutzen bringen Informationen erst verlangen, wenn sie vom Geschäftsprozess her benötigt werden Alle persönlichen Informationen verschlüsselt übertragen Link zu eigenen Privacy Policy gut sichtbar auf allen kritischen Seiten platzieren Keine persönlichen Informationen in Cookies abspeichern Demografische Informationen erst nach erfolgreichem Abschluss des Geschäfts und auf freiwilliger Basis verlangen Keine unnötigen Angaben Persönliche Nutzen aus der Angabe der Daten 3.6.4 Clickstream Data Mart Zur Definition eines Datamarts zur Auswertung der Clickstreams müssen folgende Aspekte berücksichtigt werden:  Welches sind die zu erreichenden Ziele  Welche Daten stehen zur Verfügung (Log File, Benutzerdaten, Profile)  Was ist die Granularität der Auswertung (Seite, Session, Benutzer)  Was sind die auszuwertenden Fakten Sessiondauer Anzahl besuchte Seiten Heruntergeladene Datenmenge Erfolg Anzahl Bestellungen Anzahl Artikel Bestellwert  Was sind die notwendigen Dimensionen Kalendertag Tageszeit Benutzertyp Surfer Schnupperer Convenience-Orientierte Kontakter (eMail) Routiniers Schnäppchenjäger Entertainment-Orientierte Einstiegsart (direkt, Link, Suchmaschine) Sprache Domain Systemumgebung zf_DW_DM.doc Seite 41 Data Warehousing & Data Mining andre.maurer.name Verhaltensmuster  Der Aufenthalt eines Nutzers in einer Web Seite umfasst eine oder mehrerer Sessions  Eine Session manifestiert sich in der Form einer Abfolge von Zugriffen auf Web Seiten  Diese Abfolge kann als Sequenz dargestellt werden, eine gerichtete Liste von Ereignissen. Eine häufige Sequenz besteht aus Ereignissen, die in dieser Reihenfolge stattfanden, aber nicht unbedingt direkt hintereinander. Die Gruppe der Sequenzen mit denen eine g-Sequenz übereinstimmt, ist eindeutig definiert. Diese Gruppe bildet ein Navigationsmuster und kann als Baum dargestellt werden. Dabei wird auch die Häufigkeit der Knoten mit eingetragen. Der untenstehende Baum stellt das Navigationsmuster der g-Sequenz B*[1;5]D dar Um eine sinnvolle Untersuchung durchführen zu können, müssen Sequenzen eine vorgegebene minimale Häufigkeit haben und eine maximale Sequenzlänge. E,1 B,3 F,1 D,1 C,2 A,1 D,1 E,1 D,1 Abbildung 57: Baum zur Darstellung des Navigationsmusters Benutzertypen einer Web Seite Aus sicht des Betreibers einer Web-Seite lassen sich drei Benutzertypen unterscheiden:  Kunden Nutzer der eine Transaktion, wie z.B. Kursanmeldung, Kauf…, durchführt  Aktive Nutzer Besucher, der mindestens einen Schritt zur Durchführung einer Transaktion unternommen hat (z.B. Katalogseite aufgerufen)  Kurzbesucher Jeder Besucher, der nicht als aktiver Nutzer oder Kunde bezeichnet werden kann. Erfolg einer Seite  Kontakteffizienz Prozentsatz der aktiven Nutzer innerhalb der Gesamtheit aller Besucher einer Seite.  Konvertierungseffizient Prozentsatz der Kunden innerhalb der aktiven Nutzer Datenaufbereitung  Damit Auswertungen in dieser Art gemacht werden können, müssen die Log Daten bereinigt werden  Entfernung von fehlerhaften Downloads (Errorcode) zf_DW_DM.doc Seite 42 Data Warehousing & Data Mining        4 andre.maurer.name Entfernung von Zugriffen auf Bilder (*.gif, *.jpg…) Entfernung von Zugriffen durch Web Crawler (Suchmaschinen) (diese sind auf Grund der zu kurzen Verweilzeiten auf den einzelnen Seiten zu erkennen) In dynamischen Webseiten muss der Inhalt der dargestellt wird an den Log Server übermittelt werden Bestimmung der zusammengehörigen Seiten und Zuordnungen zu einem Sessionidentifier Bestimmung der Sessiondauer. Da das Verlassen der letzten Seite in unserem Log Server nicht festgestellt werden kann, muss hier eine Annahme getroffen werden (z.B. durchschnittliche Verweilzeit aller Benutzer auf dieser Seite) Berechnung der Verweilzeit auf den einzelnen Seiten Umwandeln von IP-Adressen in URL mittels DNS lookup Literaturverzeichnis Unterrichtsmaterial FHSO, 2001/2002, Andreas Reber, Modul Data Warehousing und Data Mining, http://www.fhso.ch/~reber/DMW/ Markus Lusti. Data Warehousing and Data Mining - Eine Einführung in entscheidungsunterstützende Systeme. Springer-Verlag, 1999. (Kapitel 1, 5, 6, 7, 8) D. Karagiannis, R. Telesko. Wissensmanagement - Konzepte der Künstlichen Intelligenz und des Softcomputing. Oldenbourg Verlag, München Wien, 2001. (Kapitel 4) I. H. Witten, E. Frank. Data Mining - Praktische Werkzeuge und Techniken für das maschinelle Lernen, Hanser, 2000. (Kapitel 6.6) R. Kimball, R. Merz. The Data Webhouse Toolkit, Wiley, 2000. (Kapitel 1 - 8) http://netlexikon.akademie.de/ http://www.data-mining.ixy.de/ http://www.cs.toronto.edu/~mendel/dwbib.html http://www.thearling.com/ http://www.dwinfocenter.org/ http://www.olapreport.com/fasmi.htm zf_DW_DM.doc Seite 43 Data Warehousing & Data Mining 5 andre.maurer.name Abbildungs- / Tabellenverzeichnis Abbildung 1: Zugriff auf operative Informationsquellen.................................. 2 Abbildung 2: Daten aus dem DaWa............................................................. 3 Abbildung 3: Clustering............................................................................. 5 Abbildung 4: Entstehung und Nutzung von Vorhersagemodellen ..................... 5 Abbildung 5: Zusammenhang DaWa und DaMi ............................................. 7 Abbildung 6: Mehrdimensionaler Würfel (Hypercube) .................................. 11 Abbildung 7: Architektur eines DaWa ........................................................ 11 Abbildung 8: Zentralisierte DaWa-Architektur............................................. 11 Abbildung 9: Data Mart ........................................................................... 12 Abbildung 10: Enterprise Data Mart .......................................................... 12 Abbildung 11: Hierarchische Architektur .................................................... 13 Abbildung 12: Entwicklungsmethoden ....................................................... 14 Abbildung 13: Data Marts vs. EDaWa ........................................................ 14 Abbildung 14: De-Normalisierung ............................................................. 15 Abbildung 15: Klassifikation von Kennzahlen .............................................. 20 Abbildung 16: Kennzahlensysteme ........................................................... 21 Abbildung 17: Abstraktionsebenen............................................................ 22 Abbildung 18: Sternschema ..................................................................... 23 Abbildung 19: Beispiel eines Anforderungsdiagramms ................................. 23 Abbildung 20: Denormalisierung............................................................... 23 Abbildung 21: Snowflakeschema .............................................................. 25 Abbildung 22: Eingliederung von DaMI ...................................................... 32 Abbildung 23: Anwendung von Modellen.................................................... 32 Abbildung 24: Zusammenhang: Data Mining und Data Warehousing................ 3 Abbildung 25: Trainings- und Anwendungsphase .......................................... 4 Abbildung 26: Bäume ............................................................................... 5 Abbildung 27: Beispiel eines Entscheidungsbaums ........................................ 6 Abbildung 28: Aufbau Entscheidungsbau ..................................................... 7 Abbildung 29: Jede Entscheidung teilt die Fläche in neue Abschnitte................ 8 Abbildung 30: Baum vor dem Pruning ......................................................... 9 Abbildung 31: Baum nach dem Pruning ....................................................... 9 Abbildung 32: Gehirnzellen...................................................................... 12 Abbildung 33: Informationsverarbeitung im Knoten..................................... 14 zf_DW_DM.doc Seite 44 Data Warehousing & Data Mining andre.maurer.name Abbildung 34: geschichtetes Modell .......................................................... 15 Abbildung 35: ungeschichtetes Modell ....................................................... 15 Abbildung 36: Feedforward-Modell............................................................ 15 Abbildung 37: Feedback-Modelle .............................................................. 15 Abbildung 38: Lernverfahren ................................................................... 16 Abbildung 39: Neuron mit Schwellwertfunktion........................................... 20 Abbildung 40: Arten von Netztypen .......................................................... 21 Abbildung 41: Eindimensionales Zweilassen-Perzeptron ............................... 21 Abbildung 42: Zweidimensionales Zweiklassen-Perzeptron ........................... 22 Abbildung 43: Mehrdimensionales Zweiklassen-Perzeptron........................... 22 Abbildung 44: lineare Klassifikation .......................................................... 22 Abbildung 45: BNGE-Verfahren ................................................................ 27 Abbildung 46: Clusteranalyse................................................................... 28 Abbildung 47: Clustermethoden ............................................................... 29 Abbildung 48: Kohonen-Netz ................................................................... 31 Abbildung 49: Transaktionen ................................................................... 32 Abbildung 50: Beispiel von Assoziationsregeln ............................................ 34 Abbildung 51: Sortierung der Datenbank ................................................... 34 Abbildung 52: CRIPS-DM-Methodology ...................................................... 35 Abbildung 53: CRISP-DM Referenzmodell .................................................. 36 Abbildung 54: Generische Aufgaben und Output ......................................... 36 Abbildung 55: Arten von Web-Mining ........................................................ 37 Abbildung 56: Elemente eines Web-Server Log........................................... 38 Abbildung 57: Baum zur Darstellung des Navigationsmusters ....................... 42 Tabelle 1: Kategorien von Entscheidungen ................................................... 1 Tabelle 2: Anforderungen: DaWa - operative Systeme................................... 3 Tabelle 3: Verständlichkeit, Genauigkeit der MiMa-Methoden ......................... 6 Tabelle 4: Operative vs. Analytische Datenbanken ........................................ 9 Tabelle 5: Architekturen im Vergleich........................................................ 13 Tabelle 6: SQL-Teilsprachen .................................................................... 17 Tabelle 7: Arten von OLAP....................................................................... 19 Tabelle 8: Sternschema vs. Normalisiertes Schema..................................... 25 Tabelle 9: Performance verbessern durch Modellierung................................ 29 Tabelle 10: Optimierungsmassnahmen ...................................................... 30 Tabelle 11: Grundbegriffe der Datenanalyse................................................. 2 zf_DW_DM.doc Seite 45 Data Warehousing & Data Mining andre.maurer.name Tabelle 12: Einteilungskriterien für Perzeptrone .......................................... 21 Tabelle 13: Konfusionsmatrix................................................................... 26 Tabelle 14: Vergleich BNGE - Entscheidungsbäume ..................................... 27 Tabelle 15: Unterschiede Klassifikation – Clustering .................................... 28 Formel 1: Entropieberechnung ................................................................. 11 Formel 2: Erwartungswert ....................................................................... 11 Formel 3: Klassifikationsgewinn ............................................................... 12 Formel 4: Euklidische Entfernung ............................................................. 25 Formel 5: Mutual Information .................................................................. 26 Formel 6: Kennzahl für Assoziationen: Support .......................................... 33 Formel 7: Kennzahl für Assoziationen: Konfidenz ........................................ 33 zf_DW_DM.doc Seite 46