Un vecteur est une flèche, pas une liste de nombres

Lorsque les gens disent « vecteur », la plupart des débutants pensent à « tableau de nombres ». Cette intuition est fausse. Un vecteur est une flèche dans l’espace : il a une direction et une longueur. Imaginez-vous debout au centre d'une ville. « Trois pâtés de maisons au nord et deux à l'est » est un vecteur. En ML, chaque objet (client, photo, mot) devient une telle flèche dans un espace de fonctionnalités de grande dimension, et le modèle apprend à distinguer ces flèches.

Vecteurs : intuition et mathématiques

Mathématiquement, un vecteur est une liste ordonnée de nombres, par ex. [3,0, -1,5, 0,8]. Chaque nombre est une coordonnée selon une dimension. En ML, les caractéristiques d'un objet (taille, poids, âge) sont des coordonnées et l'objet vit dans l'espace des caractéristiques. Les objets proches sont des objets similaires.
Un vecteur spécifie la position d'un point dans un espace de fonctionnalités de grande dimension
Deux vecteurs « proches » → deux objets similaires. C'est sur cela que k-NN s'appuie
La direction d'un vecteur compte plus que sa longueur - la similarité cosinusoïdale l'utilise
Word2Vec, BERT, CLIP — tous transforment des objets (mots, images) en vecteurs
L1 et L2 : comment mesurer la longueur d'une flèche

La norme d’un vecteur est sa « longueur ». Mais la longueur peut être mesurée de différentes manières. L2 (Euclidienne) est la ligne droite allant de la queue à la pointe :x2+y2\sqrt{x^2 + y^2}. L1 (Manhattan) se déplace sur une grille, uniquement selon des axes :x+y|x|+|y|. Cliquez sur chaque métrique ci-dessous pour voir la différence visuellement.

Cliquez sur une métrique pour mettre en surbrillance le chemin correspondant
2Д ВЕКТОРНОЕ ПРОСТРАНСТВО
0(3, 4)
Produit scalaire : à quel point deux flèches s'alignent

Le produit scalaireab=a1b1+a2b2\mathbf{a}\cdot\mathbf{b}=a_1b_1+a_2b_2mesure à quel point deux vecteurs pointent dans la même direction. Si l’angle entre eux est petit, le produit est grand et positif. S'ils sont perpendiculaires, zéro. S’ils pointent dans des directions opposées, c’est négatif. Faites glisser le vecteur B avec la souris et observez comment le résultat change.

Faites glisser la pointe du vecteur B et observez l'angle et la « similarité » changer
СКАЛЯРНОЕ ПРОИЗВЕДЕНИЕ · Objet A · Objet B
Objet AObjet B
cos(θ) = directional similarity
cos(θ) = 0.857similarity +
Objet A · Objet B = 15.00 = |Objet A|·|Objet B|·cos(θ) = 4.12 · 4.24 · 0.85715.00
Dans un réseau neuronal, chaque neurone est un produit scalaire

Chaque neurone fait exactement une chose : il calcule le produit scalaire du vecteur d’entrée avec le vecteur de poids. Ensuite, l’activation décide si le neurone « se déclenche ». C'est pourquoi la compréhension des vecteurs n'est pas une mathématique abstraite : c'est la base du fonctionnement de tout réseau neuronal.

Cliquez sur une ligne pour voir ce qu'elle fait ▼
python
1
import numpy as np
2
a = np.array([1.0, 2.0, 3.0])
3
b = np.array([4.0, 5.0, 6.0])
4
dot = np.dot(a, b)  # 1*4 + 2*5 + 3*6 = 32
5
l2 = np.linalg.norm(a)  # √14 ≈ 3.74
6
l1 = np.linalg.norm(a, ord=1)  # 6.0
7
cos_sim = dot / (np.linalg.norm(a) * np.linalg.norm(b))
Dans les systèmes de recommandation (Spotify, Netflix), chaque utilisateur et chaque chanson est un vecteur. Les recommandations sont une recherche du voisin le plus proche dans cet espace. C'est pourquoi les mathématiques vectorielles ne sont pas une abstraction : elles constituent le cœur des produits réels.