single
Introduction aux Tenseurs
Glissez pour afficher le menu
Que sont les tenseurs ?
Les tenseurs peuvent être considérés comme des tableaux multidimensionnels. Imaginez-les comme des conteneurs de données, stockant des valeurs dans un format structuré à N dimensions. On peut les voir comme des éléments de base : pris individuellement, ils paraissent simples, mais assemblés, ils permettent de créer des structures complexes.
Types de tenseurs
Vous avez probablement déjà rencontré des tenseurs, notamment si vous avez utilisé les bibliothèques NumPy et Pandas :
- Scalaires : juste un nombre unique. Il s'agit d'un tenseur de dimension 0. Exemple :
5; - Vecteurs : un tableau de nombres. Il s'agit d'un tenseur de dimension 1. Exemple :
[1, 2, 3]; - Matrices : un tenseur de dimension 2. À imaginer comme une grille de nombres. Exemple :
[[1, 2]
[3, 4]
[5, 6]]
- Tenseurs 3D : en empilant des matrices, on obtient des tenseurs 3D ;
Le tenseur 3D illustré dans l'animation ci-dessus peut être représenté ainsi :
[[[6, 9, 6], [1, 1, 2], [9, 7, 3]],
[[1, 2, 3], [4, 5, 6], [7, 8, 9]],
[[5, 6, 3], [5, 3, 5], [8, 8, 2]]]
Chaque ligne correspond à une matrice individuelle (tenseur 2D).
- Dimensions supérieures : et il est possible de continuer à empiler pour atteindre des dimensions encore plus élevées.
Le passage de tenseurs de faible dimension à des tenseurs de dimension supérieure peut sembler être un saut, mais il s'agit d'une progression naturelle lors de la manipulation de structures de données. Plus l'exploration des architectures de réseaux neuronaux est approfondie, en particulier les réseaux de neurones convolutionnels (CNN) ou les réseaux de neurones récurrents (RNN), plus ces structures deviennent courantes. La complexité augmente, mais il faut garder à l'esprit qu'à la base, il ne s'agit que de conteneurs de données.
Importance en apprentissage profond
L'importance des tenseurs en apprentissage profond provient de leur uniformité et efficacité. Ils offrent une structure cohérente, permettant l'exécution fluide des opérations mathématiques, notamment sur les GPU. Lors du traitement de différentes formes de données dans les réseaux neuronaux, telles que les images ou le son, les tenseurs facilitent la représentation des données, garantissant le maintien de la forme, de la hiérarchie et de l'ordre.
Création de tenseurs de base
Il existe de nombreuses méthodes pour créer un tenseur dans TensorFlow, allant de la génération de données aléatoires ou structurées à l'importation de données à partir d'un jeu de données prédéfini ou même d'un fichier. Cependant, concentrons-nous pour l'instant sur la méthode la plus simple : créer un tenseur à partir d'une liste Python.
123456789101112import tensorflow as tf # Create a 1D tensor tensor_1D = tf.constant([1, 2, 3]) # Create a 2D tensor tensor_2D = tf.constant([[1, 2, 3], [4, 5, 6]]) # Display tensor info print(tensor_1D) print('-' * 50) print(tensor_2D)
Swipe to start coding
Vous devez construire des tenseurs avec des dimensions de 1, 2 et 3. Vous pouvez les remplir avec les valeurs de votre choix, mais veillez à respecter le nombre de dimensions spécifié. Référez-vous à l'exemple fourni précédemment et, en cas de doute, consultez l'indice.
Remarque
Les sous-listes à l'intérieur d'un tenseur doivent toutes avoir la même longueur. Par exemple, si un sous-tenseur d'un tenseur 2D a une longueur de 3, tous les autres sous-tenseurs doivent également avoir cette longueur. Ainsi,
[[1, 2], [1, 2]]est un tenseur valide, tandis que[[1, 2], [1, 2, 3]]ne l'est pas.
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