IMAT137
Retour au blog
Mathématiques··9 min

Matrices et transformations : visualiser l'algèbre linéaire concrètement

Comment comprendre réellement ce que font les matrices ? Guide complet des transformations géométriques, avec exemples visuels et applications pratiques.

Matrices et transformations : visualiser l'algèbre linéaire concrètement

Matrices et transformations : visualiser l'algèbre linéaire concrètement

L'algèbre linéaire intimide souvent par son abstraction. On apprend à multiplier des matrices, à calculer des déterminants, à diagonaliser — mais on saisit rarement ce qui se passe réellement. Pourtant, une matrice n'est rien de plus qu'une description d'une transformation géométrique. Comprendre cette intuition change tout.

Cet article propose un cheminement qui part de la visualisation géométrique pour retrouver l'algèbre. C'est l'inverse du chemin pédagogique classique, mais c'est celui qui crée la compréhension profonde.

Qu'est-ce qu'une matrice, vraiment ?

Une matrice est traditionnellement définie comme un tableau de nombres. Correct, mais incomplet. Plus précisément, une matrice est une machine : vous lui donnez un vecteur, elle vous retourne un autre vecteur. C'est une fonction linéaire.

Considérez la matrice 2×2 la plus simple :

A = [2  0]
    [0  1]

Que fait-elle ? Si vous appliquez cette matrice au vecteur (1, 1), vous obtenez (2, 1). Le composant horizontal est doublé, le composant vertical reste inchangé. Si vous appliquez cette matrice à tous les points du plan, vous provoquez un étirement horizontal.

Voilà l'intuition clé : une matrice est une transformation de l'espace. Elle peut étirer, compresser, tourner, refléter — toujours de façon linéaire.

Comprendre par les vecteurs de base

Le secret pour visualiser une matrice réside dans ses colonnes. Chaque colonne indique où se retrouve un vecteur de base après la transformation.

Dans le plan 2D, nous avons deux vecteurs de base :

  • e₁ = (1, 0) : le vecteur unitaire horizontal
  • e₂ = (0, 1) : le vecteur unitaire vertical

Prenez la matrice de rotation de 90° dans le sens antihoraire :

R = [0  -1]
    [1   0]

Son effet :

  • La première colonne [0, 1] dit : le vecteur (1, 0) devient (0, 1)
  • La deuxième colonne [-1, 0] dit : le vecteur (0, 1) devient (-1, 0)

C'est exact : une rotation de 90° tourne le vecteur horizontal vers le haut, et le vecteur vertical vers la gauche. Appliquez cette logique à n'importe quel point du plan, et vous savez précisément ce qui lui arrive.

Cette perspective élimine la magie algébrique. Vous ne calculez pas une multiplication matricielle par intuition mystérieuse — vous composez des transformations d'espace.

Les transformations géométriques fondamentales

Scaling (mise à l'échelle)

La matrice la plus basique :

S = [a  0]
    [0  b]

Elle multiplie la coordonnée x par a et la coordonnée y par b. Un rectangle de dimensions (1, 1) devient (a, b). Si a = b = 2, l'espace entier double de taille. Si a = 2, b = 0.5, l'espace s'élargit horizontalement et se compresse verticalement.

Dans les applications réelles, c'est crucial. Pensez à une caméra : zoomer est une opération de scaling. Redimensionner une image est du scaling. Normaliser des données (diviser par l'écart-type) est du scaling.

Rotation

Pour tourner le plan d'un angle θ dans le sens antihoraire :

R(θ) = [cos(θ)  -sin(θ)]
       [sin(θ)   cos(θ)]

Vérifiez avec θ = 90° : cos(90°) = 0, sin(90°) = 1, donc nous retrouvons la matrice de rotation mentionnée plus haut.

Pourquoi cette formule particulière ? Parce que le nouveau vecteur e₁ pointant à un angle θ a les coordonnées (cos(θ), sin(θ)) — c'est la trigonométrie sur le cercle unité. Le nouveau e₂ (perpendiculaire) a les coordonnées (-sin(θ), cos(θ)).

Les rotations sont omniprésentes : vision par ordinateur, mécanique, animation. Mais elles posent une subtilité délicate : en 3D, les rotations ne commutent pas. Tourner de 90° autour de x, puis autour de y, ne donne pas le même résultat que l'inverse. Cela explique pourquoi les angles d'Euler sont une source de bugs célèbres en infographie 3D.

Reflexion (symétrie)

Pour refléter le plan sur l'axe x :

F = [1   0]
    [0  -1]

