Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0...
Transcript of Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0...
![Page 1: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/1.jpg)
![Page 2: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/2.jpg)
2
● Data Science mit Python und R
● ML Engineering, ML Deployment
● Big Data, Hadoop, Spark
@mspitzer243
![Page 3: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/3.jpg)
![Page 4: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/4.jpg)
![Page 5: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/5.jpg)
5
› Identifikation und Extraktion relevanter
Features aus verschiedenen Quellen
› Explorative Analyse und Aufbereitung
› Definition eines experimentellen Setups
› Benchmark verschiedener Modelle
› ...Deployment?!
![Page 6: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/6.jpg)
Creation of the model is generally not the end of the project. [...]
It often involves applying "live" models within an organization’s decision
making processes — for example, real-time personalization of Web pages
or repeated scoring of marketing databases.
6
Pete Chapman, Julian Clinton, Randy Kerber, Thomas Khabaza, Thomas Reinartz, Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides
![Page 7: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/7.jpg)
7
Data Science Lab
Live System /“Production”
![Page 8: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/8.jpg)
› Vorhersage von Produkt-
nachfrage auf Tagesbasis
› Bereitstellung in Datenbank
› Zugriff über Analysetools und
Dashboards
8
![Page 9: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/9.jpg)
› Produktempfehlungen auf Basis
des Nutzerverhaltens
› Bereitstellung als Webservice
› Zugriff über REST API
9
![Page 10: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/10.jpg)
10
TrainingDaten
ScoringDaten
Modell
Prognose Serving
En
twic
klu
ng
Pro
du
ktio
n
![Page 11: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/11.jpg)
11
![Page 12: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/12.jpg)
› Generieren von Erkenntnissen aus
Daten zur Beantwortung einer Fragestellung
› Interaktive Exploration von statischen Daten
› Reports, Dashboards oder Modellprototyp zur
Unterstützung der Entscheidungsfindung
12
![Page 13: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/13.jpg)
› Optimierung von Business-Metriken
durch den Einsatz von ML-Verfahren
› Dynamische Daten und Echtzeit-Feedback
› Entwicklung einer zuverlässigen und nachvollziehbaren
ML-Komponente als Bestandteil eines Datenproduktes
13
![Page 14: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/14.jpg)
14
![Page 15: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/15.jpg)
15
Data Science
● Experimentell
● Rapid Prototyping, Ad-Hoc Analysen
● Reports, Dashboards, Modelle
SW Engineering
● Systematisch
● Clean Code, Test-Driven Development, CI/CD
● Wartbare und funktionale Software
![Page 16: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/16.jpg)
16
› Kurze Iterationen und adaptive Planung
› Aktiver Wissensaustausch in interdisziplinären Teams
› Früh liefern, kontinuierlich verbessern
› Durchführung explorativer Tasks als Spikes
› Discovery/Delivery-Teams (Dual-Track)
![Page 17: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/17.jpg)
17
![Page 18: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/18.jpg)
18
ProduktionEntwicklung
Training Modell
Vorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
![Page 19: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/19.jpg)
ProduktionEntwicklung
19
Training Modell
Vorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
? ??
![Page 20: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/20.jpg)
20
Format BeispielAbhängig-
keitenSprach-
unabhängigModell- support
serialisiertPickles, R
Object FilesJa Nein Hoch
generisch JSON, XML Nein Ja Niedrig
Container Docker Nein Ja Hoch
![Page 21: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/21.jpg)
21
ProduktionEntwicklung
Training Modell
Vorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
![Page 22: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/22.jpg)
ProduktionEntwicklung
22
Training Modell
Vorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
sync?
![Page 23: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/23.jpg)
ProduktionEntwicklung
23
Training
PipelineVorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
![Page 24: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/24.jpg)
24
› Pipelines umfassen Modelle und Datentransformationen
› Gerichteter Graph aus Transformatoren und Schätzern
› Transformatoren verändern oder ergänzen Eingabedaten
› Schätzer konstruieren Transformatoren auf Basis von
Eingabedaten
![Page 25: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/25.jpg)
25
Ersetzen von NULL Werten
One-Hot Encoding Normierung Lineare
Regression
Training
Ersetzen von NULL Werten
One-Hot Encoding Normierung Regressions-
modell
Schätzer
Transformator
![Page 26: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/26.jpg)
ProduktionEntwicklung
26
Training
PipelineVorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
![Page 27: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/27.jpg)
ProduktionEntwicklung
27
Training
PipelineVorbereitung
Daten
Scoring
Vorbereitung
Daten
Prognose
sync?
![Page 28: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/28.jpg)
28
› Abweichende Modellperformance bei Offline-
und Online-Evaluation
› Trainings- und Scoringdaten entstammen
unterschiedlichen Verteilungen
› Ursache z.B. veraltete Trainingsdaten oder
nicht-repräsentatives Sample
https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/46178.pdf
age
income
![Page 29: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/29.jpg)
29
![Page 30: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/30.jpg)
30
![Page 31: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/31.jpg)
› Anpassbarkeit an sich kontinuierlich ändernde
Rahmenbedingungen bzw. Verhaltensmuster
› Erfordert Re-Training auf aktuellen Daten, Feature
Engineering oder neue Modellierungsansätze
› Monitoring und automatisiertes Deployment sind
grundlegend für schnelle Reaktionsfähigkeit
31
![Page 32: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/32.jpg)
32
?
![Page 33: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/33.jpg)
33
› Welchen Einfluss haben Änderungen von
Systemparametern (z.B. auf das Nutzerverhalten)?
› Layout einer Website → Click-Through-Rate
› Auch zur Abschätzung des Einflusses von Änderungen an
ML-Komponenten geeignet
![Page 34: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/34.jpg)
34
› Gegenüberstellung der Performance verschiedener
Modelle unter realen Bedingungen
› Einsatz von Business-KPI’s oder geeignete Proxies
Modell A
Modell B
CTR = .017
CTR = .024Anfragen Prognosen
![Page 35: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/35.jpg)
35
› Historisierung von Daten, Modellen, Reports
› Nachvollziehbarkeit von Prognosen und Entscheidungen
› Ermöglicht Benchmark älterer Modelle auf neuen Daten und
Backtesting von neuen Modellen auf älteren Daten
› Grundlage für Audits und Fallback-Strategien
![Page 36: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/36.jpg)
36
![Page 37: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/37.jpg)
› Vermeidbarer Mehraufwand
› Korrekte Replikation der Modelle schwierig
› Fehlende ML Bibliotheken in Produktion
› Nur für einfache Modelle praktikabel
37
Modell liegt als Konzept vor und wird auf Produktions-Stack reimplementiert
![Page 38: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/38.jpg)
38
Verwendung dedizierter Machine Learning Frameworks in Entwicklung und Produktion
› Ende-zu-Ende Abdeckung
› Lokale und Remote Entwicklung
› Multi-Language Support
› Horizontale Skalierbarkeit
› Eingeschränkter Funktionsumfang
![Page 39: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/39.jpg)
39
Modell wird als Webservice in einem Container deployt
› Voller Funktionsumfang von Python, R, etc.
› Isolierte Abhängigkeiten
› Horizontale Skalierbarkeit
› On-Premise oder Cloud
› Erfordert (ein wenig) SW Engineering
![Page 40: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/40.jpg)
40
Funktionsumfang
Skal
ierb
arke
it
Cloud & Container
Prototyping & Ad-Hoc Analysis
ML Frameworks
![Page 41: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/41.jpg)
Development Production
41
Client
Predictions
ScoringTraining Data
Training Model Store
ServiceScoring Data
ID Pred
![Page 42: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/42.jpg)
Service
Production
Transform
42
FactsProducer
Client Scoring
Events
Cache
Requests
Predictions
ID Data
ID
Pred
![Page 43: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/43.jpg)
![Page 44: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/44.jpg)
1. Definition von Problemstellung, Zielsetzung und
angemessenen Performance-Metriken
2. Identifikation von grundlegenden Features und
einfachen Modellierungsansätzen
3. Fokus auf stabile Pipelines und skalierbare
Algorithmen bzw. Frameworks
44
![Page 45: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/45.jpg)
45
› ML Deployment betrifft den gesamten Lebenszyklus
› SW Engineering ist essenziell für produktionsreifes ML
› Pipeline-Konzept erleichtert Reproduzierbarkeit
› Kontinuierliches Performance-Monitoring
› ML Frameworks und Container-basierte Ansätze
![Page 46: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/46.jpg)
Rules of ML, Best Practices for ML Engineering
Data Science in Production: Packaging, Versioning and Continuous Integration
From the Lab to the Factory: Building a Production Machine Learning Infrastructure
The Keys to effective Data Science Projects
Demystifying Docker for Data Scientists
Production Recommendation Systems with Cloudera
Machine Learning for Software Engineers
Overlapping Experiment Infrastructure
46
![Page 47: Data Science mit Python und R - inovex · Colin Shearer, Rüdiger Wirth (2000); CRISP-DM 1.0 Step-by-step data mining guides. 7 Data Science Lab Live System / “Production” ...](https://reader033.fdocuments.us/reader033/viewer/2022043014/5fb2e1c631572466d6768b2a/html5/thumbnails/47.jpg)
Marcel Spitzer
Big Data Scientist
inovex GmbH
Ludwig-Erhard-Allee 6
76131 Karlsruhe