www.wikidata.de-de.nina.az
Keras ist eine Open Source Deep Learning Bibliothek geschrieben in Python Sie wurde von Francois Chollet initiiert und erstmals am 28 Marz 2015 veroffentlicht 2 Keras bietet eine einheitliche Schnittstelle fur verschiedene Backends darunter TensorFlow Microsoft Cognitive Toolkit vormals CNTK und Theano Das Ziel von Keras ist es die Anwendung dieser Bibliotheken so einsteiger und nutzerfreundlich wie moglich zu machen 3 KerasBasisdatenMaintainer Community Projekt initiiert durch Francois CholletEntwickler Francois CholletAktuelle Version 2 14 0 1 12 September 2023 Betriebssystem PlattformunabhangigkeitProgrammiersprache PythonKategorie neuronale NetzeLizenz MIT LizenzKeras ioSeit dem Release von TensorFlow 1 4 ist Keras Teil der Tensorflow Core API jedoch wird Keras als eigenstandige Bibliothek weitergefuhrt da es laut Francois Chollet nicht als Schnittstelle fur Tensorflow sondern als Schnittstelle fur viele Bibliotheken gedacht ist 4 5 Mit dem Release von Keras 2 4 wurde die Multi Backend Unterstutzung eingestellt Seitdem verweist Keras direkt auf die Implementierung von Tensorflow 2 6 Inhaltsverzeichnis 1 Beispiel 2 Literatur 3 Weblinks 4 EinzelnachweiseBeispiel BearbeitenDas folgende Beispiel soll die grundlegende Funktionsweise darstellen Darin wird einem neuronalen Netzwerk mithilfe von Keras die Funktion eines Exklusiv Oder Gatters beigebracht Uber TensorFlow laden from tensorflow keras layers import Dense from tensorflow keras models import Sequential oder Aus Keras direkt laden from keras layers import Dense from keras models import Sequential Numpy laden und festlegen des Zufalls Startwertes import numpy as np np random seed 1337 Matplotlib zur grafischen Darstellung laden import matplotlib pyplot as plt Daten in Arrays speichern eingangswerte np array 0 0 0 1 1 0 1 1 ausgangswerte np array 0 1 1 0 Erstellt das Model mit 2 Eingangsnodes 2 Mittelnodes und einer Ausgangsnode num inner 2 model Sequential model add Dense num inner input dim 2 activation sigmoid model add Dense 1 Kompiliert das Model damit es spaeter verwendet werden kann model compile loss mean squared error optimizer adam metrics accuracy Trainiert das Model mit den Eingangs und den entsprechenden Ausgangswerten fuer 10000 Epochen model fit x eingangswerte y ausgangswerte epochs 10000 verbose 0 Testet die Eingangsdaten und schreibt die Ergebnisse in die Konsole print model predict eingangswerte Als Ausgabe erhalt man folgendes 8 34465027e 07 Eingang 0 und 0 zu erwartender Ausgang 0 9 99996364e 01 Eingang 0 und 1 zu erwartender Ausgang 1 9 99996185e 01 Eingang 1 und 0 zu erwartender Ausgang 1 5 48362732e 06 Eingang 1 und 1 zu erwartender Ausgang 0 Das Modell ist mit zwei Eingangsknoten zwei Mittelknoten und einem Ausgangsknoten sehr einfach Es braucht jedoch 10000 Epochen um zu guten Ergebnissen zu kommen Eine andere Aktivierungsfunktion hier tanh kann die Anzahl der Epochen auf 1000 reduzieren Erstellt das Model mit 2 Eingangsnodes 32 Mittelnodes und einer Ausgangsnode model Sequential model add Dense 32 input dim 2 activation tanh model add Dense 1 activation tanh Als Ausgabe erhalt man folgendes Using Theano backend 0 00473237 0 944603 0 9461131 0 00609871 Die Modellanalyse kann direkt mit numpy und matplotlib erfolgen In diesem Fall werden dem Modell gerasterte Eingabedaten ubergeben und die Ausgabe grafisch zweidimensional in einem Contourplot dargestellt Ebenso werden die Grenzen der Klassifizierung als Linien und die diskreten Eingabewerte als Punkte dargestellt Bereitet die grafische Ausgabe mittels contourf vor und rastert die Eingabewerte fuer das Modell x np linspace 0 25 1 25 100 X1 raster X2 raster np meshgrid x x X1 vektor X1 raster flatten X2 vektor X2 raster flatten Nutzt die gerasterten Eingabewerte und erzeugt Ausgabewerte eingangswerte grafik np vstack X1 vektor X2 vektor T ausgangswerte grafik model predict eingangswerte grafik reshape X1 raster shape Fragt die Gewichte der Verbindungen und die Bias Daten ab gewichte bias model layers 0 get weights Contourplot der gerasterten Ausgangswerte in leicht vergroessertem Bereich und Legende plt contourf X1 raster X2 raster ausgangswerte grafik 100 plt xlim 0 25 1 25 plt ylim 0 25 1 25 plt xlabel Eingabewert x 1 plt ylabel Eingabewert x 2 plt colorbar Eintragen der Eingangsdaten in die Grafik plt scatter np array 0 0 1 1 np array 0 1 0 1 color red Plot der Klassifizierungs Begrenzungslinien der Aktivierungsfunktionen for i in range num inner plt plot x gewichte 0 i gewichte 1 i x bias i gewichte 1 i color black plt show Die Darstellungen fur beide Varianten des Modells sehen wie folgt aus links erste Variante 10000 Epochen rechts zweite Variante 1000 Epochen nbsp nbsp Literatur BearbeitenFrancois Chollet Deep Learning mit Python und Keras Das Praxis Handbuch vom Entwickler der Keras Bibliothek mitp 2018 ISBN 978 3 95845 838 3 Weblinks BearbeitenOffizielle Website colab research google com Fashion MNIST with Keras and TPUs Jupyter Notebook Predict Shakespeare with Cloud TPUs and Keras In colab research google com Abgerufen am 16 Oktober 2018 Getting Started with Keras AI Adventures auf YouTube vom 14 August 2018Einzelnachweise Bearbeiten Release 2 14 0 12 September 2023 abgerufen am 18 September 2023 Add initial public version of Keras 28 Marz 2015 abgerufen am 9 Juli 2018 englisch Keras backends 4 Januar 2018 abgerufen am 9 Juli 2018 englisch Release TensorFlow 1 4 0 2 November 2017 abgerufen am 9 Juli 2018 englisch Good news Tensorflow chooses Keras 5050 16 Januar 2017 abgerufen am 9 Juli 2018 englisch keras team keras Abgerufen am 30 Juni 2020 englisch Abgerufen von https de wikipedia org w index php title Keras amp oldid 234569786