© Ryzhi/Shutterstock.com
Entwickler Magazin
Machine-Learning-Anwendungen in Produktion bringen

Continuous Delivery für Machine Learning

In der heutigen Softwareentwicklung ist es selbstverständlich geworden, dass Usern laufend neue Funktionen und Erweiterungen geboten werden. Das trifft sowohl auf Benutzeranwendungen im Mobil-, Web- und Desktopbereich zu als auch auf moderne Unternehmenssoftware. Umfangreiche und den Betrieb störende Software-Go-lives werden nicht mehr geduldet. Mit Continuous Delivery (CD) lässt sich die Frequenz, mit der Software zuverlässig produktiv ausgeliefert werden kann, drastisch erhöhen.

Arif Wider, Danilo Sato, Christoph Windheuser


Organisationen arbeiten zunehmend datengetrieben oder orientieren sich sogar bereits in Richtung KI-getrieben. Daher wird es immer wichtiger, Data-Science- und Data-Engineering-Ansätze in die Softwareentwicklung einfließen zu lassen, damit keine spezialisierten Silos entstehen, die eine effiziente Zusammenarbeit verhindern. Allerdings ist diese Integration auch mit neuen Hürden verbunden.

Mehr Artefakte, die sich verändern: Es müssen nicht nur die Softwarecodeartefakte verwaltet werden, sondern auch die Datenbasis und Machine-Learning-(ML-)Modelle sowie die in den Modellen verwendeten Parameter und Hyperparameter. Sämtliche dieser Artefakte müssen über verschiedene Stufen hinweg administriert, versioniert und optimiert werden, bis sie in Produktion übernommen werden. Die Sicherstellung von Versionierung, Qualitätskontrolle, Zuverlässigkeit, Wiederholbarkeit und Prüffähigkeit ist daher aufwendiger und komplexer.

Größe und Übertragbarkeit: Die Größenordnung von Trainingsdaten und ML-Modellen liegt im Allgemeinen deutlich über der von Softwarecode. Insofern sind für eine effiziente Handhabung andere Werkzeuge erforderlich. Das erschwert die Nutzung eines universellen Artefaktformats, was zu einer „Über den Zaun werfen“-Mentalität zwischen den verschiedenen Teams führen kann.

Unterschiedliche Fähigkeiten und Arbeitsmethoden der Mitarbeiter: Für die Entwicklung von ML-Anwendungen werden Fachkräfte mit sich ergänzenden Fähigkeiten benötigt. Mitunter haben diese Fachkräfte gegensätzliche Zielsetzungen, Ansätze oder Arbeitsmethoden:

Data Scientists befassen sich mit den Daten, extrahieren Merkmale und suchen nach geeigneten Modellen, mit denen sich die gewünschten Erkenntnisse am besten gewinnen lassen. Sie gehen vorzugsweise wissenschaftlich vor, indem sie Hypothesen aufstellen und sie anhand der Daten verifizieren oder entkräften. Sie brauchen Werkzeuge, mit denen sie Daten verarbeiten, parallele Experimente durchführen, Prototypen zügig erstellen, Daten visualisieren und mehrere Modelle skalierbar trainieren können. EntwicklerInnen und ML-Engineers wollen die Modelle in reale Anwendungen oder Services einbinden und dort einsetzen. Ihr Anliegen ist es, dass die Modelle möglichst zuverlässig, sicher, effizient und skalierbar sind. Data Engineers kümmern sich darum, dass die richtigen Daten stets auf dem aktuellen Stand und von hoher Qualität sind und im jeweils benötigten Umfang, Format und Detailgrad schnell und kosteneffizient abgerufen werden können. Die (Unte...

Entwickler Magazin
Machine-Learning-Anwendungen in Produktion bringen

Continuous Delivery für Machine Learning

In der heutigen Softwareentwicklung ist es selbstverständlich geworden, dass Usern laufend neue Funktionen und Erweiterungen geboten werden. Das trifft sowohl auf Benutzeranwendungen im Mobil-, Web- und Desktopbereich zu als auch auf moderne Unternehmenssoftware. Umfangreiche und den Betrieb störende Software-Go-lives werden nicht mehr geduldet. Mit Continuous Delivery (CD) lässt sich die Frequenz, mit der Software zuverlässig produktiv ausgeliefert werden kann, drastisch erhöhen.

Arif Wider, Danilo Sato, Christoph Windheuser


Organisationen arbeiten zunehmend datengetrieben oder orientieren sich sogar bereits in Richtung KI-getrieben. Daher wird es immer wichtiger, Data-Science- und Data-Engineering-Ansätze in die Softwareentwicklung einfließen zu lassen, damit keine spezialisierten Silos entstehen, die eine effiziente Zusammenarbeit verhindern. Allerdings ist diese Integration auch mit neuen Hürden verbunden.

Mehr Artefakte, die sich verändern: Es müssen nicht nur die Softwarecodeartefakte verwaltet werden, sondern auch die Datenbasis und Machine-Learning-(ML-)Modelle sowie die in den Modellen verwendeten Parameter und Hyperparameter. Sämtliche dieser Artefakte müssen über verschiedene Stufen hinweg administriert, versioniert und optimiert werden, bis sie in Produktion übernommen werden. Die Sicherstellung von Versionierung, Qualitätskontrolle, Zuverlässigkeit, Wiederholbarkeit und Prüffähigkeit ist daher aufwendiger und komplexer.

Größe und Übertragbarkeit: Die Größenordnung von Trainingsdaten und ML-Modellen liegt im Allgemeinen deutlich über der von Softwarecode. Insofern sind für eine effiziente Handhabung andere Werkzeuge erforderlich. Das erschwert die Nutzung eines universellen Artefaktformats, was zu einer „Über den Zaun werfen“-Mentalität zwischen den verschiedenen Teams führen kann.

Unterschiedliche Fähigkeiten und Arbeitsmethoden der Mitarbeiter: Für die Entwicklung von ML-Anwendungen werden Fachkräfte mit sich ergänzenden Fähigkeiten benötigt. Mitunter haben diese Fachkräfte gegensätzliche Zielsetzungen, Ansätze oder Arbeitsmethoden:

Data Scientists befassen sich mit den Daten, extrahieren Merkmale und suchen nach geeigneten Modellen, mit denen sich die gewünschten Erkenntnisse am besten gewinnen lassen. Sie gehen vorzugsweise wissenschaftlich vor, indem sie Hypothesen aufstellen und sie anhand der Daten verifizieren oder entkräften. Sie brauchen Werkzeuge, mit denen sie Daten verarbeiten, parallele Experimente durchführen, Prototypen zügig erstellen, Daten visualisieren und mehrere Modelle skalierbar trainieren können. EntwicklerInnen und ML-Engineers wollen die Modelle in reale Anwendungen oder Services einbinden und dort einsetzen. Ihr Anliegen ist es, dass die Modelle möglichst zuverlässig, sicher, effizient und skalierbar sind. Data Engineers kümmern sich darum, dass die richtigen Daten stets auf dem aktuellen Stand und von hoher Qualität sind und im jeweils benötigten Umfang, Format und Detailgrad schnell und kosteneffizient abgerufen werden können. Die (Unte...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang