Python-Library mit TensorFlow-Kompatibilität

Deep Learning: Keras 2 ist erschienen
Kommentare

Vor genau zwei Jahren wurde die Deep-Learning-Library Keras veröffentlicht. Die Bibliothek für Python will Deep Learning auch Laien zugänglich machen. Nun ist Keras in Version 2 erschienen und bringt eine ganze Reihe spannender Neuerungen mit sich, wie zum Beispiel TensorFlow-Kompatibilität.

Seit dem Release von Keras im März 2015 ist die Nutzerbasis der Deep-Learning-Library auf über 100.000 gestiegen. Dank der aktiven Mitarbeit aus der Community konnten in den vergangenen zwei Jahren viele Probleme gefixt und neue Features hinzugefügt werden. Ab sofort steht die zweite Hauptversion, Keras 2, offiziell zur Verfügung.

Keras 2 – das steckt drin

Besonderes Augenmerk liegt auf dem API, das nicht nur das erste mit Long-Term-Support ist, sondern auch die TensorFlow-Konventionen unterstützt. Letzteres ist ein wichtiger Schritt auf dem Weg, das Keras-API in TensorFlow zu integrieren.

TensorFlow-Integration

Keras unterstützt TensorFlow als Runtime-Backend zwar seit Dezember 2015, dennoch wurde das Keras-API bislang getrennt von der TensorFlow-Codebasis gehalten. Doch damit ist jetzt Schluss: Das Keras-API wird direkt Teil der Machine-Learning-Bibliothek (ab TensorFlow 1.2).

In Zukunft soll die Keras-API-Spezifikation in zwei Implementierungen vorliegen: tf.keras als interne Umsetzung für TensorFlow und kompatibel mit allen TF-Funktionalitäten sowie eine externe Implementierung, die sowohl mit TensorFlow als auch mit Theano als Backend arbeiten kann.

Zudem gibt es auch eine Scala-Implementierung und eine teilweise Umsetzung in JavaScript, was das Teilen von Code und das Reproduzieren von Forschungsergebnissen erleichtern könnte.

[…] the Keras API is meant to become the lingua franca of deep learning practitioners

API-Änderungen

Wie bereits erwähnt, ist das neue Keras-2-API das erste Long-Term-Supprt-API. Dafür wurde die Schnittstelle extrem überarbeitet und ist jetzt vollständig mit den Tensor-Flow-Konventionen kompatibel.

So haben sich etwa die APIs der meisten Layer sowie alle convolutional Layer geändert. Auch das API des Generator-Trainings und der Evaluationsmethoden sowie das Format der Gewichtungsdateien für Modelle wurde geändert. Außerdem wurde nb_epoch aus fit in epochs und das objectives-Modul in losses umbenannt.

Darüber hinaus gab es noch einige Breaking Changes: So wurden die Legacy Layer MaxoutDense, TimeDistributedDense und Highway sowie einiges an Legacy-Metrik und loss-Funktionen entfernt. Zudem unterstützt der BatchNormalization-Layer nicht länger das mode-Argument.

Ausführliche Informationen zu allen Neuerungen und Änderungen finden sich im Keras-Blog. Zum Download steht Keras 2 auf GitHub bereit.

Was ist Keras?

Bei Keras handelt es sich um ein High-Level-Neural-Networks-API, geschrieben in Python und auf TensorFlow oder Theano einsetzbar. Fokus liegt auf der schnellen Bereitstellung von Versuchsdurchführungen:

Being able to go from idea to result with the least possible delay is key to doing good research.

Keras bietet demnach leichtes und schnelles Prototyping, unterstützt rekurrente sowie convolutional Netzwerke und läuft nahtlos auf der CPU/GPU.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -