Die Herausforderungen des ML-Managements meistern: Tools und Erkenntnisse für den Erfolg
Da sich Machine Learning (ML) weiterhin in rasantem Tempo weiterentwickelt, ist die Komplexität der Verwaltung und Versionierung riesiger Datensätze und Modelle exponentiell gewachsen. Während Entwickler in der Softwareentwicklung seit Langem auf Tools wie Git zur Versionskontrolle setzen, erfordern die einzigartigen Herausforderungen des Machine Learning speziellere Lösungen. Anders als bei Software, bei der Codebasen relativ einfach versioniert und verwaltet werden können, fehlt es ML-Modellen, Datensätzen und Artefakten oft an einem einheitlichen Branchenstandard für Versionierung und Verwaltung.
Bei einem kürzlich von Zilliz veranstalteten Unstructured Data Meetup erläuterte Rajat Arya, Mitgründer von XetHub (inzwischen von HuggingFace übernommen), wie er und sein Team diese Lücke in der ML-Versionierung und -Verwaltung geschlossen haben. Sein Team entwickelte XetHub, ein Tool, das Git skaliert, um Daten im Petabyte-Maßstab zu verarbeiten. Ja, Sie haben richtig gelesen—Daten im Petabyte-Maßstab. Aber warum war das notwendig? Welche Vorteile bringt es, und wie funktioniert es? Wie hängt es mit Vektordatenbanken zusammen? Tauchen wir in Aryas Erkenntnisse ein und beleuchten die wichtigsten Punkte.
Sehen Sie sich die Aufzeichnung von Rajats Vortrag an
Die Schmerzpunkte in der Entwicklung von Machine Learning
Eine der größten Hürden in der Entwicklung von Machine Learning ist das Fehlen umfassender Tools, die die gesamte ML-Pipeline abdecken. Zwar gibt es zahlreiche Tools für spezifische Aufgaben, doch bei Lösungen, die den End-to-End-Prozess effizient handhaben, besteht eine erhebliche Lücke. Hier sind einige zentrale Schmerzpunkte:
Skalierbarkeit
Die Verwaltung von Datensätzen, die auf bis zu 100 Petabyte und darüber hinaus skalieren können, ist eine enorme Herausforderung, insbesondere wenn traditionelle Tools Einschränkungen bei der Anzahl der Dateien auferlegen, mit denen Sie arbeiten können.
Datenmanagement
Das Erstellen unveränderlicher Snapshots von Repositories ist entscheidend, um Datenintegrität und einfache Versionskontrolle sicherzustellen. Ohne diese Fähigkeit wird es schwierig, Änderungen nachzuverfolgen und Konsistenz zu wahren.
Zusammenarbeit
Die nahtlose Zusammenarbeit zwischen Data Scientists und Ingenieuren zu ermöglichen, ist essenziell. Die Revolution, die Source Control in der Softwareentwicklung ausgelöst hat, hat sich noch nicht vollständig auf ML ausgeweitet, wo Zusammenarbeit aufgrund fehlender standardisierter Tools oft auf Hindernisse stößt.
Observability
Zu verstehen, wie und wann Änderungen an Modellen und Datensätzen auftreten, ist entscheidend für das Debugging und die Verbesserung von ML-Systemen. Ohne Einblick in diese Änderungen haben Teams Schwierigkeiten, effektiv zu iterieren.
Von der Forschung zu realen ML-Anwendungen: Alles verändert sich
In den Anfangstagen waren ML und KI vor allem forschungsorientiert, mit akademischen Zielen, die die Arbeit an statischen, oft strukturierten Datensätzen umfassten. Ziel war es, Kennzahlen wie Genauigkeit oder Fehlerraten zu verbessern, was in einer kontrollierten Forschungsumgebung gut funktionierte.
Mit dem Übergang von ML aus der Wissenschaft in die Industrie hat sich die Landschaft jedoch dramatisch verändert:
Statische vs. dynamische Datensätze
Akademisches ML arbeitet häufig mit statischen Datensätzen, aber industrielles ML umfasst sich ständig ändernde Daten, die mitunter so häufig wie stündlich aktualisiert werden. Diese dynamische Natur erfordert Tools, die kontinuierliche Updates nahtlos verarbeiten können.
Strukturierte vs. unstrukturierte Daten
Während sich die akademische Forschung oft auf strukturierte Daten konzentriert, umfassen reale Anwendungen häufig unstrukturierte Daten. Dieser Wandel erfordert ausgefeiltere Techniken zur Datenverarbeitung und -handhabung. Wir benötigen zweckentwickelte Vektordatenbanken wie Milvus und Zilliz Cloud (vollständig verwaltetes Milvus) für Datenspeicherung, Indexierung und Abruf, um solche unstrukturierten Daten zu verwalten.
Wachsende Modellkomplexität
ML-Modelle werden zunehmend komplexer, mit mehr Parametern und tieferen Architekturen. Die Verwaltung dieser komplexen Modelle erfordert Tools, die gemeinsam mit ihnen skalieren können.
Integration mit Anwendungscode
In industriellen Umgebungen müssen sich ML-Modelle reibungslos in Anwendungscode integrieren lassen, was ein kohärentes Ökosystem aus Paketen und Frameworks erfordert, die reibungslos zusammenarbeiten.
Erweiterung der Fähigkeiten von Git für Machine Learning mit XetHub
XetHub bewältigt die Skalierbarkeitsherausforderung, indem es die Fähigkeiten von Git erweitert, um große Datensätze und Modelle effizient zu verwalten. So macht es einen Unterschied:
Keine Beschränkungen bei der Anzahl der Dateien: Traditionelles Git hat Schwierigkeiten beim Umgang mit einer großen Anzahl von Dateien, aber XetHub beseitigt diese Einschränkung und ermöglicht nahtlose Skalierung, unabhängig von der Dateianzahl.
Unveränderliche Snapshots: XetHub erstellt unveränderliche Snapshots und gewährleistet so Datenkonsistenz und Reproduzierbarkeit—unerlässlich für robuste ML-Entwicklung.
Effizientes Datenmanagement: Anstatt große Datensätze zu übertragen, verwaltet XetHub Metadaten und Zeiger, wodurch das System schneller und effizienter wird und sowohl Zeit als auch Ressourcen spart.
Observability in Machine-Learning-Projekten erreichen
Observability ist entscheidend für ML-Modelle und -Systeme, da sie die nötige Sichtbarkeit bietet, um Modelle zu debuggen, zu iterieren und zu verbessern. Hier sind einige Vorschläge, um die Observability in Ihren ML-Projekten zu verbessern:
Datenzusammenfassung
Beginnen Sie mit den Daten. Erstellen Sie eine grobe One-Pass-Zusammenfassung Ihrer Daten und Features. Dies ist entscheidend, da es Ihnen ermöglicht, Verschiebungen in Ihrem Datensatz im Laufe der Zeit zu verstehen. Wenn beispielsweise Datensatz A zu verschiedenen Zeitpunkten unterschiedliche Verteilungen aufweist, ermöglichen Ihnen Zusammenfassungen, auf Grundlage dieser Änderungen fundierte Entscheidungen zu treffen.
Modellmetriken und -verhalten
Speichern Sie nicht nur die Metriken Ihres Modells, sondern verstehen Sie auch, wie sich Ihr Modell verhält. Beispielsweise hilft Ihnen das Nachverfolgen der Feature-Wichtigkeit Ihrer ML-Modelle zu erkennen, welche Features die Vorhersagen antreiben. Änderungen in der Feature-Wichtigkeit könnten auf Verschiebungen in Ihren Trainingsdaten oder architektonische Modifikationen hinweisen. Dieses tiefe Verständnis Ihrer Modelle stellt sicher, dass Sie sie schnell debuggen und verbessern können.
Rechenleistung und Betrieb
Rechenleistung ist integraler Bestandteil der ML-Observability. Jede Operation, ob an Daten, Code, Artefakten oder anderen Assets, sollte für jeden Commit oder jede Änderung gespeichert werden. Diese umfassende Nachverfolgung ermöglicht vollständige ML-Observability und gewährleistet Effizienz, Nachvollziehbarkeit und Reproduzierbarkeit über verschiedene Läufe desselben Prozesses hinweg.
Die Rolle von Vektordatenbanken im modernen Machine Learning
Vektordatenbanken, wie Milvus und Zilliz Cloud (vollständig verwaltetes Milvus), sind eine Art von Datenmanagementsystemen, die hochdimensionale Daten speichern, indexieren und abrufen—numerische Repräsentationen (auch bekannt als Vektoreinbettungen) unstrukturierter Daten wie Text, Videos, Audio und Bilder. Sie werden häufig für Ähnlichkeitssuche, semantische Suche, Empfehlungssysteme, retrieval augmented generation (RAG) und viele andere Anwendungsfälle eingesetzt.
Da ML-Modelle und Datensätze immer komplexer werden, wird die Verwaltung und das Abrufen riesiger Mengen hochdimensionaler Daten zunehmend herausfordernd. Vektordatenbanken adressieren diese Herausforderung und bieten Lösungen, mit denen traditionelle Datenbanken nicht mithalten können.
Retrieval Augmented Generation (RAG)
Eine der spannendsten Anwendungen von Vektordatenbanken ist Retrieval Augmented Generation (RAG). Diese Technik kombiniert die Leistungsfähigkeit großer Sprachmodelle (LLMs) mit effizientem Abruf von Vektordaten. In einem RAG-Setup wird eine Eingabeabfrage mithilfe eines Machine-Learning-Modells wie OpenAIs Text-Embedding-Modellen in einen Vektor umgewandelt und mit einer riesigen Sammlung von Vektoren abgeglichen, die in einer Vektordatenbank wie Milvus. gespeichert sind. Die relevantesten Ergebnisse werden abgerufen und dem LLM zugeführt, sodass es genauere, kontextuell relevante Antworten generieren kann. Dieser Ansatz mindert nicht nur Halluzinations-Probleme in LLMs und macht es möglich, das Potenzial privater oder proprietärer Datensätze zu nutzen, ohne sich um Datensicherheitsprobleme sorgen zu müssen.
Die Lücke zwischen Forschung und Industrie schließen
Der Übergang von forschungsorientiertem ML zu realen Anwendungen beinhaltet häufig den Umgang mit unstrukturierten und dynamischen Daten. Vektordatenbanken sind einzigartig dafür ausgestattet, diese Herausforderung zu bewältigen, da sie eine kontinuierliche Anpassung von ML-Modellen an die neuesten Daten ermöglichen. Diese Anpassungsfähigkeit stellt sicher, dass Modelle relevant und effektiv bleiben, selbst wenn sich die zugrunde liegenden Daten weiterentwickeln.
Zum Beispiel kann im E-Commerce, wo Produktbeschreibungen und Kundenbewertungen ständig aktualisiert werden, eine Vektordatenbank wie Milvus schnell die relevantesten Informationen abrufen, sodass das ML-Modell aktuelle Empfehlungen und Erkenntnisse liefern kann.
Nahtlose Integration mit Tools wie XetHub
XetHubs Fähigkeit, Daten im Petabyte-Maßstab zu verwalten, ergänzt die Stärken von Vektordatenbanken. Durch die Erstellung unveränderlicher Snapshots und die effiziente Verwaltung von Metadaten stellt XetHub sicher, dass groß angelegte ML-Projekte Datenintegrität und Versionskontrolle beibehalten, selbst wenn sie skalieren. Vektordatenbanken können mit verschiedenen Machine-Learning-Modellen und Tools wie XetHub integriert werden und unterstützen die Entwicklung und Bereitstellung von ML-Modellen, insbesondere in Szenarien wie RAG, in denen die Genauigkeit und Relevanz des Informationsabrufs von größter Bedeutung sind.
Fazit
Rajat Aryas Diskussion hob die erheblichen Herausforderungen im Machine Learning und den Bedarf an besseren Tools zur Verwaltung und Versionierung von Modellen und Daten hervor. XetHub adressiert diese Anforderungen, indem es die Fähigkeiten von Git erweitert, um riesige Datensätze effizient zu handhaben.
Da Machine Learning sich kontinuierlich weiterentwickelt, werden robuste Tools für Observability und Datenmanagement entscheidend. Durch die Kombination von Lösungen wie XetHub mit Vektordatenbanken und Machine-Learning-Modellen können wir die Effektivität von ML-Projekten steigern und sicherstellen, dass sie gut verwaltet und an neue Daten anpassbar sind. Solche Kombinationen unterstützen einen reibungsloseren Übergang von der Forschung zu realen Anwendungen und machen die KI-Entwicklung praktischer und zuverlässiger.
Weitere Ressourcen
Aufzeichnung von Rajat Aryas Meetup-Vortrag auf YouTube.
Paper: Git is for Data
Weiterlesen

From Vector Database to Vector Lakebase
Zilliz offers a fully managed Vector Lakebase powered by Milvus, unifying real-time vector search, lake-scale discovery, and Al data operations.

Vector Databases vs. Graph Databases
Use a vector database for AI-powered similarity search; use a graph database for complex relationship-based queries and network analysis.

Building RAG Pipelines for Real-Time Data with Cloudera and Milvus
explore how Cloudera can be integrated with Milvus to effectively implement some of the key functionalities of RAG pipelines.



