Matrices spéciales -- Matrice identité, Matrice diagonale, Matrice symétrique

Certains types de matrices reviennent fréquemment en IA ; ils ont des structures et des propriétés particulières. Les comprendre vous aide à saisir rapidement le comportement des optimiseurs, les effets de la régularisation et la signification des transformations de données.

Matrice identité I

Toutes les entrées sur la diagonale principale sont 1, toutes les autres sont 0

Multiplier par n'importe quelle matrice = inchangé

Équivalent à '1' dans les nombres

Matrice diagonale

Seule la diagonale principale a des valeurs

Chaque dimension est mise à l'échelle indépendamment

Équivalent à un égaliseur audio

Matrice symétrique

Transposée = elle-même

Symétrique par rapport à la diagonale principale

Toutes les valeurs propres sont réelles

Matrice identité : le « 1 » en mathématiques

\[ \mathbf{I}_n = \begin{bmatrix} 1 & 0 & \cdots & 0 \\ 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \end{bmatrix} \]

Pour toute matrice A de forme compatible : \( \mathbf{I}A = A \), \( A\mathbf{I} = A \).

Matrice diagonale : mise à l'échelle indépendante de chaque dimension

\[ \mathbf{D} = \text{diag}(d_1, d_2, \dots, d_n) = \begin{bmatrix} d_1 & 0 & \cdots & 0 \\ 0 & d_2 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & d_n \end{bmatrix} \]

Multiplier une matrice diagonale par un vecteur = appliquer indépendamment un facteur d'échelle différent à chaque composante du vecteur.

Matrice symétrique : toujours elle-même après transposition

\( \mathbf{A}^T = \mathbf{A} \), c'est-à-dire \( a_{ij} = a_{ji} \).

Une matrice symétrique possède une propriété extrêmement importante :Toutes les valeurs propres sont réelles, et les vecteurs propres sont mutuellement orthogonaux.

Cela rend les matrices symétriques extrêmement utiles en optimisation et en statistiques — les matrices de covariance et les matrices hessiennes sont toutes deux symétriques.


Exemples du quotidien

Matrice identité : l’opération qui ne fait rien

Vous ouvrez une image dans PS, n’effectuez aucune modification et l’enregistrez directement. Entrée = sortie.

La matrice identité est l’expression mathématique de ce « ne rien faire ».

Matrice diagonale : égaliseur audio

Chaque curseur de l’égaliseur contrôle indépendamment le volume d’une bande de fréquences—hautes fréquences +3 dB, basses fréquences -2 dB, moyennes fréquences inchangées.

Chaque bande fonctionne indépendamment sans interférence et est mise à l’échelle séparément. C’est le comportement d’une matrice diagonale.

Matrice symétrique : réflexion dans le miroir

Debout devant un miroir, votre main gauche correspond à la position de votre main droite dans le reflet. Le haut et le bas restent inchangés ; la gauche et la droite sont inversées.

Une matrice symétrique est similaire—symétrique par rapport à la diagonale principale, où les valeurs restent inchangées après échange de positions de part et d’autre de celle-ci.


Définition mathématique

Type de matriceConditions de définitionMarque
Matrice identité\( I_{ii}=1, I_{ij}=0 \; (i \neq j) \)\( \mathbf{I}_n \)
Matrice diagonale\( D_{ij}=0 \) lorsque \( i \neq j \)diag(d₁,...,dₙ)
Matrice symétrique\( A_{ij} = A_{ji} \) pour tout i,j\( \mathbf{A} = \mathbf{A}^T \)

Exercice pratique Python

Exemple

import numpy as np

# Matrice identité
I = np.eye(3)
A = np.array([[4,7,2],[3,5,1],[6,8,9]])
print("I @ A == A:", np.allclose(I @ A, A))

# Matrice diagonale : mise à l'échelle indépendante
D = np.diag([2, 3, 5])
v = np.array([1, 1, 1])
print("D @ [1,1,1] =", D @ v)  # [2, 3, 5]

# Matrice symétrique
S = np.array([[1,4,5],[4,2,6],[5,6,3]])
print("S est symétrique :", np.allclose(S.T, S))
eigenvals = np.linalg.eigvals(S)
print("Toutes les valeurs propres sont réelles :", np.all(np.isreal(eigenvals)))

# La matrice de covariance est naturellement symétrique
data = np.random.randn(100, 5)
cov = np.cov(data.T)
print("La matrice de covariance est symétrique :", np.allclose(cov, cov.T))
I @ A == A: True
D @ [1,1,1] = [2 3 5]
S 对称: True
特征值全实数: True
协方差矩阵对称: True

Scénarios d'application en IA

Optimiseur Adam = Mise à l'échelle adaptative via une matrice diagonale

Adam maintient une moyenne mobile exponentielle v_t des gradients au carré pour chaque paramètre, et effectue la mise à jour à l'aide de \( \theta_{t+1} = \theta_t - \eta \cdot m_t / \sqrt{v_t} \). Mathématiquement, \( 1/\sqrt{v_t} \) met à l'échelle chaque composante de paramètre indépendamment — il s'agit d'une matrice diagonale multipliée par le vecteur de gradient. Les composantes actives du gradient voient leur taux d'apprentissage réduit, tandis que les composantes inactives du gradient le voient amplifié.

Matrice de covariance pour l'ACP

La première étape de la réduction de dimensionnalité PCA : calculer la matrice de covariance \( \Sigma = X^TX/(n-1) \) après centrage des données. Cette matrice est symétrique (\Sigma_{ij} = \Sigma_{ji}) et ses valeurs propres sont toutes réelles. Les vecteurs propres correspondant aux k plus grandes valeurs propres sont les directions des composantes principales. La classe PCA de sklearn effectue cela en interne.

Initialisation par identité pour les réseaux de neurones récurrents

Les matrices de poids récurrentes des RNN et des LSTM sont souvent initialisées comme des matrices identité. Cela garantit qu'au début de l'entraînement, les informations d'état caché peuvent être transmises « inchangées », empêchant les gradients de diminuer trop rapidement au fil des pas de temps. Cette technique est appelée IRNN (Identity RNN).

Initialisation Xavier/Glorot

L'initialisation Xavier choisit méticuleusement la variance des poids afin que la variance de la sortie de chaque couche reste cohérente : \( Var(W) = 2/(n_{in} + n_{out}) \). Cela équivaut à la contrainte de la matrice diagonale (variance) d'une loi normale avec cette variance.


Autres extensions