single
Introduction aux Tenseurs
Glissez pour afficher le menu
Introduction aux tenseurs
Cette section propose une analyse approfondie des tenseurs, éléments fondamentaux de TensorFlow. Les tenseurs sont essentiels aux flux de travail en apprentissage automatique et profond. Ce chapitre explore leur importance et leurs applications.
Qu'est-ce qu'un tenseur ?
Les tenseurs peuvent être considérés comme des tableaux multidimensionnels. On peut les voir comme des conteneurs de données, stockant des valeurs dans un format structuré et N-dimensionnel. Ils sont comparables à des blocs de construction : pris individuellement, ils semblent simples, mais assemblés, ils permettent de créer des structures complexes.
Types de tenseurs
Vous avez déjà rencontré des tenseurs auparavant, surtout si vous avez utilisé les bibliothèques NumPy et Pandas :
- Scalaires : simplement un nombre unique. Il s'agit d'un tenseur à 0 dimension. Exemple :
5; - Vecteurs : un tableau de nombres. Il s'agit d'un tenseur à 1 dimension. Exemple :
[1, 2, 3]; - Matrices : un tenseur à 2 dimensions. À considérer 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é comme suit :
[[[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 vous pouvez continuer à empiler pour obtenir 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 lorsqu'on travaille avec des structures de données. Plus vous approfondissez les architectures de réseaux neuronaux, en particulier les réseaux de neurones convolutifs (CNN) ou les réseaux de neurones récurrents (RNN), plus vous rencontrerez ces concepts. La complexité augmente, mais rappelez-vous qu'à la base, il ne s'agit que de conteneurs de données.
Importance dans l'apprentissage profond
L'accent mis sur les 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 tenseur de base
Il existe de nombreuses façons de 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 depuis un ensemble de données prédéfini ou même un fichier. Cependant, pour l'instant, concentrons-nous 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)
Glissez pour commencer à coder
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