Erstellen Von Tensoren
Erstellen von Tensoren
Diese Lektion konzentriert sich auf die Erstellung von Tensoren mit TensorFlow. TensorFlow bietet zahlreiche Methoden zur Initialisierung von Tensoren. Am Ende dieser Lektion sind Sie in der Lage, Tensoren für eine Vielzahl von Anwendungen zu erzeugen.
Grundlegende Tensor-Initialisierer
tf.constant(): Dies ist die einfachste Methode, um einen Tensor zu erstellen. Wie der Name schon sagt, enthalten mit dieser Methode initialisierte Tensoren konstante Werte und sind unveränderlich;
12345import 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 mittf.Variable()definierter Tensor veränderbar. Das bedeutet, sein Wert kann geändert werden, was ihn ideal für trainierbare Parameter in Modellen macht;
12345import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros(): Erstellt einen Tensor, der nur Nullen enthält;
12345import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones(): im Gegensatz dazu erzeugt dies einen Tensor, der nur Einsen enthält;
12345import 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;
12345import 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(): ideal zur Erstellung von Sequenzen;
123456789import 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: erzeugt Tensoren mit Zufallswerten. Innerhalb dieses Moduls stehen verschiedene Verteilungen und Funktionen zur Verfügung, wietf.random.normal()für Werte aus einer Normalverteilung undtf.random.uniform()für Werte aus einer Gleichverteilung.
Es ist auch möglich, einen festen Seed zu setzen, um bei jeder Zufallszahlengenerierung konsistente Ergebnisse mit tf.random.set_seed() zu erhalten. Beachten Sie jedoch, dass Sie dadurch für jede Zufallsgenerierung innerhalb von TensorFlow dieselbe Zahl erhalten.
Wenn Sie konsistente Zahlen nur für einen bestimmten Befehl erzielen möchten, können Sie diesem Befehl das Argument seed mit dem gewünschten Seed-Wert übergeben.
1234567891011121314import 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 vertraute Python-Datenstrukturen umgewandelt werden und umgekehrt.
- Aus Numpy-Arrays: TensorFlow-Tensoren und Numpy-Arrays sind weitgehend interoperabel. Verwenden Sie
tf.convert_to_tensor();
12345678910import 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)
- Aus Pandas DataFrames: Für diejenigen, die gerne mit Pandas Daten analysieren, ist die Umwandlung eines DataFrame oder einer Series in einen TensorFlow-Tensor unkompliziert. Verwenden Sie ebenfalls
tf.convert_to_tensor();
12345678910import 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)
Stellen Sie stets sicher, dass die Datentypen Ihrer ursprünglichen Strukturen (Numpy-Arrays oder Pandas DataFrames) kompatibel mit den TensorFlow-Tensor-Datentypen sind. Bei einer Abweichung sollte eine Typumwandlung in Betracht gezogen werden.
- Konvertieren eines konstanten Tensors in eine
Variable: EineVariablekann mit verschiedenen Methoden zur Tensor-Erstellung wietf.ones(),tf.linspace(),tf.randomusw. initialisiert werden. Übergeben Sie einfach die Funktion oder den bereits existierenden Tensor antf.Variable().
12345678910111213import 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)
Um das Erstellen von Tensors zu üben, empfiehlt sich das Ausprobieren verschiedener Formen und Werte. Weitere Informationen zu spezifischen Befehlen finden Sie in der offiziellen TensorFlow-Dokumentation. Dort finden Sie alle Informationen zu jedem Befehl oder Modul der Bibliothek.
Swipe to start coding
Ihre Aufgabe ist es, verschiedene Tensoren mit TensorFlow zu erstellen, zu modifizieren und zu konvertieren.
Teil 1 — Initialisierung von Tensoren
- Erstellen Sie einen Tensor namens
tensor_Amit der Form(3, 3)und allen Elementen gleich 5. - Erstellen Sie einen veränderbaren Tensor namens
tensor_Bmit der Form(2, 3)und beliebigen Werten Ihrer Wahl. - Erstellen Sie einen Tensor namens
tensor_Cmit der Form(3, 3), gefüllt mit Nullen. - Erstellen Sie einen Tensor namens
tensor_Dmit der Form(4, 4), gefüllt mit Einsen. - Erstellen Sie einen Tensor namens
tensor_Emit 5 linear verteilten Werten zwischen 3 und 15. - Erstellen Sie einen Tensor namens
tensor_Fmit zufälligen Werten und der Form(2, 2).
Teil 2 — Konvertierungen
- Konvertieren Sie das NumPy-Array
np_arrayin einen TensorFlow-Tensor namenstensor_from_array. - Konvertieren Sie das DataFrame
dfin einen TensorFlow-Tensor namenstensor_from_dataframe.
Hinweis
- Verwenden Sie für jede Operation die jeweils geeignetste TensorFlow-Funktion:
tf.fill()für Tensoren mit einem einzelnen wiederholten Wert;tf.Variable()für veränderbare Tensoren;tf.zeros()/tf.ones()für mit Nullen bzw. Einsen gefüllte Tensoren;tf.linspace()für linear verteilte Tensoren;tf.random.normal()für zufällige Tensoren;- Verwenden Sie
tf.convert_to_tensor()für Konvertierungen von NumPy-Arrays oder pandas-DataFrames; - Vermeiden Sie die Verwendung von
tf.constant()— nutzen Sie stattdessen die oben aufgeführten spezifischeren Funktionen.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you explain the difference between tf.constant() and tf.Variable() in more detail?
How do I choose which tensor initializer to use for my application?
Can you show more examples of creating tensors with different shapes or values?
Awesome!
Completion rate improved to 5.56
Erstellen Von Tensoren
Swipe um das Menü anzuzeigen
Erstellen von Tensoren
Diese Lektion konzentriert sich auf die Erstellung von Tensoren mit TensorFlow. TensorFlow bietet zahlreiche Methoden zur Initialisierung von Tensoren. Am Ende dieser Lektion sind Sie in der Lage, Tensoren für eine Vielzahl von Anwendungen zu erzeugen.
Grundlegende Tensor-Initialisierer
tf.constant(): Dies ist die einfachste Methode, um einen Tensor zu erstellen. Wie der Name schon sagt, enthalten mit dieser Methode initialisierte Tensoren konstante Werte und sind unveränderlich;
12345import 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 mittf.Variable()definierter Tensor veränderbar. Das bedeutet, sein Wert kann geändert werden, was ihn ideal für trainierbare Parameter in Modellen macht;
12345import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros(): Erstellt einen Tensor, der nur Nullen enthält;
12345import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones(): im Gegensatz dazu erzeugt dies einen Tensor, der nur Einsen enthält;
12345import 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;
12345import 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(): ideal zur Erstellung von Sequenzen;
123456789import 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: erzeugt Tensoren mit Zufallswerten. Innerhalb dieses Moduls stehen verschiedene Verteilungen und Funktionen zur Verfügung, wietf.random.normal()für Werte aus einer Normalverteilung undtf.random.uniform()für Werte aus einer Gleichverteilung.
Es ist auch möglich, einen festen Seed zu setzen, um bei jeder Zufallszahlengenerierung konsistente Ergebnisse mit tf.random.set_seed() zu erhalten. Beachten Sie jedoch, dass Sie dadurch für jede Zufallsgenerierung innerhalb von TensorFlow dieselbe Zahl erhalten.
Wenn Sie konsistente Zahlen nur für einen bestimmten Befehl erzielen möchten, können Sie diesem Befehl das Argument seed mit dem gewünschten Seed-Wert übergeben.
1234567891011121314import 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 vertraute Python-Datenstrukturen umgewandelt werden und umgekehrt.
- Aus Numpy-Arrays: TensorFlow-Tensoren und Numpy-Arrays sind weitgehend interoperabel. Verwenden Sie
tf.convert_to_tensor();
12345678910import 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)
- Aus Pandas DataFrames: Für diejenigen, die gerne mit Pandas Daten analysieren, ist die Umwandlung eines DataFrame oder einer Series in einen TensorFlow-Tensor unkompliziert. Verwenden Sie ebenfalls
tf.convert_to_tensor();
12345678910import 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)
Stellen Sie stets sicher, dass die Datentypen Ihrer ursprünglichen Strukturen (Numpy-Arrays oder Pandas DataFrames) kompatibel mit den TensorFlow-Tensor-Datentypen sind. Bei einer Abweichung sollte eine Typumwandlung in Betracht gezogen werden.
- Konvertieren eines konstanten Tensors in eine
Variable: EineVariablekann mit verschiedenen Methoden zur Tensor-Erstellung wietf.ones(),tf.linspace(),tf.randomusw. initialisiert werden. Übergeben Sie einfach die Funktion oder den bereits existierenden Tensor antf.Variable().
12345678910111213import 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)
Um das Erstellen von Tensors zu üben, empfiehlt sich das Ausprobieren verschiedener Formen und Werte. Weitere Informationen zu spezifischen Befehlen finden Sie in der offiziellen TensorFlow-Dokumentation. Dort finden Sie alle Informationen zu jedem Befehl oder Modul der Bibliothek.
Swipe to start coding
Ihre Aufgabe ist es, verschiedene Tensoren mit TensorFlow zu erstellen, zu modifizieren und zu konvertieren.
Teil 1 — Initialisierung von Tensoren
- Erstellen Sie einen Tensor namens
tensor_Amit der Form(3, 3)und allen Elementen gleich 5. - Erstellen Sie einen veränderbaren Tensor namens
tensor_Bmit der Form(2, 3)und beliebigen Werten Ihrer Wahl. - Erstellen Sie einen Tensor namens
tensor_Cmit der Form(3, 3), gefüllt mit Nullen. - Erstellen Sie einen Tensor namens
tensor_Dmit der Form(4, 4), gefüllt mit Einsen. - Erstellen Sie einen Tensor namens
tensor_Emit 5 linear verteilten Werten zwischen 3 und 15. - Erstellen Sie einen Tensor namens
tensor_Fmit zufälligen Werten und der Form(2, 2).
Teil 2 — Konvertierungen
- Konvertieren Sie das NumPy-Array
np_arrayin einen TensorFlow-Tensor namenstensor_from_array. - Konvertieren Sie das DataFrame
dfin einen TensorFlow-Tensor namenstensor_from_dataframe.
Hinweis
- Verwenden Sie für jede Operation die jeweils geeignetste TensorFlow-Funktion:
tf.fill()für Tensoren mit einem einzelnen wiederholten Wert;tf.Variable()für veränderbare Tensoren;tf.zeros()/tf.ones()für mit Nullen bzw. Einsen gefüllte Tensoren;tf.linspace()für linear verteilte Tensoren;tf.random.normal()für zufällige Tensoren;- Verwenden Sie
tf.convert_to_tensor()für Konvertierungen von NumPy-Arrays oder pandas-DataFrames; - Vermeiden Sie die Verwendung von
tf.constant()— nutzen Sie stattdessen die oben aufgeführten spezifischeren Funktionen.
Lösung
Danke für Ihr Feedback!
single