Analytische Informationssysteme Analytische Informationssysteme Fritz Laux Reutlingen University Data Warehouse (DW) Online Analytical Processing (OLAP) Data Mining März 2011 © F. Laux „Seit mehr als 30 Jahren wird versucht, den betrieblichen Fach- und Führungskräften angemessene DV-Werkzeuge zu bieten“, die ihnen bei ihren Planungs- und Entscheidungsaufgaben adäquate Hilfe geben können. 1) Zahlreiche Systeme wurden entwickelt, doch selten erfüllten sie die in sie gesetzten Erwartungen. Das lag in den 70-er Jahren teilweise an der geringen Rechenleistung und der mangelnden Erfahrung der Entwickler, aber auch an den überzogenen Erwartungen an die damals so genannten Management Information Systems (MIS). Mit dem Aufkommen graphischer Benutzeroberflächen wurde ein neuer Versuch unternommen. Unter den Begriffen Executive Information System (EIS) und Decision Support System (DSS). kamen neue Systeme auf den Markt. Obwohl damit leistungsfähige Werkzeuge zur Verfügung standen, fehlte es oftmals an DV-mündigen Nutzern, welche die teilweise starren Systeme nutzbringend einsetzen konnten. In den letzten Jahren ist es gelungen, Technik und betriebliche Anforderungen so zu strukturieren, dass die erforderliche Flexibilität erreicht werden kann. Die dem technischen Wandel und der unternehmerischen Mode unterliegenden Systeme wurden und werden – abgesehen von stark divergierendem Leistungs- und Funktionsumfang – unter einer Vielzahl von Namen angeboten. Als Abgrenzung zu den operativen, transaktionsorientierten System haben sie jedoch eines gemeinsam: sie dienen der Unterstützung dispositiver und analytische Tätigkeiten. Daher verwenden wir die Sammelbegriff Analytisches Informationssystem (AIS) bzw. Führungsinformationssystem (FIS)2) für alle Ausprägungen der MIS, DSS, EUS, EIS, DW 3), OLAP und Data Mining Systeme. 1) P. 2) Chamoni, P. Gluchowski (Hrsg.), Analytische Informationssysteme, 1999 Springer vgl. Vorlesung Prof. A. Roth, Führungsinformationssysteme 3) zur Definition der Abkürzungen siehe Vorlesung Prof. A. Roth, Führungsinformationssysteme (c) März 2011, F. Laux, Wirtschaftsinformatik 1 Analytische Informationssysteme Inhalt Fritz Laux Reutlingen University 1. Einführung 2. Grundlagen 3. Der BI-Prozess 4. Architekturen 5. Datenmodelle 6. Data Mining 1 Einfü hrung 2 Grundlagen 3 Der BI-Prozess 4 Arch itektur en 5 Datenmodel le 6 Data Mining 2 /58 März 2011 © F. Laux Entsprechend der Ausrichtung der Veranstaltung wird in der Einführung das Thema aus DVtechnischer Sicht motiviert. Dazu werden die Unterschiede zu operativen Systemen aufgezeigt und die Herausforderungen an „Analytische Informationssysteme“ identifiziert. Die betriebswirtschaftlichen Aspekte werden in der begleitenden Veranstaltung Führungsinformationssysteme2) behandelt. Zu den Grundlagen gehören neben der mathematischen Fundierung des Informationsmodells die Definition der Begriffswelt, um die Elemente, Funktionen, Präsentationsmöglichkeiten und Arbeitstechniken analytischer Informationssysteme (AIS) zu präzisieren. Viele Details bei der Vorbereitung analytischer Auswertungen sind nicht automatisierbar. Ein klares, systematisches Vorgehen ist die Voraussetzung für die erfolgreiche Arbeit mit analytischen Informationssystemen. Die Etappen des AIS-Prozesses: Auswahl der Datenquellen, Datenbereinigung, Data Warehouse Modellierung, Auswertungen und Präsentation werden zunächst vorgestellt und in den folgenden Kapiteln dieser Vorlesung vertieft. Die physische Aufteilung der Komponenten im Intranet, ihre Funktionalität und Performance wird durch die Architektur eines AIS bestimmt Das bei den operativen Datenbanksystemen dominierende relationale Datenmodell erweist sich als nicht optimal, deshalb wird nach neuen Modellen und Metaphern gesucht. Die dafür angeboten Datenmodelle werden kritisch untersucht. Nicht offensichtliche Zusammenhänge zwischen den Daten können durch Algorithmen des Data Minings entdeckt werden. Dazu werden Hilfsmittel der Statistik, des maschinellen Lernens oder der Künstlichen Intelligenz eingesetzt. Je nach Verfahren arbeiten diese mit oder ohne Benutzerinteraktion. 2) Vorlesung Prof. A. Roth, Führungsinformationssysteme (c) März 2011, F. Laux, Wirtschaftsinformatik 2 Analytische Informationssysteme 1.1 Begriffliche Einordnung Fritz Laux Reutlingen University ª Aspekte ) Technologische Sicht ) Betriebliche Sicht FIS MMaa rrkkts ts ic ichh tt OLAP OLAP Data DataWarehouse Warehouse Transaktionssysteme Transaktionssysteme AIS 3 /58 März 2011 © F. Laux t chht Sici eS hhe ilcic bbl ireie etrt BBe Data Data Mining Mining SIS EEI ) Marktsicht DDSSSS tivivee ratm OOppeera e e t SSyyssteme DV-technische DV-technischeSicht Sicht ª We're drowning in information and starving for knowledge. (Rutherford D. Rogers, Yale, 1985) Die Begriffsbildungen im Bereich analytischer Informationssysteme lassen sich unter verschiedenen Blickwinkeln einordnen. Die betriebswirtschaftliche Sicht (innerbetriebliche, Markt- und Organisationssicht) erfolgt in der Veranstaltung Führungsinformationssysteme 2). In dieser Vorlesung analytische Informationssysteme werden wir uns auf die DV-technische Sicht konzentrieren. Die Transaktionssysteme sind die operativen Systeme eines Unternehmens. Sie zeichnen sich durch eine transaktionsgesteuerte (Alles-oder-Nichts-Prinzip) und satzorientierte Verarbeitung aus. Diese Systeme werden wir als gegeben und bekannt1) voraussetzen. Definitionen: Eine Datenbasis, die neben operativen, betrieblichen Daten auch historische und aggregierte Werte sowie externe Daten umfasst, bezeichnen wir als Data Warehouse (DW)3). Ein DV-System, das multidimensionale Sichten auf die Daten eines DW bereitstellt und analytische Auswertungen ermöglicht, heißt Online Analytical Processing (OLAP). Unter Data Mining (ein besserer und umfassenderer Begriff wäre Wissensentdeckung in Datenbanken (Knowledge Discovery in Databases)) versteht man sowohl die automatische Mustererkennung als auch die benutzergesteuerte (navigierende) Entdeckung von Information. Die Informationssuche beim Data Mining basiert nicht auf Modellannahmen oder einer Hypothese, d.h. sie erfolgt ohne präzise Fragestellung unter Verwendung nichttrivialer Algorithmen und Methoden. 1) vgl. Vorlesung F. Laux, Datenbanken A. Roth, Führungsinformationssysteme 2) Vorlesung 3)Inmon gibt ebenfalls eine technische Definition: „A data warehouse is a subject-oriented, integrated, time-varying, non-volatile collection of data in support of the management´s decision-making process.” Siehe in Lehner, Wolfgang (2003) Datenbanktechnologie für Data-Warehouse-Systeme – Konzepte und Methoden, 1. Aufl., Heidelberg (dpunkt) , S. 9: (c) März 2011, F. Laux, Wirtschaftsinformatik 3 Analytische Informationssysteme 1.2 Ausgangslage Fritz Laux Reutlingen University ª große operative Datenbestände ungünstige Strukturierung für Analysen ª Auswertung nur nach expliziter Information Ö Select Kunde, Betrag from Auftrag where Region …. Order by … ª tabellarische oder Listendarstellung RDBS Ku K u nde K u nde 1 .... nde 2 3 . ª eindimensionale graphische Präsentation 4 /58 März 2011 © F. Laux Zur Einführung wollen wir zunächst die Ausgangslage analysieren. Die Hauptdatenquelle für betriebliche Informationssysteme bilden die operativen Datenbestände des Unternehmens. Warum können diese nicht zu einem AIS erweitert werden? Dafür gibt es mehrere Gründe: 1. Die Speicherungsform ist für aggregierte Daten ungeeignet und die Datenbestände enthalten keine historische Daten. Sie sind ausschließlich vorgangs- bzw. transaktionsorientiert. Geschäftsspezifische Kennzahlen (z.B. Gewinnmarge, Ladenhüter, Cash Flow, Absatzprognose, etc) sind nicht enthalten. Für AIS sind neue Datenmodelle notwendig. 2. Es kann nur nach expliziter (in den Datenbanken gespeicherter) Information gesucht werden. Versteckte Zusammenhänge können daher nicht entdeckt werden. Komplexe Berechnungen für Kennzahlen sind nicht möglich, da sie zu einem unzulässigen Leistungsabfall der operativen Funktionen führen würden. Komplexe Analysen erfordern von den operative Systemen getrennte, auf Auswertungen spezialisierte Systeme. 3. Komplexe betriebswirtschaftliche Abhängigkeiten können mit operativen Werkzeugen nicht geeignet visualisiert werden. Die Darstellung ist meist tabellarisch und damit wenig einprägsam. Durch die lineare Darstellung sind Abhängigkeiten von mehr als einer Einflussgröße kaum erkennbar. Dieser Mangel wird auch durch bunte Linien-, Balken- oder Kuchengraphiken wegen ihrer Eindimensionalität nicht wesentlich verbessert. Notwendig wären mehrdimensionale Darstellungen, die interaktiv gestaltet werden können. (c) März 2011, F. Laux, Wirtschaftsinformatik 4 Analytische Informationssysteme 1.3 Multifunktionale Abhängigkeiten Fritz Laux Reutlingen University ª viele Einflussgrößen (Dimensionen) Ö Zeit, Verkäufer, Kunde, Modell, Vertragstyp, Region, ... ª unabhängige Dimensionen Ö Produkt – Zeit, Kunde – Verkäufer, Produkt –> Verkäufer ? ª Aggregate Ö Produkt – Komponente – Einzelteil (exogen) Ö Jahr – Monate – Wochen – Tage (exogen) ª Klassifikation Ö Warengruppe – Marke – Produkt (exogen) Ö Profitcenter – Produkt (exogen) ª Gruppierungen 5 /58 Ö ABC-Analyse, Warenkorbanalyse (endogen) März 2011 © F. Laux Für planerische und analytische Aufgaben ist die gleichzeitige Untersuchung mehreren Einflussgrößen notwendig. So kann z.B. bei einer Absatzanalyse nicht nur nach Produkten differenziert werden, sondern es sind auch regionale und temporale Gesichtspunkte wichtig. In industriellen Projekten kann die Zahl der Dimensionen leicht in der Größenordnung von 50 liegen. Das CRM-Warehouse der Fa. Breuninger enthält ca. 200 Dimensionen.1) Diese Einflussgrößen (Dimensionen) sind i.a. unabhängig voneinander. Beispielweise gibt es unabhängig von der Jahreszeit und unabhängig von der Region Pkws zu kaufen. Im Gegensatz hierzu kann bei bestimmten Unternehmen von einem Produkt auf den bzw. die möglichen Verkäufer geschlossen werden (funktionale resp. mehrwertige Abhängigkeit der Dimensionen). Nicht alle Dimensionen weisen die gleiche Struktur auf. Produkte können verschieden klassifiziert und in Hierarchien geordnet werden. Im Unterschied zur Gruppierung ist hier wesentlich, dass die Hierarchie bzw. die Klassifikation vorbestimmt ist. Dies drückt sich dadurch aus, dass z.B. die Komponenten eines Fahrzeugs durch die Stückliste im voraus festliegen (exogen), unabhängig davon, ob ein solches Fahrzeug bereits existiert. Im Gegensatz hierzu werden Gruppierungen einer Grundmenge anhand der Ähnlichkeit ihrer Objekte oder durch ihre Beziehungen untereinander (endogen) vorgenommen. Zur dynamischen Gruppierung zählt demnach auch die ABC-Analyse. ÜA1: Versuchen Sie eine ABC-Analyse in SQL zu formulieren. Verschiedene Formen der Dimensionshierarchien und daraus resultierende Probleme zeigt die folgende Folie. 1) Quelle: Computer Zeitung, Oktober 2003 (c) März 2011, F. Laux, Wirtschaftsinformatik 5 Analytische Informationssysteme 1.4 Hierarchische Dimensionen Fritz Laux Reutlingen University ª (nicht) balancierte Hierarchien ª Parallele Hierarchien Kfz ª Heterarchien Pkw Nutzfz T 250D Benziner A 160 Mittelkl. C 220 Diesel D 180 Oberkl. E 280 S 450 6 /58 März 2011 © F. Laux Hierarchisch strukturierte Dimensionen zeigen in der Praxis äußerst komplexe Ausprägungen. Die Zweige einer Hierarchie können verschiedene Länge aufweisen (d.h. nicht balanciert sein), Knoten können zu verschiedenen Generalisierungen der gleichen Hierarchie (Heterarchie) oder zu verschiedenen, parallelen Hierarchien gehören. Daraus folgt eine Potenzierung der Fakten (Messwerte) für jede Dimensionsvariante und eine zunehmende Komplexität der Navigation. Die Struktur der Dimensionen bestimmt die Navigations- und Aggregationsmöglichkeiten. Navigationswege können mehrdeutig und von unterschiedlicher Tiefe sein (Orientierungsproblem!). Dies bedeutet für ein Informationssystem, dass eine Dimension unter verschiedenen Aspekten betrachtet werden kann und verschiedene Dimensionen i.a. auch unterschiedliche Generalisierungen und Zusammenfassungen gestatten. Moderne Datenmodelle für analytische Informationssysteme müssen durch geeignete Metadaten diese Semantik berücksichtigen. ÜA2: Erstellen Sie die Klassen ‚Hierarchie‘ und ‚Knoten‘ mit den zugehörigen Methoden (Algorithmen) für das Durchlaufen (Traversieren) der Hierarchie nach Tiefen- und Breitensuche. (c) März 2011, F. Laux, Wirtschaftsinformatik 6 Analytische Informationssysteme 1.5 Analyseverfahren Fritz Laux Reutlingen University ª Berechnete Werte (Analyse, Prognose) Ö Zeitreihenanalyse, Absatzprognose ? ª Zusammenhänge erkennen (Korrelation) Ö Regressionsrechnungen Ö Diskriminanzanalyse ª Mustererkennung (KI-Verfahren) Ö Clusteranalyse Ö Neuronale Netze 7 /58 März 2011 © F. Laux Produkt Region Zeit Die Kennzahlen, welche ein AIS liefert, werden durch Datenanalysen gewonnen. Charakteristisch für diese Analysen sind die Berechnung neuer Werte aus bereits vorhandenen. Dies kann so trivial wie eine Summen- oder Mittelwertbildung sein, aber auch komplexe Berechnungen sind möglich: Beispielsweise können mit Hilfe einer Zeitreihenanalyse Regelmäßigkeiten im zeitlichen Verhalten erkannt werden. Daraus können mit Hilfe einer Extrapolation die zukünftigen Daten vorhergesagt werden. So zeigen sich beim Verkauf von z.B. Badebekleidung offenbar saisonale Einflüsse, die eine Prognose bezüglich des zu erwartenden Absatzes erlauben. Mit Hilfe der Regressionsrechnung lassen sich statistische Zusammenhänge ermitteln. Dabei ist jedoch wichtig zu wissen, dass diese Abhängigkeiten rein statistisch sind und auch ohne kausalen Zusammenhang existieren können (Scheinkorrelation). Eine andere mögliche „statistische Gefahr“ ist, dass bei großer Datenbasis seltene Ereignisse auch wirklich eintreten, ohne dass diese jedoch eine inhaltliche Aussagekraft besitzen. Zum Beispiel: Aus der Tatsache, dass fast jede Woche ein Millionengewinn in der Lotterie erzielt wird, darf nicht geschlossen werden, dass mir selbst auch dieses Glück innerhalb meiner Lebensspanne zuteil wird. Diskriminanz- und Clusteranalyse finden Gemeinsamkeiten bzw. erklären Unterschiede in Datenmengen. Die dazu verwendeten Konzepte basieren auf statistischen Methoden, Entscheidungsbäumen oder auch Künstlichen Neuronalen Netzen, wobei die letzteren erst „trainiert“ werden müssen (überwachtes lernen), um brauchbare Ergebnisse zu erhalten. (c) März 2011, F. Laux, Wirtschaftsinformatik 7 Analytische Informationssysteme 2 Grundlagen Fritz Laux Reutlingen University ª Daten Ö Dimension := unabhängige Variable (Einflussgröße) Ö Fakt := abhängige Größe, zu untersuchender Wert Ö Dimensionen und Fakten besitzen einen Datentyp ª Funktionen Ö Fakten = f(Dimensionen) ª Navigation Ö F1 +f(Δ) = f(D1 + Δ) Fakt f(Δ) ª Präsentation F1 Ö Graphik } Δ D1 Dimension 8 /58 März 2011 © F. Laux In Kapitel 2 werden die grundlegenden Konzepte analytischer Informationssysteme behandelt. Zunächst definieren wir die verwendeten Begriffe, dann werden darauf aufbauend die Zusammenhänge untereinander untersucht. Trotz umfangreicher Datenmengen und Abhängigkeiten ist das Prinzip einfach. Es handelt sich um funktionale Abhängigkeiten, wobei die Funktion leider nicht im voraus bekannt ist, sondern erst durch aufwändige Analysen ermittelt werden muss. Bei den Auswertungen ist es vielfach notwendig, in den Datenbeständen interaktiv zu navigieren und die (Zwischen)ergebnisse optisch aussagekräftig zu präsentieren, um das weitere Vorgehen festlegen zu können. Auf die prinzipielle Grenzen der Vorstellungskraft wird bei den Präsentationsmöglichkeiten hingewiesen. (c) März 2011, F. Laux, Wirtschaftsinformatik 8 Analytische Informationssysteme 2.1 Daten Fritz Laux Reutlingen University ª Dimension (Variable) ) unabhängige Variablen ) Hierarchisch oder intervallartig Strukturiert Ö Bestimmt die Navigation Ö Erzeugt abgeleitete bzw. berechnete Werte ) Dimensionsattribute ª Fakten (Werte) ) verschiedeneDatentypen Ö Taxonomie der Typen Ö Analysen erfordern meistens quantitative Werte ) Skalierung ª Beziehungen (Links) ) Navigierbare Verbindung 9 /58 ) Intra-, extra-dimensonal, inhaltsorientiert März 2011 © F. Laux Definition: Unter einer Dimension versteht man eine unabhängige Variable, welche die zu untersuchenden Werte (Fakten) beeinflusst. Eine Dimension kann in sich strukturiert sein. Hierarchische und Intervallstrukturen unterstützen so genannte Verdichtungen, die als Generalisierung, Intervallbildung oder Gruppierung realisiert werden. Diese bestimmen die Navigationsmöglichkeiten. So kann man sich bei einer hierarchischen Dimension von einer Position ausgehend zum übergeordneten (parent), zum untergeordneten (child) oder zum nächsten gleichrangigen Begriff (sibling) bewegen. Den Wert einer Aggregatdimension erhält man aus den Werten seiner Komponenten. Aus den Summenwerten der zugehörigen Fakten ergeben sich die Umsätze (Wert) des Aggregats (z.B. eines Monats (Zeitintervall = spezielles Aggregat). Achtung: Nicht alle numerischen Fakten lassen sich sinnvoll addieren! Dies hängt vom Datentyp des Faktums ab (siehe 2.1a Taxonomie der Fakten). Eine Dimension kann mit Attributen versehen sein, welche die Dimensionsobjekte näher beschreiben. Betrachten wir als Beispiel die Dimension Verkaufsstelle, so können wir diese mit den Attributen Adresse, Fläche, Mitarbeiter etc. versehen. Diese Attribute ermöglichen ihrerseits eine weitere Strukturierung der Dimension. Definition: Eine zu untersuchende Größe (Aspekt einer Situation) heißt Fakt. Fakten werden als Funktionswerte von Einflussgrößen (Dimensionen) aufgefasst und dementsprechend ist ihre Abhängigkeit von den Dimensionen von Bedeutung. Die Fakten sind meistens Unternehmensdaten (interne Fakten), die aus operativen Daten oder Planzahlen entstammen. Eine weitere Datenquelle sind die volkswirtschaftliche Zahlen (externe Fakten), welche private und öffentliche Organisationen zusammentragen und publizieren. Der Datentyp eines Faktums ist nicht nur auf numerische Werte beschränkt, sondern kann auch von nominalem Typ sein. (siehe 2.1a Taxonomie der Fakten). In diesen Fällen muss eine Transformation der Fakten auf numerische Werte vorgenommen werden, um bestimmte Analysen (z.B. statistische Kenngrößen) vornehmen zu können. Definition: Ein Link bezeichnet eine navigierbare (ansteuerbare) Verbindung zwischen zwei Elementen (Dimension, Fakt, Attribut, Datentyp, ...). Die Verbindung kann innerhalb einer Dimension (strukturell), zwischen Dimensionen (dimensionsorientiert), zwischen Fakten (inhaltsorientiert) und in gemischter Kombination auftreten. ÜA3: Finden Sie Beispiele für numerische Fakten, die sich nicht sinnvoll addieren lassen. (c) März 2011, F. Laux, Wirtschaftsinformatik 9 Analytische Informationssysteme 2.1a Taxonomie der Fakten Fritz Laux Reutlingen University 10 /58 März 2011 © F. Laux Fakten können durch unterschiedliche Datentypen dargestellt werden. Entsprechend der gewählten Taxonomie (Struktur der Begriffe eines Fachgebietes) können wir zwischen quantitativen und kategorialen Fakten unterscheiden. Auf den Werten der quantitativer Fakten können Rechenoperationen durchgeführt werden. Wenn die Werte uneingeschränkt addiert oder subtrahiert werden können (d.h. dabei sinnvolle Werte liefern), handelt es sich um additive Fakten. Diese Eigenschaft ist für die Aggregatbildung notwendig. Beispiele additiver Fakten sind z.B. Umsatz, Einkommen, Erlöse und verkaufte Stückzahl. Gilt die Addierbarkeit nicht für jede Dimension, so handelt es sich um eine SemiAdditivität. Beispiele dafür sind der Lagerbestand bezüglich der Dimension Artikel und die Anzahl Mitarbeiter über der Zeit. Es ist unbedingt notwendig, dass die Semantik eindeutig klar ist, sonst kann es zu unsinnigen Rechenoperationen kommen (z.B. z.B. dürfen die Mitarbeiter nicht über der Zeit, wohl aber über die Abteilungen summiert werden). Temporale Größen, wie das Datum, die Zeit oder ein Zeitintervall sind spezielle Formen semi-additiver Daten. Kategoriale Fakten (z.B. Noten, Sprachkenntnisse, Gehaltsklasse, etc) sind nicht additiv, d.h. die Werte dürfen – auch wenn sie numerisch sind – nicht addiert werden (z.B. Noten). Wenn die Werte vergleichbar sind (z.B. Kundenbewertung, Rangordnung, Prozentwerte), spricht man von ordinalen Werten. Für diese Werte existiert eine Ordnungsrelation (z.B. ´<´ oder ´>´). Beispielsweise ist die Note 1 besser als die Note 2. Wenn zusätzlich ein Distanzbegriff definiert ist, darf auch ein Mittelwert gebildet werden. Mit nominalen Werten (z.B. Geschlecht, Ausbildung, Personalnummer) darf keine mathematische Operation durchgeführt werden. ÜA4: Finden Sie Beispiele für additive, semi-additive und nicht additive Fakten. ÜA5: Entwerfen Sie auf Grund der oben stehenden Taxonomie eine Klassenhierarchie in UMLNotation für Faktenklassen. Hinweis: Smalltalk Klassenhierarchie „Magnitude“ (c) März 2011, F. Laux, Wirtschaftsinformatik 10 Analytische Informationssysteme 2.2 Multidimensionale Funktionen Fritz Laux Reutlingen University ªOLAP Abbildung: Dimensionen Di -> Fakten Bi ªallgemeine, mehrdimensionale Abbildung X Di f: (x1,x2, ..., xn) -> X Bi -> (y1,y2, ..., ym) (x1,x2, ..., xn) (y1,y2, ..., ym) ªn-dimensionale Abb. mit eindimensionalem Bildraum (Kennzahl) (x1,x2, ..., xn) X Di f: (x1,x2, ..., xn) -> -> B y ªeindimensionale Abb. in m-dimensionalen Bildraum (Tabelle, Slicing) 11 /58 März 2011 © F. Laux f: D x -> -> (y1,y2, ..., ym) X Bi (y1,y2, ..., ym) Beim OLAP geht es um die Analyse bzw. die funktionalen Abhängigkeiten der Fakten in Bezug auf die Dimensionen. Diese Aufgabe kann durch eine multidimensionale Funktion beschrieben werden. Unter einer Funktion (Abbildung) versteht man die eindeutige Zuordnung eines Wertes (Fakt) aus einer Wertemenge (XBi Bildbereich) für jedes Element (Vektor aus Variablen [Dimensionen]) eines Definitionsbereiches (XDi). Aufgabe der AIS ist es, die funktionalen Abhängigkeiten zwischen Einflussgrößen (Dimensionen) und diskreten Messergebnissen (Fakten) zu ermitteln. Die dabei gewonnene Funktion stellt das mathematische Modell für die betriebswirtschaftlichen Zusammenhänge dar. Auf dieser Basis sind Analysen und Prognosen möglich. Im allgemeinen Fall handelt es sich um eine multidimensionale Abbildung. Mehrere Variablen x1, x2, ...,xn (Dimensionsvektor) bestimmen mehrere Fakten y1, y2, ...,ym (Bildvektor). Zur Verbesserung der Übersichtlichkeit kann der Bildvektor in seine Vektorelemente zerlegt werden. Wir erhalten dann m n-dimensionale Abbildungen mit eindimensionalem Bildraum. Dieser Kunstgriff erleichtert es, den Zusammenhang zwischen den Dimensionen und einem Fakt zu erkennen. Für die gleichzeitige Analyse mehrerer Fakten (z.B. Clusteranalyse) ist diese Darstellung ungeeignet. Häufig werden alle Dimensionen bis auf eine fixiert um die Auswirkung einer Dimension auf die Fakten zu studieren. Eine solche Abbildung lässt sich als Tabelle oder Kurvenschar einer Variablen darstellen. (y1,y2, ..., ym) y1 y2 ⇔ x1 (c) März 2011, F. Laux, Wirtschaftsinformatik yn x1 11 Analytische Informationssysteme 2.3 Präsentation Fritz Laux Reutlingen University ª Liste ª Graphik ª Pivottabelle • die menschliche Vorstellungskraft ist auf 3 räumliche Dimensionen begrenzt 12 /58 März 2011 © F. Laux Um die Zusammenhänge zwischen Dimensionen und Fakten zu veranschaulichen, benötigen AIS eine Visualisierungskomponente. Die einfachste und meist auch unübersichtlichste Präsentationsform ist eine Liste mit den alphanumerisch dargestellten Werten. Dies entspricht einer eindimensionalen Abbildung in einen m-dimensionalen Raum (Tabelle). Dabei wird die unabhängige Variable vertikal (fortlaufend) dargestellt. Die Faktenwerte erscheinen in den Spalten. Eine Pivottabelle stellt eine 2-dimensionale Funktion in einen eindimensionalen Raum dar. Die Dimensionen verlaufen horizontal und vertikal, das Faktum wird als alphanumerischer Wert in die Kreuzungspunkte der Matrix eingetragen. Graphiken können in einer Ebene 3 räumliche Dimensionen darstellen und durch weitere Gestaltungsmittel (Farbe, Piktogramme, etc.) weitere Dimensionen oder Fakten visualisieren. Die Vorstellungskraft wird dabei umso mehr strapaziert, je mehr Dimensionen gleichzeitig dargestellt werden. Darüber hinaus können die Abhängigkeiten auf verschiedenen Hierarchieebenen (z.B. Aggregationen) untersucht werden. Dazu muss der Benutzer in den Dimensionen navigieren (siehe nächste Seite). Durch Fixieren von Dimensionen bzw. Ausblenden von Fakten, wird die Verständlichkeit verbessert, aber gleichzeitig der Zusammenhang verschleiert. ÜA6: Stellen Sie folgende zweidimensionale Funktion als Liste dar: (Umsatz_Produkt_A, SUM(alle_Varianten_des_Produkts_A) = f(Kunde, Zeitraum_JJJJMM). Verwenden Sie als Basis die Tabelle Umsatzfakten (Produkt, Datum, Variante, Kunde, Preis). Erstellen Sie ein SQL-Skript, welches die geforderte Liste erzeugt. (c) März 2011, F. Laux, Wirtschaftsinformatik 12 Analytische Informationssysteme 2.4 Navigation Fritz Laux Reutlingen University ª hierarchisch Kfz Pkw C220 ª dimensions-übergreifend Nutzfz A180 Prod. A 180 C 220 E 280 ª deklarativ 13 /58 1998 1999 2000 Ö Select * from cube where year = 1999 and product = ´A 180´; März 2011 © F. Laux Für die interaktive Analyse mehrdimensionaler Daten ist eine geeignete Navigation (zielgerichtete Bewegung innerhalb der Daten) notwendig. Die Bewegung erfolgt in natürlicher Weise innerhalb einer Dimension entlang von Dimensionshierarchien (roll up, drill down). Von einer Dimension kann in eine andere gewechselt werden, um die Fakten bezüglich dieser zu studieren. Durch Austauschen (pivotieren) von Dimensionen kann der „Blickwinkel“ geändert und dadurch die Übersichtlichkeit von Zusammenhängen verbessert werden. Durch diese Art der Ansteuerung innerhalb der Fakten können unerwartete Zusammenhänge und Ergebnisse entdeckt werden. Wird mindestens eine Dimension festgehalten (fixiert), so spricht man von Slicing. Dadurch wird die Anzahl der darzustellenden Dimensionen und die Komplexität der Analyse reduziert. z x Slice bei dem Dim. z fixiert ist y Soll eine Vermutung (Hypothese) bestätigt (verifiziert) oder widerlegt (falsifiziert) werden, ist eine deklarative Auswertung vorzuziehen. Durch die deklarative Steuerung können gewünschte oder vermutete Zusammenhänge und Faktenausschnitte direkt (d.h. ohne interaktive Navigation) ermittelt werden. ÜA7: Starten Sie die Analysis-Services für den MS SQL-Server. Ermitteln Sie, wie viele Dimensionen es im Cube ‚Sales‘ des ‚Foodmart‘ Beispiels gibt? Wie viele Hierarchieebenen hat die Dimension ‚Store‘? Welche Elementattribute besitzt Store? Formulieren Sie eine einfache Abfrage mit zwei Dimensionen (Store, Product). (c) März 2011, F. Laux, Wirtschaftsinformatik 13 Analytische Informationssysteme 3 Der Business Intelligence Prozess Fritz Laux Reutlingen University Data Warehouse Data Sources Analysis Cubes, Data Marts xls OLAP DBS stats Data Mining ETL WWW WWW Product Build up 14 /58 März 2011 © F. Laux Design (Goal oriented) Time Region In diesem Kapitel wird der Weg von den operativen Datenbeständen über das Data Warehouse bis zu den Auswertungen und Präsentationen vorgestellt. Jede Phase ist sorgfältig zu planen und durchzuführen, damit man am Ende wertvolle Ergebnisse erhält. Jede Phase dieses Prozesses ist entscheidend für die Qualität der Ergebnisse, denn wenn auch nur ein Prozessschritt fehlerhaft durchgeführt wurde, ist das Ergebnis fragwürdig. Bei ungeeigneter oder falscher Wahl der Ausgangsdaten ist eine bestimmte Analyse wegen fehlender Daten überhaupt nicht möglich (z.B. ohne Absatzzahlen ist eine Absatzprognose durch Zeitreihenanalyse unmöglich. Daher müssen schon bei der Datenbeschaffung der Datenbedarf der möglichen Auswertungen berücksichtigt werden. Auf den folgenden Seiten werden die einzelnen Schritte zur Wissensentdeckung behandelt, wichtige Aufgaben für die Prozessschritte identifiziert und exemplarisch einzelne Situationen vorgestellt. Glossary of terms: Data Source := The origin of raw data ETL (Extraction, Transformation, Loading) := The process of selecting, adapting and integrating data from Data Sources into a Data Warehouse Data Warehouse := Is a subject-oriented, integrated, time-variant, nonvolatile collection of data in support of management’s decision-making process (Inmon, 1996) Data Mart := A subset of a Data Warehouse, designated to specific analysis Cube, Hypercube := Metaphor for data with multivariate dependencies, i.e. a function of multiple parameters. OLAP (Online Analytical Processing) := The interactive analysis of data from a Cube. Data Mining := The mostly automatic and hypothesis-free analysis of large data collections that discovers business relevant information not previously known (narrow definition). Any kind of algorithm that finds new information from a data collection (broad definition). (c) März 2011, F. Laux, Wirtschaftsinformatik 14 Analytische Informationssysteme 3.1 Datenquellen Fritz Laux Reutlingen University ª Statische Quellen ) Zeit ) Geografie ≈ Dimensionen ª operative Systeme ) Stammdaten ) Bewegungsdaten ª Plandaten ) Zielwerte (für Umsatz, Gewinn, etc) ≈ Fakten ª externe Daten ) Volkswirtschaftl. Zahlen + Prognosen ) Statist. Bundesamt 15 /58 März 2011 © F. Laux Neben den statischen Informationen wie Zeit und Geografie sind vor allem die Stammdaten eines Unternehmens Kandidaten für die Dimensionen eines DW. Die Bewegungsdaten der operativen Systeme sind die Hauptdatenquelle für die Fakten. Planzahlen und externe Daten ergänzen und rücken die operativen Zahlen ins richtige Verhältnis zueinander. Die Qualität (Korrektheit) der Daten ist für die nachfolgenden Auswertungen entscheidend, denn auch hier gilt der Ausspruch: „Garbage in, garbage out!“*) *) Dieser Ausspruch ist nicht als mathematische Implikation zu verstehen, sondern er soll aussagen, dass man kein gutes Ergebnis erwarten kann, wenn die Daten nicht die erforderliche Qualität und notwendige Aussagekraft besitzen. Mathematisch gesehen können aus einer falschen Voraussetzung beliebige Schlüsse gezogen werden, die mathematisch „wahr“ sind. (c) März 2011, F. Laux, Wirtschaftsinformatik 15 Analytische Informationssysteme 3.2 Transformation Fritz Laux Reutlingen University ªSelektieren welche Daten werden benötigt? ªBereinigen wo sind die Nutzdaten? ªUmrechnen haben die Fakten die gleiche Einheit, Codierung und Granularität? ªHarmonisieren gibt es Syn- und Homonyme? ªAnpassen sind Gruppierung und Klassifikation konsistent? 16 /58 März 2011 © F. Laux ªKorrigieren sind die Daten korrekt? ªErgänzen sind die Daten vollständig? Analytische Informationssysteme leben von der Aktualität der Daten. In regelmäßigen Abständen sind Extraktions-, Transformations- und Ladeprozesse (ETL) durchzuführen: Dazu gehören die Selektion und Extraktion der Daten (z.B. Auswahl der Systeme und Datenfelder, Einrichtung einer Zugriffserlaubnis) die Bereinigung der Daten von syntaktischen Mängeln (z.B. Elimination von Sonder- und Steuerzeichen für z.B. Stornobuchungen, Satzendemarken, etc) die Umrechnung in vergleichbare Größeneinheiten (z.B. alle Preise in €, die Energie nur in kWh, alle Gewichte in kg, alle Längenangaben in m und alle Flüssigkeiten in Liter), eine einheitliche Codierung (w = weiblich, m = männlich, ø = unbekannt, n = ohne Geschlecht), und die gleiche Granularität (pro Artikel, pro Kunde, pro Tag). das Harmonisieren der betriebswirtschaftlichen Notation [Synonyme, Homonyme] (z.B. verschiedene Attributnamen für die gleiche Semantik (Artikelnummer, Materialnummer, Teilenummer; Auftrag, Kundenauftrag, interner Auftrag) die Anpassung von Gruppierungen und Klassifikationen (z.B. Zeitintervalle (Tag, Woche, Monat, Jahr), Artikelklassifikation, Berechnung von Aggregatwerten) die Korrektur fehlerhafter Daten (z.B. Plausibilitätskontrolle um Ausreißerwerte zu erkennen und zu korrigieren, aus redundanten bzw. ähnlichen Daten berechnen) das Ergänzen fehlender Werte (z.B. durch Defaultwerte (Standardwert), Fehlmarken (unbekannter Wert), geschätzter Wert, Planzahl, etc.) (c) März 2011, F. Laux, Wirtschaftsinformatik 16 Analytische Informationssysteme 3.3 Data Warehouse Fritz Laux Reutlingen University ªModell auswählen welches Modell wird unterstützt? ªArchitektur erstellen wie strukturieren wir das DW? ªSpeichertechniken optimieren ªDaten laden bzw. aktualisieren wie verbessern wir die Geschwindigkeit und verringern den Speicherbedarf? wie aktuell müssen die Daten sein? welche Zeit steht zur Verfügung? 17 /58 März 2011 © F. Laux Die Wahl einer geeigneten Struktur für das Data Warehouse (DW) bestimmt seine Flexibilität hinsichtlich der Auswertemöglichkeiten. Zunächst ist ein Modell auszuwählen, das auch vom eingesetzten Datenbanksystem unterstützt wird. Die Dimensionen und ihre Attribute sind festzulegen. Die zur Verfügung stehenden Fakten sind für diese Variablen (Dimensionen) hinsichtlich ihrer Auflösung (Granularität) zu wählen. Nach der konzeptionellen Modellierung ist die Speichertechnik festzulegen und zu optimieren. Dazu gehört die Speicherorganisation für dünn besetzt Datenbestände (sparsity management). Logische Datenlücken entstehen durch bestimmte Datenkonstellationen, wenn z.B. eine gewisse Produktgruppe nur an bestimmte Kundengruppen abgesetzt wird. Enthält eine oder mehrere Dimensionen Wiederholgruppen, so lassen sich die Daten leicht zusammenfassen und nur einmal speichern. Je nach Präferenz (Speicher- bzw. Zugriffsoptimierung) kommen Direktadressierung, Hashing, Indizierung, Datenkompression, Bitmap- und Separationstechniken oder orthogonale Listen in Frage. *) Der Lade- bzw. Aktualisierungsvorgang stellt für große Datenmengen eine starke Belastung der Systemressourcen dar. Daher wird dieser Vorgang außerhalb der normalen Arbeitszeiten (z.B. am Wochenende) durchgeführt, um den operativen Betrieb möglichst wenig zu stören. *) G. Wiederhold: Datenbanken, Band 1: Dateisysteme, Oldenbourg V. 1980 (c) März 2011, F. Laux, Wirtschaftsinformatik 17 Analytische Informationssysteme 3.4 Laden großer Datenmengen Fritz Laux Reutlingen University Präselektion 1. Selektieren,. lesen, bereinigen 2. Aufspalten, umrechnen 3. Klassifizieren, plausibilisieren, harmonisieren 4. Schreiben Quelle DW Log Satzabweisung Satzabweisung 18 /58 Quelle: U. Knuplesch, Forum WI 2000 März 2011 © F. Laux Das Laden des Data Warehouse (DW) erfolgt in 4 Schritten: 1. Selektieren, lesen, bereinigen und formatieren 2. Aufspalten in Datenbereiche (Tabellen, Marts) und umrechnen der Daten 3. Klassifizieren, harmonisieren, plausibilisieren (korrigieren und ergänzen) 4. Schreiben der Dimensionen und dann der Fakten. Bei großen Datenmengen ist der Ladevorgang in n parallele Datenströme aufzuteilen. Die Daten müssen eine Reihe von Filter passieren, mit denen Konsistenzprüfungen durchgeführt werden. Die Daten, welche die Konsistenzbedingungen nicht erfüllen, werden zur manuellen Nachbehandlung abgewiesen. Durch eine geeignete Verteilung singulärer Tabellen (Replizierung) kann die Performance verbessert werden. Die Präselektion aller Daten aus dem DW, die einen Bezug zu den neuen Ladedaten haben, beschleunigt die Aktualisierungsoperationen.. Beim eigentlichen Ladevorgang ist auf die gleichmäßige Ausnutzung aller Ressourcen des Rechners (CPUs, Diskprozesse, Partitionierung der Speicher, ...) zu achten, um den Durchsatz zu optimieren. Dabei können unabhängige Teilschritte gleichzeitig ausgeführt werden. Schnelle Zugriffsmethoden zum Lesen und Schreiben von Daten (Load Append, blockweises Einlesen, sequential Insert, ...)1) verkürzen die Ladezeiten. 1) http://www-inf.fh-reutlingen.de/forumwi2000/docs/DWH_Knuplesch.PPT, http://www.oracle.com/technology/oramag/oracle/04-mar/o24tech_data.html (c) März 2011, F. Laux, Wirtschaftsinformatik 18 Analytische Informationssysteme 3.5 Interaktive Auswertungen (OLAP) Fritz Laux Reutlingen University ª Datenstrukturierung ) OLAP Hyperkubus ª Navigation ) Ein-/Ausblenden von Dimensionen (slice) ) Pivotieren von Dimensionen ) Teilkubus bilden (dice) ) Aggregation (roll-up)/ Detaillierung (drill down) ª Statistische Funktionen ) Zeitreihen ) Korrelationen 19 /58 März 2011 © F. Laux ª Identifikation von „Hot Spots“ ) Detailsichten Für die interaktive Analyse der Daten ist ein Online Analytical System (OLAP) notwendig. OLAP Server basieren auf dem Kubenstrukturmodell. Die Strukturierung entscheidet über die Auswertemöglichkeiten. Daher ist es i.a. notwendig, mehr als einen Kubus zu definieren, um alle gewünschten Auswertungen durchführen zu können. In Abhängigkeit von der Datenmenge erfolgt die Speicherung als • ROLAP (relationale Struktur mit virtuellen „Würfeln“, die dynamisch durch eine Abfrage erstellt werden). • MOLAP (multidimensionale Zellstruktur [Matrix], welche die Fakten aufnehmen; die Dimensionen sind hierarchisch strukturiert) oder • HOLAP (die ursprünglichen Daten werden in Tabellen, die Aggregationen jedoch in einem multidimensionalen Format gespeichert). Auf die Funktionalität hat die Speichertechnik keinen Einfluss, lediglich die Leistung (Performance) wird damit bestimmt: Die ROLAP-Technik ist nicht sehr performant, sie eignet sich vor allem für große Datenbanken oder Legacy-Daten, die nur selten abgefragt werden. Durch MOLAP kann die beste Abfrageleistung erzielt werden, da dieses Speicherformat spezifisch für multidimensionale Datenabfragen konzipiert wurde. Die MOLAP-Speicherung eignet sich wegen des hohen Arbeitsspeicherbedarfs für Datenmengen (Datasets) von kleiner und mittlerer Größe. HOLAP stellt die Konnektivität mit großen Datasets in relationalen Tabellen zur Verfügung und nutzt gleichzeitig die schnellere Leistung der multidimensionalen Speicherung von aggregierten Dimensionen. Der Ressourcenbedarf ist beachtlich. Die Navigation innerhalb eines multidimensionalen Kubus erfolgt entlang der Dimensionen und ihrer Struktur. Aggregation in einer Dimension wird als Hierarchie realisiert. Die Navigationsmöglichkeiten entsprechen denen von Kap. 2.4 (Folie 13). Durch die Fixierung von Dimensionen reduzieren sich die funktionalen Abhängigkeiten und erleichtern damit die Darstellung. Die Visualisierung beim OLAP erfolgt überwiegend durch Matrizen oder 3D-Diagramme (siehe Beispiel auf der nächsten Seite). Extrema („Hot Spots“) können farblich hervorgehoben werden. (c) März 2011, F. Laux, Wirtschaftsinformatik 19 Analytische Informationssysteme 3.5a Beispiel (Excel 2000) Fritz Laux Reutlingen University 20 /58 März 2011 © F. Laux Das obige Beispiel stellt ein dreidimensionales Balkendiagrammen für die Umsätze (unit sales) mit Kunden in Abhängigkeit von der Ausbildung, dem Geschlecht und dem jährlichen Einkommen dar. Man beachte, dass das Einkommen falsch (nach Zeichenketten) sortiert wurde und nicht nach dem Einkommensintervall. Dies ist eine Folge mangelhafter Semantik der Dimension Jahreseinkommen (Yearly Income). So erstellen Sie in Excel eine Pivot-Tabelle für einen OLAP-Kubus: Menü: Daten/PivotTable- und PivotChart-Bericht…, Assistent: 1) *externe DatenQuelle *PivotTabelle, 2) Daten importieren, Datenquelle auswählen, Register: OLAP Cubes, neue Datenquelle (ok), Name: Sales, OLAP-Anbieter: MS OLE DB Provider for OLAP Services, Verbinden * Analysis Server: <rechnername> oder LOCALHOST, multidimensionale DB auswählen: Foodmart, Fertigstellen, OLAP-Cube wählen: Sales, ok Datenquelle: Sales selektieren, OK, weiter 3) In bestehendes Arbeitsblatt einfügen und fertig stellen (c) März 2011, F. Laux, Wirtschaftsinformatik 20 Analytische Informationssysteme 3.6 Wissensentdeckung (Data Mining) Fritz Laux Reutlingen University ª automatische oder interaktive Wissensentdeckung ª Methodenauswahl entscheidend für mögliche Erkenntnisse ª Bei interaktiven Verfahren ist die Visualisierung von großer Bedeutung für den Ablauf und mögliche Ergebnisse ª Probleme ) Auswahl des geeigneten Verfahrens ) Zielfunktion (Abbruchkriterium) kann schwierig zu wählen sein ) Bei interaktiven Verfahren beeinflusst die Visualisierung das Ergebnis ) Überanpassung reduziert die Prognosestärke ) Scheinkorrelationen ) Ergebnisse oft nicht mehr nachvollziehbar 21 /58 März 2011 © F. Laux Unter Wissensentdeckung aus Datenbanken (Knowledge Discovery in Databases, KDD) versteht man das Aufspüren von bedeutsamen Erkenntnissen aus einem Datenbestand. Die Verfahren des Data Mining zielen also darauf ab, nicht offensichtliche (verborgene) Zusammenhänge und Abweichungen in großen Datenbeständen zu entdecken. Entscheidend hierfür ist die Wahl der richtigen Methode. Dies kann eine Methoden der Statistik (Regression, Prognosen), der KI (Entscheidungsbaum, Deduktion), der künstlichen Neuronalen Netze (Kohonen), der Musteranalyse (Clusterbildung) oder ein genetischer Algorithmus sein. Je nach Typ laufen die Verfahren automatisch oder interaktiv ab, oder sie müssen erst „trainiert“ werden. Auch wenn Data Mining Verfahren häufig ohne Hypothesen (a priori Vermutung) auskommen, begrenzt doch das gewählte Verfahren die möglichen Ergebnisse, zumindest jedoch die Geschwindigkeit (Performance) der Analyse. Häufig ist es schwierig, ein brauchbares Abbruchkriterium für die Berechnungen zu finden oder durch Überanpassung bei der Lernphase entstehen später bei der Analyse zu viele Klassen. (c) März 2011, F. Laux, Wirtschaftsinformatik 21 Analytische Informationssysteme 3.6a Beispiel (Entscheidungsbaum) Fritz Laux Reutlingen University 22 /58 März 2011 © F. Laux Der Entscheidungsbaum zeigt eine Gesundheitsstudie von 360 Personen bei denen ausgehend vom Blutdruck (niedrig (low) normal und hoch (high) und der Klassifikationseigenschaften Alter (Age), Trinkgewohnheiten (DrinkPattern), Rauchen (Smoking) und Fisch_in_der_vergangenen_Woche (FishLastWeek), ein Szenario von 7 Klassen gefunden wurde, um das Blutdruckrisiko von Personen zu beurteilen. (c) März 2011, F. Laux, Wirtschaftsinformatik 22 Analytische Informationssysteme 3.6b Beispiel (Neuronales Netz) Fritz Laux Reutlingen University 23 /58 März 2011 © F. Laux Erklärungen: Siehe Clementine Demo-CD von SPSS (c) März 2011, F. Laux, Wirtschaftsinformatik 23 Analytische Informationssysteme 3.7 Präsentation Fritz Laux Reutlingen University ª Visualisierung der Ergebnisse ) Fakten können z.B. durch Zahlen, Graphen, Farben, Piktogramme u.a. opt. Hilfsmittel dargestellt werden ) Liefert Anregung für weitergehende Fragestellungen ª Ziel: Ergebnisse begreifbar machen ) Nicht unbedingt schön aussehen ª Problematik: ) Optische Täuschungen ) in der Ebene sind nur 2 Dimension darstellbar ) im Raum sind maximal 3 Dimensionen darstellbar ) höhere Dimensionen sind durch den Menschen räumlich nicht vorstellbar, können aber durch Überlagerung von Dimensionen und portionsweise (Slices) visualisiert werden 24 /58 März 2011 © F. Laux Die Präsentation der Analyseergebnisse erfolgt visuell. Die Visualisierung der Ergebnisse soll diese leichter begreifbar machen und anschaulich darstellen. Die geeignete Visualisierung kann auch Anregungen für weitere Fragestellungen und Untersuchungen geben. Dabei sind eine Reihe von Punkten zu beachten: • Optische Täuschung kann den Eindruck verfälschen • Graphische Darstellungen sind kompakter und übersichtlicher als Zahlenreihen • bei komplexen Abhängigkeiten droht ein Überladen der Darstellung • Bei der räumlichen Darstellung ist die menschliche Auffassungsgabe auf drei Dimensionen beschränkt. Das bedeutet, dass maximal 3 Dimensionen räumlich darstellbar sind, wobei die Fakten bereits anderweitig (durch Zahlen, Farben, etc.) ausgedrückt werden müssen. Aus diesem Grund ist eine Reduktion (Slicing) der Dimensionen oder eine Überlagerung notwendig. (c) März 2011, F. Laux, Wirtschaftsinformatik 24 Analytische Informationssysteme 3.7a Beispiel 1 (graph. Visualisierung) ª Balkendiagramm von 2 Fakten über einer Dimension Fritz Laux Reutlingen University ª Konfidenzintervall 95% Fakt als Quadrat dargestellt Konfidenzintervall als Intervall dargestellt 25 /58 ª Frage: gibt es einen Zusammenhang (Korrelation) zwischen Schulbildung und Anzahl Kinder? Regressionsgerade März 2011 © F. Laux Bei den gezeigten Beispielen handelt es sich um typische eindimensionale Darstellungen für statistische Auswertungen. Die Darstellung von Konfidenzintervall und Ausgangsdaten neben der Regressionsgeraden erleichtern und objektivieren die Beurteilung der Ergebnisse. So ist z.B. im Beispiel die Anzahl der Kinder über der Schulbildung zu erkennen, dass trotz der eindeutig negativen Regression (längere Schulbildung, weniger Kinder) bei allen Personengruppen die ganze Bandbreite von 0 bis 8 Kinder vorkommt. (c) März 2011, F. Laux, Wirtschaftsinformatik 25 Analytische Informationssysteme 3.7b Beispiel 2 (opt. Täuschung) Fritz Laux Reutlingen University ª Durch Unterdrückung des Nullpunktes ª Durch logarithmische Darstellung ª Durch flächenhafte Darstellung ª Durch optische Hervorhebung 350 Umsatz 130 120 110 100 26 /58 1998 1999 März 2011 © F. Laux Bevölkerung 300 800 250 400 200 200 150 100 100 50 50 1960 1980 2000 2020 Derartige optische Täuschungen werden z.B. im Marketing (gerne) zur Beschönigung von Firmenergebnissen oder bei Werbematerial eingesetzt. Bei der Darstellung der Umsatzzahlen eines Automobilbauers durch Piktogramme wird der Eindruck erweckt, dass sich der Absatz vervierfacht hat, denn das Auto-Piktogramm von 1999 nimmt die vierfache Fläche gegenüber dem von 1998 ein. Zusätzlich verstärkt wird dieser Eindruck durch die Unterdrückung des Umsatz-Nullpunktes. Im Diagramm daneben wird das Bevölkerungswachstum prognostiziert. In der roten Darstellung wird eine logarithmische Skala verwendet, so dass der Eindruck entsteht, dass sich das Wachstum verlangsamt. Einen realistischen Eindruck (exponentielles Wachstum) vermittelt hingegen die gepunktete Linie (schwarze Skala auf der rechten Seite). (c) März 2011, F. Laux, Wirtschaftsinformatik 26 Analytische Informationssysteme 3.7c Beispiel 3 (> 3 Dimensionen) Fritz Laux Reutlingen University vorrätige Dimensionen Dargestellte Dimensionen Dargestellte Fakten 27 /58 März 2011 © F. Laux In diesem Beispiel der MS Analysis Services wird eine Pivotdarstellung mit überlagerten Dimensionen (z.B. vertikal die Dimensionen Gender, Country und Marital Status) verwendet. Dadurch können gleichzeitig mehr als 2 Dimensionen dargestellt werden. Aggregat- und Einzelwerte einer Dimension werden nebeneinander gestellt. Eine Schwäche dieser Darstellung ist, dass zueinander gehörende Daten nicht immer nebeneinander dargestellt werden können. Zum Beispiel sind in unserem Bild die Umsätze (unit sales) von weiblichen (Gender = F) verheirateten (Marital Status = M) Personen bezüglich der Länder (z.B. USA) nicht nebeneinander zu finden, da die Dimension Marital Status auf der dritten Hierarchiestufe dargestellt ist. Wird die Länderdimension (Country) auf die dritte Ebene gebracht, gestaltet sich die Darstellung nach Ländern kompakt, jedoch wird jetzt der Familienstatus (Marital Status) auseinander gerissen. (c) März 2011, F. Laux, Wirtschaftsinformatik 27 Analytische Informationssysteme 3.7d Beispiel 3 (> 3 Dimensionen) Fritz Laux Reutlingen University Dimensionen Fakten (Kennzahlen) Jede Linie repräsentiert ein Faktum 28 /58 März 2011 © F. Laux Bei dieser Darstellung befinden sich die Dimensionen vertikal in normierter Form (alle Dimensionen sind gleich lang) angeordnet. Jede Verbindungslinie steht für ein Faktum. Geübte Analytiker sollen aus den Verbindungsmustern Zusammenhänge erkennen können. Beispielsweise zeigen Häufungspunkte in den Dimensionen an, dass ein bestimmter Dimensionswert oft vorkommt. Für eine Dimension Produkte bedeutet das, dass ein bestimmtes Produkt häufig gekauft wird. Das Beispiel zeigt eine Warenkorbanalyse, bei der jeder Warenkorb durch eine Linie dargestellt wird. Linienkonvergenzen zeigen Produkte an, die häufig zusammen verkauft werden (Bier&Pampers-Beispiel). (c) März 2011, F. Laux, Wirtschaftsinformatik 28 Analytische Informationssysteme 3.7e Beispiel (ABC-Analyse) Fritz Laux Reutlingen University 29 /58 März 2011 © F. Laux Dies ist die Darstellung einer klassischen ABC-Analyse mit wählbaren Grenzwerten. Bei der Wahl der Grenzen rastet der kumulative Prozentwert genau zwischen zwei Unternehmen ein, so dass keine Mehrdeutigkeit entstehen kann. Die ABC-Analyse ist ein typisches Beispiel für eine Gruppierung, da die Zugehörigkeit eines Unternehmens zu einer bestimmten Gruppe nicht durch seinen eigen Umsatzwert allein bestimmt wird, sondern von den anderen Unternehmen in der Analysemenge (endogen) beeinflusst wird. Im Gegensatz hierzu wäre eine Klassifikation nach Umsatzgröße (Anzahl Mitarbeiter, Umsatz) eine exogen definierte Einteilung, die nur durch das Unternehmen selbst bestimmt wird. (c) März 2011, F. Laux, Wirtschaftsinformatik 29 Analytische Informationssysteme 4 Architekturen Fritz Laux Reutlingen University ª 3-Ebenen-Modell ª Komponenten ª Data Warehouse Architekturen 30 /58 März 2011 © F. Laux In Kap. 4 befassen wir uns mit dem physikalischen Aufbau der Software eines analytischen Informationssystems. Als Referenzarchitektur besprechen wir das 3-Ebenen-Modell nach Schinzer und Bange5). Es gliedert ein AIS in Datenhaltung, Strukturierung (Modellierung) und (interaktive) Analyse. Anhand dieses Modells lassen sich die einzelnen physischen Software-Komponenten eines analytischen Informationssystem einordnen. Auf der Speicher bzw. Datenhaltungsebene werden verschiedene Data Warehouse Architekturen vorgestellt. 5) H. Schinzer, C. Bange, Werkzeuge zum Aufbau analytischer Informationssysteme in P. Chamoni, P. Gluchowski (Hrsg.), Analytische Informationssysteme (c) März 2011, F. Laux, Wirtschaftsinformatik 30 Analytische Informationssysteme 4.1 Das 3-Ebenen-Modell Fritz Laux Reutlingen University Analyse Business Intelligence Gerichtete und ungerichtet Analyse Navigation u. Visualisierung strategieorientiert Theorie Beobacht. Prognose OLAP-Modell Informationsmodellierung (Metadaten) Multidimensionale Sichten (Hypercube) Data Warehouse Datenspeicherung Selektion 31 /58 März 2011 © F. Laux Quelle: Schinzer, Bange; Werkzeuge zum Aufbau analytischer Informationssysteme Das 3-Ebenen-Modell von Schinzer und Bange lehnt sich an das ANSI/SPARC Modell4) 6) für Datenbanken an. Es stellt ein Referenzmodell für AIS dar, welches zwischen interner, konzeptioneller und externer Ebene unterscheidet. Eine Ebene benutzt nur die Funktionen ihrer unmittelbar untergeordneten Schicht und liefert Dienste an ihre übergeordnete Schicht. Das Modell erhebt – wie das ANSI/SPARC Modell – keinen Anspruch auf eine effiziente Implementierung. Es dient nur zur Veranschaulichung von grundlegenden Konzepten und Funktionen eines AIS. Auf der Ebene der Business Intelligence wird strategisches Wissen erworben, das den Unternehmenserfolg sichern und verbessern soll. Dies ist die „externe Ebene“ eines analytischen Informationssystems. Die Interaktion erfolgt mit Hilfe von menügeführten Benutzerschnittstellen, welche die Beobachtungswerte, Analysen und Prognosen dem Benutzer leicht fassbar darstellen. Die Werkzeuge liefern auch Unterstützung für die Visualisierung der Modellbildung. Der Bereich des Online Analytical Processing (OLAP) strukturiert die Daten angemessen und ergänzt diese um Metainformationen. In dieser Ebene wird eine geeignete Modellbildung („konzeptionelle Ebene“) vorgenommen. Dimensionen werden strukturiert, Fakten berechnet und multidimensionale Sichten für die Business Intelligence Ebene bereitgestellt. Die „interne Ebene“ ist für die Datenbeschaffung, Bereinigung und Bereitstellung historischer Daten zuständig. Teilbereiche des Datenbestandes sind selektierbar und werden an die OLAP-Schicht weitergereicht. 4) 6) C. J. Date : An Intro. to Database Systems, Vols 1, Addison-W. 1995 F. Laux, Vorlesung „Datenbanken und Informationssysteme“ (c) März 2011, F. Laux, Wirtschaftsinformatik 31 Analytische Informationssysteme 4.2 Komponenten Fritz Laux Reutlingen University Navigation Data Marts Präsentation OLAP Server Externe Daten Zentrales Data Warehouse Operative Informationssysteme 32 /58 März 2011 © F. Laux VSAM RDB Data Mining IMS Quelle: Chamoni, Gluchowski (Hrsg.), Analytische Informationssysteme Die Bestandteile eines analytischen Informationssystems und ihre Informationsquellen lassen sich in einer physischen Referenzarchitektur idealtypisch anordnen. Zentrale Komponente ist das Data Warehouse, welches von den operativen, transaktionsorientierten Informationssystemen und externen Datenquellen gespeist wird. Der OLAP Server bildet das Data Warehouse oder Teile davon (Data Marts) in mehrdimensionalen Strukturen ab. Diese orientieren sich meistens an der HyperkubenMetapher. Das OLAP-Modell ist bezüglich seinen Dimensionen navigierbar. Die OLAP-Komponente enthält das mehrdimensionale Informationsmodell und interaktive Werkzeuge zur Analyse. Data Mining Verfahren als besonders komplexe und raffinierte Werkzeuge werden meistens als separate Komponente betrachtet. Die Benutzerschnittstelle als Navigations- und Präsentationskomponente kommuniziert mit allen Komponenten direkt, außer dem Data Warehouse. In einigen Systemen ist sogar der Durchgriff bis auf einzelnen Datensätze der operativen Systeme möglich. Allerdings sind weder an den operativen Daten noch im Data Warehouse (DW) Modifikationen möglich. Das DW wird zu bestimmten Zeiten aus den operativen und externen Datenquellen mit Updates versorgt. (c) März 2011, F. Laux, Wirtschaftsinformatik 32 Analytische Informationssysteme 4.3a Virtuelles DW Fritz Laux Reutlingen University z.B. MS UDM OLAP Middleware (z.B. CORBA, EJB) z.B. MS XMLA (XML for Analysis) Externe RDB IMS Daten Betriebliche Daten 33 /58 März 2011 © F. Laux Wir untersuchen nun drei mögliche Architekturen der Datenhaltung und Datenverteilung Bei einem virtuellen DW ist der direkte Zugriff auf operative und externe Daten möglich. Der Zugriff erfolgt nur lesend mit Hilfe einer Middleware (z.B. CORBA, EJB, ADO.NET, etc.) über das Firmennetz oder das Internet. Das DW als Datenspeicher existiert nicht real, es stellt lediglich eine geeignete Sicht auf die Daten her (virtuelles DW). Der Vorteil liegt hauptsächlich in der ständigen Aktualität der Daten. Der Benutzer erstellt mit Hilfe seiner OLAP-Werkzeuge Abfragen, welche die Middleware zerlegt und dann an die heterogenen Datenquellen geschickt werden. Die Ergebnisdaten werden dann in der OLAP-Komponente analysiert. Das virtuelle DW ist gewissermaßen in der OLAP-Komponente oder der Middleware integriert. Die MS Analysis Services 2005 stellen mit dem Unified Dimensional Model (UDM) ein Beispiel für ein virtuelles Data Warehouse dar. Durch UDM eine Brücke zwischen dem Benutzer und den Datenquellen in einer einheitlichen und für den Benutzer verständlichen Form hergestellt. Die Anfragen können über Excel oder SQL Client Tools an das UDM formuliert werden. (Quelle: SQL Server 2005Onlinedokumentation, Unified Dimensional Model (SSAS)) (c) März 2011, F. Laux, Wirtschaftsinformatik 33 Analytische Informationssysteme 4.3b Zentrales DW Fritz Laux Reutlingen University OLAP Datenimport Externe RDB IMS Daten Betriebliche Daten 34 /58 März 2011 © F. Laux In der Literatur wird mit dem Begriff Data Warehouse in der Regel eine zentrale Datenbasis verstanden. Das zentrale DW wird mit Hilfe eines Datenimports regelmäßig von den Datenquellen versorgt. Diese Lösung integriert neben der Datenhaltung und der Ladefunktion auch die Datenbereinigung, Abfrage- und Auswertekomponenten. Daraus ergibt sich, dass Auswertungen und die Verwaltung der Metadaten (Schema) nicht wie im Fall des virtuellen DW auf dem Front-End-Rechner stattfinden muss. (c) März 2011, F. Laux, Wirtschaftsinformatik 34 Analytische Informationssysteme 4.3c Data Marts Fritz Laux Reutlingen University Data Mining OLAP Datenimport Externe Daten RDB IMS Betriebliche Daten 35 /58 März 2011 © F. Laux Data Marts sind abteilungsspezifische, „kleine“ DWs. Ihre Struktur ist dem jeweiligen Verwendungszweck angepasst. Dadurch und durch die redundante Datenbestände ist diese Lösung performanter und fehlertoleranter als ein zentrales DW. Besonders bei geographisch verteilten Unternehmen ist diese Form der Datenhaltung von Vorteil. Die Auswirkungen auf die Performance des Intranets ist bei vielen Updates nicht zu vernachlässigen. Auswertungen über verschiedene Data Marts sind nur bei gleichem Aktualitätsstand möglich. (c) März 2011, F. Laux, Wirtschaftsinformatik 35 Analytische Informationssysteme 4.4 Architektur der SQL Server 2005 Analysis Services Fritz Laux Reutlingen University 36 /58 März 2011 © F. Laux Quelle: SQL Server 2005Onlinedokumentation „Clientarchitektur (SSAS)“ Zum Abschluss des Kapitels soll eine konkrete Architektur eines OLAP Systems vorgestellt werden. Microsoft stellt auf Basis des MS SQL Servers mit den Analysis Services ein System zur Analyse von multidimensionalen Strukturen (Online Analytical Processing) und Data MiningFunktionalität bereit. Das Blockbild zeigt eine zentrale Data Warehouse Architektur mit ClientAnwendungen, die über die Middleware-Komponenten OLE (Object Linking and Embedding) oder ADO (ActiveX Data Objects) durch ein XML basiertes Protokoll (XMLA = XML for Analysis) über TCP/IP mit dem Analysis Server kommunizieren. Alternativ können Anwendungen - anstatt TCP/IP zu nutzen - auch über die Internet Information Servers (IIS) auf Basis von HTTP kommunizieren. Laut MS wird damit eine „Thin Client“ Architektur unterstützt wobei dies nicht soweit geht, um Analysen direkt im Web-Browser anzuzeigen. Es wird allerdings darauf hingewiesen, dass die komplette Analyse auf dem Server stattfindet. Über die Komponenten der SQL Server Analysis Services (grünes Rechteck) gibt dieses Bild keine Auskunft. Die MS Online Dokumentation listet jedoch folgende Funktionen auf: •Analysieren von Anweisungen, die von Client empfangen werden. •Verwalten von Metadaten und Serverressourcen •Verarbeiten von Transaktionen und Berechnungen •Speichern von Dimensions- und Zellendaten •Erstellen von Aggregationen •Planen von Abfragen •Zwischenspeichern von Objekten Damit sind die wesentlichen Funktionen der Komponenten der Referenzarchitektur von Folie 4.1 abgedeckt. Als Datenquellen können über den Integration Service [früher Data Transformation Service (DTS) genannt] die verschiedensten relationalen Datenbanken, Excel-Dateien, Webseiten und ASCII-Dateien verwendet werden. (c) März 2011, F. Laux, Wirtschaftsinformatik 36 Analytische Informationssysteme 5 Datenmodelle Fritz Laux Reutlingen University ªrelationales Modell ungeeignet ) keine Pivottabelle ) keine dynamische Gruppierung ) keine hierarchischen Schlüssel (Dimensionen) ) trotzdem relationale Varianten (Star, Galaxie, ..) DW weit verbreitet Key Attrib1 Attrib2 A180 30 0 € Blau C220 400 € Rot E260 500 € Rot ªmultidimensionale Modelle ) Hyperkubus ) Objektorientiert ) Dimensional Fact x z 37 /58 März 2011 © F. Laux y Bei operativen Systemen dominiert das relationale Modell. Es wäre daher äußerst günstig, wenn das selbe Modell auch für AIS brauchbar wäre. Die Beispiele von Kap. 1 zeigen, dass damit keine geeignete Strukturierung mehrerer Dimensionen möglich ist. Strukturierte Schlüssel sind nicht erlaubt. Das „platt gedrückte“ (normalisierte) relationale Modell stellt keine brauchbare Metapher für die Visualisierung unabhängiger Dimensionen dar. Trotz dieser geringen Eignung werden relationale Systeme mit stark redundanten Daten eingesetzt. Weit verbreitet sind relationale Varianten, wie Star-, Galaxie- und Snowflake-Schemata. Die Gründe für den Einsatz dieser relationalen Varianten sind die bekannte und ausgereifte Technologie, welche erwarten lässt, dass damit auch große Datenmengen (mehrere 100 GB bis zig Terabytes) effizient bewältigt werden können. Für eine adäquate Behandlung der Anforderungen analytischer Informationssysteme sind multidimensionale Modelle notwendig. Häufig werden diese mental mit einer Kubenmetapher assoziiert. Es werden aber auch objektorientierte Modelle mit einer reichhaltigeren Semantik diskutiert. (c) März 2011, F. Laux, Wirtschaftsinformatik 37 Analytische Informationssysteme 5.1 Star -, Galaxy und Snowflake Schemata Fritz Laux Reutlingen University ª Star : eine Faktentabelle, mehrere Dimensionstabellen ª Galaxy: mehrere Faktentabellen, mehrere Dimensionstabellen ª Snowflake: Dimensionstabellen normalisiert, Faktentabellen aggregiert ª Alle 3 Schemata sind verkappte relationale Modelle 38 /58 März 2011 © F. Laux Die o.g. Schemata basieren auf dem relationalen Modell. Sie unterscheiden sich nur in der Anordnung der Relationen. Das einfachste ist das Star-Schema: Es besteht aus einer zentralen Faktentabelle, in der alle Fakten gehalten werden und einer Anzahl von Dimensionstabellen. Diese bilden die Basistabellen für die Fremdschlüssel der Faktentabelle. Die Dimensionstabellen enthalten Attribute, welche die Dimensionen strukturieren. Allerdings sind die Dimensionstabellen aus Performancegründen nicht normalisiert. Häufig stehen nicht alle Fakten in den gleichen Dimensionen und Aggregationsstufen zur Verfügung. Daher müssen im Star-Schema viele NULL-Marken (unbekannte Werte) eingefügt werden, welche bei Abfragen stören. Eine nahe liegende Trennung in Faktentabellen mit gleicher Dimensionierung behebt das Problem und führt zum Galaxy-Schema. Eine Variante hiervon ist das Fact Constellation Schema, welches diese Technik der Faktentrennung auch auf die Aggregat-Fakten anwendet. Das Snowflake-Schema verbindet die Trennung der Fakten bezüglich ihrer Dimension und Aggregationsstufe mit der Normalisierung der Dimensionstabellen. Im Grunde genommen nähert man sich damit in der Struktur einem normalisierten („schulmäßigen“) relationalen Schema. Der wesentliche Nachteil dieses Schemas ist die im Vergleich zum Star-Schema hohe Komplexität, welche Abfragen schwer formulierbar und fehlerträchtig werden lässt. Ein weiterer Nachteil ist die große Anzahl von Verbundoperationen (JOIN) bei einer Abfrage, die zu lasten der Geschwindigkeit gehen. ÜA8: Welche Probleme können NULL-Marken (NULL-Values) verursachen? (c) März 2011, F. Laux, Wirtschaftsinformatik 38 Analytische Informationssysteme 5.1a Starschema Fritz Laux Reutlingen University 39 /58 März 2011 © F. Laux Das Beispiel zeigt ein klassisches Star-Schema mit einer Faktentabelle (OrderView) und den Schlüsselattributen (Dimensionen) OrderID, CustomerID und ProductID. Beispiel: Für eine Auswertung der Umsätze gruppiert nach Land und Produktkategorie innerhalb des Bestellzeitraumes 1997 ist die folgende Verbundabfrage erforderlich: SELECT SUM(summe), Country, CategoryID FROM OrderView INNER JOIN Customers ON OrderView.CustomerId = Customers.CustomerID INNER JOIN Products ON OrderView.ProductId = Products.ProductID WHERE OrderDate >= '01.01.1997' AND OrderDate <= '31.12.1997‘ GROUP BY Country, CategoryID ÜA9: Mit welcher Query erhalten Sie obige Auswertung bezogen auf den Lieferzeitraum 1997? ÜA10: Welche Unternehmen haben 1997 Bestellungen getätigt, bei denen die Lieferadresse in einem anderen Land lag als die Firmenadresse. Gesucht sind: CustomerID, CompanyName, OrderID, Bestellwert, Frachtkosten/Bestellung (c) März 2011, F. Laux, Wirtschaftsinformatik 39 Analytische Informationssysteme 5.1b Galaxie Fritz Laux Reutlingen University 40 /58 März 2011 © F. Laux Das Beispiel zeigt ein Galaxie-Schema mit drei Faktentabellen (Bestellungen, Absatzplan, Planzahlen). Die Ident-Schlüssel (Dimensionen) der Faktentabellen sind jeweils unterschiedlich, daher werden auch die Fakten in unterschiedlichen Tabellen gehalten. Eine Dimensionstabelle kann für mehrere Faktentabellen benutzt werden (in unserem Beispiel sind dies die Dimension „Produkt“ für die Fakten „Bestellungen“ und „Absatzplan“. Für die Ermittlung der Abweichungen der Verkaufszahlen (Istzahl) von den Planzahlen (Sollzahl) bezüglich der Produkte innerhalb des Jahres 1997 ist folgende Verbundabfrage erforderlich: SELECT ProduktNr, Zeitraum.zeitraum, SUM(menge) AS Istzahl, MAX(Anzahl) AS Sollzahl, SUM(menge) - MAX(anzahl) AS Abweichung FROM Bestellungen, Absatzplan, Zeitraum WHERE Bestellungen.ProduktNr = Absatzplan.Produkt AND Absatzplan.zeitraum = Zeitraum.zeitraum AND Zeitraum.zeitraum LIKE '1997%' AND Datum >= von AND Datum <= bis GROUP BY ProduktNr, Zeitraum.zeitraum ORDER BY ProduktNr, Zeitraum.zeitraum ÜA11: Erstellen Sie eine Zeitreihe auf Monatsbasis für die Umsätze und Mengen der umsatzstärksten Kunden. ÜA12: Plausibilisieren Sie die Plangrößen Anzahl und Umsatz mit Hilfe der Produktpreise. Wie erklären Sie sich Abweichungen der Vorgabewerte von den errechneten Größen? Wie müsste das Modell verbessert werden, um Ihre Vermutung überprüfen zu können? (c) März 2011, F. Laux, Wirtschaftsinformatik 40 Analytische Informationssysteme 5.1c Snowflake Fritz Laux Reutlingen University 41 /58 März 2011 © F. Laux Das Snowflake-Schema ist charakterisiert durch normalisierte Dimensionen (auf der Folie sind dies Orders, Products) eine oder mehrere Faktentabellen (OrderView). Die MS Analysis Services erlauben, die Struktur der Dimensionen durch (Sub-) Dimensionen zu unterstützen, die nicht mehr orthogonal (unabhängig) sein müssen (vgl. Kubenstrukturmodell). In der Folie spielt „City“ eine solche Subdimension. Das folgende Schema zeigt das vorherige Galaxie-Beispiel von Folie 5.1b mit strukturellen Erweiterungen der Dimensionen zu einem Snowflake-Schema. (vgl. auch S.40,ÜA12) (c) März 2011, F. Laux, Wirtschaftsinformatik 41 Analytische Informationssysteme 5.2 Kubenstrukturmodell Fritz Laux Reutlingen University ª Dimensionen entsprechen den Koordinaten ª Strukturierte Dimensionen ª Fakten stehen an den Kreuzungspunkten der Koordinaten Kfz Nutzfz Produkt Pkw E240 Region Fakt: Umsatz = f(Produkt, Region, Zeit) C220 Zeit 42 /58 März 2011 © F. Laux Das Kubenstrukturmodell definiert eine multidimensionale Funktion, deren unabhängigen Variablen (Dimensionen) die Koordinaten bilden. Der Kubus mit seinen 3 räumlichen Koordinaten dient als Metapher für die voneinander unabhängigen Dimensionen. Ein Fakt wird durch ein Dimensions-Tupel (im Beispiel (Produkt, Region, Zeit) ) bestimmt. Mathematisch ist dieses Modell nicht auf 3 Dimensionen beschränkt, sondern kann Räume beliebiger Dimension aufspannen. Allerdings entzieht sich der Hyperkubus bei mehr als 3 Dimensionen der menschlichen Vorstellung. Die Reduktion von Dimensionen lässt sich sehr schön durch Schnitte durch den Hyperkubus (Slicing) veranschaulichen. Mathematisch entspricht dies der Fixierung einer Dimension auf einen bestimmten Wert (Parameter). Weist eine Dimension eine Struktur auf, so ist dies im Modell nicht adäquat abzubilden. Aushilfsweise finden sich dann Aggregatwerte gemischt mit nicht aggregierten Werten (z.B. Woche1, Woche2, Woche3, Woche4, Januar, Woche5, ..., 1.Quartal, ...). Der semantische Unterschied zwischen Fakt und Dimension wird ebenfalls nicht deutlich (z.B. Umsätze könnten auch als Dimension auftreten). Diese Mängel führten zur Entwicklung des Dimensional Fact Model (vgl. 5.3). Auf Grund häufig auftretender Datenlücken ist dieses Modell nur konzeptionell verwendbar, für die physische Speicherung ist es wegen der geringen Speicherbelegung (sparse data) weniger geeignet. (c) März 2011, F. Laux, Wirtschaftsinformatik 42 Analytische Informationssysteme 5.3 Dimensional Fact Model Fritz Laux Reutlingen University ª Semantische Unterscheidung zw. Fakt und Dimension ª Multidimensionales Modell ª Strukturierte Dimensionen ª Attribute ª Berechnete Werte Fakt Berechn.Wert Dimension Jahr Dim.Attribut Faktattrib. Verkäufe Durchschnitt Menge Bestand Erlöse Monat Woche Gewicht Typ Produkt Prod.gruppe 43 /58 März 2011 © F. Laux Das Dimensional Fact Model ist ein Ansatz zur graphischen konzeptionellen Modellierung von OLAP-Strukturen. Im Gegensatz zum Kubenstrukturmodell unterscheidet es semantisch zwischen Fakten und Dimensionen. Dimensionen können strukturiert sein und Attribute besitzen. Es können auch parallele Hierarchien dargestellt werden. Der Dimensionsbezug für berechnete Werte kann explizit dargestellt werden. Manche Fakten lassen sich nicht sinnvoll entlang aller Dimensionen addieren. Daher wird zwischen additiven, semi-additiven und nicht additiven Fakten unterschieden (vgl. Kap. 2.1a) Auch bei berechneten Werten kann es durchaus sinnvoll sein, diese im Data Warehouse abzuspeichern. Beispiel: Die Funktion, welche aus der Menge der Komponentenwerte einen Aggregatwert produziert kann durchaus nichttrivial sein (z.B. ein Prognosewert), so dass es sinnvoll sein kann, diesen Wert nicht jedes mal neu zu berechnen, sondern ihn abzuspeichern. (c) März 2011, F. Laux, Wirtschaftsinformatik 43 Analytische Informationssysteme 5.4 objektorientiertes Modell Fritz Laux Reutlingen University ª „Intelligente“ Dimensionen und Fakten: ) Sie sind mit Metawissen ausgestattet ª Beispiel: Ö Zeit-Dimension ist aggregierbar Ö Kosten sind mit Gewinnen vergleichbar, aber nicht mit der Anzahl Aufträge ª Vernetzte Struktur gestattet sinnvolle Navigation Hierarchie level child Produkt 44 /58 #Auftr. preis Zeitraum start ende Monat tage März 2011 © F. Laux Das objektorientierte Modell bietet intelligente Objekte für jede Dimension, so dass ihre Struktur, Aggregatbildung, Gruppierungen etc klar definiert sind. Auch die Fakten haben über ihre Klassendefinition genau festgelegte Eigenschaften und Manipulationsmöglichkeiten. Z.B. kann der Preis eines Produkts und die Stückzahl zwar nicht addiert (123,45 € + 12345 Stück = nicht erlaubt) aber multipliziert werden (123,45 € * 12345 Stück = Umsatz in €). Das Metawissen der Klassen sichert immer eine semantisch korrekte Manipulation der Fakten auch bei verschiedener Skalierung (z.B. 100 T€ + 400 €) und eine sinnvolle Navigation in den Dimensionen. Beispielsweise können Kosten und Gewinn miteinander verglichen werden, auch wenn unterschiedliche Währungen und Einheiten verwendet werden. Die Klasse Währung wird eine korrekte Bearbeitung sicherstellen (z.B. 100 € + 100 SF + 100 $). Auch bei den Dimensionen werden nur sinnvolle Strukturen erlaubt. Z.B. macht Intervallbildung bei Zeiträumen Sinn aber nicht bei Produkten. Das Metawissen kann Interaktions- und Präsentationskomponenten zur Verfügung gestellt werden, damit wird eine bessere Benutzerunterstützung möglich. ÜA13: Definieren Sie eine Zeithierarchie bestehend aus den Klassen „Zeitraum, Jahr, Monat, Woche, Tag“ und verwenden Sie dazu die Klasse „Datum (Date)“. Implementieren Sie dazu die Methoden: start(zr):Date, ende(zr):Date, tage(zr):int, ueberlappen(zr1, zr2), umfasst(zr1, zr2); wobei zr, zr1, zr2 Parameter vom Typ Zeitraum sind. (c) März 2011, F. Laux, Wirtschaftsinformatik 44 Analytische Informationssysteme 6 Data Mining Fritz Laux Reutlingen University ª Ist der Prozess der automatischen (oder interaktiven) Gewinnung von bisher unbekanntem Wissen ohne vorherige Hypothese oder Modellannahme ª Typologie ) Explorative Verfahren ) Induktive Verfahren ) Prognostische Verfahren ª Verwendet Methoden der Statistik (induktive) KI (Assoziationsregeln) Klassifikation Clusterings Maschinellen Lernens (Neuronale Netze, genetische A.) 45 /58 März 2011 © F. Laux Die Verfahren des Data Mining1) - umfassender und besser bezeichnet als „Wissensentdeckung in Datenbanken“ (Knowledge Discovery in Databases (KDD)) - zielen darauf ab, nicht offensichtliche (verborgene) Zusammenhänge oder Abweichungen in großen Datenbeständen zu entdecken. Bei „seltenen Ereignissen“ ist allerdings Vorsicht geboten. Wenn wir z.B. die 3500 Studenten der FH Reutlingen die Augenzahl eines Würfels drei mal vorhersagen lassen und dabei feststellen, dass drei Studenten alle 3 Versuche richtig vorhersagen konnten, dürfen wir bei diesen Studenten nicht auf übersinnliche Wahrnehmung schließen, denn bei zufälligem Raten würden wir dasselbe statistische Ergebnis erwarten.2) Data Mining im engeren Sinne kommt ohne Hypothese (Vermutung) aus. Im Gegensatz hierzu wird in der Statistik eine stochastische Verteilung angenommen und diese dann mit einer bestimmten Wahrscheinlichkeit bestätigt (verifiziert) oder verworfen (falsifiziert). Algorithmen, welche die vorhandenen Daten untersuchen (analysieren) und dabei etwas entdecken werden als explorative Verfahren bezeichnet. Induktive Verfahren ziehen aus Schlüsse (z.B. Regeln) aus den Daten und prognostische Verfahren machen Aussagen über die Zukunft. Entscheidend für den Erfolg eines Data Mining Verfahrens ist die Wahl der richtigen Methode. Dies kann eine Methode der Statistik (Regression, Prognosen), der KI (Entscheidungsbaum, Deduktion), der künstlichen Neuronalen Netze, der Musteranalyse (Clusterbildung) oder ein genetischer Algorithmus sein. Je nach Typ laufen die Verfahren automatisch oder interaktiv ab, oder sie müssen erst „trainiert“ werden. 1) Der Begriff „Data Mining“ ist eigentlich irreführend: Wir suchen nicht nach Daten, sondern in Daten nach besonders seltenen (wertvollen) Informationen. Man sagt ja auch „nach Gold schürfen“ bzw. suchen und nicht „nach Sand oder Steinen suchen“ 2) J. D. Ullman, Data Mining, www.cs.stanford.edu/ Der Begriff „Data Mining“ stammt ursprünglich aus der Statistik und bezeichnet wie auch „Data Fishing", "Data Dredging“ oder „Data Snooping“ eine Überinterpretation oder unzulässige Schlussfolgerungen. (c) März 2011, F. Laux, Wirtschaftsinformatik 45 Analytische Informationssysteme 6a Vorgehen beim Data Mining Fritz Laux Reutlingen University ª Data Mining Aufgabe festlegen ) Auswahl eines Verfahrens ) Genauigkeit der Aussagen durch Zielfunktion wählen ª Modellparameter mit Trainingsmenge ermitteln oder schätzen ) Regelmenge erstellen bzw. ) Parameter für Algorithmus berechnen ª Evaluation des Modells mit einer Testmenge ) Überprüfung durch Testmenge ≠ Trainingsmenge ) Genauigkeit und Glaubwürdigkeit ermitteln ) Überanpassung vermeiden ª Anwendung auf den zu untersuchenden Datenbestand 46 /58 März 2011 © F. Laux ) Analyse ) Vorhersage (Prognose) Gemäß des in Kap 3 vorgestellten Prozesses für „Analytische Informationssysteme (AIS)“ gehört das Data Mining zur Auswerte- bzw. Analysephase. Wenn wir davon ausgehen, dass die Daten bereits in auswertbarer Form bereitstehen, sind beim Data Mining vier Schritte durchzuführen: Zunächst muss man sich über den Datenbestand und die beabsichtigte Analyse soweit klar sein, dass ein adäquates Verfahren bzw. Modell ausgewählt werden kann. Wir unterscheiden 3 Arten: explorative Analysen, die im Nachhinein (ex post) durchgeführt werden, induktive (schließende) und prognostische (vorhersagende) Verfahren. Beispielsweise erfordert eine Gruppierung (Clustering) der Kunden bezüglich ihres Kaufverhalten andere Algorithmen als die Vorhersage von Risiken bei einer Kreditvergabe. Im ersten Fall handelt es sich um eine reine explorative Datenanalyse während im zweiten Fall eine Vorhersage zu machen ist. In beiden Fällen ist festzulegen, ob und wann die gewünschte Genauigkeit bzw. Konfidenz des Ergebnisses erreicht ist. Dies ist die Aufgabe der Zielfunktion. Wenn das Modell und die dazugehörige Zielfunktion festliegen, können die Parameter des Modells gewählt oder bei lernenden Verfahren durch exemplarische Daten (Trainingsmenge) ermittelt werden. Als nächstes wird das Modell und seine Parameter durch eine bekannte Testmenge auf seine Genauigkeit und Glaubwürdigkeit überprüft. Die Testmenge darf natürlich nicht mit der Trainingsmenge identisch sein. Bei Vorhersagemodellen (prognostische Analyse) ist eine Überanpassung zu vermeiden, da sonst neue Daten nicht beurteilt werden können. Danach kann das Verfahren auf den gesamten Datenbestand angewandt werden. (c) März 2011, F. Laux, Wirtschaftsinformatik 46 Analytische Informationssysteme 6.1 Entscheidungsbaum Klassifikation Fritz Laux Reutlingen University ªZiel: Zuordnung von Objekten in vordefinierte Klassen auf Grund ihrer Attributwerte ªVorgehen: 1. Aufbau des Entscheidungsbaums (Klassifikationsmodells) mit Hilfe von Trainingsdaten 2. Generierung von Klassifikationswissen (z.B. Genauigkeit) mit Testdaten 3. Klassifikation unbekannter Objekte Autotyp = LKW ≠ LKW Risiko = niedrig > 60 Risiko = niedrig Alter ≤ 60 Risiko = hoch 47 /58 März 2011 © F. Laux Bei der Klassifikation handelt es sich um eine von außen vorbestimmte (exogene) Einteilung der Objekte. Dies kann durch die Auswertung einer oder mehrerer Eigenschaften geschehen, wie im oben stehenden Beispiel einer Autoklassifikation. Die Einteilung muss nicht binär erfolgen (Autotyp = LKW oder Autotyp ≠ LKW). Wenn eine Eigenschaft als Kriterium für viele Klassen dient (z.B. Einkommen ∈ {< 10k, 10k..20k, 20k..30k, 30k..50k, > 50k}, erhält man lediglich eine flachere Hierarchie der Einteilung. Bei der Klassifikation eines Objektes werden von der Spitze (Wurzel) her die Kriterien jedes Knotens überprüft und dementsprechend weiter verzweigt. Wenn man bei einem Blattknoten angekommen ist, hat man die Klasse für das Objekt gefunden. Fehlende Werte stellen ein offensichtliches Problem dar, denn es ist nicht klar, welche Verzweigung zu wählen ist. Mögliche Lösungen sind die Berücksichtigung von Fehlwerten durch einen Pfad „unbekannt“ oder es wird ein Standardwert angenommen. Das Klassifikationsmodell kann in Form von Implikationsregeln (Wenn Alter > 60, dann Risiko niedrig) formuliert werden. Sie ist für kategoriale und numerische Kriterien geeignet. Entscheidend für eine Klassifikation ist die Aufteilungsstrategie (Splitstrategie). Es muss sowohl der Typ des Splits definiert als auch eine möglichst gute Qualität damit erreicht werden. Gesucht sind Splits, die eine möglichst klare Klasseneinteilung (Partition) der Daten erzeugt. Eine gute Klasseneinteilung maximiert den Informationsgewinn (Entropie) in einer Menge. Dies bedeutet, dass man Eigenschaften suchen muss, deren Werte möglichst gleichmäßig im Datenbestand vorkommen aber auch im Hinblick auf die Zielsetzung relevant sind. Beispiel: Wenn wir für eine Risikoeinstufung bei einer Kfz-Versicherung das Alter als Kriterium hinzufügen wollen, dann wäre eine Einteilung in Altersklassen < 28, 28..38, 38 … 48, 48..58, >58 Jahre durchaus etwa gleich verteilt, allerdings wäre dies Einteilung vermutlich wenig hilfreich bei einer Risikoeinstufung, da zu vermuten ist, dass das Risiko im Bereich 28..58 Jahre wenig variiert. Daher wäre eine Einteilung <28,28..58, >58 Jahre günstiger. (c) März 2011, F. Laux, Wirtschaftsinformatik 47 Analytische Informationssysteme 6.2 Regressionsbaum ªZiel: Vorhersage einer numerischen Größe auf Grund von Fritz Laux Reutlingen University Attributwerten und einer Regressionsgeraden ªVorgehen: Autotyp 1. Aufbau eines Entscheidungsbaums mit Hilfe von Trainingsdaten = LKW ≠ LKW Preis = 20k€ + 2k€*zGGew 2. Ersetzen von Zweigen durch einfache Regressionsformeln 3. Generierung von Vorhersagewerten und Justieren der Regressionsparameter März 2011 © F. Laux < III Preis = 10k€ + 3k€*VKl > VI Preis = 3ok€ + 6k€*VKl [IV..VI] 4. Tests, Vorhersage wie bei 6.1 Entscheidungsbaum 48 /58 Versicherungsklasse Preis = 20k€ + 4k€*VKl + 10€*HP Ein weiteres Problem stellt die Größe eines Klassifikationsbaumes und die damit verbundene geringe Differenzierung der Klassen dar. Häufig repräsentieren sogar zwei oder mehr Blattknoten die gleiche Klasse bezüglich der Aufgabenstellung. Wenn in einem Teil des Baumes (Zweig) keine relevanten Unterschiede mehr auftreten, kann dieser zu einer Klasse zusammengefasst werden. Diesen Vorgang bezeichnet man als „abschneiden“ (pruning) eines Zweiges. Wenn die Vorhersagewerte numerisch sind, kann anstatt eines konstanten Wertes pro Klasse eine Verkürzung des Baumes dadurch erzielt werden indem man einzelne Zweige durch eine (lineare) Funktion ersetzt, welche die Werte der abgeschnittenen Klassen approximiert. Beispiel: Versicherungsklasse > VI < III Herst. Herst. VW kW BMW kW < 60 Preis 20k€ Herst. kW > 120 Preis 25k€ Der Preis ermittelt sich in Abhängigkeit der Versicherungsklasse, des Herstellers und der Leistung (kW). Die Teilbäume ab dem Knoten „Hersteller“ können durch geeignete lineare Funktionen zur Berechnung des Preises ersetzt werden. Diese Prognosefunktionen (in der Statistik Regression genannt) ersetzen somit eine Anzahl fester Preise durch eine lineare Funktion (siehe Folie). Preis 30k€ (c) März 2011, F. Laux, Wirtschaftsinformatik 48 Analytische Informationssysteme 6.3 Bayes Klassifikation 1/2 Fritz Laux Reutlingen University Hypothesen hi (Trainingsdaten) Objekt o w(h1|o) = 0,6 Klasse c1 w(h2|o) = 0,3 Klasse c2 w(h3|o) = 0,1 ª Seien hi∈H Hypothesen (Trainingsdaten) und cj ∈C mögliche Klassifikationen. Die Zuordnung eines Objektes o zu der Klasse mit der größten Wahrscheinlichkeit heißt „optimaler Bayes-Klassifikator“ : argmax ∑w(c j | hi ) × w(hi | o) c j ∈C hi ∈H 49 /58 März 2011 © F. Laux Diese Klassifikation beruht auf der Erkenntnis, dass eine Einteilung von Objekten auf Grund ihrer Trainingsdaten (Hypothesen) nur mit einer gewissen Wahrscheinlichkeit zutrifft. Dazu wird die „bedingte Wahrscheinlichkeit“ verwendet, wie sie vom englischen Mathematiker Thomas Bayes (1702-1761) eingeführt wurde. In unserem obigen Beispiel sind 3 Hypothesen gegeben: h1 weist jedem Objekt die Klasse c1 zu während h2 und h3 die Klasse c2 zuordnen. Die Wahrscheinlichkeit, dass hi für das Objekt o zutrifft, bezeichnen wir als „bedingte“ Wahrscheinlichkeit w(hi|o) oder als seine a-posteriori Wahrscheinlichkeit. Entsprechend ist w(cj|hi) die Wahrscheinlichkeit für die Zuordnung in Klasse cj unter der Bedingung, dass Hypothese hi gilt. In unserem einfachen Beispiel ist w(c1|h1) = 1, w(c2|h1) = 0, w(c1|h2) = w(c1|h3) = 0 und w(c2|h2) = w(c2|h3) = 1. Daraus errechnet sich der optimale Bayes-Klassifikator für die Klasse c1: w(c1|h1)*w(h1|o) + w(c1|h2)*w(h2|o) + w(c1|h3)*w(h3|o) = 1*0.6 + 0*0.3 + 0*0.1 = 0.6 c2: w(c2|h1)*w(h1|o) + w(c2|h2)*w(h2|o) + w(c2|h3)*w(h3|o) = 0*0.6 + 1*0.3 + 1*0.1 = 0.4 Der „optimalen Bayes-Klassifikator“ wählt die Hypothese h aus, welche einem Objekt o die wahrscheinlichste Klasse zuordnet. Dabei ist die Wahl in dem Sinne „optimal“, dass kein anders Verfahren bei gleichem a-priori Wissen ein Besseres Ergebnis liefert. Die Wahrscheinlichkeit, dass die Hypothese hi zutrifft (ohne weitere Kenntnis der Objekte), bezeichnen wir als a-priori Wahrscheinlichkeit w(hi). (c) März 2011, F. Laux, Wirtschaftsinformatik 49 Analytische Informationssysteme 6.3 Bayes Klassifikation 2/2 Fritz Laux Reutlingen University ª Seien h und E zwei Ereignisse eines Ergebnisraums Ω ª Bedingte Wahrscheinlichkeit: w(h|E) = w(h∩E)/w(E) ª Wenn h und E unabhängig sind, gilt für die bedingte Wahrscheinlichkeit: w(h|E) = w(E|h)*w(h)/w(E) (Satz von Bayes) ª Annahme: genau eine Hypothese sei gültig und die Wahrscheinlichkeiten seien unabhängig, dann gilt für ein Objekt o =(o1, o2, …, od) der „naive Bayes-Klassifikator“ : d argmaxw(cj ) ×∏w(oi | c j ) 50 /58 c j ∈C i=1 März 2011 © F. Laux Einen wichtigen Spezialfall der „optimalen“ Bayes Klassifikation erhalten wir, wenn nur eine Hypothese hi gültig ist. In diesem Fall können wir o.B.d.A. annehmen, dass w(cj|h1) = w(cj) und w(cj|hi) = 0 ist für alle i>1. Dadurch entfällt die Summe im Klassifikator und die Formel vereinfacht sich zu argmaxcj ∈ C w(cj|o) (C = Menge der möglichen Klassifikationen). Wenn wir jetzt die Unabhängigkeit der Wahrscheinlichkeiten w(cj) und w(o) annehmen, dann erhalten wir durch die Formel von Bayes den Ausdruck: argmax cj ∈ C w(o|cj)*w(cj). Besitzen die Objekte d unabhängige Attribute oi, so gilt w(o|cj) = Πi=1..d w(oi|cj) und wir erhalten die oben stehende Formel als „naive“ Bayes Klassifikation. Wobei hier das Attribut „naiv“ dadurch berechtigt ist, weil die Annahme unabhängiger Wahrscheinlichkeiten nur selten zutrifft. Trotzdem lassen sich damit häufig gute Ergebnisse erzielen. (c) März 2011, F. Laux, Wirtschaftsinformatik 50 niveul4 äz2/U M .L F © k e G 1 fu a 3 c a5 tT ro B 6 K R 8L n,saktiom ux012yge ilengT fIm la rM B n e h c u K 6.4K soziatA nsregl s h c ,u fe a n Analytische Informationssysteme 6.4 Assoziationsregeln Fritz Laux Reutlingen University Transaktionsmenge T t Gekaufte Items 1 Brot, Kaffee, Milch, Kuchen 2 Kaffee, Milch, Kuchen 3 Brot, Butter, Kaffee, Milch 4 Milch, Kuchen 5 Brot, Kuchen 6 Brot 51 /58 März 2012 © F. Laux Wir verallgemeinern das Beispiel auf der Folie zu folgenden formalen Definitionen: Sei I := {i1, i2, .. im} eine Menge von Elementen (Items). Eine Teilmenge X von I (X ⊆ Ι) heißt Itemset. Seien X, Y zwei disjunkte Teilmengen von I (X, Y ⊆ Ι, X ∩ Y = ∅). Eine Assoziationsregel ist eine Implikation der Form: X ⇒Y. Für eine Teilmenge X von I (X ⊆ Ι) ist der Support von X in T definiert als |{t∈T| X ⊆ t}| / |T|. Dies bedeutet: der Support ist die relative Häufigkeit der Itemsets, die X enthalten. Der Support einer Assoziationsregel X ⇒Y ist der Support von X∪Y. Der Support einer Assoziationsregel gibt also an, wie hoch der Anteil der Itemsets ist, welche die Regel befolgen. Die Konfidenz einer Assoziationsregel (Genauigkeit, Accuracy) X ⇒Y ist der Anteil der Transaktionen t, die Y enthalten bezogen auf alle Transaktionen, die X enthalten. Mit anderen Worten es ist die bedingte Wahrscheinlichkeit w(Y|X), dass Y⊆ t unter der Bedingung, dass X ⊆ t gilt. Die Abdeckung (engl. Coverage) einer Regel X ⇒Y ist der Anteil der Transaktionen t, die X ∪ Y enthalten bezogen auf alle Transaktionen, die Y enthalten. Es gibt also an, welchen Anteil von Y die Regel erfasst. Regel: XÆ Y erfüllt X Y (c) März 2011, F. Laux, Wirtschaftsinformatik Y erfüllt 51 Analytische Informationssysteme 6.5 Clustering Grundlagen Fritz Laux Reutlingen University ª Clustering (Gruppierung) := Einteilung einer Menge von Objekten in Gruppen so, dass ) Objekte im gleichen Cluster möglichst „ähnlich“ sind ) Objekte aus verschiedenen Clustern möglichst „unähnlich“ sind ª Typisierung ) Partitionierendes Clustering (ein Objekt o1 gehört zu genau einem Cluster) ) Hierarchisches Clustering (geschachtelte Cluster) ª Distanzfunktion d: ) d(o1, o2) ≥ 0; d(o1, o2) = 0 ⇔ o1 = o2; d(o1, o2) = d(o2, o1) ª Ähnlichkeit von o1 und o2 wird über die Distanz definiert ) Je kleiner die Distanz, desto ähnlicher die Objekte ª Zielfunktion 52 /58 März 2011 © F. Laux ) Kompaktheit der Cluster maximieren ) Kompaktheit eines Clusters C := |C| / Sumoi∈C (d(oi,c), wobei c = Zentroid (Mittelwert) von C Unter Clustering versteht man die Einteilung einer Menge von Objekten in Gruppen in Abhängigkeit ihrer Ähnlichkeit zueinander (endogenes Kriterium). Die Zuordnung zu einem Cluster unterliegt keinem festen Kriterium für das Objekt, sondern hängt von den Beziehungen zu den restlichen Objekten der Menge ab. Daher kann es passieren, dass ein Objekt seine Zugehörigkeit zu einem Cluster wechselt, wenn neue Objekte in die Menge aufgenommen werden. Dies ist ein Kriterium zur Unterscheidung der Gruppierung von der Klassenbildung. Zur Definition der Ähnlichkeit benötigen wir ein quantifizierbares Kriterium. Eine „Distanzfunktion“ kann als Maß für Ähnlichkeit dienen. Auf Grund der Definition haben gleiche Objekte die Distanz 0, sie sind also einander maximal ähnlich. Wenn die Distanz sogar eine Metrik ist, gilt die Dreiecksungleichung: d(a,b) <= d(a,c) + d(c,b). Damit lässt sich die Ähnlichkeit von Objekten durch bekannte Objekte abschätzen. Beim Clustering werden Gruppen möglichst ähnlicher Objekte gebildet. Die Abgrenzung zu anderen Gruppen wird über ein Kompaktheitskriterium vorgenommen, das möglichst unabhängig von der Kardinalität des Clusters sein sollte. (c) März 2011, F. Laux, Wirtschaftsinformatik 52 Analytische Informationssysteme f1 6.6 K-Mean basiertes Clustering (1/2) Fritz Laux Reutlingen University ª Algorithmus: 1. Wähle k Clusterzentren (Zentroide) 2. Ordne jedes Objekt seinem nächsten Zentrum zu Beispiel 1 3. Neuberechnung der Zentroide 5 a k=2 6 3 2 b 7 4 Initiale Zentroide c und d 53 /58 März 2011 © F. Laux Dieses sehr einfache Verfahren arbeitet in vielen Situationen erstaunlich gut. Es werden willkürlich k Clusterzentren (z.B. k Objekte) ausgewählt. Die Anzahl k der Zentroide wird durch den Benutzer vorgegeben. Alle Objekte werden seinem jeweils nächsten Zentroid zugeordnet. Im Beispiel ist k = 2 und als Clusterzentren wurden anfänglich die Objekte c und d gewählt. Objekte 3 und 5 sind Objekt c am nächsten, bilden also das 1. Cluster. Objekte 6, 4 und 7 sind dem Zentroid d benachbart. Die Clusterzentren werden neu berechnet. Im Beispiel ergeben sich a und b als Zentroide. Dieses Verfahren wird solange wiederholt, bis sich die Zentren nicht mehr ändern (siehe nächste Seite). Der Erfolg des Verfahrens hängt von der Anzahl der vorgegebenen Cluster und den initialen Clusterzentren ab. Ist die Wahl der Startcluster ungünstig, so können keine sinnvollen Cluster gefunden werden. Wenn die Anzahl k der Cluster nicht passend ist, kann offenbar kein „gutes“ Ergebnis erwartet werden, da die Clusteranzahl vom Verfahren nicht optimiert wird, sondern nur das Clusterzentrum. Beispiel: Wenn die 4 Objekte durch die initialen Zentroide a und b nach der k-means Methode gruppiert werden sollen, kann der Algorithmus kein gutes Clustering finden, weil die Ausgangssituation ungünstig ist. 1 a 2 3 b 4 ÜA: Welche Cluster werden gebildet? Wenn bei dem selben Beispiel 3 Cluster vorgegeben werden, kann natürlich nicht die bessere Lösung mit 2 Clustern herauskommen. (c) März 2011, F. Laux, Wirtschaftsinformatik 53 Folie 53 f1 Animation für K-Mean Hans Muster; 09.11.2006 Analytische Informationssysteme f2 6.6 K-Mean basiertes Clustering (2/2) Fritz Laux Reutlingen University ª Algorithmus: 1. Wähle k Clusterzentren (Zentroide) 2. Ordne jedes Objekt seinem nächsten Zentrum zu Beispiel 1 3. Neuberechnung der Zentroide ª Wiederhole Schritt 2-3 solange, bis sich Zentroide nicht mehr ändern. 5 a a* 3 k=2 6 2 b b* 7 4 Initiale Zentroide c und d 54 /58 März 2011 © F. Laux In der Fortführung des Beispiels wird Objekt 6 von Cluster b nach Cluster a verschoben, da es diesem näher liegt. Die Neuberechnung der Zentroide ergibt neue Clusterzentren a* und b*. Wir haben jetzt Cluster a* mit den Objekte 1, 3, 5 und 6. Cluster b* wird gebildet durch Objekte 2, 4 und 7. Bei der nächsten Wiederholung der Zuordnung der Objekte zu ihrem nächsten Clusterzentrum ergibt sich keine neue Situation, so dass die Clusterzentren sich sich nicht mehr ändern und der Algorithmus terminiert. Problematisch sind nicht kugelförmige Cluster oder Cluster mit stark variierender Größe oder Dichte. Diese Probleme können mit Dichte-basierenden Algorithmen (siehe folgende Seite) vermieden werden. (c) März 2011, F. Laux, Wirtschaftsinformatik 54 Folie 54 f2 Animation für K-Mean Hans Muster; 09.11.2006 äz/U M .L F u© stdchabc g onf friv e D lg A 1e63542ª R 8L K P ene lin x01yw 4kfüd -s= avc K S E sD o Ö tm ä W rB a jR b O ) ch d g u z ee ln tjrd o ,6.7 n 0 > |{xm ä E v1 fg b M s.C u kp („-ich (e i+ ,R o P chtebasD M }ß l.-kx)< z1 jm tO rK b d sch u a i d “g m e n t|)rksio luw iertsC 0 M ≥ P x,a zK j-ch b > a inm e n griw .sO jh b tko fü crg d lu C ste s lte rh Analytische Informationssysteme 6.7 Dichte basiertes Clustering Fritz Laux Reutlingen University ª Definitionen ) Kernobjekt Ö Sei e > 0 und MinPts >0 Ö Ein Objekt o heißt Kernobjekt, wenn der Kernbereich mindestens MinPts Objekte enthält |{x | d(o,x) < e}| ≥ MinPts ) Dichte-Erreichbarkeit Ö on ist von o1 dichte-erreichbar, wenn eine Objektfolge o1, .., on existiert, mit oi ist Kernobjekt und oi+1 liegt im Kernbereich. ª Algorithmus 55 /58 März 2011 © F. Laux ) Wähle e und MinPts ) Bilde Cluster indem zu jedem Kernobjekt alle dichte-erreichbaren Objekte hinzugefügt werden. ) Randpunkte sind dichte-erreichbar ) Objekte die keine Kernobjekte sind und nicht dichte-erreichbar sind, werden keinem Cluster zugeordnet („Rauschen“) e 3 1 6 2 e 4 5 c und d sind Kernobjekte für MinPts = 4 f ist dichteerreichbar von c, aber c ist nicht dichte-erreichbar von f g ist nicht dichteerreichbar von c Das Dichte basierte Clustering nutzt die Distanzfunktion, um alle Objekte in der Nähe rekursiv zu einer Gruppe zusammen zu fassen. Damit ist garantiert, dass alle Objekte, die Dichte-erreichbar sind, sich in einer Gruppe befinden. Objekte bei denen sich kein weiteres Objekt in ihrer Umgebung befindet, werden zum „Rauschen“ gezählt und gehören zu keinem Cluster. Ein Kernobjekt ist charakterisiert durch die Anzahl (MinPts) Objekte, welche sich mindestens in der Umgebung mit einen Maximalabstand e befinden müssen. Das bedeutet, dass sich in einer Umgebung mit Radius e mindestens MinPts Objekte befinden. Auf diese Weise wird eine Mindestdichte festgelegt. Randpunkte erfüllen nicht die Kernobjekteigenschaft, aber sie sind von einem Kernobjekt aus erreichbar und bilden somit den „Rand“ eines Clusters. Dieses Verfahren ist gut geeignet für unregelmäßig geformte Cluster die alle eine ähnliche Dichte besitzen. Sie sind ungeeignet für hierarchische Cluster und Cluster mit stark unterschiedlicher Dichte. Bei hierarchischen Mengen von Objekten hilft das hierarchische Clustering weiter. (c) März 2011, F. Laux, Wirtschaftsinformatik 55 nveutR 1)8L ärz/U M .L F (4,59876© = d c in 0123dS lg A ª ne aux0syeo k -l(n D u m h .B r2 ig ä W ts) e f ld n iC e ta )z6.8g ,2 c1 D g sro u m h hn e lta iw m x= erachis:H ∈ D sd zC r1 ch S g u B i j lb lutck n (xrhesC C ,y∈ 1 ch zw u sa 2 d in tT e lnD )e griy e a O d b zig (C m u ä stjn lb m k/C K )u m a g ro d ste a td rzl)p u (W n d rn e i Analytische Informationssysteme 6.8 Hierarchisches Clustering Fritz Laux Reutlingen University ª Single-Link Distanz zweier Cluster ) D-sl(C1, C2) := minx∈C1,y∈C2 d(x,y) ª Algorithmus ) 1. Berechne die Distanz zwischen allen Objekt/Clusterpaaren ) 2. Bilde einen Cluster aus den beiden Objekten/Clustern mit der geringster Distanz ) Wiederhole Schritt 1 und 2 bis ein einziger Knoten (Wurzel) entstanden ist ) Wähle manuell geeignete Teilbäume (Cluster) aus dem entstandenen Baum Dendrogramm d 3 2 8 9 7 56 /58 März 2011 © F. Laux 3 2 d(7,3) 1 6 5 d(4,5) =1 4 1 0 c d e f g h i j k Das hierarchische Clustering basiert auf dem Vergleich der Distanz aller Objekte miteinander und einzelner Objekte mit (möglichen) Gruppen. Die endgültige Wahl der Cluster erfolgt manuell mit Hilfe eines Dendrogramms. Ein Dendrogramm zeigt die Abstände der Objekte und ihrer Zusammenfassungen in Form einer binären Hierarchie, wobei die Knoten Cluster und die Blätter Objekten entsprechen. Die Höhe (der Level) eines Knotens entspricht der Distanz seiner Kindelemente. Bei der Erstellung dieser Hierarchie beginnt man bei den Blättern (Objekten) und fasst jeweils die Objekte mit den kleinsten Distanzen zusammen. Diese bilden dann den zugehörigen übergeordneten Knoten. Dieses Verfahren wird solange fortgesetzt, bis nur ein Cluster (der Wurzelknoten) übrig bleibt. (c) März 2011, F. Laux, Wirtschaftsinformatik 56 Analytische Informationssysteme 6.9 Neuronale Netze Fritz Laux Reutlingen University Krebsrisiko y1 ={ 0 wenn a< d 1 wenn a≥ d Ausgabeschicht y1 Zwischenschicht N N: a = Σi wixi x1∈{0,1} Eingabeschicht männlich/ Alter Größe Gewicht Raucher weiblich Alkoholaufnahme 57 /58 März 2011 © F. Laux Künstliche Neuronale Netze stellen ein Paradigma für ein Informationsverarbeitungsmodell dar, das dem menschlichen Gehirn nachempfunden ist. Es besteht aus einer Menge von Verarbeitungseinheiten/Knoten (im Bild als Kugeln dargestellt), die über Leitungen miteinander verbunden sind. Die Knoten entsprechen Nervenzellen (Neuronen), und die Leitungen den Synapsen bzw. den Axonen über die Signale weitergeleitet werden. Ein Knoten erzeugt bei einer bestimmten Stärke und Anzahl von Eingangssignalen ein Ausgangssignal. Es bildet gewissermaßen eine gewichtete Summe, die weitergeleitet wird, wenn ihr Wert a ausreichend groß ist (a >= Schwellwert d). Die Gewichte und die Schwellwerte lassen sich für alle Knoten durch Trainingsdaten (Eingangwerte) so einstellen, dass der Ausgang das gewünschte (ein sinnvolles) Ergebnis liefert. (c) März 2011, F. Laux, Wirtschaftsinformatik 57 Analytische Informationssysteme 6.10 Genetische Algorithmen Fritz Laux Reutlingen University ª Potentielle Lösung ~ Gensequenz ª Suchmechanismus ~ Reproduktion Lösung 1 .ABCE.. F=3 Lösung 2 ...CD... Mutation Erzeugt durch .ABXE.. Ö Kombination ausgewählter Individuen (Vererbung) F=2 Ö Zufällige Veränderung (Mutation) ª Zielfunktion für Lösungen ~ Fitness einer Chromosomenstruktur X Eltern Vererbung .ABCDE. Kind F=4 Bessere Lösung ) Die Fitness F bestimmt die Reproduktionsrate ª Beurteilung 58 /58 März 2011 © F. Laux ) Algorithmus nicht sehr effizient, aber besser als zufällige Suche ) Algorithmus kann mehrer optimale Lösung finden Wie bei den künstlichen neuronalen Netzen sind die genetischen Algorithmen der Natur nachgebildet. Diese Algorithmen implementieren ein allgemeines Suchverfahren, welches auf dem Prinzip der biologischen Evolution basiert. Diese Verfahren sind prinzipiell auf jedes Problem anwendbar, das sich geeignet modellieren lässt. Dabei entspricht eine mögliche (durchaus nicht optimale) Lösung den Genen eines Individuums. Jedes Gen steht für eine Eigenschaft der Lösung. Eine Bewertungsfunktion (Fitnessfunktion) definiert, welche Lösung besser geeignet ist. Die besseren Lösungen (Individuen) erhalten Überlebensvorteile, z.B. höhere Fortpflanzungsrate, längere Lebensdauer etc. Dadurch setzen sich bessere Lösungen durch und der Algorithmus ist damit besser geeignet, eine optimale Lösung zu finden, als eine zufällige Suche nach einer Lösung. Im Unterschied zu anderen Suchverfahren (z.B. Gradientenmethode, Matrixverfahren) wird hier ein absolutes Maximum bezüglich der Fitnessfunktion erreicht. (c) März 2011, F. Laux, Wirtschaftsinformatik 58