single
Oppretting av Tensorer
Sveip for å vise menyen
Grunnleggende tensor-initialisatorer
tf.constant(): dette er den enkleste måten å opprette en tensor på. Som navnet tilsier, inneholder tensorer initialisert med denne metoden konstante verdier og er uforanderlige;
12345import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
tf.Variable(): i motsetning tiltf.constant(), er en tensor definert medtf.Variable()foranderlig. Dette betyr at verdien kan endres, noe som gjør den ideell for for eksempel trenbare parametere i modeller;
12345import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros(): oppretter en tensor fylt med nuller;
12345import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones(): dette oppretter derimot en tensor fylt med ener;
12345import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
tf.fill(): oppretter en tensor fylt med en spesifikk verdi;
12345import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
tf.linspace()ogtf.range(): utmerkede funksjoner for å lage sekvenser;
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: genererer tensorer med tilfeldige verdier. Flere fordelinger og funksjoner er tilgjengelige i denne modulen, somtf.random.normal()for verdier fra en normalfordeling, ogtf.random.uniform()for verdier fra en uniform fordeling.
Du kan også angi et fast seed for å oppnå konsistente resultater ved hver generering av tilfeldige tall ved å bruke tf.random.set_seed(). Vær imidlertid oppmerksom på at du ved å gjøre dette vil få det samme tallet for enhver tilfeldig generering i TensorFlow.
Hvis du ønsker å oppnå konsistente tall kun for en spesifikk kommando, kan du gi et seed-argument til den kommandoen med ønsket seed-verdi.
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)
Konvertering mellom datastrukturer
TensorFlow-tensorer kan enkelt konverteres til og fra kjente Python-datastrukturer.
- Fra Numpy-arrays: TensorFlow-tensorer og Numpy-arrays er svært kompatible. Bruk
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)
- Fra Pandas DataFrames: for de som foretrekker dataanalyse med Pandas, er det enkelt å konvertere en DataFrame eller en Series til en TensorFlow-tensor. Bruk også
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)
Sørg alltid for at datatypene til de opprinnelige strukturene dine (Numpy-arrays eller Pandas DataFrames) er kompatible med TensorFlow tensor-datatyper. Hvis det er et avvik, vurder typekonvertering.
- Konvertering av en konstant tensor til en
Variable: du kan initialisere enVariableved å bruke ulike tensoropprettingsmetoder somtf.ones(),tf.linspace(),tf.randomog lignende. Send ganske enkelt funksjonen eller den eksisterende tensoren tiltf.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)
For å bli bedre til å opprette tensorer, anbefales det å øve med ulike former og verdier. For mer informasjon om spesifikke kommandoer, se den offisielle TensorFlow-dokumentasjonen. Her finnes all nødvendig informasjon om kommandoer og moduler i biblioteket.
Swipe to start coding
Din oppgave er å opprette, endre og konvertere ulike tensorer ved hjelp av TensorFlow.
Del 1 — Initialisering av tensorer
- Opprett en tensor kalt
tensor_Amed form(3, 3)og alle elementer lik 5. - Opprett en muterbar tensor kalt
tensor_Bmed form(2, 3)og vilkårlige verdier etter eget valg. - Opprett en tensor kalt
tensor_Cmed form(3, 3)fylt med nuller. - Opprett en tensor kalt
tensor_Dmed form(4, 4)fylt med ener. - Opprett en tensor kalt
tensor_Emed 5 lineært fordelte verdier mellom 3 og 15. - Opprett en tensor kalt
tensor_Fmed tilfeldige verdier og form(2, 2).
Del 2 — Konverteringer
- Konverter NumPy-arrayet
np_arraytil en TensorFlow-tensor kalttensor_from_array. - Konverter DataFrame
dftil en TensorFlow-tensor kalttensor_from_dataframe.
Merk
- Bruk de mest hensiktsmessige TensorFlow-funksjonene for hver operasjon:
tf.fill()for tensorer med én gjentatt verdi;tf.Variable()for muterbare tensorer;tf.zeros()/tf.ones()for tensorer fylt med nuller eller ener;tf.linspace()for lineært fordelte tensorer;tf.random.normal()for tilfeldige tensorer;- Bruk
tf.convert_to_tensor()for konvertering fra NumPy-arrays eller pandas DataFrames. - Unngå å bruke
tf.constant()— bruk de mer spesifikke funksjonene nevnt ovenfor i stedet.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår