Kursinhalt
Einführung in TensorFlow
Einführung in TensorFlow
Erstellen von Tensors
Erstellen von Tensors
Willkommen zurück! Jetzt, da Sie mit Tensors vertraut sind, ist es an der Zeit, sie zu erstellen. TensorFlow bietet eine Vielzahl von Möglichkeiten, Tensors zu initialisieren. Am Ende dieser Lektion werden Sie mit der Erstellung von Tensors für eine Vielzahl von Anwendungen vertraut sein.
Grundlegende Tensor-Initialisierer
tf.constant()
: Dies ist der einfachste Weg, einen Tensor zu erstellen. Wie der Name schon sagt, halten mit dieser Methode initialisierte Tensoren konstante Werte und sind unveränderlich;
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
tf.Variable()
: Im Gegensatz zutf.constant()
ist ein Tensor, der mittf.Variable()
definiert wird, veränderlich. Das bedeutet, dass sein Wert geändert werden kann, was ihn perfekt für Dinge wie trainierbare Parameter in Modellen macht;
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros()
: Erstellen Sie einen Tensor, der mit Nullen gefüllt ist;
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones()
: Im Gegensatz dazu wird ein Tensor erstellt, der mit Einsen gefüllt ist;
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
tf.fill()
: Erstellt einen Tensor, der mit einem bestimmten Wert gefüllt ist;
import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
tf.linspace()
undtf.range()
: Diese sind fantastisch, um Sequenzen zu erstellen;
import tensorflow as tf # Generate a sequence of numbers starting from 0, ending at 9 tensor_range = tf.range(10) print(tensor_range) # Create 5 equally spaced values between 0 and 10 tensor_linspace = tf.linspace(0, 10, 5) print(tensor_linspace)
tf.random
: Generiert Tensors mit Zufallswerten. Mehrere Verteilungen und Funktionen sind in diesem Modul verfügbar, wietf.random.normal()
für Werte aus einer Normalverteilung undtf.random.uniform()
für Werte aus einer Gleichverteilung.
Hinweis
Sie können auch einen festen Seed setzen, um konsistente Ergebnisse bei jeder Zufallszahlengenerierung zu erhalten, indem Sie
tf.random.set_seed()
verwenden. Beachten Sie jedoch, dass Sie dadurch dieselbe Zahl für jede Zufallsgenerierung innerhalb von TensorFlow erhalten.Wenn Sie konsistente Zahlen nur für einen bestimmten Befehl erreichen möchten, können Sie diesem Befehl ein
seed
-Argument mit dem gewünschten Seed-Wert übergeben.
import tensorflow as tf # Set random seed tf.random.set_seed(72) # Tensor of shape (2, 2) with random values normally distributed # (by default `mean=0` and `std=1`) tensor_random = tf.random.normal((2, 2), mean=4, stddev=0.5) print(tensor_random) # Tensor of shape (2, 2) with random values uniformly distributed # (by default `min=0` and `max=1`) tensor_random = tf.random.uniform((2, 2), minval=-2, maxval=2) print(tensor_random)
Konvertierung zwischen Datenstrukturen
TensorFlow-Tensoren können nahtlos in und aus vertrauten Python-Datenstrukturen konvertiert werden.
- Von Numpy-Arrays: TensorFlow-Tensoren und Numpy-Arrays sind ziemlich interoperabel. Verwenden Sie
tf.convert_to_tensor()
;
import numpy as np import tensorflow as tf # Create a NumPy array based on a Python list numpy_array = np.array([[1, 2], [3, 4]]) # Convert a NumPy array to a tensor tensor_from_np = tf.convert_to_tensor(numpy_array) print(tensor_from_np)
- Von Pandas DataFrames: Für diejenigen, die Fans der Datenanalyse mit Pandas sind, ist das Konvertieren eines DataFrame oder einer Series in einen TensorFlow-Tensor einfach. Verwenden Sie ebenfalls
tf.convert_to_tensor()
;
import pandas as pd import tensorflow as tf # Create a DataFrame based on dictionary df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) # Convert a DataFrame to a tensor tensor_from_df = tf.convert_to_tensor(df.values) print(tensor_from_df)
Hinweis
Stellen Sie immer sicher, dass die Datentypen Ihrer ursprünglichen Strukturen (Numpy-Arrays oder Pandas DataFrames) kompatibel mit den TensorFlow-Tensor-Datentypen sind. Wenn es eine Diskrepanz gibt, ziehen Sie eine Typumwandlung in Betracht.
- Konvertieren eines konstanten Tensors in eine
Variable
: Sie können eineVariable
mit verschiedenen Tensor-Erstellungsmethoden wietf.ones()
,tf.linspace()
,tf.random
usw. initialisieren. Übergeben Sie einfach die Funktion oder den bereits vorhandenen Tensor antf.Variable()
.
import tensorflow as tf # Create a variable from a tensor tensor = tf.random.normal((2, 3)) variable_1 = tf.Variable(tensor) # Create a variable based on other generator variable_2 = tf.Variable(tf.zeros((2, 2))) # Display tensors print(variable_1) print('-' * 50) print(variable_2)
Denken Sie daran, Übung macht den Meister! Versuchen Sie, Tensors mit unterschiedlichen Formen und Werten zu erstellen, um ein besseres Verständnis für diese Konzepte zu bekommen. Wenn Sie sich weiter in einen bestimmten Befehl vertiefen möchten, schauen Sie sich die offizielle TensorFlow-Dokumentation an. Dort finden Sie umfassende Informationen zu jedem Befehl oder Modul innerhalb der Bibliothek.
Swipe to start coding
In Ordnung! Lassen Sie uns Ihr neu erworbenes Wissen über die Erstellung und Umwandlung von Tensors auf die Probe stellen. Hier ist Ihre Herausforderung:
-
Tensor-Initialisierung
- Erstellen Sie einen Tensor namens
tensor_A
mit der Form(3,3)
, der alle Elemente als5
hat. - Erstellen Sie einen veränderbaren Tensor namens
tensor_B
mit der Form(2,3)
, der mit beliebigen Werten Ihrer Wahl initialisiert wird. - Erstellen Sie einen Tensor namens
tensor_C
mit der Form(3,3)
, der mit Nullen gefüllt ist. - Erstellen Sie einen Tensor namens
tensor_D
mit der Form(4,4)
, der mit Einsen gefüllt ist. - Erstellen Sie einen Tensor namens
tensor_E
, der 5 gleichmäßig verteilte Werte zwischen 3 und 15 hat. - Erstellen Sie einen Tensor namens
tensor_F
mit zufälligen Werten und der Form(2,2)
.
- Erstellen Sie einen Tensor namens
-
Umwandlungen
- Gegeben das NumPy-Array
np_array
, konvertieren Sie es in einen TensorFlow-Tensor namenstensor_from_array
. - Konvertieren Sie das DataFrame
df
in einen Tensor namenstensor_from_dataframe
.
- Gegeben das NumPy-Array
Hinweis
Stellen Sie sicher, dass Sie die am besten geeigneten Befehle für die jeweilige Situation verwenden (z.B. ein Array, das mit Einsen gefüllt ist, mit
tf.ones()
erstellen, anstatttf.fill()
).
Lösung
Danke für Ihr Feedback!
Erstellen von Tensors
Erstellen von Tensors
Willkommen zurück! Jetzt, da Sie mit Tensors vertraut sind, ist es an der Zeit, sie zu erstellen. TensorFlow bietet eine Vielzahl von Möglichkeiten, Tensors zu initialisieren. Am Ende dieser Lektion werden Sie mit der Erstellung von Tensors für eine Vielzahl von Anwendungen vertraut sein.
Grundlegende Tensor-Initialisierer
tf.constant()
: Dies ist der einfachste Weg, einen Tensor zu erstellen. Wie der Name schon sagt, halten mit dieser Methode initialisierte Tensoren konstante Werte und sind unveränderlich;
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
tf.Variable()
: Im Gegensatz zutf.constant()
ist ein Tensor, der mittf.Variable()
definiert wird, veränderlich. Das bedeutet, dass sein Wert geändert werden kann, was ihn perfekt für Dinge wie trainierbare Parameter in Modellen macht;
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros()
: Erstellen Sie einen Tensor, der mit Nullen gefüllt ist;
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones()
: Im Gegensatz dazu wird ein Tensor erstellt, der mit Einsen gefüllt ist;
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
tf.fill()
: Erstellt einen Tensor, der mit einem bestimmten Wert gefüllt ist;
import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
tf.linspace()
undtf.range()
: Diese sind fantastisch, um Sequenzen zu erstellen;
import tensorflow as tf # Generate a sequence of numbers starting from 0, ending at 9 tensor_range = tf.range(10) print(tensor_range) # Create 5 equally spaced values between 0 and 10 tensor_linspace = tf.linspace(0, 10, 5) print(tensor_linspace)
tf.random
: Generiert Tensors mit Zufallswerten. Mehrere Verteilungen und Funktionen sind in diesem Modul verfügbar, wietf.random.normal()
für Werte aus einer Normalverteilung undtf.random.uniform()
für Werte aus einer Gleichverteilung.
Hinweis
Sie können auch einen festen Seed setzen, um konsistente Ergebnisse bei jeder Zufallszahlengenerierung zu erhalten, indem Sie
tf.random.set_seed()
verwenden. Beachten Sie jedoch, dass Sie dadurch dieselbe Zahl für jede Zufallsgenerierung innerhalb von TensorFlow erhalten.Wenn Sie konsistente Zahlen nur für einen bestimmten Befehl erreichen möchten, können Sie diesem Befehl ein
seed
-Argument mit dem gewünschten Seed-Wert übergeben.
import tensorflow as tf # Set random seed tf.random.set_seed(72) # Tensor of shape (2, 2) with random values normally distributed # (by default `mean=0` and `std=1`) tensor_random = tf.random.normal((2, 2), mean=4, stddev=0.5) print(tensor_random) # Tensor of shape (2, 2) with random values uniformly distributed # (by default `min=0` and `max=1`) tensor_random = tf.random.uniform((2, 2), minval=-2, maxval=2) print(tensor_random)
Konvertierung zwischen Datenstrukturen
TensorFlow-Tensoren können nahtlos in und aus vertrauten Python-Datenstrukturen konvertiert werden.
- Von Numpy-Arrays: TensorFlow-Tensoren und Numpy-Arrays sind ziemlich interoperabel. Verwenden Sie
tf.convert_to_tensor()
;
import numpy as np import tensorflow as tf # Create a NumPy array based on a Python list numpy_array = np.array([[1, 2], [3, 4]]) # Convert a NumPy array to a tensor tensor_from_np = tf.convert_to_tensor(numpy_array) print(tensor_from_np)
- Von Pandas DataFrames: Für diejenigen, die Fans der Datenanalyse mit Pandas sind, ist das Konvertieren eines DataFrame oder einer Series in einen TensorFlow-Tensor einfach. Verwenden Sie ebenfalls
tf.convert_to_tensor()
;
import pandas as pd import tensorflow as tf # Create a DataFrame based on dictionary df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) # Convert a DataFrame to a tensor tensor_from_df = tf.convert_to_tensor(df.values) print(tensor_from_df)
Hinweis
Stellen Sie immer sicher, dass die Datentypen Ihrer ursprünglichen Strukturen (Numpy-Arrays oder Pandas DataFrames) kompatibel mit den TensorFlow-Tensor-Datentypen sind. Wenn es eine Diskrepanz gibt, ziehen Sie eine Typumwandlung in Betracht.
- Konvertieren eines konstanten Tensors in eine
Variable
: Sie können eineVariable
mit verschiedenen Tensor-Erstellungsmethoden wietf.ones()
,tf.linspace()
,tf.random
usw. initialisieren. Übergeben Sie einfach die Funktion oder den bereits vorhandenen Tensor antf.Variable()
.
import tensorflow as tf # Create a variable from a tensor tensor = tf.random.normal((2, 3)) variable_1 = tf.Variable(tensor) # Create a variable based on other generator variable_2 = tf.Variable(tf.zeros((2, 2))) # Display tensors print(variable_1) print('-' * 50) print(variable_2)
Denken Sie daran, Übung macht den Meister! Versuchen Sie, Tensors mit unterschiedlichen Formen und Werten zu erstellen, um ein besseres Verständnis für diese Konzepte zu bekommen. Wenn Sie sich weiter in einen bestimmten Befehl vertiefen möchten, schauen Sie sich die offizielle TensorFlow-Dokumentation an. Dort finden Sie umfassende Informationen zu jedem Befehl oder Modul innerhalb der Bibliothek.
Swipe to start coding
In Ordnung! Lassen Sie uns Ihr neu erworbenes Wissen über die Erstellung und Umwandlung von Tensors auf die Probe stellen. Hier ist Ihre Herausforderung:
-
Tensor-Initialisierung
- Erstellen Sie einen Tensor namens
tensor_A
mit der Form(3,3)
, der alle Elemente als5
hat. - Erstellen Sie einen veränderbaren Tensor namens
tensor_B
mit der Form(2,3)
, der mit beliebigen Werten Ihrer Wahl initialisiert wird. - Erstellen Sie einen Tensor namens
tensor_C
mit der Form(3,3)
, der mit Nullen gefüllt ist. - Erstellen Sie einen Tensor namens
tensor_D
mit der Form(4,4)
, der mit Einsen gefüllt ist. - Erstellen Sie einen Tensor namens
tensor_E
, der 5 gleichmäßig verteilte Werte zwischen 3 und 15 hat. - Erstellen Sie einen Tensor namens
tensor_F
mit zufälligen Werten und der Form(2,2)
.
- Erstellen Sie einen Tensor namens
-
Umwandlungen
- Gegeben das NumPy-Array
np_array
, konvertieren Sie es in einen TensorFlow-Tensor namenstensor_from_array
. - Konvertieren Sie das DataFrame
df
in einen Tensor namenstensor_from_dataframe
.
- Gegeben das NumPy-Array
Hinweis
Stellen Sie sicher, dass Sie die am besten geeigneten Befehle für die jeweilige Situation verwenden (z.B. ein Array, das mit Einsen gefüllt ist, mit
tf.ones()
erstellen, anstatttf.fill()
).
Lösung
Danke für Ihr Feedback!