Le vecteur e₁ reste sur l'axe x, mais e₂ s'inverse. Tous les points au-dessus de l'axe x basculent en dessous. C'est une transformation qui renverse l'orientation : un carré dessiné dans le sens horaire devient antihoraire après réflexion.

Cette propriété — le changement d'orientation — est capturé algébriquement par le déterminant. Pour une réflexion, le déterminant vaut −1.

Cisaillement (shearing)

Une transformation moins couramment visualisée :

H = [1  0.5]
    [0   1 ]

Elle laisse l'axe y inchangé (la deuxième colonne est [0, 1]), mais fait pencher l'axe x. Un carré devient un parallélogramme. C'est ce qui se passe quand vous regardez un rectangle incliné en perspective — une forme de distorsion.

Le cisaillement semble ésotérique, mais il est fondamental en typographie (l'italique est techniquement un cisaillement), en compression d'images, en simulation physique.

Composition et multiplication matricielle

Maintenant surgit une question redoutable : pourquoi la multiplication matricielle fonctionne-t-elle de cette façon étrange ?

Répond simple : la multiplication matricielle représente la composition de transformations.

Si vous appliquez d'abord une transformation A, puis une transformation B, le résultat global est une nouvelle transformation C = BA (attention à l'ordre : c'est l'ordre inverse, car la multiplication fonctionne de droite à gauche en algèbre).

Exemple concret. Vous commencez avec le vecteur v. Vous appliquez d'abord la transformation A :

v' = A·v

Puis vous appliquez la transformation B au résultat :

v'' = B·v' = B·(A·v) = (BA)·v

Donc la transformation composée est la matrice BA. Et l'algorithme de multiplication matricielle — celui qu'on vous enseigne avec le produit scalaire des lignes et colonnes — est précisément l'algorithme qui encode cette composition.

Voici un cas d'école. Vous désirez tourner, puis doubler la taille. La matrice de rotation de 90° est :

R = [0  -1]
    [1   0]

La matrice de scaling :

S = [2  0]
    [0  2]

La transformation composée est :

SR = [2  0] [0  -1]   [0  -2]
     [0  2] [1   0] = [2   0]

Vérifiez : le vecteur e₁ = (1, 0) devient d'abord (0, 1) par rotation, puis (0, 2) par doubling. La première colonne de SR est donc [0, 2]. Correct.

Les valeurs propres et vecteurs propres : direction d'action privilégiée

Voici où l'intuition géométrique devient vraiment puissante : les vecteurs propres.

Une matrice, en général, tourne et étire l'espace de façon complexe. Mais il existe souvent des directions particulières où la matrice se contente d'étirer : elle ne tourne pas, elle agit purement sur l'ampleur.

Ces directions sont les vecteurs propres. Le facteur d'étirement associé est la valeur propre.

Prenez la matrice :

A = [3  1]
    [1  3]

Elle a deux vecteurs propres orthogonaux : (1, 1) et (1, -1). Si vous appliquez A à (1, 1), vous obtenez (4, 4) = 4·(1, 1). Le vecteur propre est multiplié par 4 — la valeur propre. Si vous appliquez A à (1, -1), vous obtenez (2, -2) = 2·(1, -1). La valeur propre est 2.

Ce qu'on vient de découvrir : la matrice A, vue dans son système de coordonnées propres, est simplement diagonale :

D = [4  0]
    [0  2]

Et c'est exactement ce que signifie la diagonalisation : trouver un changement de base qui rend la matrice diagonale.

Pourquoi est-ce crucial ? Parce qu'une matrice diagonale est simple à comprendre, simple à calculer avec. Si vous devez appliquer A mille fois (A^1000), le calcul direct est infaisable. Mais si vous savez diagonaliser A = PDP⁻¹, alors A^1000 = PD^1000P⁻¹, et D^1000 est trivial : il suffit de mettre chaque valeur propre à la puissance 1000.

C'est pourquoi la diagonalisation est omniprésente en dynamique : modélisation de populations, stabilité de systèmes, analyse spectrale. Les valeurs propres dominent le comportement asymptotique.

Applications concrètes : du théorique au pratique

Traitement d'image et compression

Une image numérique est une matrice : chaque pixel a une intensité (en niveaux de gris) ou des composantes couleur (RGB). Une transformation de l'image — rotation, redimensionnement, flou — est une transformation matricielle.

La compression JPEG utilise la décomposition en valeurs singulières (SVD), une généralisation des valeurs et vecteurs propres. L'idée : les grandes valeurs singulières correspondent aux détails importants, les petites valeurs aux bruits. On supprime les petites valeurs singulières, réduisant drastiquement la taille du fichier.

