Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Opérations de Base : Algèbre Linéaire | Tenseurs
Introduction à TensorFlow
course content

Contenu du cours

Introduction à TensorFlow

Introduction à TensorFlow

1. Tenseurs
2. Notions de Base de TensorFlow

book
Opérations de Base : Algèbre Linéaire

Opérations d'Algèbre Linéaire

TensorFlow offre une suite de fonctions dédiées aux opérations d'algèbre linéaire, rendant les opérations matricielles simples.

Multiplication de Matrices

Voici un rappel rapide sur le fonctionnement de la multiplication de matrices.

Il existe deux approches équivalentes pour la multiplication de matrices :

  • La fonction tf.matmul();
  • En utilisant l'opérateur @.
1234567891011121314
import tensorflow as tf # Create two matrices matrix1 = tf.constant([[1, 2], [3, 4], [2, 1]]) matrix2 = tf.constant([[2, 0, 2, 5], [2, 2, 1, 3]]) # Multiply the matrices product1 = tf.matmul(matrix1, matrix2) product2 = matrix1 @ matrix2 # Display tensors print(product1) print('-' * 50) print(product2)
copy

Remarque

La multiplication de matrices de taille 3x2 et 2x4 donnera une matrice de 3x4.

Inversion de Matrice

Vous pouvez obtenir l'inverse d'une matrice en utilisant la fonction tf.linalg.inv(). De plus, vérifions une propriété fondamentale de la matrice inverse.

123456789101112131415
import tensorflow as tf # Create 2x2 matrix matrix = tf.constant([[1., 2.], [3., 4.]]) # Compute the inverse of a matrix inverse_mat = tf.linalg.inv(matrix) # Check the result identity = matrix @ inverse_mat # Display tensors print(inverse_mat) print('-' * 50) print(identity)
copy

Remarque

Multiplier une matrice par son inverse devrait donner une matrice identité, qui a des uns sur sa diagonale principale et des zéros partout ailleurs. De plus, le module tf.linalg offre une large gamme de fonctions d'algèbre linéaire. Pour plus de détails ou des opérations plus avancées, vous pouvez consulter sa documentation officielle.

Transposition

Vous pouvez obtenir une matrice transposée en utilisant la fonction tf.transpose().

123456789101112
import tensorflow as tf # Create a matrix 3x2 matrix = tf.constant([[1, 2], [3, 4], [2, 1]]) # Get the transpose of a matrix transposed = tf.transpose(matrix) # Display tensors print(matrix) print('-' * 40) print(transposed)
copy

Produit Scalaire

Vous pouvez obtenir un produit scalaire en utilisant la fonction tf.tensordot(). En configurant un argument axes, vous pouvez choisir selon quels axes calculer un produit scalaire. Par exemple, pour deux vecteurs en configurant axes=1, vous obtiendrez le produit scalaire classique entre vecteurs. Mais en configurant axes=0, vous obtiendrez une matrice diffusée le long de l'axe 0 :

1234567891011121314
import tensorflow as tf # Create two vectors matrix1 = tf.constant([1, 2, 3, 4]) matrix2 = tf.constant([2, 0, 2, 5]) # Compute the dot product of two tensors dot_product_axes1 = tf.tensordot(matrix1, matrix2, axes=1) dot_product_axes0 = tf.tensordot(matrix1, matrix2, axes=0) # Display tensors print(dot_product_axes1) print('-' * 40) print(dot_product_axes0)
copy

Remarque

Si vous prenez deux matrices avec des dimensions appropriées (NxM @ MxK, où NxM représente les dimensions de la première matrice et MxK la seconde), et que vous calculez le produit scalaire le long de axes=1, cela effectue essentiellement une multiplication de matrices.

Tâche

Swipe to start coding

Contexte

Un système d'équations linéaires peut être représenté sous forme matricielle à l'aide de l'équation :

AX = B

Où :

  • A est une matrice de coefficients.
  • X est une matrice colonne de variables.
  • B est une matrice colonne représentant les valeurs du côté droit des équations.

La solution de ce système peut être trouvée en utilisant la formule :

X = A^-1 B

A^-1 est l'inverse de la matrice A.

Objectif

Étant donné un système d'équations linéaires, utilisez TensorFlow pour le résoudre. Vous avez le système d'équations linéaires suivant :

  1. 2x + 3y - z = 1.
  2. 4x + y + 2z = 2.
  3. -x + 2y + 3z = 3.
Dot Product
  1. Représentez le système d'équations sous forme matricielle (séparez-le en matrices A et B).
  2. En utilisant TensorFlow, trouvez l'inverse de la matrice A.
  3. Multipliez l'inverse de la matrice A par la matrice B pour trouver la matrice solution X, qui contient les valeurs de x, y et z.

Remarque

