Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Oprettelse af Tensorer | Tensorer
Introduktion til Tensorflow

bookOprettelse af Tensorer

Oprettelse af Tensors

Denne lektion fokuserer på oprettelse af tensors ved hjælp af TensorFlow. TensorFlow tilbyder adskillige metoder til at initialisere tensors. Ved afslutningen af denne lektion vil du være fortrolig med at generere tensors til en bred vifte af anvendelser.

Grundlæggende Tensor-initialisatorer

  • tf.constant(): dette er den simpleste måde at oprette en tensor på. Som navnet antyder, indeholder tensors initialiseret med denne metode konstante værdier og er uforanderlige;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): i modsætning til tf.constant() er en tensor defineret med tf.Variable() muterbar. Dette betyder, at dens værdi kan ændres, hvilket gør den ideel til eksempelvis trænbare parametre 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(): opret en tensor fyldt med nuller;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): omvendt opretter denne en tensor fyldt med ettaller;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): opretter en tensor udfyldt med en specifik værdi;
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() og tf.range(): disse er ideelle til at oprette 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: genererer tensorer med tilfældige værdier. Flere fordelinger og funktioner er tilgængelige i dette modul, såsom tf.random.normal() for værdier fra en normalfordeling og tf.random.uniform() for værdier fra en uniform fordeling.
Note
Bemærk

Du kan også angive et fast seed for at opnå konsistente resultater ved hver tilfældig talgenerering ved at bruge tf.random.set_seed(). Vær dog opmærksom på, at du ved at gøre dette vil modtage det samme tal for enhver tilfældig generering i TensorFlow.

Hvis du ønsker at opnå konsistente tal kun for en specifik kommando, kan du angive et seed-argument til den pågældende kommando med den ønskede seed-værdi.

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 mellem datastrukturer

TensorFlow-tensorer kan problemfrit konverteres til og fra velkendte Python-datastrukturer.

  • Fra Numpy-arrays: TensorFlow-tensorer og Numpy-arrays er meget interoperable. Brug 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
  • Fra Pandas DataFrames: for dem, der foretrækker dataanalyse med Pandas, er det enkelt at konvertere en DataFrame eller en Series til en TensorFlow-tensor. Brug også 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
Bemærk

Sørg altid for, at datatyperne i dine oprindelige strukturer (Numpy-arrays eller Pandas DataFrames) er kompatible med TensorFlow-tensor datatyper. Hvis der er uoverensstemmelser, bør typekonvertering overvejes.

  • Konvertering af en konstant tensor til en Variable: du kan initialisere en Variable ved hjælp af forskellige tensor-oprettelsesmetoder såsom tf.ones(), tf.linspace(), tf.random og lignende. Overfør blot funktionen eller den eksisterende tensor til 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

For at blive bedre til at oprette tensors, øv dig med forskellige former og værdier. For flere detaljer om specifikke kommandoer, se den officielle TensorFlow-dokumentation. Her findes al nødvendig information om enhver kommando eller modul i biblioteket.

Opgave

Swipe to start coding

Din opgave er at oprette, ændre og konvertere forskellige tensores i denne udfordring.

Del 1 — Tensor-initialisering

  1. Opret en tensor med navnet tensor_A med formen (3, 3) og alle elementer lig 5.
  2. Opret en muterbar tensor med navnet tensor_B med formen (2, 3) og vilkårlige værdier efter eget valg.
  3. Opret en tensor med navnet tensor_C med formen (3, 3) fyldt med nuller.
  4. Opret en tensor med navnet tensor_D med formen (4, 4) fyldt med etter.
  5. Opret en tensor med navnet tensor_E med 5 lineært fordelte værdier mellem 3 og 15.
  6. Opret en tensor med navnet tensor_F med tilfældige værdier og formen (2, 2).

Del 2 — Konverteringer

  1. Konverter NumPy-arrayet np_array til en TensorFlow-tensor med navnet tensor_from_array.
  2. Konverter DataFrame df til en TensorFlow-tensor med navnet tensor_from_dataframe.

Bemærk

  • Brug de mest passende TensorFlow-funktioner (f.eks. tf.ones(), tf.zeros(), tf.fill(), osv.).
  • Til konverteringer, brug tf.convert_to_tensor().
  • Til lineært fordelte tensores, brug tf.linspace(start, stop, num).
  • Til tilfældige tensores, brug tf.random.normal(shape).

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 6
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

