DataScience Training



Einführung in maschinelles Lernen
Feedback form    |           |   Download:    |   


Einführung in maschinelles Lernen

Einführung

Warum solltest du das lernen? Click to read  

Data Science ist eine empirische Disziplin, die Daten mit verschiedenen Methoden, hauptsächlich aus der Statistik und dem maschinellen Lernen, kombiniert, um Probleme zu lösen und fundierte Entscheidungen zu ermöglichen. Statistik wurde in einem separaten Kurs behandelt, daher werden wir uns hier auf den Bereich des maschinellen Lernens (ML) konzentrieren.

KI, ML, DL und Data Science

Begriffsbestimmungen Click to read  

ØAI: Künstliche Intelligenz
ØML: Maschinelles Lernen
ØDL: Deep Learning
ØDS: Data Science

AI: Künstliche Intelligenz

Ein Computersystem, das Aufgaben ausführen kann, die normalerweise mit menschlicher Intelligenz verbunden sind

z.B.: visuelle Wahrnehmung, Spracherkennung, Entscheidungsfindung, Übersetzung zwischen Sprachen

General AI vs. Narrow AI:

General AI kann alle Aufgaben erledigen, narrow AI nur eine ausgewählte Teilmenge von Aufgaben.  Derzeit gibt es kein AI-System, das als general AI bezeichnet werden kann. Ob ein solches System in Zukunft existieren kann, bleibt derzeit umstritten.
 

AI: Künstliche Intelligenz

Ein Computersystem, das Aufgaben ausführen kann, die normalerweise mit menschlicher Intelligenz verbunden sind

z.B.: visuelle Wahrnehmung, Spracherkennung, Entscheidungsfindung, Übersetzung zwischen Sprachen
 

Wenn der Algorithmus ... 

1.  ... aus einer Schritt-für-Schritt-Anweisungen zur Durchführung der Aufgabe besteht
dann ist es symbolische KI
 
2. ...  ein Muster auf der Grundlage einer großen Menge von Daten/Beispielen erkennt und dieses Muster verwendet, um die Aufgabe zu erfüllen
dann ist es maschinelles Lernen
ML: Maschinelles Lernen

Anstatt jeden Schritt zu programmieren, wird eine Maschine so programmiert, dass sie Muster findet und anhand von Beispielen "lernt".  Hier gibt es große Überschneidungen mit der Statistik.

Spart Tausende von Codezeilen
Flexibel:

wenn sich die Daten ändern,

passt sich das Programm an.

 

ML: Maschinelles Lernen

Anstatt jeden Schritt zu programmieren, wird eine Maschine so programmiert, dass sie Muster findet und anhand von Beispielen "lernt".  Hier gibt es große Überschneidungen mit der Statistik.

AI: Künstliche Intelligenz 

Ein Computersystem, das Aufgaben ausführen kann, die normalerweise menschliche Intelligenz erfordern

ML: Maschinelles Lernen

Anstatt jeden Schritt zu programmieren, wird eine Maschine so programmiert, dass sie Muster findet und anhand von Beispielen "lernt".  Hier gibt es große Überschneidungen mit der Statistik.

DS: Data Science

Derzeit eine der beliebtesten und erfolgreichsten Methoden des maschinellen Lernens.  Sie basiert auf Algorithmen für neuronale Netze mit vielen Schichten (siehe Einheit 2, Abschnitt 5).

DL: Deep Learning

Verwendet Methoden des maschinellen Lernens und der Statistik, um Probleme zu lösen und Entscheidungen auf der Grundlage von Daten zu treffen.

Spart Tausende von Codezeilen
Flexibel: Wenn sich die Daten ändern, passt sich das Programm an. 
Löst Probleme, für die wir keine schrittweise Lösung haben: z. B. Bild- und Tonerkennung
Spielt Spiele und gewinnt gegen uns
 
Arten von ML Click to read  

Algorithmen des maschinellen Lernens können in drei verschiedene Typen unterteilt werden.

ØSupervised learning
Ø Unsupervised learning
Ø Reinforcement learning
 
Ø Supervised learning

Beim supervised Learning erhält ein Algorithmus "gelabelte Daten" als "Trainings"-Datensatz: Gelabelte Daten sind Datensätze, bei denen jede Instanz (Beispiel) aus unabhängigen Variablen und dem Wert der Zielvariablen besteht, der auf der Grundlage dieser unabhängigen Variablen ausgegeben werden soll.  Mit anderen Worten, es handelt sich um ein einfaches Lernen nach Beispielen. Das Ziel des Algorithmus ist es, ein Muster zu erkennen, das es ihm ermöglicht, die Zielvariable korrekt zu bestimmen, wenn die unabhängigen Variablen bekannt sind.

Supervised Learning wird als Klassifizierung bezeichnet, wenn die Zielvariable eine Kategorie ist - zum Beispiel die Bestimmung, ob ein Kreditantragsteller aufgrund seiner demografischen Daten und seiner bisherigen Kreditvergabe ein hohes Risiko darstellt oder nicht. Supervised Learning wird Regression genannt, wenn die Zielvariable quantitativ ist - zum Beispiel die Vorhersage des BIP-Wachstums eines Landes auf der Grundlage aktueller Wirtschaftsfaktoren.

 

Ø Unsupervised learning

Unsupervised Learning wird eingesetzt, um Muster in "nicht gelabelten Daten" zu erkennen. Clustering (der Versuch, ähnliche Gruppen in den Daten zu bestimmen, ohne im Voraus zu wissen, nach welchen Gruppen zu suchen ist) oder Methoden zur Dimensionsreduktion (wie die Hauptkomponentenanalyse oder LDA) sind die beliebtesten Arten des Unsupervised Learnings.

ØReinforcement learning (RL)

Reinforcement Learning wird eingesetzt, um eine optimale Strategie in Situationen abzuleiten, in denen der algorithmische Agent mit einer gegebenen Umgebung interagieren und eine Reihe von Entscheidungen treffen muss, bevor das Endergebnis bekannt ist (d. h. das Feedback ist nicht unmittelbar: Erfolg oder Misserfolg, Sieg oder Niederlage).  RL-Methoden werden am häufigsten bei Spielen, beim autonomen Fahren und bei der Bewegung von Robotern eingesetzt.

Bevor wir uns in der nächsten Einheit mit den verschiedenen Arten von Algorithmen für maschinelles Lernen befassen, noch eine kurze Warnung:

Ø maschinelles Lernen ist ein empirisches Feld
Ø a priori gibt es in der Regel nicht "die eine richtige Methode, die anzuwenden ist".
Ø Du musst:
Ø die Anforderungen für deinen speziellen Anwendungsfall sammeln,
Ø verschiedene Methoden auszuprobieren (Einheit 2), 
Ø und dann nach den von dir gewählten Metriken (Einheit 3) und Anforderungen (z. B. ist vielleicht nicht nur die Genauigkeit wichtig, sondern auch die Erklärbarkeit) bewerten,
Ø um festzustellen, welche Methode "am besten" funktioniert
 
 
ML-Algorithmen

Naive Bayes Click to read  

Naïve Bayes ist ein einfacher Klassifizierungsalgorithmus, der häufig als Basis für die Verarbeitung natürlicher Sprache verwendet wird.

Naïve Bayes verwendet den Satz von Bayes, um das Problem der Bestimmung der Wahrscheinlichkeit der Zugehörigkeit einer Instanz zur Klasse Y angesichts ihrer Attribute xi  in das Problem der Bewertung der Häufigkeit des Attributs xii umzuwandeln, wenn die Instanz zur Klasse Y gehört.

Sie kann gute Ergebnisse liefern, wenn

Ø alle Attribute  mehr oder weniger gleich wichtig für die Bestimmung der Zielklasse sind,
Ø bei einer festen Zielklasse die Attribute voneinander unabhängig sind

Naïve Bayes gibt es in verschiedenen Varianten:

Ø Gaußscher NB: wird verwendet, wenn die Attributvariablen numerisch sind und angenommen werden kann, dass sie einer Gaußschen Verteilung folgen
Ø Einfacher NB: wird verwendet, wenn die Attributvariablen kategorisch sind
Ø Multinomialer NB: wird am häufigsten im Zusammenhang mit der Verarbeitung natürlicher Sprache verwendet, wobei die Attribute Wörter in einem Dokument sind.
 
Entscheidungsbäume (decision trees) Click to read  

Entscheidungsbäume sind sowohl eine Methode zur Darstellung von Informationen als auch ein Algorithmus zur Erkennung von Mustern in Daten.  
Wir konzentrieren uns hier auf den Algorithmus zur Erkennung von Mustern, stellen aber auch die dabei gewonnenen Informationen in einem Entscheidungsbaum dar.

Ø Entscheidungsbäume bestehen aus Knoten (nodes) und Zweigen
Ø Jeder Knoten ist ein Attribut und hat Verzweigungen entsprechend seinen Werten. Wenn ein Attribut zum Beispiel "Collegejahr" lautet und die möglichen Attributwerte sind (Freshman, Sophomore, Junior, Senior), dann würde der Knoten, der dem "Collegejahr" entspricht, 4 Zweige haben.
Ø Entscheidungsbäume werden vom obersten Knoten abwärts durchlaufen: An jedem Knoten muss eine Entscheidung darüber getroffen werden, welchem Zweig als Nächstes gefolgt werden soll, und zwar auf der Grundlage des Werts/der Werte eines bestimmten Attributs/mehrerer Attribute
 
Random forests Click to read  

Random Forests sind eine besondere Art des "Ensemble-Lernens" - eine Klasse von Methoden, die Modelle kombinieren, um die Vorhersagegenauigkeit durch Vielfalt zu verbessern.

Ø Random Forests bestehen aus mehreren zufällig ausgewählten Entscheidungsbäumen, und 
Ø kombiniert ihre Vorhersagen
Ø Random Forests unterscheiden sich in der Anzahl der Bäume und der Tiefe der einzelnen Bäume.

 

Neural networks Click to read  

Ein neuronales Netz besteht aus einer Reihe miteinander verbundener Einheiten (so genannter "Neuronen"), wie in der Abbildung rechts zu sehen ist.

Jedes Neuron nimmt mehrere Eingaben auf, weist jeder Eingabe ein Gewicht zu, kombiniert sie dann und lässt sie durch eine Aktivierungsfunktion laufen, um eine Ausgabe zu erzeugen. 

 

Ein neuronales Netz wird gebildet, indem diese so genannten Neuronen in Schichten (layers) organisiert werden. 
 

Beim Training eines neuronalen Netzes wird versucht, die Werte für die Netzgewichte zu ermitteln, die den Vorhersagefehler bei den Trainingsdaten minimieren (gemessen an einer bestimmten Verlustfunktion).

Bewertung der Performance

Genauigkeit (Accuracy) und Co. Click to read  

Es gibt viele Metriken, die zur Messung der Performance eines trainierten Modells verwendet werden können.  Welche Metrik verwendet wird, hängt von der Art des Modells (supervised, unsupervised or reinforcement learning; Klassifizierung vs. Regression) und vom Anwendungskontext ab.  Wir werden uns auf supervised Learning konzentrieren.

Ø Die am häufigsten verwendete Performanceskennzahl für Regressionsmodelle ist MSE (mean squared error bzw. mittlere quadratische Abweichung). 
Ø Die am häufigsten verwendete Performanceskennzahl für die Klassifizierung ist die Genauigkeit.
Ø Dies sind jedoch nicht immer die "besten" Messgrößen, die verwendet werden sollten.

Binäre Klassifikatoren sind Klassifizierungssysteme, bei denen es nur zwei mögliche Zielklassen gibt: 

nennen wir sie POSITIV und NEGATIV.

Wir werden verschiedene Performancesmetriken für diese untersuchen, und warum sie unter bestimmten Umständen der Genauigkeit vorzuziehen sind.

Beginnen wir mit einem häufig verwendeten Hilfsmittel, um die Performance eines binären Klassifikators zu verstehen: die Konfusionsmatrix (siehe nächste Folie)
 

