More

    Comprendre les vecteurs propres : concepts et applications clés

    Les vecteurs propres représentent un concept fondamental en algèbre linéaire, avec de nombreuses applications passionnantes dans divers domaines tels que l’informatique, les mathématiques appliquées ou le machine learning. Pourtant, ils peuvent sembler abstraits et intimidants, souvent présentés dans des termes très rigoureux et généraux sur plusieurs centaines de pages. Par ailleurs, les informations concernant leur nature et leurs applications sont dispersées dans de multiples sources. Cet article vise à rendre les vecteurs propres plus accessibles grâce à des visualisations simples et des exemples concrets.

    Vecteurs et bases

    Dans un espace de dimension N, un vecteur \(v\) est une liste de N scalaires :

    \[v=\begin{bmatrix}x_1 \\ x_2 \\ \vdots \\ x_N\end{bmatrix}\]

    La base standard (S) est un ensemble particulier de N vecteurs \(s_1, s_2, \dots, s_N\), où \(s_k\) est défini par un 1 à la position k et 0 ailleurs.

    Par défaut, chaque vecteur est exprimé par rapport à cette base standard. Autrement dit, le vecteur \(v\) ci-dessus signifie que :

    \(v = x_1 \cdot s_1 + x_2 \cdot s_2 + \dots + x_N \cdot s_N\). Pour rendre la base explicite, on note \(v=v_S\).

    Géométriquement, un vecteur est une flèche partant de l’origine de l’espace N-dimensionnel et se terminant au point identifié par ses composantes.

    L’image suivante illustre en 2D la base standard \(s_1 = \begin{bmatrix} 1 \\ 0 \end{bmatrix}\), \(s_2 = \begin{bmatrix} 0 \\ 1 \end{bmatrix}\), accompagnée de deux autres vecteurs \(v_S = \begin{bmatrix} 3 \\ -1 \end{bmatrix}\) et \(w_S = \begin{bmatrix} 1 \\ 1 \end{bmatrix}\) :

    Vecteurs et base standard en 2D

    Un ensemble de vecteurs est dit indépendant si aucun d’eux ne peut s’écrire comme une combinaison linéaire des autres. Par exemple, les vecteurs \(\begin{bmatrix} 3 \\ -1 \end{bmatrix}\) et \(\begin{bmatrix} 1 \\ 1 \end{bmatrix}\) sont indépendants, alors que \(\begin{bmatrix} 1 \\ 1 \end{bmatrix}\) et \(\begin{bmatrix} 2 \\ 2 \end{bmatrix}\) ne le sont pas, car ce dernier est le double du premier.

    Dans un espace N-dimensionnel, une base est tout ensemble de N vecteurs indépendants. La base standard n’est pas unique ; toute base permet d’exprimer de manière unique chaque vecteur de l’espace comme une somme pondérée de ces vecteurs de base.

    Par conséquent, un même vecteur peut être défini selon différentes bases. Les valeurs et la signification de chaque composante peuvent changer, mais le vecteur reste identique. Par exemple, nous avons défini précédemment \(v\) et \(w\) par rapport à la base standard. Maintenant, choisissons la base constituée de ces deux vecteurs, et exprimons les vecteurs \(s_1\) et \(s_2\) par rapport à cette nouvelle base :

    Changement de base vectorielle en 2D

    Comment changer la base d’un vecteur

    Soit \(v_S\) un vecteur exprimé dans la base standard, et B une autre base composée des vecteurs \(b_1, b_2, \dots, b_N\).

    On définit la matrice carrée \(B\) de taille N par N dont la j-ième colonne est \(b_{jS}\), c’est-à-dire l’expression du vecteur \(b_j\) dans la base standard.

    Le vecteur exprimé dans la base B est alors donné par :

    \(v_B = B^{-1} \cdot v_S\) et inversement \(v_S = B \cdot v_B\).

    Les opérateurs

    Un opérateur est une matrice carrée \(O_S\) de dimension N décrivant comment un vecteur \(v_S\) est transformé en un autre vecteur \(u_S\) :

    \(u_S = O_S \cdot v_S\).

    On peut voir les vecteurs comme des « données », et les opérateurs comme des « transformations » appliquées aux données.

    Dans un espace 2D, plusieurs types d’opérateurs sont couramment rencontrés :

    Opérateur de mise à l’échelle

    Exemple d’opérateur :

    \(O_1 = \begin{bmatrix} k_x & 0 \\ 0 & k_y \end{bmatrix}\), par exemple \(O_1 = \begin{bmatrix} 1.5 & 0 \\ 0 & 2 \end{bmatrix}\).

    La figure ci-dessous illustre l’espace 2D original à gauche, l’espace transformé par \(O_1\) au centre, et à droite des gradients indiquant le déplacement des points :

    Opérateur de mise à l'échelle

    Opérateur cisaillement

    Un exemple :

    \(O_2 = \begin{bmatrix} 1 & s_x \\ s_y & 1 \end{bmatrix}\), par exemple \(O_2 = \begin{bmatrix} 1 & 0.25 \\ 0.5 & 1 \end{bmatrix}\).

    Opérateur de cisaillement

    Opérateur de rotation

    La matrice de rotation de vecteurs dans le sens anti-horaire d’un angle \(\phi\) est :

    \(O_3 = \begin{bmatrix} \cos \phi & -\sin \phi \\ \sin \phi & \cos \phi \end{bmatrix}\).

    Par exemple, une rotation de 30° correspond à :

    \(O_3 = \begin{bmatrix} 0.866 & -0.5 \\ 0.5 & 0.866 \end{bmatrix}\).

    Opérateur de rotation

    Opérateurs composites

    Si un opérateur \(O\) est la composition des opérateurs \(O_1\) puis \(O_2\), on a :

    \(O = O_2 \cdot O_1\).

    Par exemple, appliquer successivement rotation, cisaillement puis mise à l’échelle correspond à :

    \(O_4 = O_1 \cdot O_2 \cdot O_3 = \begin{bmatrix} 1.5 & 0 \\ 0 & 2 \end{bmatrix} \cdot \begin{bmatrix} 1 & 0.25 \\ 0.5 & 1 \end{bmatrix} \cdot \begin{bmatrix} 0.866 & -0.5 \\ 0.5 & 0.866 \end{bmatrix} = \begin{bmatrix} 1.4865 & -0.42525 \\ 1.866 & 1.232 \end{bmatrix}\).

    Opérateur composite

    La translation n’est pas un opérateur linéaire

    Surprise : la translation n’est pas un opérateur linéaire classique. Elle peut toutefois être modélisée comme telle en ajoutant une dimension temporaire :

    Par exemple, pour traduire en 2D un vecteur \(v = \begin{bmatrix} v_x \\ v_y \end{bmatrix}\) horizontalement de \(t_x\) et verticalement de \(t_y\), on ajoute une troisième composante égale à 1 :

    \(v = \begin{bmatrix} v_x \\ v_y \\ 1 \end{bmatrix}\).

    L’opérateur de translation devient :

    \(O = \begin{bmatrix} 1 & 0 & t_x \\ 0 & 1 & t_y \\ 0 & 0 & 1 \end{bmatrix}\).

    La transformation produit :

    \(u = O \cdot v = \begin{bmatrix} v_x + t_x \\ v_y + t_y \\ 1 \end{bmatrix}\), puis on supprime la dimension temporaire.

    Changer la base d’un opérateur

    Comme pour les vecteurs, changer la base dans laquelle un opérateur est exprimé modifie sa représentation :

    Soit \(O_S\) un opérateur dans la base standard, et \(B\) une autre base avec la matrice carrée \(B\) définie précédemment.

    Alors :

    \(O_B = B^{-1} \cdot O_S \cdot B\) et inversement \(O_S = B \cdot O_B \cdot B^{-1}\).

    Valeurs propres et vecteurs propres

    Pour un opérateur \(O\), un vecteur propre est un vecteur non nul qui, lorsqu’il est transformé par \(O\), reste sur la même droite (il peut conserver ou inverser son sens) mais peut voir sa norme modifiée.

    Mathématiquement, si un vecteur \(e \neq 0\) et un scalaire \(\lambda\) vérifient :

    \(O \cdot e = \lambda \cdot e\), alors :

    • \(e\) est un vecteur propre
    • \(\lambda\) est la valeur propre associée

    Tout multiple non nul de \(e\) est aussi vecteur propre associé à la même valeur propre (ils ne sont pas indépendants). Ainsi, on s’intéresse généralement à l’axe défini par un vecteur propre plutôt qu’à un vecteur propre particulier.

    Un opérateur peut posséder jusqu’à N vecteurs propres indépendants, formant une base appelée base propre.

    Appliquer plusieurs fois l’opérateur à un vecteur quelconque non propre converge vers le vecteur propre associé à la valeur propre de plus grande valeur absolue (sauf si le vecteur initial est déjà propre). Cette propriété est illustrée dans les images suivantes et s’éclaircira avec la forme diagonale d’un opérateur.

    Exemples en dimension 2

    Considérons l’opérateur :

    \(O=\begin{bmatrix} 1 & 2 \\ 2 & 1 \end{bmatrix}\), qui possède deux axes de vecteurs propres :

    \(e_1 = \begin{bmatrix} t \\ t \end{bmatrix}\), \(e_2 = \begin{bmatrix} t \\ -t \end{bmatrix}\), pour tout \(t \neq 0\), avec valeurs propres \(\lambda_1=3\) et \(\lambda_2=-1\).

    La transformation et les axes propres (en rouge) sont représentés ci-dessous :

    Exemple de vecteurs propres en 2D

    Un autre opérateur :

    \(O=\begin{bmatrix} 1 & 0.5 \\ 0 & 1 \end{bmatrix}\) possède un unique axe propre \(e=\begin{bmatrix} t \\ 0 \end{bmatrix}\), valeur propre \(\lambda=1\).

    Vecteur propre unique

    Enfin, un opérateur de rotation :

    \(O=\begin{bmatrix} 0.866 & -0.5 \\ 0.5 & 0.866 \end{bmatrix}\) n’a pas de vecteur propre (en 2D, les rotations n’en possèdent pas ; en 3D, elles en ont un axe).

    Rotation sans vecteur propre

    Un opérateur identité ou de mise à l’échelle uniforme :

    \(O=\begin{bmatrix} 2 & 0 \\ 0 & 2 \end{bmatrix}\) a pour vecteurs propres tous les vecteurs non nuls, avec \(\lambda=2\).

    Tous les vecteurs sont propres

    Calcul des valeurs propres

    On cherche \(\lambda\) tels que :

    \((O – \lambda I) \cdot e = 0\), avec \(e \neq 0\), ce qui revient à résoudre :

    \(\det(O – \lambda I) = 0\).

    En dimension 2, si :

    \(O = \begin{bmatrix} a & b \\ c & d \end{bmatrix}\), alors :

    \(\lambda_{1,2} = \frac{a + d \pm \sqrt{(a + d)^2 – 4 (a d – b c)}}{2}\).

    • Si la racine carrée n’est pas définie dans ℝ, l’opérateur n’a pas de valeurs propres réelles.
    • Dans ℂ (nombres complexes), les valeurs propres existent toujours. Si \(\lambda_1 \neq \lambda_2\), il y a exactement deux axes de vecteurs propres.
    • Si \(\lambda_1 = \lambda_2\), l’opérateur a soit un seul axe propre, soit tous les axes sont propres.

    Calcul des vecteurs propres

    Pour chaque valeur propre \(\lambda_k\), on résout :

    \((O – \lambda_k I) \cdot e_k = 0\).

    Ces équations ne sont pas indépendantes, on obtient donc une famille de solutions où au moins une variable reste libre.

    Par exemple, pour :

    \(O = \begin{bmatrix} 1 & 2 \\ 2 & 1 \end{bmatrix}\) avec \(\lambda_1 = 3\), \(\lambda_2 = -1\).

    Pour \(\lambda_1\) :

    \(\begin{bmatrix} -2 & 2 \\ 2 & -2 \end{bmatrix} \cdot e_1 = 0\), donc \(e_1 = \begin{bmatrix} t \\ t \end{bmatrix}\).

    Pour \(\lambda_2\) :

    \(e_2 = \begin{bmatrix} t \\ -t \end{bmatrix}\).

    Quelques propriétés supplémentaires

    • Une matrice carrée \(A\) et sa transposée \(A^T\) ont les mêmes valeurs propres.
    • Une matrice stochastique (valeurs positives, chaque ligne somme à 1) a toujours \(\lambda=1\) comme valeur propre maximale.
    • Tous les vecteurs propres indépendants d’une matrice symétrique sont orthogonaux.

    Applications clés des vecteurs propres

    Malgré leur définition pointue, les vecteurs propres ont un large éventail d’applications pratiques.

    1. Diagonalisation et exponentiation des matrices

    Pour une matrice \(A\), calculer \(A^k\) pour \(k \gg 1\) peut être coûteux. En choisissant une base propre \(E\), on écrit :

    \(A = E \cdot O_E \cdot E^{-1}\), où \(O_E\) est diagonale avec les valeurs propres sur la diagonale.

    Alors :

    \(A^k = E \cdot O_E^k \cdot E^{-1}\), et comme \(O_E^k\) est diagonale, son calcul est simple.

    Exemple : pour :

    \(A = \begin{bmatrix} -2 & 1 \\ -4 & 3 \end{bmatrix}\), avec \(\lambda_1 = -1\), \(\lambda_2 = 2\), on obtient :

    \(A^{1000} = \begin{bmatrix} \frac{4-2^{1000}}{3} & \frac{2^{1000}-1}{3} \\ \frac{4-2^{1002}}{3} & \frac{2^{1002}-1}{3} \end{bmatrix}\).

    2. Séries récursives

    Série de Fibonacci : chaque terme est somme des deux précédents, modélisée dans un espace 2D par :

    \(v_k = \begin{bmatrix} f_{k-1} \\ f_k \end{bmatrix}\), avec opérateur :

    \(O = \begin{bmatrix} 0 & 1 \\ 1 & 1 \end{bmatrix}\).

    La formule directe du \(n\)-ième terme est :

    \(f_n = \frac{1}{\sqrt{5}} \left( \left(\frac{1 + \sqrt{5}}{2}\right)^n – \left(\frac{1 – \sqrt{5}}{2}\right)^n \right)\).

    Série géométrique : modélisée par :

    \(v_k = \begin{bmatrix} a_k \\ g_k \end{bmatrix}\), \(O = \begin{bmatrix} t & 0 \\ t & 1 \end{bmatrix}\).

    La formule fermée est :

    \(g_n = c \cdot \frac{1 – t^{n+1}}{1 – t}\), pour \(t \neq 1\).

    Série de Fibonacci modélisée

    3. Chaînes de Markov

    Une chaîne de Markov est un graphe orienté pondéré où la somme des poids sortants d’un nœud vaut 1.

    Chaque état est un vecteur, la transition est un opérateur stochastique.

    L’état stable est le vecteur propre associé à la valeur propre 1, représentant la distribution de probabilité après un grand nombre d’itérations.

    Exemple simple :

    Chaîne avec matrice de transition :

    \(A = \begin{bmatrix} 0.4 & 0.3 \\ 0.6 & 0.7 \end{bmatrix}\),

    avec vecteur propre associé :

    \(e_1 = \begin{bmatrix} \frac{1}{3} \\ \frac{2}{3} \end{bmatrix}\), vérifiant \(A \cdot e_1 = e_1\).

    Chaîne de Markov simple

    Application Google PageRank : chaque page Web est un nœud, les liens sont des arêtes avec poids égaux.

    Le vecteur propre dominant donne le rang d’importance des pages.

    4. Clustering spectral de graphes

    Pour un graphe non orienté connecté, le but est de trouver \(K\) clusters où les nœuds sont fortement connectés entre eux.

    On définit :

    • Matrice d’adjacence \(A\)
    • Matrice diagonale des degrés \(D\), avec \(D_{ii} = \sum_j A_{ij}\)
    • Matrice laplacienne \(L = D – A\)

    La matrice laplacienne a une valeur propre nulle unique si le graphe est connecté.

    Le vecteur propre associé à la deuxième plus petite valeur propre (\(e_2\)) sert à séparer les nœuds en deux groupes (selon le signe des composantes).

    Pour plus de groupes, on utilise les vecteurs propres suivants et applique l’algorithme des k-moyennes sur leurs projections.

    Exemple : Le réseau du « Zachary’s Karate Club » représente les relations sociales entre 34 membres.

    Utiliser le clustering spectral permet de reproduire la scission réelle en deux groupes, à l’exception d’un membre ambigu (#9).

    5. Réduction de dimension avec l’ACP (PCA)

    Si les données sont des vecteurs N-dimensionnels, il est souvent utile de les réduire à K dimensions en conservant un maximum d’information.

    • Compression des données
    • Visualisation (2D, 3D)
    • Amélioration de l’efficacité des modèles
    • Réduction du surapprentissage

    L’Analyse en Composantes Principales (ACP) repose sur les vecteurs propres.

    On centre et normalise les données, puis on calcule la matrice de covariance \(V\) et ses vecteurs propres.

    Les K premiers vecteurs propres \(e_1, \dots, e_K\) correspondent aux directions de plus grande variance.

    Pour réduire un vecteur \(d_N\) en \(d_K\), on calcule :

    \(d_K = E \cdot d_N\), où \(E\) a ses lignes égales aux vecteurs propres.

    Application Eigenfaces pour la reconnaissance faciale : un visage représenté par N pixels devient un vecteur de dimension K bien plus petite.

    En compressant un jeu d’images de visages, on peut les reconstruire avec une qualité satisfaisante.

    Compression d'images par eigenfaces

    Les 25 premières eigenfaces extraites sont :

    Eigenfaces principales

    Enfin, la moyenne, l’écart-type et leur ratio sont représentés ici :

    Statistiques des visages

    Visualisation de données multidimensionnelles : par exemple, le jeu de données IRIS (4 dimensions) projeté sur les deux premiers vecteurs propres :

    Projection PCA du dataset IRIS

    Cette projection sépare bien les trois espèces d’iris, utile pour la classification.

    Vecteurs Propres | Valeurs Propres | Algèbre Linéaire | Machine Learning | Pca | Markov | Clustering Spectral | Google Pagerank | Mathématiques | Informatique
    source:https://towardsdatascience.com/practical-eigenvectors/

    LAISSER UN COMMENTAIRE

    S'il vous plaît entrez votre commentaire!
    S'il vous plaît entrez votre nom ici


    Actualités

    L’acteur de Friends, Matthew Perry, décède à 54 ans

    "Matthew Perry, célèbre pour son rôle de Chandler Bing dans Friends, décède à 54 ans. Acteur très apprécié, sa mort suscite l'émotion mondiale."

    Entité sioniste déploie des navires de guerre en Mer Rouge selon un expert militaire

    Entité sioniste déploie des navires de guerre en Mer Rouge pour contrer les Houthis au Yémen, une manœuvre vue comme une démonstration de force envers l'Iran.

    L’affaire des SMS entre Pfizer et la Commission européenne : ce qu’il faut savoir

    En avril 2021, le New York Times a révélé...

    Banque suisse : Credit Suisse en chute libre après la faillite de la SVB

    L'action de Credit Suisse a dévissé de plus de...

    Le Retour de Microsoft avec Bing et Edge : Une Menace pour Google ?

    Depuis moins de trois mois, ChatGPT a déjà créé...

    Taïwan: Lai réaffirme que l’île ne dépend pas de Pékin

    Lai Ching-te a réaffirmé que Taïwan n’appartenait pas à Pékin et que seul le peuple taïwanais pouvait décider de l’avenir de l’île. Une déclaration qui relance les questions sur l’équilibre entre Taipei, Washington et la Chine.

    Google, UE et parasite SEO : le vrai combat autour du site reputation abuse

    Google propose des concessions à Bruxelles sur sa politique site reputation abuse. Derrière le parasite SEO, un bras de fer sur la visibilité des médias.

    Attaque de drones sur Moscou: ce que l’on sait de la plus forte vague revendiquée depuis plus d’un an

    La Russie dit avoir subi sa plus importante attaque de drones sur Moscou depuis plus d’un an, avec au moins quatre morts selon Reuters.

    Ebola: l’OMS déclenche son plus haut niveau d’alerte internationale pour la RDC et l’Ouganda

    L’OMS a élevé l’épidémie d’Ebola en RDC et en Ouganda au rang d’urgence de santé publique de portée internationale.

    OpenAI et Malte lancent une expérimentation inédite: un an de ChatGPT Plus pour les habitants formés à l’IA

    Malte veut démocratiser l’usage de l’IA avec un an d’accès à ChatGPT Plus après un parcours de formation gratuit.

    Tunisie : des manifestants remettent la pression sur Kaïs Saïed au cœur d’une crise politique et sociale

    La mobilisation de samedi à Tunis relance les inquiétudes sur les libertés publiques et sur l’aggravation de la crise économique tunisienne.

    Hantavirus : un cas confirmé au Canada, faut-il s’inquiéter en France ? Ce que l’on sait des symptômes, de la transmission et du risque...

    Après un nouveau cas confirmé au Canada, voici ce que disent Reuters, l’OMS, l’ECDC, le CDC, le ministère de la Santé et l’Institut Pasteur sur le risque réel en France.

    SpaceX : BlackRock aurait discuté d’un investissement géant pour l’IPO, ce que l’on sait vraiment

    Un possible investissement de BlackRock dans l’IPO de SpaceX alimente les marchés, mais le dossier reste au stade de discussions rapportées et non confirmées officiellement.

    à Lire

    Categories