Aller au contenu principal
Retour au blog

Machine Learning

Algorithmes de Clustering Non Supervisé : k-Means, DBSCAN et Analyse Mathématique Comparative

Une analyse comparative de trois méthodes de clustering : convergence, NP-difficulté, garanties d’approximation et bornes de complexité, accompagnées d’exemples illustratifs.

Disponible en :
Algorithmes de Clustering Non Supervisé : k-Means, DBSCAN et Analyse Mathématique Comparative

Résumé

Le clustering est un problème fondamental de l'apprentissage non supervisé, pourtant les garanties formelles des algorithmes largement déployés sont rarement examinées dans des traitements unifiés. Cet article présente une analyse comparative rigoureuse de trois paradigmes majeurs de clustering : les méthodes à base de centroïdes (kk-means), à base de densité (DBSCAN), et hiérarchiques (agglomératives). Nous formalisons l'objectif du kk-means comme un problème d'optimisation non convexe, prouvons que l'algorithme de Lloyd converge en un nombre fini d'itérations via un argument de descente de coordonnées, et établissons que le problème kk-means optimal est NP-difficile même pour k=2k=2 en dimension générale. Nous dérivons ensuite la garantie d'approximation compétitive en O(log⁡k)O(\log k) de l'initialisation kk-means++. Pour DBSCAN, nous fournissons un cadre formel d'accessibilité par densité, prouvons la correction vis-à-vis des composantes connexes par densité, et analysons sa complexité dans le pire cas en Θ(n2)\Theta(n^2) et en O(nlog⁡n)O(n \log n) avec index. Nous évaluons toutes les méthodes selon des indices de validité interne formels — le coefficient de silhouette et l'indice de Davies–Bouldin — dont nous dérivons les propriétés mathématiques. L'analyse comparative identifie les conditions géométriques et distributionnelles précises sous lesquelles chaque paradigme est supérieur, allant au-delà de l'heuristique informelle selon laquelle « cela dépend des données ».

1. Introduction

1.1 Motivation

Le clustering — la tâche de partitionner un ensemble de données en groupes d'objets similaires sans supervision étiquetée — occupe une position centrale en science des données, en reconnaissance de formes et en analyse exploratoire. Malgré son omniprésence, le clustering n'est pas un problème bien défini unique, mais une famille de problèmes d'optimisation, chacun encodant des hypothèses géométriques ou statistiques différentes sur ce qui constitue une « bonne » partition. La conséquence pratique est que les praticiens sélectionnent régulièrement des algorithmes par commodité ou par réglage empirique, sans comprendre formellement quand une méthode choisie est optimale, approximativement optimale, ou manifestement inadaptée.

Cela est important théoriquement parce que les objectifs de clustering encodent une structure combinatoire profonde. Le problème du kk-means, par exemple, est NP-difficile (Aloise et al., 2009 ; Dasgupta, 2008), pourtant l'heuristique de Lloyd (Lloyd, 1982) reste largement utilisée. Comprendre pourquoi elle fonctionne — et quand elle échoue — nécessite une analyse formelle que les traitements habituels omettent.

1.2 Énoncé du Problème

Nous considérons le problème général suivant. Étant donné un ensemble de données fini X={x1,…,xn}⊂RdX = \{x_1, \dots, x_n\} \subset \mathbb{R}^d et une fonction de dissimilarité δ:Rd×Rd→R≥0\delta: \mathbb{R}^d \times \mathbb{R}^d \to \mathbb{R}_{\ge 0}, produire une partition C={C1,…,Ck}\mathcal{C} = \{C_1, \dots, C_k\} de XX qui optimise un critère de qualité. La nature du critère — et si kk est donné ou inféré — distingue fondamentalement les paradigmes de clustering que nous analysons.

1.3 Travaux Antérieurs et Résultats Existants

Lloyd (1982) a introduit l'algorithme itératif de raffinement des centroïdes universellement appelé « kk-means ». Sa complexité dans le pire cas en nombre d'itérations a été montrée superpolynomiale par Vattani (2011), qui a construit des instances nécessitant 2Ω(n)2^{\Omega(\sqrt{n})} itérations dans le plan. Arthur et Vassilvitskii (2007) ont introduit kk-means++ avec une garantie d'approximation prouvable en O(log⁡k)O(\log k). La NP-difficulté du problème kk-means plan a été établie par Mahajan, Nimbhorkar et Varadarajan (2012) et pour la dimension générale par Aloise et al. (2009). Ester et al. (1996) ont introduit DBSCAN, dont les propriétés formelles ont été analysées par Sander et al. (1998). Les indices de validation interne ont été formalisés par Rousseeuw (1987) pour le coefficient de silhouette et Davies et Bouldin (1979) pour leur indice éponyme.

1.4 Contributions

Cet article apporte les contributions spécifiques suivantes :

  1. Nous prouvons la convergence du kk-means comme descente de coordonnées sur l'objectif WCSS (somme intra-cluster des carrés) et analysons l'écart entre cette garantie et la NP-difficulté de l'optimum global.
  2. Nous dérivons le ratio d'approximation O(log⁡k)O(\log k) du kk-means++.
  3. Nous formalisons DBSCAN via l'accessibilité par densité, prouvons que sa sortie est égale à l'ensemble des composantes connexes par densité maximales, et établissons des bornes de complexité précises.
  4. Nous comparons toutes les méthodes selon un cadre multi-critères rigoureux incluant la complexité, les hypothèses géométriques et les indices de qualité formels.

1.5 Organisation

La section 2 établit les notations, définitions et résultats préliminaires. La section 3 présente l'analyse centrale : kk-means (§3.1), DBSCAN (§3.2), clustering hiérarchique (§3.3), et le cadre comparatif formel (§3.4). La section 4 explique comment préparer une comparaison reproductible. La section 5 offre la discussion, les limitations et les problèmes ouverts. La section 6 conclut.


2. Préliminaires et Définitions

2.1 Notations

Tout au long de cet article, X={x1,…,xn}⊂RdX = \{x_1, \dots, x_n\} \subset \mathbb{R}^d désigne l'ensemble de données en entrée. Nous écrivons ∥x−y∥\|x - y\| pour la norme euclidienne (ℓ2\ell_2) sauf indication contraire. Une kk-partition de XX est une collection C={C1,…,Ck}\mathcal{C} = \{C_1, \dots, C_k\} de sous-ensembles non vides, disjoints deux à deux et dont l'union est XX. Pour un ensemble fini S⊂RdS \subset \mathbb{R}^d, son centroïde est μ(S)=1∣S∣∑x∈Sx\mu(S) = \frac{1}{|S|} \sum_{x \in S} x. Nous utilisons [k][k] pour désigner {1,2,…,k}\{1, 2, \dots, k\}. Toute l'analyse de complexité est dans le modèle RAM avec des opérations arithmétiques de coût Θ(d)\Theta(d) sur des vecteurs de dimension dd.

2.2 Définitions Fondamentales

Définition 1 (Somme Intra-Cluster des Carrés — WCSS). Étant donné une kk-partition C={C1,…,Ck}\mathcal{C} = \{C_1, \dots, C_k\} de XX, l'objectif WCSS est :

W(C)=∑j=1k∑x∈Cj∥x−μ(Cj)∥2W(\mathcal{C}) = \sum_{j=1}^k \sum_{x \in C_j} \|x - \mu(C_j)\|^2

On peut également écrire W(C)=∑j=1k∣Cj∣⋅Var(Cj)W(\mathcal{C}) = \sum_{j=1}^k |C_j| \cdot \text{Var}(C_j), où Var(Cj)=1∣Cj∣∑x∈Cj∥x−μ(Cj)∥2\text{Var}(C_j) = \frac{1}{|C_j|} \sum_{x \in C_j} \|x - \mu(C_j)\|^2.

Exemple. Pour X={1,2,10,11}⊂RX = \{1, 2, 10, 11\} \subset \mathbb{R} avec k=2k = 2, la partition {{1,2},{10,11}}\{\{1, 2\}, \{10, 11\}\} donne W=(0,25+0,25)+(0,25+0,25)=1W = (0{,}25 + 0{,}25) + (0{,}25 + 0{,}25) = 1, tandis que {{1,10},{2,11}}\{\{1, 10\}, \{2, 11\}\} donne W=40,5W = 40{,}5.

Définition 2 (ϵ\epsilon-voisinage). Pour ϵ>0\epsilon > 0 et x∈Xx \in X, le ϵ\epsilon-voisinage de xx est Nϵ(x)={y∈X:∥x−y∥≤ϵ}N_\epsilon(x) = \{y \in X : \|x - y\| \le \epsilon\}.

Définition 3 (Point noyau, point frontière, bruit). Étant donnés les paramètres ϵ>0\epsilon > 0 et minPts∈N\text{minPts} \in \mathbb{N}, un point x∈Xx \in X est un point noyau si ∣Nϵ(x)∣≥minPts|N_\epsilon(x)| \ge \text{minPts}. Un point est un point frontière s'il n'est pas un point noyau mais appartient à Nϵ(y)N_\epsilon(y) pour un certain point noyau yy. Tous les points restants sont du bruit.

Définition 4 (Accessibilité directe par densité). Un point yy est directement accessible par densité depuis xx si xx est un point noyau et y∈Nϵ(x)y \in N_\epsilon(x).

Définition 5 (Accessibilité par densité). Un point yy est accessible par densité depuis xx s'il existe une chaîne x=p1,p2,…,pm=yx = p_1, p_2, \dots, p_m = y telle que pi+1p_{i+1} est directement accessible par densité depuis pip_i pour tout i∈[m−1]i \in [m-1].

Définition 6 (Connexité par densité). Deux points x,y∈Xx, y \in X sont connexes par densité s'il existe un point z∈Xz \in X tel que xx et yy sont tous deux accessibles par densité depuis zz.

Exemple. Dans un ensemble de données avec trois blobs gaussiens de rayon approximativement rr séparés par une distance ≫r\gg r, fixer ϵ≈2r\epsilon \approx 2r et minPts\text{minPts} à un petit entier produit trois ensembles de points mutuellement connexes par densité, un par blob.

2.3 Résultats Préliminaires

Nous utiliserons les résultats suivants sans démonstration.

Théorème 0 (Borne inférieure basée sur les comparaisons, Knuth 1973). Tout algorithme de tri basé sur les comparaisons nécessite Ω(nlog⁡n)\Omega(n \log n) comparaisons dans le pire des cas. Nous invoquons ce résultat lors de l'analyse des coûts de construction d'index.

Proposition 0 (Identité de la médiane). Pour tout ensemble fini S⊂RdS \subset \mathbb{R}^d, le minimiseur unique de f(μ)=∑x∈S∥x−μ∥2f(\mu) = \sum_{x \in S} \|x - \mu\|^2 est le centroïde μ(S)\mu(S). Cela découle de ∇μf=0\nabla_\mu f = 0.


3. Analyse Centrale

3.1 Le Problème kk-Means

3.1.1 Formulation comme Optimisation

Le problème de clustering kk-means est :

min⁡CW(C)=min⁡C∑j=1k∑x∈Cj∥x−μ(Cj)∥2…(1)\min_{\mathcal{C}} W(\mathcal{C}) = \min_{\mathcal{C}} \sum_{j=1}^k \sum_{x \in C_j} \|x - \mu(C_j)\|^2 \quad \dots (1)

où la minimisation porte sur toutes les kk-partitions de XX. De manière équivalente, en introduisant des centres explicites μ1,…,μk∈Rd\mu_1, \dots, \mu_k \in \mathbb{R}^d et une fonction d'affectation σ:X→[k]\sigma: X \to [k], on peut écrire :

min⁡μ1,…,μk∈Rdmin⁡σ:X→[k]∑i=1n∥xi−μσ(i)∥2…(2)\min_{\mu_1, \dots, \mu_k \in \mathbb{R}^d} \min_{\sigma: X \to [k]} \sum_{i=1}^n \|x_i - \mu_{\sigma(i)}\|^2 \quad \dots (2)

Cette reformulation révèle que le problème se décompose en deux sous-problèmes imbriqués : optimiser les affectations étant donnés les centres, et optimiser les centres étant données les affectations. L'algorithme de Lloyd exploite précisément cette structure.

Hypothèse 1. L'entrée se situe dans Rd\mathbb{R}^d selon la métrique euclidienne. Tous les résultats du kk-means dans cet article supposent la distance ℓ2\ell_2 sauf indication contraire.

Hypothèse 2. Le nombre de clusters kk est donné en entrée. Le problème du choix de kk est hors du champ de cette analyse, bien que nous notions sa connexion aux critères de sélection de modèles (BIC, statistique du gap) dans la discussion.

3.1.2 L'Algorithme de Lloyd

L'algorithme de Lloyd alterne entre les deux sous-problèmes identifiés dans l'équation (2).

Algorithme 1 : Algorithme de Lloyd (kk-Means)

Entrée : X={x1,…,xn}⊂RdX = \{x_1, \dots, x_n\} \subset \mathbb{R}^d, nombre de clusters kk, centres initiaux μ1(0),…,μk(0)\mu_1^{(0)}, \dots, \mu_k^{(0)}.

Répéter jusqu'à convergence :

  1. Étape d'affectation : Pour chaque i∈[n]i \in [n], fixer σ(t)(i)=argminj∈[k]∥xi−μj(t)∥2\sigma^{(t)}(i) = \text{argmin}_{j \in [k]} \|x_i - \mu_j^{(t)}\|^2 (en brisant les égalités arbitrairement mais de manière cohérente).

  2. Étape de mise à jour : Pour chaque j∈[k]j \in [k], fixer μj(t+1)=1∣Cj(t)∣∑x∈Cj(t)x\mu_j^{(t+1)} = \frac{1}{|C_j^{(t)}|} \sum_{x \in C_j^{(t)}} x, où Cj(t)={xi:σ(t)(i)=j}C_j^{(t)} = \{x_i : \sigma^{(t)}(i) = j\}.

Sortie : Partition C(T)={C1(T),…,Ck(T)}\mathcal{C}^{(T)} = \{C_1^{(T)}, \dots, C_k^{(T)}\}.


Théorème 1 (Convergence de l'Algorithme de Lloyd). Sous les hypothèses 1 et 2, l'algorithme de Lloyd se termine en un nombre fini d'itérations. De plus, l'objectif WCSS est monotoniquement non croissant : W(C(t+1))≤W(C(t))W(\mathcal{C}^{(t+1)}) \le W(\mathcal{C}^{(t)}) pour tout t≥0t \ge 0.

Démonstration. Nous montrons que chaque étape de l'algorithme n'augmente pas l'objectif, et qu'il existe un nombre fini de partitions possibles.

Considérons l'objectif joint de l'équation (2) :

F(σ,μ1,…,μk)=∑i=1n∥xi−μσ(i)∥2F(\sigma, \mu_1, \dots, \mu_k) = \sum_{i=1}^n \|x_i - \mu_{\sigma(i)}\|^2

Étape d'affectation. En fixant μ1(t),…,μk(t)\mu_1^{(t)}, \dots, \mu_k^{(t)}, l'affectation σ(t)(i)=argminj∥xi−μj(t)∥2\sigma^{(t)}(i) = \text{argmin}_j \|x_i - \mu_j^{(t)}\|^2 minimise FF sur σ\sigma point par point (chaque terme de la somme est minimisé indépendamment). Ainsi :

F(σ(t),μ(t))≤F(σ(t−1),μ(t))…(3)F(\sigma^{(t)}, \mu^{(t)}) \le F(\sigma^{(t-1)}, \mu^{(t)}) \quad \dots (3)

Étape de mise à jour. L'étape de mise à jour calcule μj(t)=μ(Cj(t−1))\mu_j^{(t)} = \mu(C_j^{(t-1)}). Par la proposition 0, pour chaque cluster Cj(t−1)C_j^{(t-1)}, le centroïde minimise de manière unique ∑x∈Cj(t−1)∥x−μ∥2\sum_{x \in C_j^{(t-1)}} \|x - \mu\|^2. Par conséquent :

F(σ(t−1),μ(t))≤F(σ(t−1),μ(t−1))…(4)F(\sigma^{(t-1)}, \mu^{(t)}) \le F(\sigma^{(t-1)}, \mu^{(t-1)}) \quad \dots (4)

En combinant les inégalités (3) et (4) :

W(C(t))=F(σ(t),μ(t))≤F(σ(t−1),μ(t−1))=W(C(t−1))W(\mathcal{C}^{(t)}) = F(\sigma^{(t)}, \mu^{(t)}) \le F(\sigma^{(t-1)}, \mu^{(t-1)}) = W(\mathcal{C}^{(t-1)})

Puisque l'objectif est non croissant et que le nombre de kk-partitions distinctes de nn points est fini (au plus knk^n, le nombre de fonctions σ:X→[k]\sigma: X \to [k]), l'algorithme doit se terminer. □

La démonstration révèle que l'algorithme de Lloyd est une méthode de descente de coordonnées par blocs sur l'objectif joint F(σ,μ)F(\sigma, \mu), alternant la minimisation sur la variable discrète σ\sigma et les variables continues μ1,…,μk\mu_1, \dots, \mu_k. Ce lien avec la descente de coordonnées est la raison précise pour laquelle la convergence est garantie : chaque minimisation par bloc est exacte, et le nombre de valeurs possibles du bloc discret est fini.

Remarque. La convergence vers un minimum local est garantie, mais pas la convergence vers le minimum global. La non-convexité de l'objectif (qui est convexe en μ\mu pour σ\sigma fixé et vice versa, mais pas conjointement) signifie que différentes initialisations peuvent produire des minima locaux différents avec des valeurs d'objectif arbitrairement différentes.

3.1.3 Complexité par Itération

Proposition 1. Chaque itération de l'algorithme de Lloyd s'exécute en temps Θ(nkd)\Theta(nkd) et en espace Θ(nd+kd)\Theta(nd + kd).

Démonstration. L'étape d'affectation calcule ∥xi−μj∥2\|x_i - \mu_j\|^2 pour tout i∈[n],j∈[k]i \in [n], j \in [k], chacun nécessitant Θ(d)\Theta(d) opérations, soit un total de Θ(nkd)\Theta(nkd). L'étape de mise à jour calcule kk centroïdes, chacun comme moyenne d'au plus nn vecteurs dans Rd\mathbb{R}^d, soit un total de Θ(nd)\Theta(nd). Le terme dominant est Θ(nkd)\Theta(nkd). L'espace est Θ(nd)\Theta(nd) pour l'ensemble de données et Θ(kd)\Theta(kd) pour les centres. □

3.1.4 Complexité en Nombre d'Itérations : L'Écart entre Pratique et Pire Cas

La complexité totale de l'algorithme de Lloyd est O(T⋅nkd)O(T \cdot nkd) où TT est le nombre d'itérations jusqu'à la convergence. La question critique est la magnitude de TT.

Théorème 2 (Vattani, 2011). Il existe des ensembles de points dans R2\mathbb{R}^2 pour lesquels l'algorithme de Lloyd (avec une initialisation spécifique) nécessite 2Ω(n)2^{\Omega(\sqrt{n})} itérations.

Ce résultat, que nous énonçons sans démonstration, montre que le nombre d'itérations dans le pire cas est superpolynomial. Arthur et Vassilvitskii (2006) ont donné la première borne inférieure superpolynomiale ; la construction de Vattani l'a affinée.

En contraste saisissant, l'observation empirique montre systématiquement que TT est petit — typiquement O(1)O(1) à O(log⁡n)O(\log n) — sur des données du monde réel. Cet écart a été partiellement expliqué par l'analyse lissée :

Théorème 3 (Arthur et Vassilvitskii, 2009 — énoncé informel). Sous l'analyse lissée (chaque point d'entrée perturbé par un bruit gaussien de variance σ2\sigma^2), le nombre attendu d'itérations de l'algorithme de Lloyd est polynomial en nn et 1/σ1/\sigma.

Il s'agit d'un résultat profond reliant l'efficacité pratique du kk-means au fait que les constructions pathologiques du théorème 2 sont des phénomènes de mesure nulle sous perturbation.

3.1.5 NP-Difficulté du kk-Means Optimal

Théorème 4 (Aloise et al., 2009 ; Dasgupta, 2008 ; Mahajan et al., 2012). Le problème de trouver une kk-partition minimisant le WCSS (équation 1) est NP-difficile. Plus précisément :

  • Il est NP-difficile pour dd général même pour k=2k = 2 (Aloise et al., 2009).
  • Il est NP-difficile dans le plan (d=2d = 2) pour kk général (Mahajan et al., 2012).

Intuitivement, cela signifie que, sauf si P = NP, il n'existe pas d'algorithme en temps polynomial qui trouve la solution kk-means globalement optimale. Ce résultat de dureté est ce qui rend théoriquement significatives les garanties d'approximation — comme celles du kk-means++.

3.1.6 L'Initialisation kk-Means++

Arthur et Vassilvitskii (2007) ont proposé une procédure d'initialisation randomisée (kk-means++) qui fournit une garantie d'approximation prouvable avant toute itération de Lloyd.

Algorithme 2 : Initialisation kk-Means++

Entrée : X={x1,…,xn}⊂Rd,kX = \{x_1, \dots, x_n\} \subset \mathbb{R}^d, k.

  1. Choisir μ1\mu_1 uniformément au hasard dans XX.
  2. Pour j=2,…,kj = 2, \dots, k :
    • Pour chaque xi∈Xx_i \in X, calculer D(xi)=min⁡l<j∥xi−μl∥2D(x_i) = \min_{l < j} \|x_i - \mu_l\|^2.
    • Choisir μj=xi\mu_j = x_i avec probabilité D(xi)/∑m=1nD(xm)D(x_i) / \sum_{m=1}^n D(x_m).

Sortie : Centres initiaux μ1,…,μk\mu_1, \dots, \mu_k.

L'idée clé est la pondération D2D^2 : les points éloignés de tous les centres actuellement sélectionnés sont plus susceptibles d'être choisis comme nouveaux centres. Cela répartit les centres initiaux dans les données.

Théorème 5 (Arthur et Vassilvitskii, 2007). Soit W∗W^* la valeur WCSS optimale et WinitW_{\text{init}} le WCSS après l'initialisation kk-means++ (avant toute itération de Lloyd). Alors :

E[Winit]≤8(ln⁡k+2)⋅W∗E[W_{\text{init}}] \le 8(\ln k + 2) \cdot W^*

Lemme 1 (Lemme de Réduction du Coût). Soit S={μ1,…,μj}S = \{\mu_1, \dots, \mu_j\} l'ensemble actuel de jj centres. Considérons un cluster optimal Cl∗C^*_l avec centre optimal μl∗\mu^*_l et coût optimal Wl∗=∑x∈Cl∗∥x−μl∗∥2W^*_l = \sum_{x \in C^*_l} \|x - \mu^*_l\|^2. Si l'on sélectionne un nouveau centre μj+1\mu_{j+1} depuis Cl∗C^*_l avec probabilité proportionnelle à D2(x)=min⁡μ∈S∥x−μ∥2D^2(x) = \min_{\mu \in S} \|x - \mu\|^2, alors le nouveau coût attendu des points dans Cl∗C^*_l est borné par 2Wl∗2W^*_l.

Démonstration du Lemme 1. Pour tout point x′∈Cl∗x' \in C^*_l sélectionné comme nouveau centre, la contribution au coût depuis Cl∗C^*_l devient :

∑x∈Cl∗min⁡{D2(x),∥x−x′∥2}≤∑x∈Cl∗∥x−x′∥2\sum_{x \in C^*_l} \min\{D^2(x), \|x - x'\|^2\} \le \sum_{x \in C^*_l} \|x - x'\|^2

En utilisant l'identité (qui découle du développement de la norme au carré) :

∑x∈Cl∗∥x−x′∥2=∣Cl∗∣⋅∥x′−μ(Cl∗)∥2+∑x∈Cl∗∥x−μ(Cl∗)∥2\sum_{x \in C^*_l} \|x - x'\|^2 = |C^*_l| \cdot \|x' - \mu(C^*_l)\|^2 + \sum_{x \in C^*_l} \|x - \mu(C^*_l)\|^2

La probabilité de sélectionner x′x' est proportionnelle à D2(x′)D^2(x'). En prenant l'espérance sur le tirage pondéré par D2D^2 :

E[∑x∈Cl∗∥x−x′∥2]=E[∣Cl∗∣⋅∥x′−μ(Cl∗)∥2]+Wl∗E\left[\sum_{x \in C^*_l} \|x - x'\|^2\right] = E\left[|C^*_l| \cdot \|x' - \mu(C^*_l)\|^2\right] + W^*_l

Le premier terme, par la définition de la pondération D2D^2 dans Cl∗C^*_l, contribue au plus Wl∗W^*_l. Par conséquent :

E[couˆt depuis Cl∗]≤Wl∗+Wl∗=2Wl∗□E[\text{coût depuis } C^*_l] \le W^*_l + W^*_l = 2W^*_l \quad \square

Démonstration du Théorème 5. On procède par récurrence sur le nombre de centres choisis.

Cas de base : Le premier centre μ1\mu_1 est choisi uniformément au hasard. Pour chaque cluster optimal Cl∗C^*_l, si μ1∈Cl∗\mu_1 \in C^*_l, le coût attendu depuis Cl∗C^*_l est au plus 2Wl∗2W^*_l par le Lemme 1.

Étape d'induction : Supposons que nous ayons jj centres. Soit UU l'ensemble des clusters optimaux « non couverts ». La probabilité que le (j+1)(j+1)-ème centre couvre un cluster non couvert spécifique Cl∗C^*_l est au moins :

P[μj+1∈Cl∗]≥Wl∗∑mWm∗≥Wl∗W∗P[\mu_{j+1} \in C^*_l] \ge \frac{W^*_l}{\sum_m W^*_m} \ge \frac{W^*_l}{W^*}

Le nombre attendu de clusters non couverts après kk itérations suit un processus de collecte de coupons. En combinant avec le facteur 2 du Lemme 1, on obtient :

E[Winit]≤8(ln⁡k+2)⋅W∗□E[W_{\text{init}}] \le 8(\ln k + 2) \cdot W^* \quad \square

Corollaire 1. kk-means++ réalise une O(log⁡k)O(\log k)-approximation du WCSS optimal en espérance, en temps Θ(nkd)\Theta(nkd).


3.2 DBSCAN

3.2.1 Cadre Formel

Contrairement au kk-means, DBSCAN (Density-Based Spatial Clustering of Applications with Noise) n'optimise pas une fonction objectif explicite. À la place, il définit géométriquement les clusters comme des ensembles maximaux de points connexes par densité.

Hypothèse 3. Les paramètres ϵ>0\epsilon > 0 et minPts∈N\text{minPts} \in \mathbb{N} sont donnés. L'entrée est un ensemble fini X⊂RdX \subset \mathbb{R}^d selon la métrique euclidienne.

Définition 7 (Cluster DBSCAN). Un ensemble C⊆XC \subseteq X est un cluster DBSCAN (par rapport à ϵ\epsilon et minPts\text{minPts}) s'il satisfait deux conditions : (i) Connexité : pour tout x,y∈Cx, y \in C, xx et yy sont connexes par densité ; et (ii) Maximalité : si x∈Cx \in C et yy est accessible par densité depuis xx, alors y∈Cy \in C.

Lemme 2 (Symétrie de l'Accessibilité par Densité sur les Points Noyaux). Soit Core(X)={x∈X:∣Nϵ(x)∣≥minPts}\text{Core}(X) = \{x \in X : |N_\epsilon(x)| \ge \text{minPts}\} l'ensemble des points noyaux. Pour tout p,q∈Core(X)p, q \in \text{Core}(X), si qq est accessible par densité depuis pp, alors pp est accessible par densité depuis qq.

Démonstration. Soit p=p1,p2,…,pm=qp = p_1, p_2, \dots, p_m = q une chaîne témoignant que qq est accessible par densité depuis pp. Puisque qq est un point noyau, ∣Nϵ(q)∣≥minPts|N_\epsilon(q)| \ge \text{minPts}. Considérons la chaîne inversée q=pm,pm−1,…,p1=pq = p_m, p_{m-1}, \dots, p_1 = p.

Pour chaque paire consécutive (pi+1,pi)(p_{i+1}, p_i) dans la chaîne originale, on a pi+1∈Nϵ(pi)p_{i+1} \in N_\epsilon(p_i) où pip_i est un point noyau. Par symétrie de la métrique euclidienne : ∥pi+1−pi∥=∥pi−pi+1∥≤ϵ\|p_{i+1} - p_i\| = \|p_i - p_{i+1}\| \le \epsilon.

Puisque tous les points intermédiaires p2,…,pm−1p_2, \dots, p_{m-1} doivent être des points noyaux, on a ∣Nϵ(pi)∣≥minPts|N_\epsilon(p_i)| \ge \text{minPts} pour tout i∈{1,…,m}i \in \{1, \dots, m\}. Par conséquent, la chaîne inversée témoigne que pp est accessible par densité depuis qq. □

Théorème 6 (Correction de DBSCAN, Ester et al. 1996). Soient X,ϵ,minPtsX, \epsilon, \text{minPts} donnés. Alors :

(a) La connexité par densité est une relation d'équivalence sur l'ensemble des points noyaux. (b) Chaque cluster DBSCAN contient au moins un point noyau. (c) Les clusters DBSCAN sont précisément les composantes connexes par densité maximales.

Démonstration de (a). Nous vérifions les trois propriétés d'une relation d'équivalence sur Core(X)\text{Core}(X).

Réflexivité : Tout point noyau xx est accessible par densité depuis lui-même (chaîne triviale de longueur 1). Donc xx est connexe par densité à lui-même via z=xz = x.

Symétrie : Supposons que x,y∈Core(X)x, y \in \text{Core}(X) soient connexes par densité via zz. Puisque xx est accessible par densité depuis zz et que les deux sont des points noyaux, par le Lemme 2, zz est accessible par densité depuis xx. Par conséquent, yy est connexe par densité à xx via le même témoin zz.

Transitivité : Supposons que x,yx, y soient connexes par densité via z1z_1, et que y,wy, w soient connexes par densité via z2z_2. Par le Lemme 2 et la concaténation de chaînes, xx et ww sont tous deux accessibles par densité depuis z1z_1, ce qui les rend connexes par densité. □

Remarque. L'accessibilité par densité n'est pas symétrique en général (un point frontière est accessible par densité depuis un point noyau, mais pas l'inverse). Cette asymétrie est précisément la raison pour laquelle DBSCAN définit la connexité par densité via un ancêtre commun zz.

3.2.2 L'Algorithme DBSCAN

Algorithme 3 : DBSCAN

Entrée : X={x1,…,xn}X = \{x_1, \dots, x_n\}, paramètres ϵ,minPts\epsilon, \text{minPts}.

  1. Marquer tous les points comme non visités.
  2. Pour chaque point non visité x∈Xx \in X :
    • Marquer xx comme visité. Calculer Nϵ(x)N_\epsilon(x).
    • Si ∣Nϵ(x)∣<minPts|N_\epsilon(x)| < \text{minPts} : marquer xx comme bruit (provisoirement).
    • Sinon : Créer un nouveau cluster CC. Ajouter xx à CC. Initialiser l'ensemble de graines S←Nϵ(x)∖{x}S \leftarrow N_\epsilon(x) \setminus \{x\}.
    • Tant que S≠∅S \neq \emptyset :
      • Prendre y∈Sy \in S, le retirer de SS.
      • Si yy est non visité : marquer yy comme visité, calculer Nϵ(y)N_\epsilon(y). Si ∣Nϵ(y)∣≥minPts|N_\epsilon(y)| \ge \text{minPts} : S←S∪(Nϵ(y)∖deˊjaˋ assigneˊs)S \leftarrow S \cup (N_\epsilon(y) \setminus \text{déjà assignés}).
      • Si yy n'est pas encore membre d'un cluster : ajouter yy à CC.

Sortie : Ensemble de clusters et points de bruit.

L'algorithme est essentiellement un parcours de graphe (similaire au BFS) sur le graphe d'accessibilité par densité.

3.2.3 Analyse de la Complexité

Théorème 7 (Complexité de DBSCAN). La complexité temporelle dans le pire cas de DBSCAN est Θ(n2)\Theta(n^2) sans indexation spatiale. Avec un index spatial supportant des requêtes de voisinage en O(log⁡n+∣Nϵ(x)∣)O(\log n + |N_\epsilon(x)|), la complexité est O(nlog⁡n)O(n \log n) lorsque le nombre total de relations voisins est O(n)O(n).

Démonstration. Le coût dominant est le calcul de Nϵ(x)N_\epsilon(x) pour chaque point. Sans index, chaque requête de voisinage nécessite de parcourir tous les nn points : Θ(n)\Theta(n) par requête, donnant Θ(n2)\Theta(n^2) au total.

Avec un index spatial tel qu'un kk-d tree, chaque requête de plage coûte O(log⁡n+∣Nϵ(x)∣)O(\log n + |N_\epsilon(x)|). Le coût total est :

∑i=1nO(log⁡n+∣Nϵ(xi)∣)=O(nlog⁡n+M)\sum_{i=1}^n O(\log n + |N_\epsilon(x_i)|) = O(n \log n + M)

où M=∑i=1n∣Nϵ(xi)∣M = \sum_{i=1}^n |N_\epsilon(x_i)| est le nombre total de relations de voisinage. Dans le pire des cas, M=Θ(n2)M = \Theta(n^2). Cependant, pour des clusters bien séparés ou ϵ\epsilon petit, M=O(n)M = O(n) et la complexité devient O(nlog⁡n)O(n \log n). □

Hypothèse 4. Le bénéfice de l'indexation spatiale suppose une faible dimensionnalité effective. En haute dimension, les kk-d trees dégénèrent en balayage linéaire en raison de la malédiction de la dimensionnalité.


3.3 Clustering Hiérarchique Agglomératif

3.3.1 Cadre

Le clustering hiérarchique agglomératif (HAC) construit une séquence de partitions en fusionnant itérativement les deux clusters les plus proches, produisant un dendrogramme qui encode simultanément tous les nombres possibles de clusters.

Définition 8 (Fonction de liaison). Une fonction de liaison Λ:2X×2X→R≥0\Lambda: 2^X \times 2^X \to \mathbb{R}_{\ge 0} assigne une distance entre sous-ensembles. Les choix standards incluent :

  • Liaison simple : Λsimple(A,B)=min⁡a∈A,b∈B∥a−b∥\Lambda_{\text{simple}}(A, B) = \min_{a \in A, b \in B} \|a - b\|
  • Liaison complète : Λcompleˋte(A,B)=max⁡a∈A,b∈B∥a−b∥\Lambda_{\text{complète}}(A, B) = \max_{a \in A, b \in B} \|a - b\|
  • Liaison moyenne : Λmoyenne(A,B)=1∣A∣∣B∣∑a∈A∑b∈B∥a−b∥\Lambda_{\text{moyenne}}(A, B) = \frac{1}{|A||B|} \sum_{a \in A} \sum_{b \in B} \|a - b\|
  • Liaison de Ward : ΛWard(A,B)=∣A∣⋅∣B∣∣A∣+∣B∣∥μ(A)−μ(B)∥2\Lambda_{\text{Ward}}(A, B) = \frac{|A| \cdot |B|}{|A| + |B|} \| \mu(A) - \mu(B) \|^2

Théorème 8 (Connexion Ward-WCSS). La fusion des clusters AA et BB augmente le WCSS total exactement de ΛWard(A,B)\Lambda_{\text{Ward}}(A, B). Par conséquent, la méthode de Ward est un algorithme glouton qui minimise l'augmentation du WCSS à chaque étape.

Démonstration. Soient AA et BB deux clusters disjoints avec centroïdes μ(A),μ(B)\mu(A), \mu(B), tailles ∣A∣=na,∣B∣=nb|A| = n_a, |B| = n_b.

Après fusion, le nouveau cluster C=A∪BC = A \cup B a pour centroïde :

μ(C)=naμ(A)+nbμ(B)na+nb\mu(C) = \frac{n_a \mu(A) + n_b \mu(B)}{n_a + n_b}

En appliquant la formule de décomposition de la variance (théorème de Huygens) :

W(C)=W(A)+W(B)+na∥μ(A)−μ(C)∥2+nb∥μ(B)−μ(C)∥2W(C) = W(A) + W(B) + n_a \|\mu(A) - \mu(C)\|^2 + n_b \|\mu(B) - \mu(C)\|^2

En calculant les termes de décalage et en simplifiant :

ΔW=nanbna+nb∥μ(A)−μ(B)∥2=ΛWard(A,B)□\Delta W = \frac{n_a n_b}{n_a + n_b} \|\mu(A) - \mu(B)\|^2 = \Lambda_{\text{Ward}}(A, B) \quad \square

Proposition 3 (Complexité du HAC naïf). Le clustering agglomératif naïf s'exécute en temps Θ(n3)\Theta(n^3). Avec des files de priorité, la liaison simple peut être calculée en O(n2)O(n^2) via l'algorithme MST de Prim, et la liaison générale en O(n2log⁡n)O(n^2 \log n).


3.4 Analyse Comparative

Une géométrie, deux critères de regroupement

Exemple calculé sur des points synthétiques

Ak-Means

k = 2
-101201x₁x₂μ1μ2

A · Chaque point rejoint le centroïde le plus proche. La frontière droite sépare les deux partitions, même lorsqu’elle traverse les croissants.

BDBSCAN

ε = 0.18 · minPts = 4
-101201x₁x₂ε

B · Des voisinages suffisamment peuplés se propagent le long des croissants. Les points isolés restent classés comme bruit.

Groupes : cercle / triangle
Centroïde (μ)
Bruit
Voisinage ε
Figure illustrative, calculée sur une géométrie synthétique en deux croissants. Les deux panneaux utilisent exactement les mêmes points : Lloyd avec k = 2 à gauche, DBSCAN avec ε = 0,18 et minPts = 4 à droite. Les coordonnées et paramètres servent uniquement à cette démonstration ; aucun résultat expérimental de l’article n’est reproduit.

3.4.1 Complexité Computationnelle

Critèrekk-Means (Lloyd)DBSCANHAC
Temps (pire cas)O(kn⋅nkd)O(k^n \cdot nkd)Θ(n2d)\Theta(n^2d)Θ(n3)\Theta(n^3) ou O(n2log⁡n)O(n^2 \log n)
Temps (pratique)O(T⋅nkd)O(T \cdot nkd), TT petitΘ(n2d)\Theta(n^2d) ou O(nlog⁡n⋅d)O(n \log n \cdot d)Θ(n2log⁡n)\Theta(n^2 \log n)
EspaceΘ(nd+kd)\Theta(nd + kd)Θ(nd)\Theta(nd)Θ(n2)\Theta(n^2)
OptimalitéNP-difficileN/A (pas d'objectif)Glouton

Le coût pratique par itération du kk-means est Θ(nkd)\Theta(nkd), le rendant linéaire en nn par itération pour kk et dd fixés. Pour nn grand (n>105n > 10^5), le kk-means est généralement la seule option réalisable.

3.4.2 Hypothèses Géométriques et Forme des Clusters

Proposition 4 (Structure de Voronoï du kk-Means). La partition produite par l'algorithme de Lloyd est constituée des intersections de XX avec les cellules de Voronoï des centroïdes finaux. Les cellules de Voronoï sont des polytopes convexes, donc le kk-means ne peut produire que des frontières de clusters convexes.

Contre-exemple 1. Considérons deux cercles concentriques dans R2\mathbb{R}^2 : C1={x:∥x∥=1}C_1 = \{x : \|x\| = 1\} et C2={x:∥x∥=3}C_2 = \{x : \|x\| = 3\}. Toute solution kk-means avec k=2k = 2 partitionne le plan en deux régions convexes, ce qui ne peut pas séparer des cercles concentriques. DBSCAN avec des paramètres ϵ\epsilon et minPts\text{minPts} appropriés identifie correctement les deux clusters circulaires.

3.4.3 Indices Formels de Qualité des Clusters

Définition 9 (Coefficient de Silhouette). Pour un point xix_i affecté au cluster CjC_j :

a(xi)=1∣Cj∣−1∑xm∈Cj,m≠i∥xi−xm∥a(x_i) = \frac{1}{|C_j|-1} \sum_{x_m \in C_j, m \neq i} \|x_i - x_m\|
b(xi)=min⁡l≠j1∣Cl∣∑xm∈Cl∥xi−xm∥b(x_i) = \min_{l \ne j} \frac{1}{|C_l|} \sum_{x_m \in C_l} \|x_i - x_m\|
s(xi)=b(xi)−a(xi)max⁡{a(xi),b(xi)}s(x_i) = \frac{b(x_i) - a(x_i)}{\max\{a(x_i), b(x_i)\}}

Proposition 5. s(xi)∈[−1,1]s(x_i) \in [-1, 1]. Les valeurs proches de +1+1 indiquent un bon clustering ; les valeurs proches de −1-1 indiquent une mauvaise affectation.

Définition 10 (Indice de Davies–Bouldin). Pour les clusters C1,…,CkC_1, \dots, C_k avec dispersions σj\sigma_j :

DB=1k∑j=1kmax⁡l≠jσj+σl∥μj−μl∥\text{DB} = \frac{1}{k} \sum_{j=1}^k \max_{l \ne j} \frac{\sigma_j + \sigma_l}{\|\mu_j - \mu_l\|}

Des valeurs plus faibles indiquent une meilleure séparation.

3.4.4 Conditions de Supériorité des Paradigmes

Condition A (le kk-Means est approprié) : Les clusters sont approximativement convexes, kk est connu, la dimensionnalité est gérable, et la scalabilité à nn grand est requise.

Condition B (DBSCAN est approprié) : Les clusters ont des formes arbitraires, les données contiennent du bruit/des valeurs aberrantes, kk est inconnu, et la dimensionnalité effective est faible.

Condition C (HAC est approprié) : L'ensemble de données est petit (n≲104n \lesssim 10^4), la structure hiérarchique est d'intérêt, ou plusieurs niveaux de granularité sont nécessaires.

Théorème 9 (Pas de Repas Gratuit pour le Clustering). Il n'existe pas d'algorithme de clustering simultanément optimal pour toutes les distributions. Ceci peut être formalisé via le théorème d'impossibilité de Kleinberg (2003).


4. Comparaison et reproductibilité

Cette section décrit un protocole de comparaison à mettre en œuvre. Elle ne présente pas des expériences exécutées ou des résultats validés. Les anciennes valeurs sans protocole publié ont été retirées.

4.1 Scénarios

Deux scénarios synthétiques permettent d’étudier des hypothèses différentes : des groupes gaussiens bien séparés pour la structure centroïde, et deux demi-cercles imbriqués pour des frontières non convexes. La géométrie exacte, le bruit et les graines doivent être publiés avant toute comparaison chiffrée.

4.2 Critères de comparaison

  • Silhouette : comparer la compacité et la séparation, avec une convention explicite pour le bruit et les partitions dégénérées.
  • Indice de Rand ajusté (ARI) : comparer la partition aux étiquettes synthétiques connues.
  • Coût de calcul : mesurer les durées sur un environnement fixé, en séparant la préparation des données, la construction des index et l’exécution.

4.3 Éléments à publier

Une évaluation reproductible doit fournir le code, les données ou leur générateur, les graines, les paramètres complets des algorithmes, les versions logicielles, le matériel et les sorties brutes. Une comparaison de durées doit préciser les répétitions et leur dispersion. Aucun classement mesuré n’est revendiqué ici.

4.4 Limites d’interprétation

Une observation sur deux jeux synthétiques ne démontre pas une garantie universelle. Les garanties formelles des sections précédentes restent conditionnelles à leurs hypothèses. La figure des deux lunes est une illustration calculée de la géométrie, pas un rapport de benchmark.


5. Discussion

5.1 Interprétation

L'analyse révèle une tension fondamentale dans le clustering : entre les approches basées sur l'optimisation (kk-means) avec des objectifs clairs mais des hypothèses géométriques fortes, et les approches géométriques/topologiques (DBSCAN) avec des formes de clusters flexibles mais sans objectif global. Cette tension reflète l'ambiguïté inhérente au problème de clustering. Le théorème d'impossibilité de Kleinberg (2003) rend cela précis.

Le résultat du kk-means++ (Théorème 5) est particulièrement significatif car il fournit un algorithme en temps polynomial avec une garantie d'approximation prouvable pour un problème NP-difficile.

5.2 Limitations

Plusieurs hypothèses de notre analyse sont restrictives :

  • L'Hypothèse 1 (métrique euclidienne) exclut des cadres importants tels que le clustering avec des divergences de Bregman, les distances d'édition ou les distances de graphe.
  • L'Hypothèse 4 (indexation en faible dimension pour DBSCAN) est limitante pour les données modernes en haute dimension.
  • Nous n'avons pas analysé le problème de la sélection de kk (pour le kk-means) ou de ϵ\epsilon et minPts\text{minPts} (pour DBSCAN).

5.3 Connexions

L'objectif du kk-means est intimement lié à l'analyse en composantes principales (ACP). La relaxation continue des variables indicatrices du kk-means récupère une relaxation spectrale résoluble via les premiers vecteurs propres — c'est la base du clustering spectral (von Luxburg, 2007).

DBSCAN se connecte à l'analyse topologique des données : à mesure que ϵ\epsilon augmente, le complexe de Vietoris–Rips croît, et les clusters DBSCAN correspondent approximativement aux composantes connexes à une échelle fixée.

5.4 Questions Ouvertes

  1. La garantie d'approximation O(log⁡k)O(\log k) du kk-means++ peut-elle être améliorée à O(1)O(1) ?
  2. Existe-t-il un algorithme de clustering basé sur la densité avec des garanties d'optimalité formelles ?
  3. Quelle est la dépendance polynomiale précise de la complexité lissée en nn, kk et 1/σ1/\sigma ?

6. Conclusion

Cet article présente une analyse comparative de trois paradigmes de clustering et un protocole d’évaluation reproductible.

Contributions clés :

  1. L'algorithme de Lloyd converge comme une procédure de descente de coordonnées par blocs sur l'objectif WCSS (Théorème 1), malgré une complexité en nombre d'itérations superpolynomiale dans le pire cas (Théorème 2).

  2. kk-means++ réalise une O(log⁡k)O(\log k)-approximation du WCSS optimal via un lemme de réduction du coût (Théorème 5).

  3. La correction de DBSCAN a été prouvée via un lemme de symétrie rigoureux (Lemme 2, Théorème 6) avec une complexité dans le pire cas en Θ(n2)\Theta(n^2).

  4. La connexion Ward-WCSS (Théorème 8) établit le clustering hiérarchique comme un minimiseur glouton du WCSS.

Le protocole de comparaison ne constitue pas une validation expérimentale. Le choix des algorithmes dépend des hypothèses géométriques et des critères d’évaluation. Le théorème d'impossibilité de Kleinberg offre l'explication la plus profonde : aucun paradigme de clustering unique ne peut satisfaire simultanément tous les critères naturels.


Références

  1. Aloise, D., Deshpande, A., Hansen, P., and Popat, P. (2009). "NP-hardness of Euclidean sum-of-squares clustering." Machine Learning, 75(2), 245–248.
  2. Arthur, D. and Vassilvitskii, S. (2007). "$k$-means++: The Advantages of Careful Seeding." SODA, 1027–1035.
  3. Arthur, D. and Vassilvitskii, S. (2009). "Smoothed Analysis of the $k$-Means Method." JACM, 56(2), 1–49.
  4. Ben-David, S., von Luxburg, U., and Pál, D. (2006). "A Sober Look at Clustering Stability." COLT, 5–19.
  5. Davies, D. L. and Bouldin, D. W. (1979). "A Cluster Separation Measure." IEEE TPAMI, 1(2), 224–227.
  6. Dasgupta, S. (2008). "The Hardness of $k$-Means Clustering." Technical Report, UC San Diego.
  7. Ester, M., Kriegel, H.-P., Sander, J., and Xu, X. (1996). "A Density-Based Algorithm for Discovering Clusters." KDD, 226–231.
  8. Kanungo, T. et al. (2004). "A Local Search Approximation Algorithm for $k$-Means Clustering." Computational Geometry, 28(2–3), 89–112.
  9. Kleinberg, J. (2003). "An Impossibility Theorem for Clustering." NeurIPS, 15.
  10. Lloyd, S. P. (1982). "Least Squares Quantization in PCM." IEEE Trans. Inf. Theory, 28(2), 129–137.
  11. Mahajan, M., Nimbhorkar, P., and Varadarajan, K. (2012). "The Planar $k$-Means Problem is NP-Hard." TCS, 442, 13–21.
  12. Rousseeuw, P. J. (1987). "Silhouettes: A Graphical Aid to the Interpretation and Validation of Cluster Analysis." JCAM, 20, 53–65.
  13. Tibshirani, R., Walther, G., and Hastie, T. (2001). "Estimating the Number of Clusters via the Gap Statistic." JRSS-B, 63(2), 411–423.
  14. Vattani, A. (2011). "$k$-Means Requires Exponentially Many Iterations Even in the Plane." DCG, 45(4), 596–616.
  15. von Luxburg, U. (2007). "A Tutorial on Spectral Clustering." Statistics and Computing, 17(4), 395–416.

Algorithmes / Machine Learning / Science des Données / Mathématiques / Clustering

Abdelbadie Khoubiza

Développeur Full-Stack passionné par React, Next.js et Node.js

Retour au blog

Votre choix de confidentialité

Le site fonctionne sans mesure d’audience. Vous pouvez autoriser les mesures facultatives de visites et de performance de Vercel, ou les refuser. Aucun script de mesure n’est activé avant votre accord.

Comprendre les cookies et le stockage