Softwaretechnische Werkzeuge des Wissensmanagements Prof. Dr. Dr. Popp FH Deggendorf.
Engineering Data-DrivenApplications: Mit Struktur zur KI ... · Marc Hesenius -Engineering...
Transcript of Engineering Data-DrivenApplications: Mit Struktur zur KI ... · Marc Hesenius -Engineering...
Marc Hesenius - Engineering Data-Driven Applications 2
Künstliche Intelligenz ...
EDDA – Engineering Data-Driven Applications
§ ... ist nicht immer smart!
Marc Hesenius - Engineering Data-Driven Applications 3
Bildquelle Fahrzeug: https://pixabay.com/en/racing-car-ferrari-red-top-view-296772/, CC0 Creative Commons
Künstliche Intelligenz ...
EDDA – Engineering Data-Driven Applications
§ ... ist nicht immer smart!
§ Beispiel: Kreuzungsteuerung§ Autonome Fahrzeuge§ Ziel: Keine Kollisionen
Marc Hesenius - Engineering Data-Driven Applications 4
Bildquelle Fahrzeug: https://pixabay.com/en/racing-car-ferrari-red-top-view-296772/, CC0 Creative Commons
Künstliche Intelligenz ...
EDDA – Engineering Data-Driven Applications
§ ... ist nicht immer smart!
§ Beispiel: Kreuzungsteuerung§ Autonome Fahrzeuge§ Ziel: Keine Kollisionen§ Ergebnis: Fahrzeuge blieben
irgendwann alle stehen
0 km/h
0 km/h
0 km/h
Marc Hesenius - Engineering Data-Driven Applications 5
Bildquelle Fahrzeug: https://pixabay.com/en/racing-car-ferrari-red-top-view-296772/, CC0 Creative Commons
Künstliche Intelligenz ...
EDDA – Engineering Data-Driven Applications
§ ... ist nicht immer smart!
§ Beispiel: Kreuzungsteuerung§ Autonome Fahrzeuge§ Ziel: Keine Kollisionen§ Ergebnis: Fahrzeuge blieben
irgendwann alle stehen§ Hintergrund: Falsche Belohnungs-
funktion
0 km/h
0 km/h
0 km/h
0,75
1
0,56
0,56 0,420,42
Geschwin-digkeit=0
Kollisionen=0
Marc Hesenius - Engineering Data-Driven Applications 6
Bildquelle Fahrzeug: https://pixabay.com/en/racing-car-ferrari-red-top-view-296772/, CC0 Creative Commons
Künstliche Intelligenz ...
EDDA – Engineering Data-Driven Applications
§ ... ist nicht immer smart!
§ Die Entwicklung von KI-Lösungen erfordert § die explizite Betrachtung
fachlicher Aspekte§ zugeschnittene Engineering-
Methoden§ iteratives Vorgehen und konstantes Testen
Marc Hesenius - Engineering Data-Driven Applications 7
§ Die Entwicklung von KI/ML-Anwendungen erfordert neue Werkzeuge und Methoden§ Der Einsatz von KI/ML vereinfacht Probleme
nicht prinzipiell§ Es findet hauptsächlich eine Verschiebung der
geforderten Kenntnisse und Arbeiten statt.§ Weitere (neue) Spezialisten müssen in den
Entwicklungsprozess integriert werden§ Typische Metriken des Software Engineering
werden für KI/ML-Anwendungen relevant§ Wiederverwendbarkeit, Erweiterbarkeit,
Produktivität, ...
Künstliche Intelligenz und Software Engineering
EDDA – Engineering Data-Driven Applications
Is Machine Learning suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Mit Struktur zur KI-Anwendung
EDDA – Engineering Data-Driven Applications
Marc Hesenius - Engineering Data-Driven Applications 8
Rollen und Beteiligte
EDDA – Engineering Data-Driven Applications
Marc Hesenius - Engineering Data-Driven Applications 9
Software Engineer
§ Definiert und entwickelt technische Komponenten
§ Hat grundlegende Kenntnisse der Datenanalyse
§ Kennt technischeKomplexität der Daten
Data Domain Expert
§ Kennt sich mit den Datenstrukturen des Unternehmens und der Branche aus
Data Scientist
§ Hat KI-Kenntnisse§ Beherrscht Techniken der
Datenanalyse§ Hat grundlegende
Kenntnisse der Software-Entwicklung
Domain Expert
§ Kennt sich mit den Geschäftsprozessen des Unternehmens und der Branche aus
Marc Hesenius - Engineering Data-Driven Applications 10
§ Prüfung, ob ein Problem mit KI/ML überhaupt gelöst werden kann
§ Verantwortlich: Data Scientist
§ Vorbereitung für spätere Phasen
§ Drei potentielle Ergebnisse:§ Ja§ Nein§ Unbekannt à Data Exploration
Is Data available?
Can ML solve the problem?
Can ML solve the problem?
noyes
ML Data Exploration
yes ??
Can data be acquired?
yes
No ML ML
no
no
no yes
Ist ML passend?
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Marc Hesenius - Engineering Data-Driven Applications 11
§ Verfügbare Daten nach (unbekannten) Verbindungen und potentiellen Lösungen durchsuchen
§ Verantwortlich: Data Scientist
§ Visualisierung von Daten und Zusammenhängen für andere Team-Mitglieder
§ Weekly Data Scrum, um Erkenntnisse zu diskutieren und Daten zu plausibilisieren
§ Data Report, um Wissen über Daten und Zusammenhänge zu dokumentieren
Data Exploration
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Data Exploration
Adjust/reify goals
“Weekly Data Scrum” to make data
relationships plausible
Identify data relationships
Visualize data for DE and DDE
Backlog with goals and success
estimates
Data Report
Marc Hesenius - Engineering Data-Driven Applications 12
§ Anforderungen an die KI/ML-Komponente erfassen und Architektur für eine potentielle Lösung skizzieren
§ Verantwortlich: Software Engineer§ Komponente muss in die Anwendung passen!
§ Vorgehen im Detail und wichtige Fragen abhängig vom Typ der KI/ML-Komponente§ Regression: Können offensichtlich falsche
Vorhersagen zuverlässig erkannt werden?§ Anomaliedetektion: Bedeutung von false
positives/false negatives
Anforderungen an das Modell
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
§ Zwei zentrale Artefakte
§ Data Story§ Verknüpft Daten und Use Case§ Enthält weitere Informationen über Daten,
z. B. Datenqualität oder Anforderungen an Genauigkeit
§ Architecture Sketch§ Abhängigkeiten von anderen Komponenten
und Datenquellen§ Eventuell nötige Fallback-Mechanismen§ Integration neuer Daten
Marc Hesenius - Engineering Data-Driven Applications 13
§ Prototyping eines ersten Modells§ Auswahl von Algorithmen§ Definition der notwendigen Daten-Sets§ Feature Engineering§ ...
§ Verantwortlich: Data Scientist§ Entwicklung notwendiger Tests, um Qualität
des Modells sicherzustellen§ Fokus liegt auf mehr auf Definition des
Modells als auf Entwicklung der finalen Komponente
Entwicklung des Modells
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Feature Engineering Prototyping
Evaluate Algorithms
Choose Algorithm
Choose Model Type
Data Partitioning
“Weekly Data SCRUM”Clustering of faulty Test Data
Implem
ent Data Interfaces
Marc Hesenius - Engineering Data-Driven Applications 14
§ Implementierung der finalen Komponente und Integration in die Anwendung
§ Verantwortlich: Software Engineer
§ Wenn nötig: Neuentwicklung prototypischer Komponenten
§ Klassisches Software Engineering
Integration des Modells
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Connect Data Sources
Train Final Model
Evaluate Model (Software Tests)
Integrate Model into Application
Implement Final Model
Implemented Component
Marc Hesenius - Engineering Data-Driven Applications 15
Breck, E., Cai, S., Nielsen, E., Salib, M., Sculley, D., 2017. The ML test score: A rubric for ML production readiness and technical debt reduction, in: 2017 IEEE International Conference on Big Data (Big Data). Presented at the 2017 IEEE International Conference on Big Data (Big Data), IEEE, Boston, MA, pp. 1123–1132. https://doi.org/10.1109/BigData.2017.8258038
Integration des Modells
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Marc Hesenius - Engineering Data-Driven Applications 16
§ Verhalten bei Sammlung weiterer Daten kontrollieren§ Verhält sich das Model wie gewünscht?§ Sind Entscheidungen/Vorhersagen/
Ergebnisse nachvollziehbar?
§ Prüfen, ob das Model noch in der angedachten Umgebung einsetzt wird§ Ist das Verhalten in neuer Umgebung
erwünscht?
Betrieb
EDDA – Engineering Data-Driven ApplicationsIs Machine Learning
suitable?
Data Exploration
Model Requirements
Model Development
Model Integration Operation
RequirementsEngineering
Specification and Design Implementation System Test Operation
triggers Integrate ML-Component Operate ML-Component
Software Engineering Process
EDDA Process
Marc Hesenius - Engineering Data-Driven Applications 17
§ Entwicklung von KI/ML-Anwendungen benötigen spezifische Methoden und Werkzeuge
§ EDDA ist ein Ansatz, der die grundlegenden Tätigkeiten strukturiertà Spezialisierungen sind je nach Art der Anwendung notwendig
§ Potential für den Einsatz von KI/ML im eigenen Unternehmen? Sprechen Sie mich an!
Fazit
EDDA – Engineering Data-Driven Applications
ML Tasks
Classification/Regression
AnomalyDetection Recommender
ClusteringReinforcement Learning
Marc Hesenius - Engineering Data-Driven Applications 18
Fragen und Diskussion
EDDA – Engineering Data-Driven Applications
Dr. Marc HeseniusUniversität [email protected]@mhesenius