Data is the new oil.
Daten sind das neue Öl.
Diesen Satz haben Sie wahrscheinlich schon dutzende Male gehört.
Aber was steckt eigentlich hinter dieser Aussage?
Anders als bei Öl werden unseren Planeten die Daten wohl nie ausgehen.
Was hat also das schwarze Gold beispielsweise mit
Krebserkennungsalgorithmen oder auch dem autonomen Fahren zu tun?
Erdöl findet heutzutage Anwendung in beinahe allen Produkten des
täglichen Lebens und ist aus einer modernen Industrienation nicht mehr
wegzudenken.
In seiner Rohform kann man Öl allerdings kaum verwenden.
Daher muss es zur Herstellung von Produkten wie beispielsweise Benzin
zunächst in einer Raffinerie verarbeitet werden.
Nur so kann das finale Produkt die bestmögliche Qualität aufweisen.
Ähnlich verhält sich das beim Training von Modellen für maschinelles
Lernen.
Rohdaten allein bringen normalerweise kein brauchbares Ergebnis
hervor.
Sie können fehlende oder falsche Werte und nötige Informationen für
die Aufgabe oder für eine Maschine unverständliche Elemente enthalten.
Diese führen nur zu einer komplexeren, aber nicht unbedingt guten
Modellierung.
Füttert man sein Modell mit unverarbeiteten Daten, wird das Ergebnis
in der Regel unbrauchbar sein.
Ganz nach dem Prinzip Garbage in, Garbage out.
Werden die Daten allerdings erstmal durch die Datenraffinerie
vorverarbeitet, um dann die Modelle damit zu füttern, erhält man die
bestmögliche Qualität der Ergebnisse.
In diesem Video geht es darum, einen Überblick über die
Datenvorverarbeitung zu gewinnen, bevor wir genauer in die Details der
Machine Learning Methoden gehen können.
Im QUACK-Prozess sind wir jetzt im Schritt Understanding the Data.
Wie müssen wir also unsere Datensätze anpassen, dass die Maschine die
bestmögliche Qualität der Ergebnisse hervorbringt?
Die Datenvorverarbeitung besteht aus drei Hauptkomponenten, nämlich
das Einlesen, die Analyse und das Eskalieren der Daten.
Schauen wir uns nun diese Prozesse genauer an.
Beim Dateneinlesen geht es neben dem Laden der Daten in der Python
-Umgebung darum, wie man mit häufig vorliegenden Besonderheiten des
Datensatzes umgehen kann.
Beispielsweise ist bei Textdateien wie CSV-Dateien wichtig zu wissen,
durch welches Trennzeichen Werte voneinander unterschieden werden.
Des Weiteren kann es vorkommen, dass bestimmte Werte im Datensatz als
Text vorliegen.
Eine Maschine versteht jedoch nur Zahlenwerte.
In diesem Fall muss also eine Konvertierung durchgeführt werden, dabei
werden alle Textwerte in eindeutige IDs in Form von Zahlen überführt.
Sobald wir unsere Daten eingelesen haben, können wir zur Datenanalyse
übergehen.
Dieser Schritt ist wichtig, um unsere Daten genauer verstehen zu
können.
Dadurch sind wir in der Lage zu entscheiden, welche Anpassungen wir an
unseren Daten machen müssen, damit wir mit ihnen trainieren können.
Die Datenanalyse lässt sich in zwei Klassen unterteilen.
Bei der deskriptiven Statistik versucht man, Eigenschaften des
Datensatzes direkt aus verschiedenen Kennzahlen, wie z.B.
den Mittelwert oder der Korrelation herauszulesen.
Alternativ dazu kann man auch mit grafischen Methoden wie z.B.
Histogrammen, Dichtediagrammen oder auch Hitmaps arbeiten.
Solche visuellen Methoden sind vor allem dann wichtig, wenn man
Datensätze mit vielen Dimensionen verwendet, bei denen es schnell
schwierig wird, alle Zahlen zu erfassen.
Haben wir unsere Daten dann erst einmal durchschaut und wissen,
welchen Verteilungen sie folgen, können wir mit dem Skalieren
beginnen.
Beim Skalieren werden die Wertebereiche des Datensatzes angepasst.
Zum Beispiel liegen dann die Werte aller Daten nicht mehr zwischen
minus - und endlich und plus- und endlich, sondern nur noch zwischen
minus 1 und 1 oder zwischen 0 und 1, je nach Skalierungsansatz.
Der Vorteil daran ist, dass der Lernprozess für die Maschine einfacher
und somit effizienter wird.
In diesem Online-Kurs werden wir drei der bekanntesten
Skalierungsansätze genauer betrachten.
Das Normalisieren, Standardisieren und Binarisieren.
Beim Normalisieren werden die Werte so angepasst, dass sie sich auf
einer Skala zwischen 0 und 1 bewegen.
Dadurch wird der ursprünglich größte betrachtete Wert zu 1 und der
kleinste zu 0.
Beim Standardisieren zentriert man die Verteilung der Werte auf 0 und
setzt die Standardabweichung auf 1.
Dadurch ergibt sich die typische Glockenkirche.
Binarisieren ist eine einfache Methode, die Daten in zwei Klassen
einteilt.
Dabei legt man einen Schwellenwert fest.
Alle betrachteten Werte unterhalb dieser Schwelle werden zu 0, alle
darüber zu 1.
Neben diesem vorgestellten Skalierungsverfahren gibt es unzählige
weitere Möglichkeiten, Daten anzupassen.
Dabei ist das Ziel aber immer dasselbe.
Man versucht, die Struktur der Daten für einen Algorithmus bestmöglich
offen zu legen.
Dazu ist es wichtig zu wissen, welches Verfahren man bei welchen
Eigenschaften des Datensatzes am besten anwendet.
Das wird im Programmierteil des Kurses zum Thema Skalieren noch
genauer erklärt werden.
Datenvorverarbeitung ist ein fundamentaler Bestandteil des
maschinellen Lernens und sollte vor jedem Training mit neuen
Datensätzen durchgeführt werden.
Dabei ist es bereits beim Einlesen wichtig, auf mögliche
Besonderheiten zu achten und die Daten in die benötigten Datentypen zu
konvertieren.
Zudem können mit Hilfe deskriptiver Statistik und Grafen die
Eigenschaften der Daten genauer analysiert werden.
Dadurch weiß man, welche Anpassungen gemacht werden müssen, dass die
Modelle des maschinellen Lernens so hochwertige Ergebnisse wie möglich
erzielen.
Sobald Sie gelernt haben, wie Sie die Daten vorverarbeiten, können Sie
mit dem Training von Machine Learning Modellen anfangen.
Die verarbeiteten Daten werden dann zu wertvollen Rohstoffen und
beispielsweise für Methoden des autonomen Fahrens oder der
Krebsfrüherkennung verwendet.
Untertitel der Amara.org-Community