Slide 1

Slide 1 text

APPS INTELLIGENTER MACHEN: MACHINE LEARNING FÜR ENTWICKLER JÖRG NEUMANN | ACLUE GMBH

Slide 2

Slide 2 text

JÖRG NEUMANN THEMEN ▪ Frontend Technologies ▪ Mobile Development ▪ Machine Learning ▪ Consulting, Coaching, Training KONTAKT ▪ Mail: joerg.neumann@aclue.de ▪ Twitter: @joergneumann ▪ GitHub: https://github.com/joergneumann ▪ Blog: http://www.headwriteline.blogspot.com

Slide 3

Slide 3 text

WANN BRAUCHT MAN MACHINE LEARNING? Menge Komplexität Personalisierung Selbstlernend

Slide 4

Slide 4 text

Recommendation Engines Fraud Detection Predictive Maintenance EINSATZFÄLLE

Slide 5

Slide 5 text

Gesundheitswesen Bots Selbstfahrende Autos EINSATZFÄLLE

Slide 6

Slide 6 text

Algorithmen Rechenleistung Daten VORAUSSETZUNGEN

Slide 7

Slide 7 text

Quelle: IDG Machine Learning Studie 2019 Datenqualität verbessern Machine Learning verstehen Worin sehen Sie in Ihrem Unternehmen die größten Hürden für die Anwendung von Machine Learning?

Slide 8

Slide 8 text

if(speed<4){ status=WALKING; } else if(speed<12){ status=RUNNING; } else { status=BIKING; } if(speed<4){ status=WALKING; } else { status=RUNNING; } if(speed<4){ status=WALKING; } ? ML VS. CODING

Slide 9

Slide 9 text

Regeln Daten Antworten Traditionelle Programmierung Antworten Daten Regeln Machine Learning ML VS. CODING

Slide 10

Slide 10 text

X Y -1 -2 0 1 1 4 2 7 3 10 4 13 Beispiel Y = 3X+1 Wie kann Y ermittelt werden?

Slide 11

Slide 11 text

Beispiel Feature Daten Algorithmus Model App Label

Slide 12

Slide 12 text

DEMO Deep Learning 101

Slide 13

Slide 13 text

NEURONALES NETZ NEURON

Slide 14

Slide 14 text

NEURON INPUT X 1 X 2 X 3 X 4 OUTPUT ƒ | > | > W 0 ∑ ACTIVATION FUNCTION W 1 W 2 W 3 W 4 BIAS W 0 + W 1 * X 1 + W 2 * X 2 + W 3 * X 3 + W 4 * X 4 Ŷ

Slide 15

Slide 15 text

AKTIVIERUNGSFUNKTIONEN Lineare Aktivierungsfunktion Der Zusammenhang zwischen Netzinput und Aktivitätslevel ist linear. Lineare Aktivierungsfunktion mit Schwelle Bevor der Zusammenhang zwischen den beiden Größen linear wird, muss eine Schwelle überschritten werden. Binäre Schwellenfunktion Hier gibt es nur zwei Zustände des Aktivitätslevels: 0 oder 1 (bzw. manchmal auch -1) Sigmoide Schwellenfunktion Diese Art wird oft in Modellen verwendet, die kognitive Prozesse simulieren.

Slide 16

Slide 16 text

Input Layer Hidden Layer Output Layer 4 Features (Dimensionen) 3 mögliche Kategorien 10, 6, 2 5, 4, 4 9, 8, 7 1, 6, 2 0,8 0,1 0,3 NEURONALES NETZ Fully connected Feed Forward Network Backpropagation HYPER PARAMETERS: • Input Layer Size: 4 • Hidden Layer Size: 3 • Output Layer Size: 3 Wahrscheinlich- keiten

Slide 17

Slide 17 text

e 2 COST FUNCTIONS | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | { Error Iteration 1 | | | | | | - - - - 25 50 75 100 - 0 Iteration 2 Iteration 3 | | | | | | | | | | | | Vorhersage Realer Wert e 1 e 3 cost = e 1 + e 2 + e 3

Slide 18

Slide 18 text

Trainings- und Testdaten Training Algorithmus Model Ergebnis Test Vergleich Daten

Slide 19

Slide 19 text

DEMO Image Classification

Slide 20

Slide 20 text

| | | | | | - - - - - Modellkomplexität (Epochs) | | | | | | | | | | | OVERFITTING & UNDERFITTING –---–- Vorhersagefehler Over- fitting Under- fitting Test- daten Trainings- daten - - - - - - - - - - Beispiel: - Score Training: 0,97 - Score Test: 0,75 Gut oder schlecht?

Slide 21

Slide 21 text

FAZIT − Bietet Lösungen für Anwendungsfälle die zu komplex für klassische Programmierung sind − Software kann echte Intelligenz enthalten − Datenbasis, Fragestellung und Algorithmen spielen eine entscheidende Rolle − Leichter Einstieg über Jupiter Notebooks − Rudimentäre Python-Kenntnisse erforderlich

Slide 22

Slide 22 text

LIVE DEMOS DEEP LEARNING 101 ▪ https://colab.research.google.com/github/JoergNeumann/MachineLearning/blob/master /DeepLearning101.ipynb IMAGE CLASSIFICATION ▪ https://colab.research.google.com/github/JoergNeumann/MachineLearning/blob/master /Image_Classification_mit_TensorFlow.ipynb