Einführung in Tensorflow
Tensorflow ist eine Open-Source-Software und Bibliothek. Es wurde vom Google Brain-Team entwickelt, das vom Deep Learning-Forschungsteam für künstliche Intelligenz bei Google 2010 erstellt wurde. Google verwendete es für den internen Gebrauch, nachdem es unter Apache 2.0 Open Source - 2015 veröffentlicht wurde Erfahren Sie mehr über Tensorflow Basics.
Tensorflow ist das System der zweiten Generation von Google Brain. Version 1 wurde am 11. Februar 2017 veröffentlicht. Tensorflow 1.0 verfügt nun über eine Python-API und eine API für Java und GO. Version 1.0 wurde ebenfalls hinzugefügt. Neuronales Netz für Tensorflow-Operationen, das in einem mehrdimensionalen Datenfeld ausgeführt wird, das als Tensor bezeichnet wird. Es funktioniert mit Tensoren. Es ist eine Softwarebibliothek für vertiefendes Lernen und dient hauptsächlich zur numerischen Berechnung unter Verwendung von Datenflussgraphen.
Was sind Tensorflow-Grundlagen?
Tensoren sind Objekte, die die lineare Beziehung zwischen Vektoren, Skalaren und anderen Tensoren beschreiben. Tensoren sind nichts anderes als mehrdimensionale Arrays.
Tensorflow bietet Unterstützung beim Schreiben des Codes gemäß Ihren Anforderungen und beim Zugriff auf verschiedene Arten von Tools. Wir können Code C ++ schreiben und C ++ - Code aus Python aufrufen. Oder wir können Python-Code schreiben und ihn mit C ++ aufrufen.
Oben ist zu sehen, dass die unterste Ebene, auf der zwei Sprachen unterstützt werden, die Python-Sprache und die zweite C ++ - Sprache ist. Sie können es in jeder Sprache in Ihrer Komfortzone schreiben. Es verfügt über eine Sammlung verschiedener Mathematikbibliotheken, mit denen sich mathematische Funktionen auf einfache Weise erstellen lassen.
Es bietet auch Unterstützung für die Verarbeitung wie CPU, GPU, TPU und läuft auch auf Android-Handys.
Tf.layers : - tf.layers wird für die Zusammenfassung von Methoden verwendet, damit Sie die Ebenen neuronaler Netze anpassen können.
Tf.estimator : - Die im Tensorflow am häufigsten verwendete API ist der tf.estimator. Es hilft beim Erstellen und Trainieren, Testen Ihres Modells.
Installation von Tensorflow
- Überprüfen Sie zuerst Ihre pip-Version. Wenn dies nicht der Fall ist, führen Sie den folgenden Befehl aus, um pip zu aktualisieren
pip install –upgrade pip
- Führen Sie den folgenden Code aus, um die einfachere Version von Tensorflow zu installieren
pip install tensorflow / conda install tensorflow (Anaconda)
- Dadurch wird Tensorflow mit von GPU unterstützten Konfigurationen installiert.
pip install Tensorflow-gpu
Beispiel für tf.estimator zur Verwendung des Klassifikators mit 3 Codezeilen
Import tensorflow as tf
classifier = tf.estimator.LinearClassifier(feature_columns)
classifier.train(input_fn=train_input_function, steps=2000)
predictions = classifier.predict(input_fn=predict_input_function)
Grundlegende Datentypen von Tensorflow
Die grundlegenden Datentypen im Tensorflow-Framework (Tensors)
Unten sehen Sie jede Dimension von Tensoren.
- Skalar - O - dimensionales Array
- Vektor - eindimensionales Array
- Matrix - zweidimensionales Array
- 3D-Tensor - 3-dimensionales Array
- N - D Tensor - N-dimensionales Array
Konstante Tensoren
Variablen
tf.Variable-Klasse zum Erstellen einer Variablen in tensorflow und Aufrufen der Funktion tf.get_variable
Variablen initialisieren
Um die Variablen zu initialisieren, können wir durch Aufrufen von tf.global_variables_initializer alle Variablen initialisieren.
Ein einfaches Beispiel für Variablen und mathematische Ausdrücke
Normalerweise
a = 3, 0, b = 8 * a +10
Tensorflow Weg
c = tf.Variable (tf.add (tf.multiply (X, a), b)
Diagramme
Jede in tensorflow geschriebene Zeile in unserem Code wird in ein zugrunde liegendes Diagramm umgewandelt
Beispiel:
- Knoten: Repräsentiert mathematische Operationen.
- Kanten: Es stellt das mehrdimensionale Array (Tensoren) dar und zeigt, wie sie miteinander kommunizieren.
Tensorflow 2.0
- In der zweiten Version von Tensorflow konzentrierten sie sich darauf, die API einfacher und benutzerfreundlicher zu gestalten.
- Die API-Komponenten lassen sich besser in Keras integrieren. Standardmäßig ist der Modus für eifrige Ausführung aktiviert.
- Eager-Modus: Die Eager-Ausführung ist eine Ausführungsoberfläche, in der Vorgänge sofort ausgeführt werden, wenn sie von Python aus aufgerufen werden.
- Wir können den Eifermodus anstelle des Grafikmodus verwenden. Wir können berechnen, was wir berechnen müssen, und wir können sofort Ergebnisse erzielen. Dies macht Tensorflow so einfach wie Pytorch
- Konzentration auf das Entfernen von Duplikations-APIs.
Keras
- Tensorflow bietet eine High-Level-API zum Erstellen und Trainieren von Deep-Learning-Modellen. Dies war nicht in Tensorflow enthalten, aber in der neuesten Version wurde Keras in Tensorflow 2.0 aufgenommen.
- Benutzerfreundlich: Keras bietet eine einfache, konsistente Oberfläche für allgemeine Anwendungsfälle.
- Modular und zusammensetzbar: Keras-Modelle werden hergestellt, indem Bausteine miteinander verbunden werden.
- Einfach zu erweitern: Erstellen oder aktualisieren Sie neue Layer, Metriken und Verlustfunktionen
- Verwenden Sie tf.keras, um Keras-Modelle zu verwenden.
Tensorflow Lite
- Im Jahr 2017 kündigte Google die speziell für die mobile Entwicklung entwickelte Software Tensorflow Lite an.
- Tensorflow Lite (TFLite) ist eine leichte Lösung für die Inferenz von Mobilgeräten.
- Wir können es auch für IOS und Android verwenden, indem wir eine C ++ - API erstellen, und wir können auch Java-Wrapper-Klassen für Android-Entwickler erstellen.
Liste der von Tensorflow unterstützten Algorithmen
1. Für die Regression
- Lineare Regression (tf.estimator. Lineare Regression)
- Booster Tree Regression (siehe Schätzung. Boosted Tree Regressor)
2. Zur Klassifizierung
- Klassifizierung (tf.estimator. Linear Classifier)
- Deep Learning Combined (tf.estimator. DNNLinearCombinedClassifier)
- Boosted Tree Classifier (tf.estimator. Boosted Tree Classifier)
Eigenschaften von Tensorflow
- Tensorflow arbeitet effizient mit verschiedenen Arten von mathematischen Ausdrücken, die mehrdimensionale Arrays (Tensoren) enthalten.
- Es bietet auch Unterstützung für Deep-Learning-Neuronale Netze und andere maschinelle Lernkonzepte.
- Tensorflow kann auf mehreren CPUs und GPUs ausgeführt werden.
- Es bietet auch seine eigene Verarbeitungsleistung, die Tensor Processing Unit.
Tensor Processing Unit (TPU)
- Google hat mit der Tensor Processing Unit (TPU) eine anwendungsspezifische integrierte Schaltung (Hardware Chip) vorgestellt, die speziell für maschinelles Lernen entwickelt und auf Tensorflow zugeschnitten ist.
- Im Jahr 2017 kündigte Google die zweite Version von Tensorflow sowie die Verfügbarkeit der TPUs in der Google Cloud an.
- TPU ist ein programmierbarer AI-Beschleuniger, der für die Verwendung oder Ausführung von Modellen entwickelt wurde. Google betreibt seit mehr als einem Jahr TPUs in seinen Rechenzentren.
Edge-TPU
- Edge TPU ist ein Chip, der von Google für das Entwickeln und Ausführen von Tensorflow Lite-Modellen für maschinelles Lernen entwickelt wurde, die auf kleinen Computergeräten wie Smartphones ausgeführt werden können.
- Hohe Skalierbarkeit für die Berechnung großer Datenmengen
- Es kann auch Modelle in einem Live-Modell trainieren und bedienen. Das Umschreiben von Code ist nicht erforderlich
Fazit - Tensorflow-Grundlagen
Tensorflow ist eine sehr häufig verwendete Deep-Learning-Bibliothek. Dies wird hauptsächlich beim Aufbau von neuronalen Netzen verwendet, die auch von Start-up-Unternehmen und großen Unternehmen verwendet werden.
Wie bereits erwähnt, verwendet Google Tensorflow auch für seine internen Zwecke. Es wird immer noch in den meisten Produkten wie Google Mail und der Google-Suchmaschine verwendet.
Empfohlene Artikel
Dies ist eine Anleitung zu den Tensorflow-Grundlagen. Hier diskutieren wir die Installation von Tensorflow mit den Funktionen und der Liste der von Tensorflow unterstützten Algorithmen. Sie können auch den folgenden Artikel lesen, um mehr zu erfahren -
- Was ist TensorFlow?
- TensorFlow-Alternativen
- Einführung in Tensorflow
- So installieren Sie TensorFlow
- C ++ - Datentypen