Veröffentlichung des maschinellen Lernsystems TensorFlow 2.0

Eingereicht von bedeutende Veröffentlichung der Plattform für maschinelles Lernen TensorFlow 2.0, das vorgefertigte Implementierungen verschiedener Deep-Machine-Learning-Algorithmen, eine einfache Programmierschnittstelle zum Erstellen von Modellen in Python und eine Low-Level-Schnittstelle für die Sprache C++ bereitstellt, mit der Sie die Erstellung und Ausführung von Rechendiagrammen steuern können. Der Systemcode ist in C++ und Python geschrieben und vertrieben von unter der Apache-Lizenz.

Die Plattform wurde ursprünglich vom Google Brain-Team entwickelt und wird in Google-Diensten zur Spracherkennung, zur Identifizierung von Gesichtern auf Fotos, zur Bestimmung der Ähnlichkeit von Bildern, zum Herausfiltern von Spam in Gmail verwendet. Auswahl Nachrichten in Google News und Organisation der Übersetzung unter Berücksichtigung der Bedeutung. Dank der integrierten Unterstützung von TensorFlow für die Verteilung von Berechnungen auf mehrere CPUs oder GPUs können verteilte maschinelle Lernsysteme auf Standardhardware erstellt werden.

TensorFlow bietet eine Bibliothek vorgefertigter numerischer Berechnungsalgorithmen, die durch Datenflussdiagramme implementiert werden. Knoten in solchen Diagrammen implementieren mathematische Operationen oder Eingabe-/Ausgabepunkte, während die Kanten des Diagramms mehrdimensionale Datenarrays (Tensoren) darstellen, die zwischen Knoten fließen.
Knoten können Rechengeräten zugewiesen und asynchron ausgeführt werden, wobei alle für sie geeigneten Thesoren gleichzeitig verarbeitet werden, was es ermöglicht, den gleichzeitigen Betrieb von Knoten in einem neuronalen Netzwerk analog zur gleichzeitigen Aktivierung von Neuronen im Gehirn zu organisieren.

Das Hauptaugenmerk bei der Erstellung der neuen Version lag auf Vereinfachung und Benutzerfreundlichkeit. einige Innovationen:

  • Zum Erstellen und Trainieren von Modellen wurde eine neue High-Level-API vorgeschlagen Keras, das mehrere Schnittstellenoptionen zum Erstellen von Modellen (sequentiell, funktional, Unterklassen) mit der Möglichkeit bietet sofortige Umsetzung (ohne Vorkompilierung) und mit einem einfachen Debugging-Mechanismus;
  • API hinzugefügt tf.distribute.Strategy für Organisation Verteiltes Lernen Modelle mit minimalen Änderungen am vorhandenen Code. Zusätzlich zur Möglichkeit, Berechnungen zu verteilen mehrere GPUsFür die Aufteilung des Lernprozesses auf mehrere unabhängige Prozessoren und die Möglichkeit zur Cloud-Nutzung steht experimentelle Unterstützung zur Verfügung TPU (Tensor-Verarbeitungseinheit);
  • Anstelle eines deklarativen Modells zum Erstellen eines Diagramms mit Ausführung durch tf.Session ist es möglich, gewöhnliche Funktionen in Python zu schreiben, die mithilfe eines Aufrufs von tf.function in Diagramme umgewandelt und dann remote ausgeführt, serialisiert oder optimiert werden können für verbesserte Leistung;
  • Übersetzer hinzugefügt Autogramm, das einen Stream von Python-Befehlen in TensorFlow-Ausdrücke konvertiert, sodass Python-Code in den Funktionen tf.function-decorated, tf.data, tf.distribute und tf.keras verwendet werden kann;
  • SavedModel vereinheitlicht das Modellaustauschformat und bietet Unterstützung für das Speichern und Wiederherstellen von Modellzuständen. Für TensorFlow kompilierte Modelle können jetzt verwendet werden TensorFlow Lite (auf Mobilgeräten), TensorFlow JS (im Browser oder Node.js), TensorFlow-Bereitstellung и TensorFlow-Hub;
  • Die APIs tf.train.Optimizers und tf.keras.Optimizers wurden vereinheitlicht; anstelle von „compute_gradients“ wurde eine neue Klasse zur Berechnung von Farbverläufen vorgeschlagen Farbverlaufsband;
  • Deutlich gesteigerte Leistung bei Verwendung der GPU.
    Die Geschwindigkeit des Modelltrainings auf Systemen mit NVIDIA Volta- und Turing-GPUs hat sich um das Dreifache erhöht;

  • Ausgetragen Umfangreiche API-Bereinigung, viele Aufrufe umbenannt oder entfernt, Unterstützung für globale Variablen in Hilfsmethoden eingestellt. Anstelle von tf.app, tf.flags, tf.logging wird eine neue absl-py-API vorgeschlagen. Um die alte API weiterhin nutzen zu können, wurde das Modul compat.v1 vorbereitet.

Source: opennet.ru

Kommentar hinzufügen