Systèmes dynamiques et prévisions

Un système d'équations différentielles linéaires se décrit souvent sous la forme :

dx/dt = Ax

Où A est une matrice, x un vecteur d'état. La solution explicite involve exp(At), qui dépend des valeurs propres de A. Si toutes les valeurs propres ont des parties réelles négatives, le système converge vers zéro (stabilité). Si une valeur propre est positive, le système explose. C'est la théorie de la stabilité de Lyapunov.

Dans la pratique : épidémiologie (modèles SIR), économie (équilibres), ingénierie de contrôle — tout repose sur cette analyse.

Machine learning et réduction de dimensionalité

L'analyse en composantes principales (PCA) est une application directe de la diagonalisation. Les données vivent dans un espace de grande dimension (disons, 10 000 pixels d'image), mais beaucoup de cette dimension est du bruit ou de la redondance. La PCA trouve les directions (les vecteurs propres de la matrice de covariance) où la variance des données est maximale. On conserve les premiers k vecteurs propres, réduisant le problème de 10 000 dimensions à k << 10 000.

C'est exactement le même concept que la compression d'image : supprimer les directions de faible variance.

Déterminant : l'interprétation géométrique

Le déterminant reste souvent un mystère calculatoire. Voici l'intuition géométrique.

Le déterminant mesure le facteur d'étirement volumétrique de la transformation. Pour une matrice 2×2, il mesure le facteur par lequel l'aire est multipliée.

Considérez un carré unité (aire 1) avec ses quatre coins aux points (0,0), (1,0), (0,1), (1,1). Appliquez la matrice :

A = [2  0]
    [0  3]

Les coins deviennent (0,0), (2,0), (0,3), (2,3). C'est un rectangle d'aire 2×3 = 6. Le déterminant de A est det(A) = 2×3 = 6. Pas une coïncidence.

Pour une matrice générale :

A = [a  b]
    [c  d]

det(A) = ad − bc. Et géométriquement, |det(A)| est le facteur d'étirement d'aire. Si det(A) = 0, la matrice écrase l'espace dans une ligne ou un point — elle est non inversible.

Pour les matrices 3×3, le déterminant mesure le facteur d'étirement de volume. Et ainsi de suite en dimension supérieure.

Cette compréhension éclaire pourquoi le déterminant est crucial pour l'inversibilité : une matrice est inversible si et seulement si elle n'écrase pas l'espace, c'est-à-dire si det(A) ≠ 0.

Vers l'intuition en dimension supérieure

Tout ce qui a été dit en 2D généralise en 3D, 4D, et au-delà. Les vecteurs de base indiquent toujours où se retrouvent les axes. La composition de transformations est toujours la multiplication matricielle. Les valeurs propres dominent toujours le comportement asymptotique.

La seule difficulté : nous perdons la visualisation directe. En 4D et plus, nous sommes aveugles. Mais l'algèbre reste identique. Et souvent, pour un praticien, l'algèbre numérique est suffisante : vous écrivez le code, vous vérifiez les propriétés (déterminant non-nul, valeurs propres réelles si la matrice est symétrique, etc.), et vous avancez.

Mais avoir construit cette intuition en 2D et 3D change profondément la façon dont vous travaillez en dimension supérieure. Vous n'êtes plus face à un tableau magique de nombres. Vous manipulez des transformations d'espace — des objets géométriques concrets.

Conclusion : l'algèbre linéaire comme langage géométrique

L'algèbre linéaire est souvent enseignée comme un ensemble de règles calculatoires : multiplier les matrices, diagonaliser, résoudre Ax = b. Utile, mais incomplet.

Vue correctement, l'algèbre linéaire est un langage pour décrire les transformations géométriques. Une matrice n'est pas un tableau à mémoriser — c'est une action sur l'espace. Ses colonnes disent où vont les axes. Ses valeurs propres identifient les directions privilégiées. Son déterminant quantifie le changement de volume.

Cette perspective change votre capacité à résoudre des problèmes. Vous ne cherchez plus à appliquer des recettes. Vous visualisez le problème géométriquement, puis vous traduisez cette visualisation en algèbre. C'est plus lent d'abord, mais infiniment plus puissant.

Que vous travailliez en data science, en ingénierie, ou en mathématiques pures, cette intuition est votre allié le plus fiable. Elle rend l'algèbre linéaire non pas un sujet abstrait et rebutant, mais un outil élégant et transparent pour comprendre et transformer le monde.

Auteur

Marcus Détrez

Fondateur d’IMAT137 et de LSI. Consultant en stratégie technologique et formation.

LinkedIn

Continuer la lecture