Awesome!

Completion rate improved to 5.56

bookOprettelse af Tensorer

Stryg for at vise menuen

Oprettelse af Tensors

Denne lektion fokuserer på oprettelse af tensors ved hjælp af TensorFlow. TensorFlow tilbyder adskillige metoder til at initialisere tensors. Ved afslutningen af denne lektion vil du være fortrolig med at generere tensors til en bred vifte af anvendelser.

Grundlæggende Tensor-initialisatorer

  • tf.constant(): dette er den simpleste måde at oprette en tensor på. Som navnet antyder, indeholder tensors initialiseret med denne metode konstante værdier og er uforanderlige;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): i modsætning til tf.constant() er en tensor defineret med tf.Variable() muterbar. Dette betyder, at dens værdi kan ændres, hvilket gør den ideel til eksempelvis trænbare parametre 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(): opret en tensor fyldt med nuller;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): omvendt opretter denne en tensor fyldt med ettaller;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): opretter en tensor udfyldt med en specifik værdi;
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() og tf.range(): disse er ideelle til at oprette 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: genererer tensorer med tilfældige værdier. Flere fordelinger og funktioner er tilgængelige i dette modul, såsom tf.random.normal() for værdier fra en normalfordeling og tf.random.uniform() for værdier fra en uniform fordeling.
Note
Bemærk

Du kan også angive et fast seed for at opnå konsistente resultater ved hver tilfældig talgenerering ved at bruge tf.random.set_seed(). Vær dog opmærksom på, at du ved at gøre dette vil modtage det samme tal for enhver tilfældig generering i TensorFlow.

Hvis du ønsker at opnå konsistente tal kun for en specifik kommando, kan du angive et seed-argument til den pågældende kommando med den ønskede seed-værdi.

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 mellem datastrukturer

TensorFlow-tensorer kan problemfrit konverteres til og fra velkendte Python-datastrukturer.

  • Fra Numpy-arrays: TensorFlow-tensorer og Numpy-arrays er meget interoperable. Brug 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
  • Fra Pandas DataFrames: for dem, der foretrækker dataanalyse med Pandas, er det enkelt at konvertere en DataFrame eller en Series til en TensorFlow-tensor. Brug også 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
Bemærk

Sørg altid for, at datatyperne i dine oprindelige strukturer (Numpy-arrays eller Pandas DataFrames) er kompatible med TensorFlow-tensor datatyper. Hvis der er uoverensstemmelser, bør typekonvertering overvejes.

  • Konvertering af en konstant tensor til en Variable: du kan initialisere en Variable ved hjælp af forskellige tensor-oprettelsesmetoder såsom tf.ones(), tf.linspace(), tf.random og lignende. Overfør blot funktionen eller den eksisterende tensor til 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

For at blive bedre til at oprette tensors, øv dig med forskellige former og værdier. For flere detaljer om specifikke kommandoer, se den officielle TensorFlow-dokumentation. Her findes al nødvendig information om enhver kommando eller modul i biblioteket.

Opgave

Swipe to start coding

Din opgave er at oprette, ændre og konvertere forskellige tensores i denne udfordring.

Del 1 — Tensor-initialisering

  1. Opret en tensor med navnet tensor_A med formen (3, 3) og alle elementer lig 5.
  2. Opret en muterbar tensor med navnet tensor_B med formen (2, 3) og vilkårlige værdier efter eget valg.
  3. Opret en tensor med navnet tensor_C med formen (3, 3) fyldt med nuller.
  4. Opret en tensor med navnet tensor_D med formen (4, 4) fyldt med etter.
  5. Opret en tensor med navnet tensor_E med 5 lineært fordelte værdier mellem 3 og 15.
  6. Opret en tensor med navnet tensor_F med tilfældige værdier og formen (2, 2).

Del 2 — Konverteringer

  1. Konverter NumPy-arrayet np_array til en TensorFlow-tensor med navnet tensor_from_array.
  2. Konverter DataFrame df til en TensorFlow-tensor med navnet tensor_from_dataframe.

Bemærk

  • Brug de mest passende TensorFlow-funktioner (f.eks. tf.ones(), tf.zeros(), tf.fill(), osv.).
  • Til konverteringer, brug tf.convert_to_tensor().
  • Til lineært fordelte tensores, brug tf.linspace(start, stop, num).
  • Til tilfældige tensores, brug tf.random.normal(shape).

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 6
single

single

some-alt