Data Mining Bericht

Transcription

Data Mining Bericht
Data Mining Bericht
Analyse der Lebenssituation der Studenten
der Hochschule Wismar
Zur Veranstaltung
Business Intelligence
Eingereicht von: Mohamed Oukettou 108 208
Maxim Beifert 118 231
Vorgelegt von: Prof. Dr. Jürgen Cleve
Gliederung
Ist-Situation
Datenvorbereitung
Datensäuberung
Datenreduktion
Data Mining Verfahren
Naive Bayes
Entscheidungsbaum ID3 und J48
Clustering mit K-Means und Simple K-Means
Schlussfolgerung
1. Ist-Situation
Am Anfang haben wir insgesamt 54 Attributen und 234 Datensätze. Diese Attribute sind
umfangreich und behandeln verschiedene Themen. Wir haben diese in sechs Bereichen
unterteilt damit nachher für die Bildung von Zusammenhängen übersichtlich und einfacher
sein wird.
Unterteilung der Spalten in verschiedenen Themenbereiche:
-
Finanzen :erhälst du Baföf, erhälst du finanzielle unterstützung von deinen Eltern,
gehst du zusätlich arbeiten, wenn ja wie viel stunden, wie hoch ist dein monatliches
Budget.
-
Wohnsituation:In welchen Wohnverhältnissen lebst du 5 Alternativen, Wie viele
m² in Deiner Wohnung stehen Dir alleine zur Verfügung, weiß nicht.
-
Studium :in welchem Studiengang, in welchem Semester, warum studierst du in
wismar:
ruf
der
HS-Empfehlung-Wohnortnähe-Finanzielle
Gründe-
Studiengangsbedingt-andere Gründewie würdest du deine Leistung im S einschätzen,
weiß nicht, bist du damit zufrieden, wie vile Zeit nimmt das S in der Woche inkl.
Lehrveranstaltungen, denkst du, dass das ausreichend ist.
-
Freizeit :Besitzt du einen Fernseher, wenn ja, spielst du Onlinespiele, wenn ja, wie
viele WE verbringst du in Wismar, treibst du regelmäßig Sport,
-
Verkehrsmittel:wie kommst du zur Hochschule: Bahn-Bus-Auto-Motorrad-FahrradZu Fuß-anderes, wie bewegst du dich in Wismar: Bus-Auto-Motorrad-Fahrrad-zu
Fuß-anderes.
-
Zufriedenheit: wie zufrieden bist du derzeit mit deiner Lebenssituation, wie schätzt
du deine Möglichkeit auf dem Arbeitsmarkt nach abgeschloßenem Studium ein, wie
würdest deine Leistung im S einschätzen, bist du damit zufrieden.
2 Datenvorverarbeitung
2.1 Datensäuberung
Dieser Vorgang kümmert sich um die fehlende, verrauschte, Falsche sowie inkonsistente
Daten. Die Excel Tabelle soll erstmal nach dieser Bedingungen geprüft werden.
-
in der Spalte wenn ja, wie viele Stunden in der Woche? Fehlen 29 Werte die mit 0
ausgefüllt werden sollen, diese werden manuell eingetragen.
In der Tabelle gibt es Felder wo kein Wert eingetragen sind entweder die befragten haben
diese Fragen vergessen oder NULL sind.
In der Spalte Falls nein, welchen Studiengang hast du vorher belegt? Gibt es das (Null)
215-mal und das wird durch das Wort (keinen) ersetzt um einen einheitlichen Datentyp zu
erzeugen.
In der Spalte wenn ja, wie viele Stunden gehst du pro Woche arbeiten? Da fehlen 101
Werte das macht einen Anteil von 43,16 % der Gesamtwerte dieser Spalte,
Vorgehensweise: diese Felder haben wir mit dem Wert 5 belegt, 5 steht für Nein (d.h. der
Student geht nicht arbeiten).
In der Spalte (Onlinespiele)wenn ja, wie viele Stunden in der Woche? Fehlen 152 Werte
das heißt 64,95% der werte dieser Spalte fehlen.
Vorgehensweise: diese Felder haben wir mit dem Wert 4 belegt, 4 steht für Nein (d.h. der
Student spielt kein Onlinespiele).
In der Spalte Falls Nein, welchen Studiengang hast Du vorher belegt? Liegt inkonsistente
Datenwerte, z.B. mache Studenten geben Bachelor BW und mache geben Betriebswirtschaft
als Studiengang an, das kann zu Verschlechterung der Ergebnisse in Knime führen.
Vorgehensweise: Für Betriebswirtschaft Bachelor BW
Für Wirtschaftsinformatik Bachelor WI
2.2 Datenreduktion
Es gibt in der Tabelle 54 Attributen und 234 Datensätze das ergibt 54*234= 12636, aufgrund
dieser großen Anzahl an Feldern kann zu Fehler kommen, in dieser Hinsicht wird eine
Reduktion der Dimension durchgeführt.
Entweder das Ausblenden einiger Attribute oder Abhängige Komponenten zusammenfassen.
-
Ausblenden von Attribute:
Die Attribute wie bewegst du dich in Wismar(Anderes und Motorrad) werden entfernt,
weil diese keine Informationen liefern. Fast 100 % der befragten benutzen kein Motorrad.
Die Attribut wie kommst du zur Hochschule (Anderes und Motorrad) werden auch
ausgeblendet, diese liefern keine Informationen.
-
Entfernen von Datensätze
In der Spalte Wie hoch ist dein monatliches Budget fehlen 5 Werte, die man nicht
einschätzen kann. In diesem Fall sie werden gelöscht, und das sind folgende Datensätze
23,63, 65, 111, 171,
Zusammenfassen von Attributen
-
Das Attribut wie schätzt du deine Möglichkeiten auf dem Arbeitsmarkt nach
abgeschlossenem Studium und das Attribut (Die gleiche Frage mit weiß nicht)
werden in einem einzigen Attribut zusammengefasst.
Vorgehensweise: die Werte in Weiß nicht Spalte mit 5 codieren und in der Spalte wie schätzt
du deine Möglichkeiten auf dem Arbeitsmarkt nach abgeschlossenem Studium einfügen
-
Das Attribut wie viele m² in deiner Wohnung stehen dir alleine zur Verfügung?
und das Attribut Wie viele m² in Deiner Wohnung stehen Dir alleine zur
Verfügung (weiß nicht) werden zusammengefasst.
Vorgehensweise: Analog zu der vorherigen Vorgehensweise.
-
Die Spalten In welchen Wohnverhältnissen lebst du (EigentumswohnungMietwohnung- Wohngemeinschaft- Studentenwohnheim- Eltern) werden in einer
einzigen Spalte zusammengefasst
Vorgehensweise:
Eigentumswohnung:1, Mietwohnung:2, Wohngemeinschaft:3, Studentenwohnheim: 4,
Eltern: 5
=WENN(V2=1;1;WENN(W2=1;2;WENN(X2=1;3;WENN(Y2=1;4;WENN(Z2=1;5)))))
die Spalten wie kommst Du zur Hochschule (Bahn, Bus, Auto, Fahrrad, ZuFuß) werden in
einer Spalte zusammengefasst.
Bahn: 1, Bus:2, Auto: 3, Fahrrad:4, Zu Fuß:5
=WENN(AN2=1;1;WENN(AO2=1;2;WENN(AP2=1;3;WENN(AQ2=1;4;WENN(AR2=1;5)))))
Die Spalte Wie bewegst Du Dich in Wismar (Bus- Auto- Fahrrad- Zu Fuß) werden in einer
Spalte zusammengefasst.
Bus: 1, Auto: 2, Fahrrad: 3, Zu Fuß: 4
=WENN(AT2=1;1;WENN(AU2=1;2;WENN(AV2=1;3;WENN(AW2=1;4))))
Nach der Durchführung der Datenreduktion und Datentransformation kommen wir zu einer
erheblichen Reduktion der Dimension und damit eine Reduktion von 54 Spalten auf 36
Spalten und Datensätze von 234 auf 229 d.h. von 54*234= 12636 auf 34*229= 7786
Nachdem wir die Datenvorbereitung durchgeführt haben, sollen die Themenbereiche wie folgt
aussehen.
Finanzen: erhälst du Bafög, Erhälst du finanzielle Unterstützung von deinen Eltern, gehst du
zusätzlich arbeiten, wenn ja wie viel Stunden, wie hoch ist dein monatliches Budget.
Wohnsituation: In welchen Wohnverhältnissen lebst du, wie viele m²
stehen dir zur
Verfügung.
Studium: Studiengang, Semester, ist dies dein Erststudium, falls Nein welchen Studiengang
hast du vorher belegt, warum studierst du in Wismar, wie würdest deine Leistung im Studium
einschätzen, bist du damit zufrieden, wie viel zeit nimmt das Studium, ist das ausreichend.
Freizeit: Fernseh-besitz, wie Stunden schaust du, Onlinespiele, wie viel Stunden spielst du,
wie viel WE verbringst du in Wismar, treibst du Sport.
Verkehrsmittel: wie kommst du zur Hochschule, wie bewegst du dich in Wismar.
Zufriedenheit: wie zufrieden bist du mit deiner Lebenssituation als Student, wie schätzt du
deine Möglichkeit auf dem Arbeitsmarkt nach abgeschloßenem Studium ein, wie würdest
deine Leistung im S einschätzen, bist du damit zufrieden.
3 Data Mining Verfahren
In diesem Abschnitt werden wir ein Ziel setzen und mithilfe vom Data Mining Verfahren die
Vorhersage analysieren, in dem wir als Ziel die Zufriedenheit mit der aktuellen
Lebenssituation als Student in Wismar festsetzen.
3.1 Naive Bayes Verfahren.
Nachdem wir das Verfahren der Datenvorbereitung vorgenommen haben, setzen wir fort mit
dem Knime um die Daten zu analysieren.
Vorgehensweise: wir haben erstmal die Daten importiert und durch die Node XLS Reader
ablesen lassen, dann durch die Node Column Filter die Attributen ausgewählt die bei der
Vorhersage und deren Verbesserung hilfen können.
Erste Probe: wir haben durch XLs Reader die Daten ablesen lassen, dann mittels der Node
Number to String die Daten umgewandelt von numerischen zu nominalen Datentyp, mit der
Node Partitioning haben wir die relativität gewält in dem wir eine 80/20 Verhältnis
genommen haben d.h. 80% der Daten zum Lernen und 20% zum Vorhersagen. Die 80 %
werden über die Node Naive Bayes Learner bearbeitet und in dieser Node haben wir die
Spalte die vorherzusagen soll ausgewählt (wie zufrieden bist du zurzeit mit deiner
Lebenssituation), wir haben außerdem in der Node Partitioning nicht die draw randomly
gehackt sondern die Stratified Sampling mit der Auswahl der Attribut (Wie zufrieden bist du
mit deiner Lebenssituation).
unser Ziel ist für die Studenten unter gegebenen Bedingungen vorherzusagen ob sie mit der
Lebenssituation zufrieden, eher zufrieden, sehr zufrieden, unzufrieden oder eher unzufrieden.
In der Node Naive Bayes Predictor werden die 20% übrigen Daten prognostiziert, und
anschließend duch die Node Scorer bewertet. Dabei haben wir auch Konfiguration gemacht
indem wir als First Column wie zufrieden bist du mit deiner Lebenssituation und als second
Column Winner Naive Bayes ausgewählt haben Erste Probe sieht wie folgend aus.
Des weiteren haben wir eine zusätzliche Node hinzugefügt
(Column Filter) um
herauszufiltern welche Attributen könnten das Ergebnis der Vorhersage verbessern oder
verschlechtern. Wie vorher erwähnt wurde die Themen sind in 6 Kategorien unterteilt:
Finanzen, Studium, Verkehrsmittel, Wohnsituation, Freizeit und Zufriedenheit. Erste
Filterung der Attributen die wir vorgenommen haben ist: wir haben die Kategorie der
Finanzen, Verkehrsmittel und Studium für die Vorhersage genommen und das Ergebnis sieht
so aus
Dann haben wir jeder Kategorie im einzelnen die Vorhersage geprüft
Das Ergebnis der Vorhersage zeigt die Tabelle.
Accuracy
Error
Finanzen
45,6 ; 21
54,3 ; 25
Studium
41,3 ; 19
58,6 ; 27
Wohnsituation
52,1 ; 24
47,8 ; 22
Freizeit
45,6 ; 21
54,3 ; 25
Zufriedenheit
52,1 ; 24
47,8 ; 22
Verkehrsmittel
58,6 ; 27
41,3 ; 19
Durch viele Änderungen und Updates kommen wir zu einer kleinen Verbesserung der
Vorhersage. Zum Beispiel wenn wir ein paar Attributen hinzufügen oder andere Attributen
herausfiltern. Weitere Änderungen haben wir in der betrachteten Anteil der zu lernenden
Daten wir haben z.B. 25/75, 40/60 usw.
3.2 Clustering K-Means
Mit diesem Verfahren versuchen wir zu clustern. Es gibt in Knime verschiedene Methode um
zu clustern. Wir haben in dieser Hinsicht die Methode von K-Means verwendet.
Das Verfahren in Knime sieht so aus
Mit XLS Node lassen wir die Daten gelesen, dann in K-Means Node können wir ein paar
Einstellungen vornehmen, wie zum Beispiel die Daten selektieren die zum Clustern relevant
sind, die Anzahl der K (number of clusters), die maximal Anzahl von Iterationen. Die Node
Color Manager dient dazu die Clustern mit Farben zu identifizieren. In Scatter Plot können
wir die Cluster im Diagramm sehen und modifizieren. Mit der Interactive Table können wir
die Cluster in Excel Tabelle sehen.
Unser Ziel ist die Studenten in Gruppen zu Clustern hinsichtlich der Zufriedenheit mit der
Lebenssituation.
1. Versuch mit K=5 und alle Attributen, wir stellen fest dass die Cluster wie folgend zu sehen
sind.
Der Cluster 2 beinhaltet wenige Datensätze es wird nachher die Clusteranzahl reduziert um
diese Cluster auf die andere aufzuteilen
Mit dem Interactive Tabelle kann man die Datensätze und zu welchen Cluster gehören, sehen.
2. Versuch mit k= 4, Kategorien(Finanzen, Verkehrsmittel, Studium, Freizeit)
Wie aus dem Schema zu sehen ist, die Datensätze werden nach dem Ziel der Zufriedenheit in
der Lebenssituation geclustert. Die Farben bezeichnen die Menge der Objekten die zu diesem
Cluster gehören.
Wir haben die Anzahl der Attributen reduziert und nur die Kategorien Finanzen,
Verkehrsmittel, Studium und Freizeit gewählt.
Die ausgewählte Kategorien sind so angenommen dass die Güte der Vorhersage und eine
bessere Clustering erreicht werden.
3.3 Entscheidungsbaum mit den Algorithmen J48 und ID3
J48
Mit dem J48 erstellen wir einen Entscheidungsbaum, wir lassen die Daten durch XLS Node
gelesen und anschließend werden die Datensätze von numerischen zu dem nominalen
Datentyp umgewandelt. Mit der Node Partitioning haben wir die Datenmenge in einem
Verhältnis von 80/20 aufgeteilt. Mit der J48 Node werden die Trainingsdaten (80%) gelernt
und und mit der Weka Predictor werden auf die 20% der Daten vorhergesagt, die Scorer Node
zeigt die Ergebnisse.
Themen
Accuracy % ;
Error % ; Anzahl von
Anzahl von Daten
Daten
Finanzen
47,8 ; 22
52,17; 24
Studium
30,4; 14
69,5%; 32
Wohnsituation
47,8; 22
52,1; 24
Freizeit
54,3; 25
45,6; 21
Zufriedenheit
47,8; 22
52,1; 24
Verkehrsmittel
43,4; 20
56,5; 26
Algorithmus ID3
Mit diesem Algorithmus versuchen wir einen Entscheidungsbaum zu generieren. Die
Vorgehensweise ist ähnlich der Vorgehensweise mit dem J48 Algorithmus. Mit Dem ID3
Verfahren sollen die numerischen Werten in nominalen umgewandelt, deswegen ist der
Einsatz der Node Number to String unabdinglich. Als Wurzelattribut Knime wählt dasjenige
Attribut mit dem höchsten Informationsgewinn (Gain) aus. Die Ergebnisse die wir erzielt
haben ähneln dem Algorithmus J48.
4. Schlussfolgerung
In dieser Projekt haben wir die Theorie in der Praxis umgesetzt, die Verfahren und
Algorithmen die wir in der Veranstaltung Business Intelligence verwendet haben, versuchten
wir diese mit Hilfe von Knime zu praktizieren. Im Rahmen der durchgeführten Umfrage in
der Hochschule Wismar generierten wir eine große Datenmenge, die wir durch Knime
analysiert haben.
Im ersten Schritt sollte eine Datenvorbereitung durchgeführt werden, dieser Prozess kann zu
Verbesserung der Ergebnisse führen. Um eine übersichtliche und gezielte Analyse zu schaffen
haben wir die Attributen in verschiedene Themen unterteilt und mit den Methoden des Data
Mining analysiert, sowohl überwachte Verfahren wie Klassifizierungsmethoden als auch
unüberwachte Verfahren wie Clustering sind die Verfahren die wir eingesetzt haben.
Mit dem Naive Bayes und Methoden zur Generierung der Entscheidungsbäume (J48 und ID3)
haben fast die gleiche Ergebnisse erzielt. Mit dem Clustering Methode kann man
verschiedene Ergebnisse erzielen weil es nicht eine einzige Lösung die zum besten
Entscheidungsbaum führen kann, gibt. In dieser Hinsicht sollten wir mit verschiedener KAnzahl probieren.