single
Création de Tenseurs
Glissez pour afficher le menu
Initialisateurs de tenseurs de base
tf.constant(): la méthode la plus simple pour créer un tenseur. Comme son nom l'indique, les tenseurs initialisés avec cette méthode contiennent des valeurs constantes et sont immuables ;
12345import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
tf.Variable(): contrairement àtf.constant(), un tenseur défini avectf.Variable()est mutable. Cela signifie que sa valeur peut être modifiée, ce qui le rend idéal pour des paramètres entraînables dans les modèles ;
12345import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
tf.zeros(): créer un tenseur rempli de zéros ;
12345import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
tf.ones(): à l'inverse, crée un tenseur rempli de uns ;
12345import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
tf.fill(): crée un tenseur rempli avec une valeur spécifique ;
12345import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
tf.linspace()ettf.range(): outils efficaces pour générer des séquences ;
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: génère des tenseurs avec des valeurs aléatoires. Plusieurs distributions et fonctions sont disponibles dans ce module, telles quetf.random.normal()pour des valeurs issues d'une distribution normale, ettf.random.uniform()pour des valeurs issues d'une distribution uniforme.
Il est également possible de définir une graine fixe afin d'obtenir des résultats cohérents à chaque génération de nombre aléatoire en utilisant tf.random.set_seed(). Cependant, notez qu'en procédant ainsi, la même valeur sera générée pour toute opération aléatoire dans TensorFlow.
Pour obtenir des valeurs cohérentes uniquement pour une commande spécifique, il est possible de fournir un argument seed à cette commande avec la valeur de graine souhaitée.
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)
Conversion entre structures de données
Les tenseurs TensorFlow peuvent être convertis sans difficulté vers et depuis des structures de données Python courantes.
- Depuis les tableaux Numpy : Les tenseurs TensorFlow et les tableaux Numpy sont très interopérables. Utiliser
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)
- Depuis les DataFrames Pandas : pour les adeptes de l’analyse de données avec Pandas, la conversion d’un DataFrame ou d’une Series en tenseur TensorFlow est directe. Utiliser également
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)
Toujours vérifier que les types de données de vos structures d'origine (tableaux Numpy ou DataFrames Pandas) sont compatibles avec les types de données des tenseurs TensorFlow. En cas d'incompatibilité, envisager un transtypage.
- Conversion d'un tenseur constant en
Variable: initialisation d'uneVariablepossible à l'aide de différentes méthodes de création de tenseurs telles quetf.ones(),tf.linspace(),tf.random, etc. Il suffit de passer la fonction ou le tenseur préexistant àtf.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)
Pour améliorer la création de tenseurs, s'exercer avec différentes formes et valeurs. Pour plus de détails sur des commandes spécifiques, consulter la documentation TensorFlow. Elle contient toutes les informations nécessaires sur chaque commande ou module de la bibliothèque.
Swipe to start coding
Votre tâche consiste à créer, modifier et convertir divers tenseurs à l'aide de TensorFlow.
Partie 1 — Initialisation des tenseurs
- Créez un tenseur nommé
tensor_Ade forme(3, 3)dont tous les éléments sont égaux à 5. - Créez un tenseur modifiable nommé
tensor_Bde forme(2, 3)avec les valeurs de votre choix. - Créez un tenseur nommé
tensor_Cde forme(3, 3)rempli de zéros. - Créez un tenseur nommé
tensor_Dde forme(4, 4)rempli de uns. - Créez un tenseur nommé
tensor_Econtenant 5 valeurs réparties linéairement entre 3 et 15. - Créez un tenseur nommé
tensor_Favec des valeurs aléatoires et de forme(2, 2).
Partie 2 — Conversions
- Convertissez le tableau NumPy
np_arrayen un tenseur TensorFlow nommétensor_from_array. - Convertissez le DataFrame
dfen un tenseur TensorFlow nommétensor_from_dataframe.
Remarque
- Utilisez les fonctions TensorFlow les plus appropriées pour chaque opération :
tf.fill()pour les tenseurs avec une seule valeur répétée ;tf.Variable()pour les tenseurs modifiables ;tf.zeros()/tf.ones()pour les tenseurs remplis de zéros ou de uns ;tf.linspace()pour les tenseurs à valeurs réparties linéairement ;tf.random.normal()pour les tenseurs aléatoires ;- Utilisez
tf.convert_to_tensor()pour les conversions à partir de tableaux NumPy ou de DataFrames pandas ; - Évitez d'utiliser
tf.constant()— privilégiez les fonctions spécifiques listées ci-dessus.
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion