The ML Hype(r)scale

Google Vertex AI vs. Amazon Sagemaker vs. Microsoft Azure ML

Bis vor nicht allzu langer Zeit haben sich Financial Service Anbieter häufig auf einen der drei großen Hyperscaler (also Google, Microsoft Azure und Amazon AWS) fokussiert, um ihre Cloud-Transformation zu gestalten. Die Wahl der Machine Learning Tools, die zur Verfügung stehen, war damit quasi vorentschieden.

Aufgrund der aus regulatorischer Sicht immer stärker geforderten Exit- und Multi-Cloud-Szenarien sowie einem immer besser werdenden Angebot an Multi-Cloud-Management Lösungen wie Google Anthos kehrt die Wahlmöglichkeit für Data Science Einheiten aber nun zurück. Ein Grund, die aktuellen Capabilities von Googles Vertex AI, Amazons Sagemaker und Microsofts Azure Machine Learning zu vergleichen.

Kontakt
Experten

Tristan
Pötzsch

Patrick
Gschwendtner

Experimenting und Testing

Experimentieren und Testen sind wichtige Phasen im Lebenszyklus von Machine Learning. Umso wichtiger ist es, verschiedene Trainingsläufe und Tests vergleichbar zu machen. Alle Plattformen bieten die Möglichkeit, sogenannte Experiments zu Modellen zu erstellen, um in einem übersichtlichen Interface die verschiedenen Trainingsläufe zu vergleichen. Insbesondere Googles Vertex AI punktet mit einer von Anfang an einfachen Benutzeroberfläche und übersichtlichen Darstellung. Azure ML und Sagemaker hingegen erlauben es durch einfache drag and drop Funktionen, die Nutzeroberfläche schnell den eigenen Bedürfnissen anzupassen.

Für tiefergehende Vergleiche zwischen Modellen müssen Trainingsläufe in ein Notebook importiert oder zusätzliche Funktionen wie Tensorboard installiert werden, was sich Google gut bezahlen lässt. AWS Sagemaker besitzt eine bereits integrierte, Tensorboard ähnliche Oberfläche, die es einem erlaubt verschiedene Trainingsläufe im Detail zu vergleichen, ohne selbst Code dafür schreiben zu müssen.

Die Arbeiten im Experimenting und Testing erfolgen meist aus Jupyter Notebooks heraus. Google und Amazon haben Lösungen dafür in ihre Plattform integriert, bei Microsoft ist es nicht direkt integriert, lässt sich aber mit etwas mehr Aufwand ebenfalls umsetzen.

Pipelines

Während Googles Vertex AI auf Managed Open Source Produkte wie Kubeflow Pipelines und Tensorflow extended setzt, setzen Amazons Sagemaker und Azures Ml Factory auf eigene, fully managed Pipelines. Sowohl Azures als auch Amazons Pipelines sind beinahe identisch zu Kubeflow Pipelines, insbesondere Amazon erfordert jedoch einen deutlich höheren Detailierungsgrad in der Definition und auch das Deployment ist erheblich schwerer als bei Google. Mittlerweile ist es aber auch möglich, Azure und Amazon Pipeline Jobs in einer Kubeflow Komponente laufen zu lassen, sodass ein Vendor Lock-In verringert wird, da nicht mehr die gesamte Pipeline bei einer Migration umgeschrieben werden muss. Da der Trend jedoch klar in Richtung Multi-Cloud Environments geht, ist die Empfehlung hier klar zu Google, da Kubeflow als Open-Source Tool eine einfachere Portabilität zwischen verschiedenen Environments bietet.

Daten

GCP, AWS und Azure bieten eine native Lösung zum Tracken von Datensätzen auf ihren jeweiligen Storage Lösungen an. Dabei werden Dateien mit Metadaten-Tags versehen. So lassen sich verschiedene Versionen einer Datei verschiedenen Trainingsläufen zuordnen und direkt wieder abrufen. Dabei werden verschiedene Dateien jedoch mehrmals abgespeichert. Microsoft bietet hier in der Umsetzung das einfachste SDK und sticht positiv heraus.
Eine Versionierung der Daten erfolgt auf allen Plattformen nicht. Hier wird für alle Plattformen eine zusätzliche Git-basierte Datenversionierung (Data Version Control DVC) benötigt, die den Overhead im Speicher reduziert und die Übersichtlichkeit erleichtert.
In den klassischen SQL und Blob Speichern unterscheiden sich die Plattformen nicht und alle nutzen ihre von Haus aus vorhandenen Speicher. Wenn es aber speziell um das Data Science und Machine Learning Umfeld geht, so hat Google Cloud mit der Einbindung von BigQuery als Data Warehouse speziell für Analytics und Machine Learning klar die Nase vorn.

Wer die Nase wo vorne hat

Fazit

Im Allgemeinen unterstützen alle Plattformen den kompletten Lebenszyklus eines Machine Learning Models, von der Entwicklung in Notebooks über das Deployment mit Pipelines bis zur Bereitstellung auf Endpoints. Dabei sind alle Funktionen vorhanden, die benötigt werden und die einzelnen Komponenten werden regelmäßig weiterentwickelt, sodass beispielweise Pipelines in Vertex AI nun auch CMEK-Verschlüsselungen erlauben. Das Hinzufügen neuer Produkte passiert sehr selten, wenn dann können diese jedoch sehr disruptiv sein und die Arbeitsweise komplett verändern. So arbeitet Google aktuell an einer Integrierung von Apache Spark in ihre Data Warehouse Lösung BigQuery, was das Potential hat, die Arbeit in Jupyter Notebooks komplett zu verändern. Durch Lösungen wie BigQuery und der Open Source Variante von Kubeflow bietet Google Möglichkeiten, mit denen Amazon und Microsoft aktuell nicht mithalten können.

Insgesamt bieten alle Plattformen aber umfangreiche und ausreichend Möglichkeiten, die es einem erleichtern sich auf die wesentliche Data Science Arbeit zu konzentrieren. Wenn also bereits ein Hyperscaler für andere Zwecke genutzt wird, sollte auf jeden Fall auf dieser dafür genutzt werden, da das größte Potential erst mit der Einbindung weiterer Produkte entsteht. Wenn die freie Auswahl besteht, ist Google der stärkste Anbieter.

Wir nutzen Cookies zur Webanalyse.Informationen zum Datenschutz
ablehnen
einwilligen