Wann würden wir eine andere Messgröße als die Genauigkeit verwenden wollen?
 

Ø Wenn die Zielklassen stark unausgewogen sind: Wenn beispielsweise 95 % POSITIV und nur 5 % NEGATIV sind, dann hätte ein Klassifikator, der einfach alles als POSITIV klassifiziert, eine erstaunliche Genauigkeit von 95 %.  Aber wäre das sinnvoll?
Ø Ist es wichtiger, alle POSITIVEN Elemente korrekt zu identifizieren (z. B. bei einer medizinischen Diagnose, bei der man sichergehen will, dass man das
Ø Vorhandensein einer Krankheit erkennt, damit man mit der Behandlung beginnen kann)? Oder ist es wichtiger, falsche POSITIVE zu vermeiden?

Betrachten wir ein "reales" Beispiel: automatische Erkennung von Hassreden in sozialen Medien.
Nach Daten, die im Rahmen des Projekts "Barometro dell'Odio" von Amnesty International Italien erhoben wurden (siehe data4good-Folien), machen Hassreden etwa 1 % der politischen Online-Inhalte aus.  In diesem Fall würde selbst ein hervorragendes System zur Erkennung von Hassreden mit 99 % TPR und 1 % FPR ausreichen: 

Von 100 Kommentaren, die als Hassrede eingestuft werden, sind ___ in Wirklichkeit neutrale Kommentare.

Betrachten wir ein "reales" Beispiel: automatische Erkennung von Hassreden in sozialen Medien.

Nach Daten, die im Rahmen des Projekts "Barometro dell'Odio" von Amnesty International Italien erhoben wurden (siehe data4good-Folien), machen Hassreden etwa 1 % der politischen Online-Inhalte aus.  In diesem Fall würde selbst ein hervorragendes System zur Erkennung von Hassreden mit 99 % TPR und 1 % FPR ausreichen: 

Von 100 Kommentaren, die als Hassreden gekennzeichnet werden, sind 50 in Wirklichkeit neutrale Kommentare.

Klingt vielleicht überraschend, aber probiere es selbst aus
Auf der nächsten Seite ist eine Excel-Tabelle eingebettet – dort kannst du selbst mit den Zahlen spielen.
 

 

 

Bootstrapping und Kreuzvalidierung Click to read  

Bootstrapping:

Bootstrapping basiert auf einer Zufallsstichprobe mit Ersetzung/Replacement der Trainingsdaten – d. h. man nimmt die berühmte* Vase mit den farbigen Kugeln, zieht zufällig eine Kugel heraus, notiert die Farbe und wirft die Kugel wieder in die Vase. Das bedeutet, dass ein und dieselbe Beobachtung mehrmals gemacht werden kann, während andere Beobachtungen möglicherweise gar nicht gemacht werden. 

Diese statistische Tatsache wird ausgenutzt: Aus den Trainingsdaten werden so oft Stichproben gezogen, bis ein neuer Trainingsdatensatz mit demselben Umfang entsteht. Die Beobachtungen, die bei diesem Verfahren nie gezogen wurden, werden in den Validierungsdatensatz aufgenommen. Die Validierungsergebnisse werden zum Vergleich der verschiedenen Algorithmen herangezogen.

*Dieses Beispiel wird in sehr vielen Lehrbüchern zu Wahrscheinlichkeiten zitiert

 

Kreuzvalidierung:

Es gibt verschiedene Möglichkeiten, eine Kreuzvalidierung durchzuführen, aber wir konzentrieren uns auf die n-fache Kreuzvalidierung und setzen der Einfachheit halber n = 5. 

Der Trainingsdatensatz wird nach dem Zufallsprinzip in 5 etwa gleich große Untergruppen aufgeteilt. 

