Tensor in Numpy Array umwandeln

Tensor in Numpy Array umwandeln
In diesem Artikel werden die verschiedenen Methoden und Techniken zur Umwandlung eines Tensorflow -Tensors in ein Numpy -Array untersucht.

Lass uns anfangen.

Was ist ein Tensor?

Ein Tensorflow -Tensor oder einen Tensor. Betrachten Sie beispielsweise einen Tensor als eine Sammlung von Vektoren und Matrizen in einem mehrdimensionalen Array.

Wie Python -Saiten ist ein Tensor unveränderlich und erlaubt Ihnen nicht, seinen Inhalt nach der Erklärung zu ändern.

Wir können einen Tensor erstellen, wie im folgenden Snippet gezeigt:

Tensorflow als TF importieren
Numph als NP importieren
Tensor = tf.Konstante ([10,20], [30, 40], [50, 60]])
Druck (Tensor)

Im angegebenen Code importieren wir mit dem Tensorflow- und Numpy -Modulen als TF bzw. N.

Wir erstellen dann einen neuen Tensor mit der konstanten Funktion und geben ihn in ein Array weiter. Das Drucken des resultierenden Werts gibt eine Ausgabe zurück, wie in Folgendes gezeigt:

tf.Tensor (
[[10 20]
[30 40]
[50 60]], Form = (3, 2), dType = int32)

Der Code gibt einen neuen Tensor der Form A (3,2) und Datentyp von INT32 zurück.

Methode 1: Python konvertieren den Tensor in Numpy Array

Die erste und häufigste Methode, mit der wir einen Tensor in ein Numpy -Array umwandeln können, ist der Tensor.numpy () Funktion.

Die Funktion gibt einen bereitgestellten Tensor als numpy nDarray zurück.

Ein Beispielcode ist wie im Folgenden dargestellt:

Tensorflow als TF importieren
Numph als NP importieren
Tensor = tf.Konstante ([10,20], [30, 40], [50, 60]])
Tensor_array = Tensor.Numpy ()
Druck (Typ (Tensor))
print (type (Tensor_array))

In dem angegebenen Beispiel verwenden wir die Funktion numph (), mit der ein Eingangstensortyp in ein Numpy NDarray umgewandelt werden kann.

Der vorherige Code sollte die resultierenden Typen wie folgt zurückgeben:


Wir können aus der vorherigen Ausgabe erkennen, dass der Wert von einem Eagertensor in einen numpy nDarray umgewandelt wird.

NOTIZ: Die zuvor dargestellte Methode funktioniert auf TensorFlow Version 2 und höher.

Manchmal müssen Sie möglicherweise die eifrige Ausführung Ihrer TensorFlow -Installation aktivieren.

Methode 2: ältere Tensorflow -Versionen oder eifrige Ausführung deaktiviert

Angenommen, Sie haben TensorFlow Version 1.0 und möchte einen Tensor in ein numpy Array umwandeln. Dafür können Sie den Tensorflow verwenden.Session () Methode.

Der Tensor.Session () Objekt liefert uns die Funktion run (), die in unserem Fall helfen kann. Das Übergeben einer Tensorfunktion gibt ein Numpy -Array zurück, wie im folgenden Code dargestellt:

Tensorflow importieren.KOMPAT.v1 als tf
tf.KOMPAT.v1.deaktivieren_v2_behavior ())
Tensor = tf.Konstante ([1,2], [3,4], [5,6]])
Tensor_array = tf.Sitzung().rennen (Tensor)
print (type (Tensor_array))

Wir haben mit dem Importieren der V1 -Version von TensorFlow im vorherigen Code begonnen. Dies gibt uns Zugriff auf die Session () -Funktion.

Anschließend deaktivieren wir das V2 -Verhalten, wie der Code in Zeile 2 veranschaulicht.

Der V2 -Block deaktiviert die TensorFlow V2 -Funktionen, die zu einem Fehler führen können, wie im Folgenden dargestellt:

AttributeError: Modul 'TensorFlow' hat kein Attribut "Sitzung"

Als nächstes erstellen wir einen Tensor mit der konstanten Funktion.

Zuletzt führen wir den Code aus, um den Tensor umzuwandeln.

Der resultierende Typ ist wie im Folgenden dargestellt:

Denken Sie daran, dass nicht alle Tensoren, die an die Lauffunktion übergeben wurden, als Numpy -Array zurückgegeben werden.
Zum Beispiel:

Tensorflow importieren.KOMPAT.v1 als tf
tf.KOMPAT.v1.deaktivieren_v2_behavior ())
Tensor = tf.spärlich.Sparsetensor (Indizes = [[0, 0], [1, 2]], Werte = [1, 2], dense_shape = [3, 4])
Tensor_array = tf.Sitzung().rennen (Tensor)
print (type (Tensor_array))

In diesem Beispiel verwenden wir einen Sparsetensor -Typ und geben ihn in die Lauffunktion weiter. Der vorherige Code gibt ein Ergebnis zurück, wie in Folgendes gezeigt:

In diesem Fall erhalten wir ein SparsetensorValue anstelle eines numpigen Arrays.

Methode 3: Verwenden der Eval -Funktion

Wenn Sie die TensorFlow -Version 1 verwenden, können Sie die Funktion eval () verwenden, um dasselbe zu erfüllen.

Die Funktionalität ist der im vorherigen Beispiel dargestellten Lauffunktion eng ähnlich. Sehen wir uns den folgenden Beispielcode an:

Tensorflow importieren.KOMPAT.v1 als tf
tf.KOMPAT.v1.deaktivieren_v2_behavior ())
Tensor = tf.Konstante ([1,2,3], [4,5,6]])
Druck (Typ (Tensor))
Tensor_array = Tensor.Eval (Session = TF.Sitzung())
print (type (Tensor_array))
In ähnlicher Weise gibt der vorherige Code ein Numpy -Array zurück.

Abschluss

In diesem Artikel werden die drei Hauptmethoden zur Umwandlung eines Tensors in ein Numpy -Array untersucht. Wir hoffen, Sie haben das Tutorial genossen.

Danke fürs Lesen!!