Pour calculer sa norme L1, on utilise la formule suivante : import numpy as np
puis x = np.array([x1, x2, x3, x4])
et norme_L1 = np.sum(np.abs(x))
– La sortie sera la somme des valeurs absolues des éléments de x !
- Définition mathématique. La norme L1, aussi appelée norme de Manhattan ou norme absolue, mesure la longueur d'un vecteur en additionnant la valeur absolue de chacune de ses composantes.
- La formule clé. Pour un vecteur x = [x₁, x₂, x₃, x₄], la norme L1 se calcule comme : ||x||₁ = Σ|xᵢ| = |x₁| + |x₂| + |x₃| + |x₄|
- Une mesure sans direction. La lettre L dans la formule représente l'indice des éléments du vecteur, c'est-à-dire qu'on parcourt chaque composante par une, en prenant sa valeur absolue. La somme de toutes ces valeurs absolues donne la norme L1.
- Prenons un vecteur concret. Pour x = [3, -4, 1, -2], la norme L1 de sera : ||x||₁ = |3| + |-4| + |1| + |-2| = 3 + 4 + 1 + 2 = 10
- Chaque terme xi représente. La i-ème composante du vecteur x. L'indice i=1 au bas de la somme signifie qu'on commence à la première composante du vecteur. Le n en haut signifie qu'on va jusqu'à la nième composante.
- Mesure de "taille" du vecteur. Nous obtenons donc une mesure de la "taille" du vecteur, sans tenir compte des signes. C'est une mesure souvent utilisée lorsqu'on veut favoriser la parcité, c'est-à-dire avoir des vecteurs avec beaucoup de zéros.
- Méthode avec NumPy (recommandée).
import numpy as np
x = np.array([3, -4, 1, -2])
norme_L1 = np.sum(np.abs(x))
print(norme_L1) # Sortie: 10
- Décomposition du code.
np.abs(x)
calcule la valeur absolue de chaque élément : [3, 4, 1, 2]. Puisnp.sum()
additionne tous ces éléments pour obtenir la norme L1 finale. - Alternative sans NumPy.
x = [3, -4, 1, -2]
norme_L1 = sum(abs(xi) for xi in x)
print(norme_L1) # Sortie: 10
— Plus lisible mais moins efficace pour de gros vecteurs.
4. Valeur absolue vs sparsité : la différence cruciale
La valeur absolue d'un nombre, c'est sa distance à zéro, sans tenir compte du signe. Autrement dit, c'est la partie positive d'un nombre positif ou negatif. On la note avec des barres verticales : |x|. Dans le cas des vecteurs, on applique cette règle à chaque composante. Par exemple, le vecteur suivant est sparse : v=[0,0.5,0,-3,0]. Ici, 4 composantes sur 6 sont nulles. C'est un vecteur parcimonieux, ou dit autrement, sparse.
5. Pourquoi "norme de Manhattan" ?- L'analogie géographique. Le nom vient de la géométrie de la ville de Manhattan, à New York. Les rues y sont organisées en grille, comme un damier.
- Déplacement en ville. Pour aller d'un point A à un point B, tu ne peux pas te déplacer en ligne droite (comme le fait la norme L2), mais en suivant les rues, soit horizontalement puis verticalement.
- Distance parcourue. Donc, la distance parcourue est la somme des déplacements horizontaux et verticaux, ce qui correspond exactement à la somme des valeurs absolues des composantes : c'est ça la norme L1.
- Régularisation Lasso. La norme L1 favorise la sparsité, c'est-à-dire qu'elle pousse certaines composantes d'un vecteur à devenir zéro. Autrement dit, on additionne la valeur absolue de chaque composante du vecteur.
- Sélection de caractéristiques. En machine learning ou traitement du signal, on cherche souvent des solutions simples, compréhensibles, rapides à traiter.
- Avantage de la parcimonie. Un vecteur sparse a peu de composantes non nulles, ce qui réduit la complexité et facilite l'interprétation. Pourquoi c'est utile ? En machine learning on traitement du signal, on cherche souvent des solutions simples, compréhensibles, rapides à traiter.
Prenons un vecteur x défini comme suit : x = [x1, x2, x3, x4]. La norme L1 favorise la sparsité : lorsqu'on l'utilise dans une fonction de coût ou d'optimisation, elle pousse certaines composantes du vecteur à devenir zéro. C'est pour cela qu'elle est souvent utilisée en régularisation, par exemple dans le modèle Lasso.
- Un outil de régularisation puissant. La norme L1 aide à éviter le surapprentissage en simplifiant les modèles.
- Sélection automatique des variables. Elle identifie automatiquement les caractéristiques les plus importantes.
- Interprétabilité améliorée. Les modèles résultants sont plus faciles à comprendre et à expliquer.
« La norme L1 favorise la sparsité : lorsqu'on l'utilise dans une fonction de coût ou d'optimisation, elle pousse certaines composantes du vecteur à devenir zéro. » – Principe fondamental du machine learning parcimonieux