Le découpage dans TensorFlow fonctionne de manière similaire à NumPy. Par conséquent, X[:, 0] récupérera tous les éléments de la colonne à l'index 0. Nous aborderons le découpage plus tard dans le cours.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 9
toggle bottom row

book
Opérations de Base : Algèbre Linéaire

Opérations d'Algèbre Linéaire

TensorFlow offre une suite de fonctions dédiées aux opérations d'algèbre linéaire, rendant les opérations matricielles simples.

Multiplication de Matrices

Voici un rappel rapide sur le fonctionnement de la multiplication de matrices.

Il existe deux approches équivalentes pour la multiplication de matrices :

  • La fonction tf.matmul();
  • En utilisant l'opérateur @.
1234567891011121314
import tensorflow as tf # Create two matrices matrix1 = tf.constant([[1, 2], [3, 4], [2, 1]]) matrix2 = tf.constant([[2, 0, 2, 5], [2, 2, 1, 3]]) # Multiply the matrices product1 = tf.matmul(matrix1, matrix2) product2 = matrix1 @ matrix2 # Display tensors print(product1) print('-' * 50) print(product2)
copy

Remarque

La multiplication de matrices de taille 3x2 et 2x4 donnera une matrice de 3x4.

Inversion de Matrice

Vous pouvez obtenir l'inverse d'une matrice en utilisant la fonction tf.linalg.inv(). De plus, vérifions une propriété fondamentale de la matrice inverse.

123456789101112131415
import tensorflow as tf # Create 2x2 matrix matrix = tf.constant([[1., 2.], [3., 4.]]) # Compute the inverse of a matrix inverse_mat = tf.linalg.inv(matrix) # Check the result identity = matrix @ inverse_mat # Display tensors print(inverse_mat) print('-' * 50) print(identity)
copy

Remarque

Multiplier une matrice par son inverse devrait donner une matrice identité, qui a des uns sur sa diagonale principale et des zéros partout ailleurs. De plus, le module tf.linalg offre une large gamme de fonctions d'algèbre linéaire. Pour plus de détails ou des opérations plus avancées, vous pouvez consulter sa documentation officielle.

Transposition

Vous pouvez obtenir une matrice transposée en utilisant la fonction tf.transpose().

123456789101112
import tensorflow as tf # Create a matrix 3x2 matrix = tf.constant([[1, 2], [3, 4], [2, 1]]) # Get the transpose of a matrix transposed = tf.transpose(matrix) # Display tensors print(matrix) print('-' * 40) print(transposed)
copy

Produit Scalaire

Vous pouvez obtenir un produit scalaire en utilisant la fonction tf.tensordot(). En configurant un argument axes, vous pouvez choisir selon quels axes calculer un produit scalaire. Par exemple, pour deux vecteurs en configurant axes=1, vous obtiendrez le produit scalaire classique entre vecteurs. Mais en configurant axes=0, vous obtiendrez une matrice diffusée le long de l'axe 0 :

1234567891011121314
import tensorflow as tf # Create two vectors matrix1 = tf.constant([1, 2, 3, 4]) matrix2 = tf.constant([2, 0, 2, 5]) # Compute the dot product of two tensors dot_product_axes1 = tf.tensordot(matrix1, matrix2, axes=1) dot_product_axes0 = tf.tensordot(matrix1, matrix2, axes=0) # Display tensors print(dot_product_axes1) print('-' * 40) print(dot_product_axes0)
copy

Remarque

Si vous prenez deux matrices avec des dimensions appropriées (NxM @ MxK, où NxM représente les dimensions de la première matrice et MxK la seconde), et que vous calculez le produit scalaire le long de axes=1, cela effectue essentiellement une multiplication de matrices.

Tâche

Swipe to start coding

Contexte

Un système d'équations linéaires peut être représenté sous forme matricielle à l'aide de l'équation :

AX = B

Où :

  • A est une matrice de coefficients.
  • X est une matrice colonne de variables.
  • B est une matrice colonne représentant les valeurs du côté droit des équations.

La solution de ce système peut être trouvée en utilisant la formule :

X = A^-1 B

A^-1 est l'inverse de la matrice A.

Objectif

Étant donné un système d'équations linéaires, utilisez TensorFlow pour le résoudre. Vous avez le système d'équations linéaires suivant :

  1. 2x + 3y - z = 1.
  2. 4x + y + 2z = 2.
  3. -x + 2y + 3z = 3.
Dot Product
  1. Représentez le système d'équations sous forme matricielle (séparez-le en matrices A et B).
  2. En utilisant TensorFlow, trouvez l'inverse de la matrice A.
  3. Multipliez l'inverse de la matrice A par la matrice B pour trouver la matrice solution X, qui contient les valeurs de x, y et z.

Remarque

Le découpage dans TensorFlow fonctionne de manière similaire à NumPy. Par conséquent, X[:, 0] récupérera tous les éléments de la colonne à l'index 0. Nous aborderons le découpage plus tard dans le cours.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 9
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt