Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Skapa Tensorer | Tensorer
Introduktion till Tensorflow

bookSkapa Tensorer

Skapa Tensors

Denna lektion fokuserar på skapandet av tensors med TensorFlow. TensorFlow tillhandahåller flera metoder för att initiera tensors. Efter denna lektion kommer du att vara skicklig i att generera tensors för ett brett spektrum av tillämpningar.

Grundläggande Tensor-initialiserare

  • tf.constant(): detta är det enklaste sättet att skapa en tensor. Som namnet antyder innehåller tensors som initieras med denna metod konstanta värden och är oföränderliga;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): till skillnad från tf.constant() är en tensor som definieras med tf.Variable() muterbar. Detta innebär att dess värde kan ändras, vilket gör den idealisk för exempelvis träningsbara parametrar i modeller;
12345
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
copy
  • tf.zeros(): skapa en tensor fylld med nollor;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): omvänt skapar detta en tensor fylld med ettor;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): skapar en tensor fylld med ett specifikt värde;
12345
import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
copy
  • tf.linspace() och tf.range(): dessa är utmärkta för att skapa sekvenser;
123456789
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)
copy
  • tf.random: genererar tensorer med slumpmässiga värden. Flera fördelningar och funktioner finns tillgängliga inom denna modul, såsom tf.random.normal() för värden från en normalfördelning och tf.random.uniform() för värden från en likformig fördelning.
Note
Notera

Du kan även ange ett fast frö för att få konsekventa resultat vid varje slumpmässig talgenerering med tf.random.set_seed(). Observera dock att du genom att göra detta får samma tal för all slumpmässig generering inom TensorFlow.

Om du vill uppnå konsekventa tal endast för ett specifikt kommando kan du ange ett seed-argument till det kommandot med önskat frövärde.

1234567891011121314
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)
copy

Konvertering mellan datastrukturer

TensorFlow-tensorer kan enkelt konverteras till och från välkända Python-datastrukturer.

  • Från Numpy-arrayer: TensorFlow-tensorer och Numpy-arrayer är mycket interoperabla. Använd tf.convert_to_tensor();
12345678910
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)
copy
  • Från Pandas DataFrames: för dem som föredrar dataanalys med Pandas är det enkelt att konvertera en DataFrame eller en Series till en TensorFlow-tensor. Använd även tf.convert_to_tensor();
12345678910
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)
copy
Note
Observera

Säkerställ alltid att datatyperna i dina ursprungliga strukturer (Numpy-arrayer eller Pandas DataFrames) är kompatibla med TensorFlow-tensordatatyper. Vid avvikelse, överväg typomvandling.

  • Konvertera en konstant tensor till en Variable: du kan initiera en Variable med olika tensor-skapande metoder såsom tf.ones(), tf.linspace(), tf.random och så vidare. Skicka helt enkelt funktionen eller den redan existerande tensorn till tf.Variable().
12345678910111213
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)
copy

För att förbättra din förmåga att skapa tensorer, öva med olika former och värden. För mer information om specifika kommandon, se den officiella TensorFlow-dokumentationen. Där finns all information du behöver om varje kommando eller modul i biblioteket.

Uppgift

Swipe to start coding

Din uppgift är att skapa, modifiera och konvertera olika tensorer med TensorFlow.

Del 1 — Tensorinitiering

  1. Skapa en tensor med namnet tensor_A med formen (3, 3) där alla element är lika med 5.
  2. Skapa en muterbar tensor med namnet tensor_B med formen (2, 3) och valfria värden.
  3. Skapa en tensor med namnet tensor_C med formen (3, 3) fylld med nollor.
  4. Skapa en tensor med namnet tensor_D med formen (4, 4) fylld med ettor.
  5. Skapa en tensor med namnet tensor_E med 5 linjärt fördelade värden mellan 3 och 15.
  6. Skapa en tensor med namnet tensor_F med slumpmässiga värden och formen (2, 2).

Del 2 — Konverteringar

  1. Konvertera NumPy-arrayen np_array till en TensorFlow-tensor med namnet tensor_from_array.
  2. Konvertera DataFrame df till en TensorFlow-tensor med namnet tensor_from_dataframe.

Observera

  • Använd de mest lämpliga TensorFlow-funktionerna för varje operation:
  • tf.fill() för tensorer med ett upprepat värde;
  • tf.Variable() för muterbara tensorer;
  • tf.zeros() / tf.ones() för tensorer fyllda med nollor eller ettor;
  • tf.linspace() för linjärt fördelade tensorer;
  • tf.random.normal() för slumpmässiga tensorer;
  • Använd tf.convert_to_tensor() för konvertering från NumPy-arrayer eller pandas DataFrames;
  • Undvik att använda tf.constant() — använd istället de mer specifika funktionerna ovan.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 6
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

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?

close