Ø Im ersten Durchgang wird die Datengruppe 1 als Validierungsdaten verwendet und die restlichen Daten (Gruppen 2, 3, 4, 5) werden trainiert. 
Ø Im zweiten Durchgang wird die zweite Datengruppe für die Validierung beiseite gelegt, und der Algorithmus trainiert auf den anderen Datengruppen (1,3,4,5). 
Ø Fahre auf diese Weise fort, bis alle 5 Datengruppen genau einmal als Validierungsdaten gedient haben. 
Ø Du hast dann 5 Validierungsergebnisse (z.B. Fehlerrate für Klassifizierung, MSE für Regression), die zum Vergleich der verschiedenen Algorithmen verwendet werden können.
Ø Sobald die Validierung abgeschlossen ist und ein "bestes" Modell ausgewählt wurde, kann es auf dem gesamten Datensatz neu trainiert werden.
 

Zusätzliche Überlegungen Click to read  

Manchmal reicht es nicht aus, die Genauigkeit des Modells zu betrachten.

Betrachten wir das folgende Beispiel.

Viele KI-Systeme werden zur Klassifizierung eingesetzt.  Hier zum Beispiel für die Klassifizierung von Bildern.

Nach vielen Beispielen hat der Algorithmus "gelernt"...

Nach vielen Beispielen hat der Algorithmus gelernt ...

Er erkennt nicht Wolf vs. Hund - er erkennt Schnee vs. keinen Schnee!

   

Kategorie A

Kategorie B

Manchmal reicht es nicht aus, die Genauigkeit des Modells zu betrachten.

Für viele Anwendungen ist es auch notwendig zu verstehen, welche Muster der Algorithmus erkannt hat und welche Variablen zu den Modellergebnissen geführt haben.  Transparenz und Erklärbarkeit können wichtige "Qualitätsmerkmale" sein, und dies kann auch in die Entscheidung einfließen, welches Modell "am besten" abschneidet.

Darüber hinaus werden wir in den data4good-Folien sehen, wie andere Kriterien, wie Fairness und Nichtdiskriminierung, wichtige Merkmale bei der Beurteilung der Performance eines Modells sein können.

Resümee

Resümee Click to read  


Keywords

Maschinelles Lernen, supervised learning , Klassifizierung, Regression, AI, künstliche Intelligenz, Naive Bayes, Entscheidungsbäume, Random 

Objectives/goals:


  • Erfahre mehr über KI, maschinelles Lernen, Deep Learning und wie sie sich auf Data Science beziehen

  • Lerne verschiedene Algorithmen kennen, die beim maschinellen Lernen verwendet werden, z. B:

  • Naive Bays

  • Entscheidungsbäume

  • Random Forests

  • Neuronale Netze

  • Kurzer Überblick darüber, wie die Performance von Algorithmen des maschinellen Lernens bewertet werden kann


Description:

Dieses Skript enthält Definitionen der grundlegenden Konzepte des maschinellen Lernens sowie Beschreibungen der wichtigsten verwendeten Methoden, einschließlich einiger spezifischer Beispiele und Anwendungen.  Du kannst das Skript entweder oberflächlich lesen, um ein grundlegendes Verständnis des Fachgebiets zu erlangen, oder die ausführlicheren Beschreibungen lesen, insbesondere den Abschnitt über die Methoden, um ein Verständnis des maschinellen Lernens auf mittlerem Niveau zu erlangen.  

Statistik und maschinelles Lernen sind die wichtigsten Werkzeuge für deine Arbeit als Datenwissenschaftler:in. Wenn du die verschiedenen Methoden des maschinellen Lernens verstehst - wie sie funktionieren, was ihre Hauptvorteile sind und wie ihre Performance bei einer bestimmten Aufgabe zu bewerten ist – kannst du bessere Entscheidungen darüber treffen, wann du sie einsetzen solltest, und werde zu einer:einem vielseitigeren Data-Science-Expert:in.

Bibliography

[1] Ribeiro, M. et al, "Why Should I Trust You?": Explaining the Predictions of Any Classifier.  Available on arxiv: https://arxiv.org/abs/1602.04938

[2] James, G. et al, An Introduction to Statistical Learning, 2nd ed., 2021.  Available at https://www.statlearning.com/


Related training material

Partner

Università del Salento
Demostene Centro Studi
IHF
IWS
Universidad de Oviedo
ASE
WAI