maschinelles lernen für laien - datahouse · workflow maschinelles lernen datensatz wählen und...

46
Maschinelles Lernen für Laien Scientifica 2019

Upload: others

Post on 28-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Maschinelles Lernen für LaienScientifica 2019

Page 2: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Aus Daten werden Informationen

Page 3: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Unsere KernkompetenzenServices

3

Von der anfänglichen Anforderungsanalyse, bis zur technischen Umsetzung – wir begleiten Sie durch sämtliche Schritte des Daten pro zesses und helfen Ihnen, die optimale Lösung zu finden.

Datenerhebung Datenverarbeitung Datenanalyse Datenvisualisierung

Page 4: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Über uns

2005 2010 2014 2019

Page 5: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

KünstlicheIntelligenz

Page 6: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

6

Einleitung

Page 7: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

7

Einleitung

Page 8: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

8

Einleitung

Page 9: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

9

Einleitung

Page 10: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Maschinelles Lernenim Alltag

Page 11: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Erwarten Sie Nachwuchs?

Supermarktkette aus den USA

Wichtiges Kundensegment: werdende Eltern

Errechneten, ob eine Kundin schwanger ist

Verschickten Gutscheine für Babyprodukte

Eklat, weil Vater von der Schwangerschaft seiner Tochter erfuhr

11

Aus dem Alltag

Page 12: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Wieso wollen Sie kündigen? HP berechnete für jeden Mitarbeiter eine

“Flight Risk” Score (Kündigungsrisiko)

Basierend auf Lohn, Beförderungen, Befragungen usw.

Bei hohem Risiko wird Gespräch gesucht

Sensible, spekulative HR-Daten

12

Aus dem Alltag

Page 13: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Haben Sie per Kreditkarte bezahlt?

Korrekte Transaktionen von Missbrauch unterscheiden

Missbräuchliche Transaktionen verhindern

Kontakt mit Kartenbesitzer aufnehmen

13

Aus dem Alltag

Page 14: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Wie entsteht einVorhersagemodell?

Page 15: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Workflow Maschinelles Lernen Datensatz wählen und prüfen

Zielvariable definieren

Feature Engineering

Modell auswählen und tunen

Modellgüte überprüfen

Vorhersagen machen

15

Vorhersagemodelle

Page 16: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Datensatz: Variablen und Fälle

16

Vorhersagemodelle

Spalte = Variable Zeile = Fall

Page 17: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Zielvariable definieren

17

Vorhersagemodelle

Page 18: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

FeatureEngineering

Page 19: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Den Datensatz umbauen ...

Variablen bereinigen / aufsplitten / kombinieren / aggregieren

19

Feature Engineering

Page 20: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Modell-Auswahl

Page 21: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Regression – Klassifikation

Regression: Vorhersage eines Zahlenwertes

21

Vorhersagemodelle

Klassifikation: Vorhersage einer Klasse / Gruppe oder einer Klassenwahrscheinlichkeit

A

C

B

Page 22: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Y = f(X) + e Zielvariable Y

Funktion f der erklärenden Variablen X

Zufälliger Fehler e

f soll aus den Beispielen approximiert werden

22

Vorhersagemodelle

Beispiel BMI: Körpergewicht = Körpergrösse2 • 23 kg/m2 + e

Page 23: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Parametrische Modelle

Modell basiert auf wenigen definierten Parametern

z.B. Y = B0 + B1X1 + B2X2

Die Parameter werden aus den Trainingsfällen berechnet

23

Lineare Modelle

Beispiel BMI: Körpergewicht = Körpergrösse2 • 23 kg/m2

Page 24: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Nicht parametrische Modelle Dank gestiegener Rechenleistung in den 80ern

Keine Annahmen über f(X)

Diverse Modellfamilien (Entscheidungsbäume, SVM, neuronale Netzwerke)

Zudem neue Methoden wie Kreuzvalidierung

24

Maschinelles Lernen

