- Die offizielle Veröffentlichung von Keras 3.0 wurde bekannt gegeben; zuvor durchlief es fünf Monate öffentlichen Beta-Tests
- Keras 3 ist eine vollständig neu geschriebene Version, mit der sich Keras-Workflows auf JAX, TensorFlow und PyTorch ausführen lassen
- Bietet neue Funktionen für das Training und die Bereitstellung großer Modelle
Willkommen bei Multi-Framework-Machine-Learning
- Zu den Vorteilen von Keras zählen hohe Entwicklungsgeschwindigkeit, gute User Experience, API-Design und einfache Fehlersuche
- Ein bewährtes Framework, das von 2,5 Millionen Entwicklern gewählt wurde und in groß angelegten ML-Systemen wie Waymo-Selbstfahrfahrzeugen und der YouTube-Empfehlungsengine eingesetzt wird
- Keras 3 bietet zusätzliche Vorteile wie die Optimierung der Modellleistung, mehr Optionen im Modell-Ökosystem sowie Unterstützung für großskalige Modellparallelisierung und Datenparallelisierung
Keras-3-API auf JAX, TensorFlow und PyTorch verfügbar
- Keras 3 implementiert die vollständige Keras-API und ist auf TensorFlow, JAX und PyTorch nutzbar
- Jedes Keras-Modell, das nur integrierte Layer verwendet, funktioniert sofort auf allen unterstützten Backends
- Bestehende
tf.keras-Modelle können ebenfalls direkt auf JAX und PyTorch ausgeführt werden
Multi-Framework-Layer, -Modelle und -Metriken schreiben
- Mit Keras 3 lassen sich Komponenten erstellen, die auf allen Backends identisch funktionieren, etwa Custom Layer oder vortrainierte Modelle
- Über den Namespace
keras.opswerden eine backendübergreifend kompatible NumPy-API sowie neuronale netzspezifische Funktionen bereitgestellt - Solange nur
keras.opsverwendet wird, funktionieren Custom Layer und Metriken mit demselben Code auf JAX, PyTorch und TensorFlow
Neue verteilte API für großskalige Datenparallelisierung und Modellparallelisierung
- Bietet eine neue verteilte API zur Lösung von Problemen beim Sharding großer Modelle
- Trennt Modelldefinition, Trainingslogik und Sharding-Konfiguration, sodass sich Modelle schreiben lassen, als würden sie auf einem einzelnen Gerät laufen
- Bietet eine API, mit der sich Sharding-Layouts für Datenparallelisierung und Modellparallelisierung einfach festlegen lassen
Vortrainierte Modelle
- Stellt verschiedene vortrainierte Modelle zur Verfügung, die in Keras 3 genutzt werden können
- Alle Modelle aus Keras Applications sowie die vortrainierten Modelle aus KerasCV und KerasNLP funktionieren auf allen Backends
Cross-Framework-Datenpipelines auf allen Backends unterstützt
- Keras-3-Modelle können unabhängig vom verwendeten JAX-, PyTorch- oder TensorFlow-Backend mit verschiedenen Datenpipelines trainiert werden
Schrittweise Offenlegung von Komplexität
- Die Keras-API folgt dem Designprinzip, unterschiedliche Workflows für verschiedene Nutzerprofile zu unterstützen – von einfachen Workflows bis hin zu Low-Level-Anpassungen
Zustandslose API
- Alle zustandsbehafteten Keras-Objekte verfügen nun über eine zustandslose API, die in JAX-Funktionen verwendet werden kann
Wechsel von Keras 2 zu Keras 3
- Keras 3 ist in hohem Maß mit Keras 2 kompatibel; die meisten Nutzer können ohne Codeänderungen auf Keras 3 umsteigen
- Größere Codebasen benötigen möglicherweise einige Anpassungen, dafür steht jedoch ein vollständiger Migrationsleitfaden zur Verfügung
- Wer Keras 2 weiterverwenden möchte, kann das Paket
tf_kerasnutzen oder die UmgebungsvariableTF_USE_LEGACY_KERASsetzen
Meinung von GN⁺
Das Wichtigste an diesem Beitrag ist die offizielle Veröffentlichung von Keras 3.0 und die neuen Funktionen, die es Entwicklern bietet. Keras 3.0 läuft auf verschiedenen Backends wie JAX, TensorFlow und PyTorch und verbessert die Flexibilität und Effizienz der Machine-Learning-Entwicklung deutlich, indem es das Training und die Bereitstellung großer Modelle verbessert. Diese Eigenschaften sind für die Machine-Learning-Community sehr spannende Neuigkeiten und geben Entwicklern die Möglichkeit, Modelle in noch vielfältigeren Umgebungen zu testen und bereitzustellen.
3 Kommentare
Ich persönlich mag Keras wirklich sehr, daher freue ich mich sehr darüber, dass es jetzt auch mit PyTorch als Backend laufen kann.
Oh, eine neue Keras-Version wurde angekündigt.
Ich habe bisher nur PyTorch gelernt,
und da es heißt, dass sich „bestehende tf.keras-Modelle auch direkt in JAX und PyTorch ausführen lassen“, bin ich neugierig, wie das funktioniert~
Oh, Keras 3 ist also erschienen. +_+
Es wäre schön, wenn sowohl die Modellentwicklung als auch das Training dadurch etwas einfacher würden.