Awesome!

Completion rate improved to 5.56

bookSkapa Tensorer

Svep för att visa menyn

Skapa Tensors

Denna lektion fokuserar på skapandet av tensors med TensorFlow. TensorFlow tillhandahåller flera metoder för att initiera tensors. Efter denna lektion kommer du att vara skicklig i att generera tensors för ett brett spektrum av tillämpningar.

Grundläggande Tensor-initialiserare

  • tf.constant(): detta är det enklaste sättet att skapa en tensor. Som namnet antyder innehåller tensors som initieras med denna metod konstanta värden och är oföränderliga;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): till skillnad från tf.constant() är en tensor som definieras med tf.Variable() muterbar. Detta innebär att dess värde kan ändras, vilket gör den idealisk för exempelvis träningsbara parametrar i modeller;
12345
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
copy
  • tf.zeros(): skapa en tensor fylld med nollor;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): omvänt skapar detta en tensor fylld med ettor;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): skapar en tensor fylld med ett specifikt värde;
12345
import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
copy
  • tf.linspace() och tf.range(): dessa är utmärkta för att skapa sekvenser;
123456789
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)
copy
  • tf.random: genererar tensorer med slumpmässiga värden. Flera fördelningar och funktioner finns tillgängliga inom denna modul, såsom tf.random.normal() för värden från en normalfördelning och tf.random.uniform() för värden från en likformig fördelning.
Note
Notera

Du kan även ange ett fast frö för att få konsekventa resultat vid varje slumpmässig talgenerering med tf.random.set_seed(). Observera dock att du genom att göra detta får samma tal för all slumpmässig generering inom TensorFlow.

Om du vill uppnå konsekventa tal endast för ett specifikt kommando kan du ange ett seed-argument till det kommandot med önskat frövärde.

1234567891011121314
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)
copy

Konvertering mellan datastrukturer

TensorFlow-tensorer kan enkelt konverteras till och från välkända Python-datastrukturer.

  • Från Numpy-arrayer: TensorFlow-tensorer och Numpy-arrayer är mycket interoperabla. Använd tf.convert_to_tensor();
12345678910
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)
copy
  • Från Pandas DataFrames: för dem som föredrar dataanalys med Pandas är det enkelt att konvertera en DataFrame eller en Series till en TensorFlow-tensor. Använd även tf.convert_to_tensor();
12345678910
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)
copy
Note
Observera

Säkerställ alltid att datatyperna i dina ursprungliga strukturer (Numpy-arrayer eller Pandas DataFrames) är kompatibla med TensorFlow-tensordatatyper. Vid avvikelse, överväg typomvandling.

  • Konvertera en konstant tensor till en Variable: du kan initiera en Variable med olika tensor-skapande metoder såsom tf.ones(), tf.linspace(), tf.random och så vidare. Skicka helt enkelt funktionen eller den redan existerande tensorn till tf.Variable().
12345678910111213
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)
copy

För att förbättra din förmåga att skapa tensorer, öva med olika former och värden. För mer information om specifika kommandon, se den officiella TensorFlow-dokumentationen. Där finns all information du behöver om varje kommando eller modul i biblioteket.

Uppgift

Swipe to start coding

Din uppgift är att skapa, modifiera och konvertera olika tensorer med TensorFlow.

Del 1 — Tensorinitiering

  1. Skapa en tensor med namnet tensor_A med formen (3, 3) där alla element är lika med 5.
  2. Skapa en muterbar tensor med namnet tensor_B med formen (2, 3) och valfria värden.
  3. Skapa en tensor med namnet tensor_C med formen (3, 3) fylld med nollor.
  4. Skapa en tensor med namnet tensor_D med formen (4, 4) fylld med ettor.
  5. Skapa en tensor med namnet tensor_E med 5 linjärt fördelade värden mellan 3 och 15.
  6. Skapa en tensor med namnet tensor_F med slumpmässiga värden och formen (2, 2).

Del 2 — Konverteringar

  1. Konvertera NumPy-arrayen np_array till en TensorFlow-tensor med namnet tensor_from_array.
  2. Konvertera DataFrame df till en TensorFlow-tensor med namnet tensor_from_dataframe.

Observera

  • Använd de mest lämpliga TensorFlow-funktionerna för varje operation:
  • tf.fill() för tensorer med ett upprepat värde;
  • tf.Variable() för muterbara tensorer;
  • tf.zeros() / tf.ones() för tensorer fyllda med nollor eller ettor;
  • tf.linspace() för linjärt fördelade tensorer;
  • tf.random.normal() för slumpmässiga tensorer;
  • Använd tf.convert_to_tensor() för konvertering från NumPy-arrayer eller pandas DataFrames;
  • Undvik att använda tf.constant() — använd istället de mer specifika funktionerna ovan.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 6
single

single

some-alt