Motivation Flashcards
Define:
Was sind die Ziele für Research vs. Production
R:1, P:1
Research: Modell Performance
Production: Kommt auf Stakeholder drauf an
Define
Was sind die “Computational” Prioritäten für Reserach vs. Production
R:2, P:2
Research: Schnelles Training, Hoher Durchsatz
Production: Schnelle Inference, Geringe Latenz
Define:
Was sind die Datenvoraussetzungen für Research vs. Production
R:1, P:1
Research: Statisch
Production: Verändert sich ständig
Define:
Wie steht es über fairer KI-Entwicklung / Ethisch korrekt für Research vs. Production
R:1, P:2
Research: (Nur) Nice-2-Have
Production: Wichtig, Oft nur Lippenbekenntnis
Define:
Wie wichtig ist die Interpretierbarkeit für Research vs. Production
R:1, P:1
Research: Nice-2-Have
Production: Important or Killing-Feature
Wie ist die traditionelle Software Entwicklung aufgebaut?
Specifikationen → Architektur & Design → Entwicklung → Debugging und Testen → Deployment → Monitoring
Was sind die KI-Hauptkomponenten, welche die traditionelle Software Entwicklung ergänzen?
Management → Data Science → Model Building
Nenne Beispiele für die KI-Komponenten
(3, 3, 2)
(3, 2, 2)
Nenne Beispiele des Problems:
Was ist eine geeignete Spezifikation für ein KI-Modell?
5
- Accuracy-Levels
- Erfolgskennzahlen für das Geschäft
- Wie werden Fehler gemessen?
- Wie wird ein Fehler erkannt?
- Hardware und nicht funktionale Eigenschaften (z.B. Inferenzzeit)
Nenne Beispiele des Problems:
Wie integriert man die KI-Komponente in das Softwaresystem?
2
- Wie überbrückt man Programmiersprachen und Systemgrenzen?
- Wie gestaltet man das System unter Berücksichtigung von Modularität und Softwarequalität?
Nenne Beispiele des Problems:
Wie kann der Entwicklungsprozess der KI-Komponente in den Entwicklungsprozess des restlichen Softwaresystems integriert werden?
- CI/CD for AI projects
- AIOps, MLOps, DataOps
- Technische Schulden der KI-Komponente
Definiere:
AIOps
Def + 4 Beispiele
AIOps steht für Artificial Intelligence for IT Operations.
Es bezeichnet den Einsatz von KI-Technologien zur Automatisierung und Rationalisierung aktiver Workflows.
- AIOps sammelt strukturierte und unstrukturierte Daten,
- identifiziert Ereignisse und Muster,
- reduziert Lärm und
- meldet oder behebt Probleme.
Definiere:
MLOps
MLOps ist die Standardisierung und Rationalisierung des Lebenszyklus von Maschinenlernmodellen in der Produktion. Es orchestriert die Bewegung von Maschinenlernmodellen, Daten und Ergebnissen zwischen den Systemen
Definiere:
DataOps
DataOps wendet agile Entwicklung, DevOps und Lean Manufacturing auf Datenanalytik und -operationen an. Es verbessert die Qualität und Skalierbarkeit der Datenanalyse
Was ist der Lebenszyklus von SE projekten mit Machine-Learning-Modellen?
Re , design & Architektur , development & testen/ debugging , deploy & Monitor
Anwendungsfälle
DataOps
2
- Automatisierte Datenqualitätskontrolle: Ein Unternehmen hat mehrere Datenquellen und möchte sicherstellen, dass die Datenqualität über alle Quellen hinweg konsistent ist. Mit DataOps können sie automatisierte Prüfungen und Überwachungen einrichten, um die Datenqualität zu gewährleisten und Probleme schnell zu beheben.
- Echtzeit-Datenverarbeitung: Ein Online-Einzelhändler möchte in Echtzeit auf das Verhalten der Kunden reagieren. Mit DataOps können sie Datenströme in Echtzeit verarbeiten und analysieren, um sofortige Einblicke zu gewinnen und schnelle Entscheidungen zu treffen.
Anwendungsfälle
MLOps
2
- Modelltraining und -bereitstellung: Ein Finanzunternehmen hat ein maschinelles Lernmodell entwickelt, um betrügerische Transaktionen zu erkennen. Mit MLOps können sie das Modell regelmäßig mit neuen Daten trainieren und es nahtlos in ihre Produktionssysteme integrieren.
- Überwachung der Modellleistung: Ein Gesundheitsunternehmen verwendet maschinelles Lernen, um Krankheiten zu diagnostizieren. Mit MLOps können sie die Leistung ihres Modells kontinuierlich überwachen und bei Bedarf Anpassungen vornehmen.
Anwendungsfälle
AIOps
2
- Vorhersage von IT-Ausfällen: Ein Telekommunikationsunternehmen möchte Netzwerkausfälle vorhersagen und verhindern. Mit AIOps können sie Muster und Anomalien in ihren Betriebsdaten erkennen, die auf mögliche Ausfälle hindeuten.
- Automatisierte Problembehebung: Ein E-Commerce-Unternehmen möchte sicherstellen, dass seine Website immer verfügbar ist. Mit AIOps können sie automatisierte Skripte und Workflows erstellen, um häufig auftretende Probleme zu beheben, ohne dass ein menschlicher Eingriff erforderlich ist.
Definiere:
Was sind technische Schulden in der Softwareentwicklung?
Technische Schulden sind ein Konzept in der Softwareentwicklung, das sich auf die zusätzliche Entwicklungsarbeit bezieht, die entsteht, wenn Code, der einfach zu implementieren, aber nicht optimal ist, jetzt verwendet wird, anstatt die beste Gesamtlösung zu verwenden.
Technische Schulden können durch verschiedene Praktiken entstehen, einschließlich unzureichender Planung, veralteter Technologien, übermäßiger Komplexität und Verzögerung bei der Durchführung notwendiger Upgrades oder Refaktorisierungen. Sie können sich im Laufe der Zeit ansammeln und die Effizienz und Effektivität eines Softwareprojekts beeinträchtigen, wenn sie nicht ordnungsgemäß verwaltet werden.
Es ist wichtig zu beachten, dass technische Schulden nicht immer negativ sind. Sie können ein bewusstes Kompromiss sein, das es einem Team ermöglicht, schneller zu liefern, solange ein Plan zur Tilgung der Schulden vorhanden ist. Aber wie bei finanziellen Schulden, wenn sie ignoriert oder schlecht verwaltet werden, können technische Schulden zu erheblichen Problemen führen.
weitere Fragestellungen finden
Wie teste ich eine KI-Komponente? Wie führt man Konjunktionstests mit der restlichen Software durch?
3
- Auf welche Messgrößen sollte man testen?
- Testen (Daten, ML-Code, Pipeline)
- Wie kombiniere ich Unit-/Integrationstests?
Weitere Fragestellungen finden
How to deploy AI models?
3
- Welche Tools und Frameworks sollen verwendet werden?
- Wie gehe ich mit mehreren Versionen Ihres Modells um?
- Wie teste ich neue Versionen?
Weitere Fragestellungen finden
How to monitor AI decisions in practice?
5
- Wie beobachtet man die Datenverteilung, um Daten- und Modellverschiebungen zu erkennen?
- Wie protokolliere ich die AI-Ausgabe?
- Wie können schwerwiegende KI-Fehler verhindert oder gemeldet werden?
- Wie werden Fallback-Maßnahmen umgesetzt?
- Welche Frameworks und Tools gibt es für Monitoring?
Weitere Fragestellungen finden
How to realize the feedback loop (Flywheel)?
3
- Wie baue ich Feedback-Mechanismen ein?
- Welche Konsequenzen hat dies für das UI/UX-Design?
- Wie und wann soll das Neulernen des ML-Modells ausgelöst werden?
Weitere Fragestellungen finden
Projektmanagement
4
- Welche KI-Projektarchetypen und ML-Modelltypen gibt es, um ein Geschäftsziel zu erreichen?
- Wie startet man ein KI/ML-Projekt basierend auf den Anforderungen?
- Wie wählt man geeignete Metriken für die Optimierung aus?
- Wie können Sie Teams aufbauen und Ihr Unternehmen/Projekt organisieren, um das KI/ML-Modell umzusetzen?
Weitere Fragestellungen finden
Datenmanagement
3
- Wie speichere und versioniere ich Daten?
- Wie nutzt man unterschiedliche Speicheransätze?
- Wie werden Daten erfasst, gekennzeichnet und vorverarbeitet?
Weitere Fragestellungen finden
Experimentieren
3
- Welche Tools und Frameworks gibt es, um Experimentierläufe automatisch zu verfolgen und zu speichern?
- Wie können Experimente reproduzierbar gemacht und die Experimentierläufe automatisiert werden?
- Wie kann die Gültigkeit sichergestellt und eine Hyperparameter-Optimierung des ML-Modells durchgeführt werden?
Pros & Cons
Building Everything (regarding AI System)
Pro:3, Con: 3
Pros
- Hohe Kontrolle
- private Daten
- anpassbar zum Business
Cons
- Hoher Aufwand
- Fachwissen
- Infrastruktur
Pros & Cons
Building the software system & External AI via API
Pro: 3, Con: 4
Pros:
- Geringer Aufwand
- begrenzter Personal- und Infrastrukturaufwand
- günstiger
Cons
- Geringe Kontrolle
- geringer Datenschutz
- Abhängigkeit von Externen Unternehmen
- begrenzte Anpassung an den Geschäftskontext
Beispiele
Nenne Bereiche für Technische Schulden in ML Development
9
- Konfiguration
- Data Collection
- Data Verification
- Machine Resource Management
- Service Infrastructure
- Monitoring
- Feature Extraction
- Analysis Tool
- Process Management Tools