Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Creazione di Tensori | Tensori
Introduzione a TensorFlow

bookCreazione di Tensori

Creazione di Tensors

Questa lezione si concentra sulla creazione di tensori utilizzando TensorFlow. TensorFlow offre numerosi metodi per inizializzare i tensori. Al termine di questa lezione, sarai in grado di generare tensori per un'ampia gamma di applicazioni.

Inizializzatori di Tensor di Base

  • tf.constant(): questo è il modo più semplice per creare un tensore. Come suggerisce il nome, i tensori inizializzati con questo metodo contengono valori costanti e sono immutabili;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): a differenza di tf.constant(), un tensore definito utilizzando tf.Variable() è mutabile. Questo significa che il suo valore può essere modificato, rendendolo ideale per parametri addestrabili nei modelli;
12345
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
copy
  • tf.zeros(): crea un tensore riempito di zeri;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): al contrario, crea un tensore riempito di uno;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): crea un tensore riempito con un valore specifico;
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() e tf.range(): strumenti ideali per creare sequenze;
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: genera tensori con valori casuali. Sono disponibili diverse distribuzioni e funzioni all'interno di questo modulo, come tf.random.normal() per valori da una distribuzione normale e tf.random.uniform() per valori da una distribuzione uniforme.
Note
Nota

È possibile impostare anche un seed fisso per ottenere risultati coerenti a ogni generazione di numeri casuali utilizzando tf.random.set_seed(). Tuttavia, si noti che in questo modo si otterrà lo stesso numero per qualsiasi generazione casuale all'interno di TensorFlow.

Se si desidera ottenere numeri coerenti solo per un comando specifico, è possibile fornire un argomento seed a quel comando con il valore di seed desiderato.

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

Conversione tra strutture dati

I tensori di TensorFlow possono essere convertiti facilmente da e verso strutture dati Python familiari.

  • Da array Numpy: I tensori TensorFlow e gli array Numpy sono altamente interoperabili. Utilizzare 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
  • Da Pandas DataFrame: per chi è appassionato di analisi dei dati con Pandas, convertire un DataFrame o una Series in un tensore TensorFlow è semplice. Utilizzare anche 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
Nota

Assicurarsi sempre che i tipi di dati delle strutture originali (array Numpy o Pandas DataFrame) siano compatibili con i tipi di dati dei tensori TensorFlow. In caso di incompatibilità, considerare il casting del tipo.

  • Conversione di un tensore costante in una Variable: è possibile inizializzare una Variable utilizzando diversi metodi di creazione di tensori come tf.ones(), tf.linspace(), tf.random e così via. Basta passare la funzione o il tensore preesistente a 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

Per migliorare nella creazione di tensori, esercitarsi con forme e valori diversi. Per ulteriori dettagli sui comandi specifici, consultare la documentazione di TensorFlow. Contiene tutte le informazioni necessarie su qualsiasi comando o modulo della libreria.

Compito

Swipe to start coding

Il tuo compito è creare, modificare e convertire vari tensori in questa sfida.

Parte 1 — Inizializzazione dei tensori

  1. Creare un tensore chiamato tensor_A con forma (3, 3) e tutti gli elementi uguali a 5.
  2. Creare un tensore mutabile chiamato tensor_B con forma (2, 3) e valori a tua scelta.
  3. Creare un tensore chiamato tensor_C con forma (3, 3) riempito di zeri.
  4. Creare un tensore chiamato tensor_D con forma (4, 4) riempito di uni.
  5. Creare un tensore chiamato tensor_E con 5 valori equidistanti tra 3 e 15.
  6. Creare un tensore chiamato tensor_F con valori casuali e forma (2, 2).

Parte 2 — Conversioni

  1. Convertire l'array NumPy np_array in un tensore TensorFlow chiamato tensor_from_array.
  2. Convertire il DataFrame df in un tensore TensorFlow chiamato tensor_from_dataframe.

Nota

  • Utilizzare le funzioni TensorFlow più appropriate (ad esempio, tf.ones(), tf.zeros(), tf.fill(), ecc.).
  • Per le conversioni, utilizzare tf.convert_to_tensor().
  • Per i tensori con valori equidistanti, utilizzare tf.linspace(start, stop, num).
  • Per i tensori casuali, utilizzare tf.random.normal(shape).

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 6
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 5.56

bookCreazione di Tensori

Scorri per mostrare il menu

Creazione di Tensors

Questa lezione si concentra sulla creazione di tensori utilizzando TensorFlow. TensorFlow offre numerosi metodi per inizializzare i tensori. Al termine di questa lezione, sarai in grado di generare tensori per un'ampia gamma di applicazioni.

Inizializzatori di Tensor di Base

  • tf.constant(): questo è il modo più semplice per creare un tensore. Come suggerisce il nome, i tensori inizializzati con questo metodo contengono valori costanti e sono immutabili;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): a differenza di tf.constant(), un tensore definito utilizzando tf.Variable() è mutabile. Questo significa che il suo valore può essere modificato, rendendolo ideale per parametri addestrabili nei modelli;
12345
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
copy
  • tf.zeros(): crea un tensore riempito di zeri;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): al contrario, crea un tensore riempito di uno;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): crea un tensore riempito con un valore specifico;
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() e tf.range(): strumenti ideali per creare sequenze;
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: genera tensori con valori casuali. Sono disponibili diverse distribuzioni e funzioni all'interno di questo modulo, come tf.random.normal() per valori da una distribuzione normale e tf.random.uniform() per valori da una distribuzione uniforme.
Note
Nota

È possibile impostare anche un seed fisso per ottenere risultati coerenti a ogni generazione di numeri casuali utilizzando tf.random.set_seed(). Tuttavia, si noti che in questo modo si otterrà lo stesso numero per qualsiasi generazione casuale all'interno di TensorFlow.

Se si desidera ottenere numeri coerenti solo per un comando specifico, è possibile fornire un argomento seed a quel comando con il valore di seed desiderato.

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

Conversione tra strutture dati

I tensori di TensorFlow possono essere convertiti facilmente da e verso strutture dati Python familiari.

  • Da array Numpy: I tensori TensorFlow e gli array Numpy sono altamente interoperabili. Utilizzare 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
  • Da Pandas DataFrame: per chi è appassionato di analisi dei dati con Pandas, convertire un DataFrame o una Series in un tensore TensorFlow è semplice. Utilizzare anche 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
Nota

Assicurarsi sempre che i tipi di dati delle strutture originali (array Numpy o Pandas DataFrame) siano compatibili con i tipi di dati dei tensori TensorFlow. In caso di incompatibilità, considerare il casting del tipo.

  • Conversione di un tensore costante in una Variable: è possibile inizializzare una Variable utilizzando diversi metodi di creazione di tensori come tf.ones(), tf.linspace(), tf.random e così via. Basta passare la funzione o il tensore preesistente a 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

Per migliorare nella creazione di tensori, esercitarsi con forme e valori diversi. Per ulteriori dettagli sui comandi specifici, consultare la documentazione di TensorFlow. Contiene tutte le informazioni necessarie su qualsiasi comando o modulo della libreria.

Compito

Swipe to start coding

Il tuo compito è creare, modificare e convertire vari tensori in questa sfida.

Parte 1 — Inizializzazione dei tensori

  1. Creare un tensore chiamato tensor_A con forma (3, 3) e tutti gli elementi uguali a 5.
  2. Creare un tensore mutabile chiamato tensor_B con forma (2, 3) e valori a tua scelta.
  3. Creare un tensore chiamato tensor_C con forma (3, 3) riempito di zeri.
  4. Creare un tensore chiamato tensor_D con forma (4, 4) riempito di uni.
  5. Creare un tensore chiamato tensor_E con 5 valori equidistanti tra 3 e 15.
  6. Creare un tensore chiamato tensor_F con valori casuali e forma (2, 2).

Parte 2 — Conversioni

  1. Convertire l'array NumPy np_array in un tensore TensorFlow chiamato tensor_from_array.
  2. Convertire il DataFrame df in un tensore TensorFlow chiamato tensor_from_dataframe.

Nota

  • Utilizzare le funzioni TensorFlow più appropriate (ad esempio, tf.ones(), tf.zeros(), tf.fill(), ecc.).
  • Per le conversioni, utilizzare tf.convert_to_tensor().
  • Per i tensori con valori equidistanti, utilizzare tf.linspace(start, stop, num).
  • Per i tensori casuali, utilizzare tf.random.normal(shape).

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 6
single

single

some-alt