Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Datentypen | Tensoren
Einführung in TensorFlow
course content

Kursinhalt

Einführung in TensorFlow

Einführung in TensorFlow

1. Tensoren
2. Grundlagen von TensorFlow

book
Datentypen

Datentypen

Willkommen zurück, Entdecker des TensorFlow-Reichs! Die heutige Aufgabe besteht darin, die Welt der Datentypen in TensorFlow zu erkunden. Genau wie Zahlen und Texte in Programmiersprachen verschiedene Typen haben (wie Integer, Float oder String), haben Tensors ihre eigenen Typen.

Verfügbare Datentypen in TensorFlow

TensorFlow unterstützt eine Vielzahl von Datentypen, um unterschiedlichen Arten von Daten und Operationen gerecht zu werden. Einige der am häufigsten verwendeten Typen sind:

  • tf.float16, tf.float32, tf.float64: Dies sind Gleitkommazahlen, bei denen die Zahlen nach dem Punkt wichtig sind. Die Zahl in ihrem Namen (wie 16 in tf.float16) gibt die Anzahl der verwendeten Bits an. tf.float32 wird häufig verwendet, da es ein gutes Gleichgewicht zwischen Präzision und Rechengeschwindigkeit bietet;

  • tf.int8, tf.int16, tf.int32, tf.int64: Dies sind Ganzzahltypen, Zahlen ohne Dezimalpunkt. Sie können sowohl positiv als auch negativ sein;

  • tf.uint8, tf.uint16, tf.uint32, tf.uint64: Das 'u' steht hier für 'unsigned', was bedeutet, dass diese Ganzzahlen immer nicht negativ sind;

  • tf.bool: Repräsentiert boolesche Werte (True oder False);

  • tf.string: Für Textdaten.

Hinweis

Bei Ganzzahltypen bedeutet eine größere Zahl im Namen nur einen größeren Wertebereich, den sie speichern kann. Bei Gleitkommatypen weist eine höhere Zahl im Namen jedoch auch auf eine größere Rechengenauigkeit hin.

Es gibt mehr Datentypen in TensorFlow, aber für Anfänger ist es wichtig, sich zuerst mit diesen primären Typen vertraut zu machen. Für eine umfassende Liste der von TensorFlow unterstützten Datentypen sollten Sie diese spezielle Seite in der TensorFlow-Dokumentation ansehen.

Festlegen des Datentyps beim Erstellen eines Tensors

Wenn Sie einen Tensor initialisieren, können Sie seinen Typ mit dem dtype-Argument angeben:

123456789101112
import tensorflow as tf # Creating a tensor of type `float16` tensor_float = tf.constant([1.2, 2.3, 3.4], dtype=tf.float16) # Creating a tensor of type `int64` tensor_int = tf.constant([1, 2, 3], dtype=tf.int64) # Display tensors print(tensor_float) print('-' * 50) print(tensor_int)
copy

Hinweis

Viele Tensor-Erstellungsfunktionen verwenden diesen Ansatz. Es ist anwendbar in Methoden wie tf.Variable(), tf.zeros(), tf.ones(), tf.random.normal(), tf.random.uniform() und sogar in tf.convert_to_tensor().

Konvertierung zwischen Datentypen

Aber was ist, wenn die Funktion, die Sie verwenden, keine direkte Datentypenspezifikation zulässt? Oder vielleicht besitzen Sie bereits einen Tensor eines bestimmten Typs und müssen ihn ändern. In diesen Fällen müssen Sie Tensoren von einem Datentyp in einen anderen umwandeln. Dies ist besonders relevant, da bestimmte neuronale Netzwerkoperationen oder -schichten oft Eingaben eines bestimmten Typs erfordern, vorwiegend Gleitkommazahlen.

Sie können tf.cast() verwenden, um dies zu erreichen:

123456789101112
import tensorflow as tf # Create a tensor tensor_float = tf.constant([-1.2, 2.3, 3.8]) # Convert our `tensor_float` from `float32` to `int32` tensor_int_converted = tf.cast(tensor_float, dtype=tf.int32) # Display a tensor print(tensor_float) print('-' * 50) print(tensor_int_converted)
copy

Denken Sie daran, dass TensorFlow beim Konvertieren von einem Gleitkomma-Typ zu einem Ganzzahl-Typ eine Abrundung nach unten durchführt und den Dezimalteil im Wesentlichen entfernt. So wird 3.8 zu 3 und -1.2 zu -1.

Hinweis

Seien Sie vorsichtig beim Ändern von Datentypen, insbesondere wenn Sie zu einem Typ mit geringerer Genauigkeit wechseln. Sie könnten dabei Informationen verlieren.

Aufgabe

Swipe to start coding

Ihre Aufgabe besteht darin, einen Tensor eines bestimmten Datentyps zu erstellen und ihn dann in einen anderen Datentyp zu konvertieren.

  1. Erstellen Sie einen Tensor namens initial_tensor mit der Form (3, 3) mit normalverteilten Werten. Stellen Sie sicher, dass dieser Tensor einen Datentyp von 64-Bit-Gleitkommawerten besitzt.
  2. Transformieren Sie den initial_tensor in einen Tensor namens converted_tensor mit einem Datentyp von 16-Bit-Gleitkommawerten.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 7
toggle bottom row

book
Datentypen

Datentypen

Willkommen zurück, Entdecker des TensorFlow-Reichs! Die heutige Aufgabe besteht darin, die Welt der Datentypen in TensorFlow zu erkunden. Genau wie Zahlen und Texte in Programmiersprachen verschiedene Typen haben (wie Integer, Float oder String), haben Tensors ihre eigenen Typen.

Verfügbare Datentypen in TensorFlow

TensorFlow unterstützt eine Vielzahl von Datentypen, um unterschiedlichen Arten von Daten und Operationen gerecht zu werden. Einige der am häufigsten verwendeten Typen sind:

  • tf.float16, tf.float32, tf.float64: Dies sind Gleitkommazahlen, bei denen die Zahlen nach dem Punkt wichtig sind. Die Zahl in ihrem Namen (wie 16 in tf.float16) gibt die Anzahl der verwendeten Bits an. tf.float32 wird häufig verwendet, da es ein gutes Gleichgewicht zwischen Präzision und Rechengeschwindigkeit bietet;

  • tf.int8, tf.int16, tf.int32, tf.int64: Dies sind Ganzzahltypen, Zahlen ohne Dezimalpunkt. Sie können sowohl positiv als auch negativ sein;

  • tf.uint8, tf.uint16, tf.uint32, tf.uint64: Das 'u' steht hier für 'unsigned', was bedeutet, dass diese Ganzzahlen immer nicht negativ sind;

  • tf.bool: Repräsentiert boolesche Werte (True oder False);

  • tf.string: Für Textdaten.

Hinweis

Bei Ganzzahltypen bedeutet eine größere Zahl im Namen nur einen größeren Wertebereich, den sie speichern kann. Bei Gleitkommatypen weist eine höhere Zahl im Namen jedoch auch auf eine größere Rechengenauigkeit hin.

Es gibt mehr Datentypen in TensorFlow, aber für Anfänger ist es wichtig, sich zuerst mit diesen primären Typen vertraut zu machen. Für eine umfassende Liste der von TensorFlow unterstützten Datentypen sollten Sie diese spezielle Seite in der TensorFlow-Dokumentation ansehen.

Festlegen des Datentyps beim Erstellen eines Tensors

Wenn Sie einen Tensor initialisieren, können Sie seinen Typ mit dem dtype-Argument angeben:

123456789101112
import tensorflow as tf # Creating a tensor of type `float16` tensor_float = tf.constant([1.2, 2.3, 3.4], dtype=tf.float16) # Creating a tensor of type `int64` tensor_int = tf.constant([1, 2, 3], dtype=tf.int64) # Display tensors print(tensor_float) print('-' * 50) print(tensor_int)
copy

Hinweis

Viele Tensor-Erstellungsfunktionen verwenden diesen Ansatz. Es ist anwendbar in Methoden wie tf.Variable(), tf.zeros(), tf.ones(), tf.random.normal(), tf.random.uniform() und sogar in tf.convert_to_tensor().

Konvertierung zwischen Datentypen

Aber was ist, wenn die Funktion, die Sie verwenden, keine direkte Datentypenspezifikation zulässt? Oder vielleicht besitzen Sie bereits einen Tensor eines bestimmten Typs und müssen ihn ändern. In diesen Fällen müssen Sie Tensoren von einem Datentyp in einen anderen umwandeln. Dies ist besonders relevant, da bestimmte neuronale Netzwerkoperationen oder -schichten oft Eingaben eines bestimmten Typs erfordern, vorwiegend Gleitkommazahlen.

Sie können tf.cast() verwenden, um dies zu erreichen:

123456789101112
import tensorflow as tf # Create a tensor tensor_float = tf.constant([-1.2, 2.3, 3.8]) # Convert our `tensor_float` from `float32` to `int32` tensor_int_converted = tf.cast(tensor_float, dtype=tf.int32) # Display a tensor print(tensor_float) print('-' * 50) print(tensor_int_converted)
copy

Denken Sie daran, dass TensorFlow beim Konvertieren von einem Gleitkomma-Typ zu einem Ganzzahl-Typ eine Abrundung nach unten durchführt und den Dezimalteil im Wesentlichen entfernt. So wird 3.8 zu 3 und -1.2 zu -1.

Hinweis

Seien Sie vorsichtig beim Ändern von Datentypen, insbesondere wenn Sie zu einem Typ mit geringerer Genauigkeit wechseln. Sie könnten dabei Informationen verlieren.

Aufgabe

Swipe to start coding

Ihre Aufgabe besteht darin, einen Tensor eines bestimmten Datentyps zu erstellen und ihn dann in einen anderen Datentyp zu konvertieren.

  1. Erstellen Sie einen Tensor namens initial_tensor mit der Form (3, 3) mit normalverteilten Werten. Stellen Sie sicher, dass dieser Tensor einen Datentyp von 64-Bit-Gleitkommawerten besitzt.
  2. Transformieren Sie den initial_tensor in einen Tensor namens converted_tensor mit einem Datentyp von 16-Bit-Gleitkommawerten.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 1. Kapitel 7
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt