Contenu du cours
Introduction à TensorFlow
Introduction à TensorFlow
Introduction aux Tenseurs
Introduction aux Tenseurs
Bienvenue à nouveau ! Après notre première incursion dans TensorFlow, nous examinons de plus près son pilier : les Tenseurs. Ils ne sont pas seulement des termes mathématiques sophistiqués ; ils jouent un rôle crucial dans presque tous les flux de travail d'apprentissage automatique et profond. Plongeons-nous dedans.
Qu'est-ce que les Tenseurs?
Les tenseurs peuvent être vus comme des tableaux multidimensionnels. Imaginez-les comme des conteneurs de données, abritant des valeurs dans un format structuré et N-dimensionnel. Vous pouvez les considérer comme des blocs de construction : individuellement, ils peuvent sembler simples, mais lorsqu'ils sont assemblés, ils peuvent 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 : Juste un seul nombre. C'est un tenseur 0-dimensionnel. Exemple :
5
; -
Vecteurs : Un tableau de nombres. C'est un tenseur 1-dimensionnel. Exemple :
[1, 2, 3]
; -
Matrices : Un tenseur 2-dimensionnel. Pensez-y comme à une grille de nombres. Exemple :
- Tenseurs 3D : Si vous empilez des matrices, vous obtenez des tenseurs 3D;
Remarque
Le Tenseur 3D montré dans l'animation ci-dessus peut être représenté comme suit :
Chaque ligne correspond à une matrice individuelle (Tenseur 2D).
- Dimensions Supérieures : Et vous pouvez continuer à empiler pour des dimensions encore plus élevées.
Le passage d'un tenseur de dimension inférieure à une dimension supérieure peut sembler un saut, mais c'est une progression naturelle lorsqu'on traite des structures de données. Plus vous approfondissez les architectures de réseaux neuronaux, en particulier les réseaux neuronaux convolutionnels (CNN) ou les réseaux neuronaux récurrents (RNN), plus vous les rencontrerez. La complexité augmente, mais rappelez-vous, à leur base, ce ne sont que des conteneurs de données.
Importance dans l'apprentissage profond
L'accent mis sur les tenseurs dans l'apprentissage profond découle de leur uniformité et efficacité. Ils fournissent une structure cohérente, permettant aux opérations mathématiques de s'exécuter sans problème, surtout sur les GPU. Lorsqu'on traite différentes formes de données dans les réseaux neuronaux, comme les images ou le son, les tenseurs simplifient la représentation des données, garantissant que la forme, la hiérarchie et l'ordre sont maintenus.
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 à partir d'un ensemble de données prédéfini ou même d'un fichier. Cependant, pour l'instant, concentrons-nous sur la méthode la plus simple - créer un tenseur à partir d'une liste Python.
import 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 assurez-vous de maintenir le nombre de dimensions spécifié. Référez-vous à l'exemple fourni précédemment, et si vous n'êtes pas sûr, consultez l'indice.
Remarque
Les sous-listes dans tout tenseur doivent toutes avoir des longueurs cohérentes. 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. Alors que
[[1, 2], [1, 2]]
est un tenseur valide,[[1, 2], [1, 2, 3]]
ne l'est pas.
Une fois que vous avez terminé cette tâche, cliquez sur le bouton ci-dessous le code pour vérifier votre solution.
Solution
Merci pour vos commentaires !
Introduction aux Tenseurs
Introduction aux Tenseurs
Bienvenue à nouveau ! Après notre première incursion dans TensorFlow, nous examinons de plus près son pilier : les Tenseurs. Ils ne sont pas seulement des termes mathématiques sophistiqués ; ils jouent un rôle crucial dans presque tous les flux de travail d'apprentissage automatique et profond. Plongeons-nous dedans.
Qu'est-ce que les Tenseurs?
Les tenseurs peuvent être vus comme des tableaux multidimensionnels. Imaginez-les comme des conteneurs de données, abritant des valeurs dans un format structuré et N-dimensionnel. Vous pouvez les considérer comme des blocs de construction : individuellement, ils peuvent sembler simples, mais lorsqu'ils sont assemblés, ils peuvent 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 : Juste un seul nombre. C'est un tenseur 0-dimensionnel. Exemple :
5
; -
Vecteurs : Un tableau de nombres. C'est un tenseur 1-dimensionnel. Exemple :
[1, 2, 3]
; -
Matrices : Un tenseur 2-dimensionnel. Pensez-y comme à une grille de nombres. Exemple :
- Tenseurs 3D : Si vous empilez des matrices, vous obtenez des tenseurs 3D;
Remarque
Le Tenseur 3D montré dans l'animation ci-dessus peut être représenté comme suit :
Chaque ligne correspond à une matrice individuelle (Tenseur 2D).
- Dimensions Supérieures : Et vous pouvez continuer à empiler pour des dimensions encore plus élevées.
Le passage d'un tenseur de dimension inférieure à une dimension supérieure peut sembler un saut, mais c'est une progression naturelle lorsqu'on traite des structures de données. Plus vous approfondissez les architectures de réseaux neuronaux, en particulier les réseaux neuronaux convolutionnels (CNN) ou les réseaux neuronaux récurrents (RNN), plus vous les rencontrerez. La complexité augmente, mais rappelez-vous, à leur base, ce ne sont que des conteneurs de données.
Importance dans l'apprentissage profond
L'accent mis sur les tenseurs dans l'apprentissage profond découle de leur uniformité et efficacité. Ils fournissent une structure cohérente, permettant aux opérations mathématiques de s'exécuter sans problème, surtout sur les GPU. Lorsqu'on traite différentes formes de données dans les réseaux neuronaux, comme les images ou le son, les tenseurs simplifient la représentation des données, garantissant que la forme, la hiérarchie et l'ordre sont maintenus.
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 à partir d'un ensemble de données prédéfini ou même d'un fichier. Cependant, pour l'instant, concentrons-nous sur la méthode la plus simple - créer un tenseur à partir d'une liste Python.
import 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 assurez-vous de maintenir le nombre de dimensions spécifié. Référez-vous à l'exemple fourni précédemment, et si vous n'êtes pas sûr, consultez l'indice.
Remarque
Les sous-listes dans tout tenseur doivent toutes avoir des longueurs cohérentes. 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. Alors que
[[1, 2], [1, 2]]
est un tenseur valide,[[1, 2], [1, 2, 3]]
ne l'est pas.
Une fois que vous avez terminé cette tâche, cliquez sur le bouton ci-dessous le code pour vérifier votre solution.
Solution
Merci pour vos commentaires !