In Anwendungen, die Machine Learning-Komponenten enthalten, müssen bereits in der Entwicklung eine Metrik zur Überwachung, besondere Qualitätsmerkmale wie Erklärbarkeit und Fairness und ebenso die ständige Weiterentwicklung mitgedacht werden.
Das beschert derartigen Anwendungen eine besondere Position im Bereich des DevOps und mit MLOps entsteht eine eigenständige Sparte.
In diesem Talk gehe ich auf die besonderen Anforderungen im Betrieb ein und welche Auswirkungen diese auf die Entwicklung haben.
Zielpublikum: Architekt:innen und Entwickler:innen
Voraussetzungen: Ein Grundverständnis von DevOps ist notwendig, ein Verständnis von ML ist hilfreich
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract:
Bei klassischer Software-Entwicklung wird Business-Logik anhand von Regeln von Software-Entwicklern kodiert. Diese Regeln sind entweder unmittelbar gegeben (z. B. Gesetzestexte) oder entstehen durch die Analyse einer Domäne in Form von Anforderungen.
Machine Learning-Modelle basieren dagegen nicht auf expliziten Regeln, sondern werden durch für die Domäne repräsentative Daten trainiert. Das Herausarbeiten von Regeln übernimmt hier also auch die Maschine und nicht der Mensch. Da die Welt und die meisten Domänen nicht stillstehen, ist dies allerdings ein dynamischer Prozess. Ein Modell kann selten einmal trainiert werden und dann über längere Zeit in Produktion gehalten werden.
Dies erfordert bereits in der Entwicklungsphase eine Metrik, mit der man bestimmen kann, wie gut ein solches Modell noch auf die Realität passt. Zudem muss für viele Anwendungen die Erklärbarkeit gewährleistet und auch in Produktion geliefert werden.
Im Bereich von Teams bedeutet das die Einführung weiterer Rollen und eine neue Form von Zusammenarbeit zwischen diesen.
Was MLOps umfasst, ist bisher nicht geschlossen festgelegt, sondern eher definiert darüber, was man braucht, um Machine Learning-Modelle in Produktion zu bringen und dort erfolgreich zu halten. Mit Sicherheit müssen wir über die Integration in bestehende Software, die Aufteilung in Services und das Monitoring sprechen.
Diese Session beschränkt sich nicht auf die Konzepte, sondern demonstriert diese anhand einer durchgängigen Anwendung.
Oliver Zeigermann ist Softwareentwickler aus Hamburg. Er entwickelt seit über 35 Jahren Software mit unterschiedlichen Ansätzen und Programmiersprachen. In letzter Zeit hat er sich vor allem mit Machine Learning und dessen Kommunikation mit dem Menschen beschäftigt.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/oliver.zeigermann