Page 25: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Entscheidungsbäume Sequentielle Entscheidungen

Pro Entscheidung: eine Variable, ein Trennwert

Endknoten enthalten Vorhersagen

Sehr flexibel

Einfach interpretierbar

25

Maschinelles Lernen

Geschlecht männlich?

Körpergrösse> 1.80 m?

Körpergrösse > 1.70 m?

Gewicht: 80 kg Gewicht: 70 kg Gewicht: 60 kg Gewicht: 70 kg

Page 26: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Random Forest

Parallele Entscheidungsbäume

Neues Datensample für jeden Baum

Leicht zufällige Variablen-Auswahl

Flexibel, robust

26

Maschinelles Lernen

Page 27: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Künstliche neuronale Netzwerke Basierend auf biologischen Neuronen und Synapsen

Signalfluss durch ein Netzwerk

Existieren seit den 1970er Jahren

Einfache Architektur mit wenigen Ebenen

Vereinzelte Anwendungen

27

Deep Learning

Page 28: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Deep Learning Dank Rechenpower und Datenmengen

Unglaublich komplexe Netzwerk-Architekturen

Millionen von Parametern

Effiziente Methoden gegen Over-Fitting

Riesiger Trainingsaufwand (Zeit und GPU)

28

Deep Learning

Page 29: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Modellgüteprüfen

Page 30: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

“All models are wrong, but some are useful.”

George E. P. Box

30

Modellgüte

Page 31: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Bias / Variance Trade-Off

31

Modellgüte

Modell so einfach wie möglich und so kompliziert wie nötig

Page 32: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Modellvalidierung

32

Modellgüte

Simuliert den Einsatz des Modells auf neuen Daten

Kompletter Datensatz

Trainingsdaten Testdaten

Page 33: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Die Bedeutung der Variablen Wie stark eine Variable die Vorhersage beeinflusst

Modellabhängige Berechnung

Skaliert auf einen Maximalwert von 100

Nicht direkt interpretierbar

33

Modellgüte

Page 34: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

AutoML

Page 35: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Workflow Maschinelles Lernen Datensatz wählen und prüfen

Zielvariable definieren

Feature Engineering

Modell auswählen und tunen

Modellgüte überprüfen

Vorhersagen machen

35

Auto ML

Page 36: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Ziele Auto ML

Workflow automatisieren

Modellbildung auch Laien ermöglichen

Nötige Inputs: Datensatz, Zielvariable, (Budget)

36

Auto ML

Page 37: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Auto ML Software

37

Auto ML

Auto WEKA

TPOT

Auto-sklearn

H2O AutoML

Auto Keras

Google AutoML Tables (Beta)

Page 38: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Sammelt Datensätze, Tasks und Resultate

“Einfache Modelle” bereits sehr gut

Datensatz ist entscheidend

Feature Engineering extrem wichtig

38

Auto ML

Page 39: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

https://demo.predictoor.com

39

Auto ML

Page 40: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Herausforderungen undEthische Aspekte

Page 41: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Datenkontext

41

Herausforderungen

Page 42: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Filter-Bubbles

42

Herausforderungen

Page 43: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Akzeptanz / Privatsphäre

43

Herausforderungen

Page 44: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Vorurteilsfreie Modelle?

44

Herausforderungen

https://www.propublica.org/article/machine-bias-risk-assessments-in-criminal-sentencing

Page 45: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Was denkenSie?

Page 46: Maschinelles Lernen für Laien - Datahouse · Workflow Maschinelles Lernen Datensatz wählen und prüfen Zielvariable definieren Feature Engineering Modell auswählen und tunen Modellgüte

Herzlichen Dank fürIhr Interesse!

Thomas Maier+41 44 289 92 [email protected]

Datahouse AGBleicherweg 58001 Zürich

www.datahouse.ch

1. September 2019

Daniel Meister+41 44 289 92 [email protected]

Datahouse AGBleicherweg 58001 Zürich

www.datahouse.ch