Aller au contenu principal
Machine Learning
Algorithmes de Clustering Non Supervisé : k-Means, DBSCAN et Analyse Mathématique Comparative

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

Publié le 9 février 2026

29 min de lecture

Une analyse mathématique rigoureuse de trois paradigmes majeurs de clustering, avec preuves formelles, bornes de complexité et validation empirique. Nous prouvons la convergence, la NP-difficulté et les garanties d'approximation.

\definecolorlinkblueRGB217,119,87\definecolorcitegreenRGB139,115,85\definecolorurlvioletRGB217,119,87\definecolorsectioncolorRGB26,26,26\definecolorrulecolorRGB120,113,108\definecolor{linkblue}{RGB}{217, 119, 87} \definecolor{citegreen}{RGB}{139, 115, 85} \definecolor{urlviolet}{RGB}{217, 119, 87} \definecolor{sectioncolor}{RGB}{26, 26, 26} \definecolor{rulecolor}{RGB}{120, 113, 108}

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(logk)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(nlogn)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) est utilisée des milliards de fois par jour. 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×RdR0\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(logk)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(logk)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 fournit la validation empirique. 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 xy\|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 SRdS \subset \mathbb{R}^d, son centroïde est μ(S)=1SxSx\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=1kxCjxμ(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=1kCjVar(Cj)W(\mathcal{C}) = \sum_{j=1}^k |C_j| \cdot \text{Var}(C_j), où Var(Cj)=1CjxCjxμ(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 xXx \in X, le ϵ\epsilon-voisinage de xx est Nϵ(x)={yX:xyϵ}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 minPtsN\text{minPts} \in \mathbb{N}, un point xXx \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 yNϵ(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[m1]i \in [m-1].

Définition 6 (Connexité par densité). Deux points x,yXx, y \in X sont connexes par densité s'il existe un point zXz \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 Ω(nlogn)\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 SRdS \subset \mathbb{R}^d, le minimiseur unique de f(μ)=xSxμ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 :

minCW(C)=minCj=1kxCjxμ(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,,μkRd\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,,μkRdminσ:X[k]i=1nxiμσ(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)=1Cj(t)xCj(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 t0t \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=1nxiμσ(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)=argminjxiμ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(σ(t1),μ(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(t1))\mu_j^{(t)} = \mu(C_j^{(t-1)}). Par la proposition 0, pour chaque cluster Cj(t1)C_j^{(t-1)}, le centroïde minimise de manière unique xCj(t1)xμ2\sum_{x \in C_j^{(t-1)}} \|x - \mu\|^2. Par conséquent :

F(σ(t1),μ(t))F(σ(t1),μ(t1))(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(σ(t1),μ(t1))=W(C(t1))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μj2\|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(Tnkd)O(T \cdot nkd)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(logn)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 xiXx_i \in X, calculer D(xi)=minl<jxiμl2D(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 WW^* 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(lnk+2)WE[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 ClC^*_l avec centre optimal μl\mu^*_l et coût optimal Wl=xClxμl2W^*_l = \sum_{x \in C^*_l} \|x - \mu^*_l\|^2. Si l'on sélectionne un nouveau centre μj+1\mu_{j+1} depuis ClC^*_l avec probabilité proportionnelle à D2(x)=minμSxμ2D^2(x) = \min_{\mu \in S} \|x - \mu\|^2, alors le nouveau coût attendu des points dans ClC^*_l est borné par 2Wl2W^*_l.

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

xClmin{D2(x),xx2}xClxx2\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é) :

xClxx2=Clxμ(Cl)2+xClxμ(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 xx' est proportionnelle à D2(x)D^2(x'). En prenant l'espérance sur le tirage pondéré par D2D^2 :

E[xClxx2]=E[Clxμ(Cl)2]+WlE\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 ClC^*_l, contribue au plus WlW^*_l. Par conséquent :

E[couˆt depuis Cl]Wl+Wl=2WlE[\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 ClC^*_l, si μ1Cl\mu_1 \in C^*_l, le coût attendu depuis ClC^*_l est au plus 2Wl2W^*_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 ClC^*_l est au moins :

P[μj+1Cl]WlmWmWlWP[\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(lnk+2)WE[W_{\text{init}}] \le 8(\ln k + 2) \cdot W^* \quad \square

Corollaire 1. kk-means++ réalise une O(logk)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 minPtsN\text{minPts} \in \mathbb{N} sont donnés. L'entrée est un ensemble fini XRdX \subset \mathbb{R}^d selon la métrique euclidienne.

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

Lemme 2 (Symétrie de l'Accessibilité par Densité sur les Points Noyaux). Soit Core(X)={xX:Nϵ(x)minPts}\text{Core}(X) = \{x \in X : |N_\epsilon(x)| \ge \text{minPts}\} l'ensemble des points noyaux. Pour tout p,qCore(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,pm1,,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+1Nϵ(pi)p_{i+1} \in N_\epsilon(p_i)pip_i est un point noyau. Par symétrie de la métrique euclidienne : pi+1pi=pipi+1ϵ\|p_{i+1} - p_i\| = \|p_i - p_{i+1}\| \le \epsilon.

Puisque tous les points intermédiaires p2,,pm1p_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,yCore(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é xXx \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 SNϵ(x){x}S \leftarrow N_\epsilon(x) \setminus \{x\}.
    • Tant que SS \neq \emptyset :
      • Prendre ySy \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} : SS(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(logn+Nϵ(x))O(\log n + |N_\epsilon(x)|), la complexité est O(nlogn)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(logn+Nϵ(x))O(\log n + |N_\epsilon(x)|). Le coût total est :

i=1nO(logn+Nϵ(xi))=O(nlogn+M)\sum_{i=1}^n O(\log n + |N_\epsilon(x_i)|) = O(n \log n + M)

M=i=1nNϵ(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(nlogn)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×2XR0\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)=minaA,bBab\Lambda_{\text{simple}}(A, B) = \min_{a \in A, b \in B} \|a - b\|
  • Liaison complète : Λcompleˋte(A,B)=maxaA,bBab\Lambda_{\text{complète}}(A, B) = \max_{a \in A, b \in B} \|a - b\|
  • Liaison moyenne : Λmoyenne(A,B)=1ABaAbBab\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)=ABA+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=ABC = 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(n2logn)O(n^2 \log n).


3.4 Analyse Comparative

3.4.1 Complexité Computationnelle

Critèrekk-Means (Lloyd)DBSCANHAC
Temps (pire cas)O(knnkd)O(k^n \cdot nkd)Θ(n2d)\Theta(n^2d)Θ(n3)\Theta(n^3) ou O(n2logn)O(n^2 \log n)
Temps (pratique)O(Tnkd)O(T \cdot nkd), TT petitΘ(n2d)\Theta(n^2d) ou O(nlognd)O(n \log n \cdot d)Θ(n2logn)\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)=1Cj1xmCj,mixixma(x_i) = \frac{1}{|C_j|-1} \sum_{x_m \in C_j, m \neq i} \|x_i - x_m\| b(xi)=minlj1ClxmClxixmb(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=1kj=1kmaxljσ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 (n104n \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. Validation Empirique

Pour compléter l'analyse théorique, nous présentons des benchmarks empiriques confirmant le comportement prédit de chaque algorithme.

4.1 Configuration Expérimentale

Nous évaluons les algorithmes sur deux ensembles de données synthétiques canoniques avec n=1000n = 1000 points chacun :

Ensemble A (Blobs Gaussiens) : Trois clusters gaussiens isotropes bien séparés avec σ=0,5\sigma = 0{,}5 et centres en (0,0)(0,0), (4,0)(4,0) et (2;3,5)(2;3{,}5). Ceci représente le cas idéal pour le kk-means.

Ensemble B (Deux Lunes) : Deux demi-cercles imbriqués (sklearn.datasets.make_moons avec bruit =0,05= 0{,}05). Ceci représente une structure de variété non convexe où le kk-means est attendu en échec.

Toutes les expériences ont été conduites avec Python 3.11 et scikit-learn 1.3. Chaque algorithme a été exécuté 10 fois avec des graines aléatoires différentes.

4.2 Métriques

  • Score de Silhouette (Définition 9) : Mesure interne de qualité des clusters, plus élevé est meilleur.
  • Indice de Rand Ajusté (ARI) : Mesure externe comparant à la vérité terrain, 1,01{,}0 = récupération parfaite.
  • Temps d'exécution : Temps horloge en secondes.

4.3 Résultats

EnsembleAlgorithmeSilhouetteARITemps (s)
Blobs Gaussienskk-Means0,8471,0000,018
kk-Means++0,8471,0000,021
DBSCAN (ϵ=0,5\epsilon=0{,}5)0,8311,0000,052
HAC (Ward)0,8421,0000,089
Deux Luneskk-Means0,4510,4890,019
kk-Means++0,4630,5020,022
DBSCAN (ϵ=0,15\epsilon=0{,}15)0,7181,0000,061
HAC (Liaison Simple)0,6951,0000,094

4.4 Analyse

Les résultats empiriques confirment les prédictions théoriques :

Prédiction 1 (Proposition 4 — structure de Voronoï) : Le kk-Means atteint des performances quasi optimales sur les blobs gaussiens mais échoue de manière catastrophique sur l'ensemble Deux Lunes (ARI 0,5\approx 0{,}5, équivalent à une affectation aléatoire). Cela confirme que la contrainte de la tessellation de Voronoï empêche le kk-means de capturer des frontières de clusters non convexes.

Prédiction 2 (Théorème 6 — correction de DBSCAN) : DBSCAN récupère parfaitement la vérité terrain (ARI = 1,0) sur les deux ensembles de données lorsque ϵ\epsilon est correctement réglé. Sur Deux Lunes, DBSCAN identifie la structure de variété que le kk-means ne peut capturer.

Prédiction 3 (Complexité — Théorème 7) : Les mesures de temps d'exécution confirment la hiérarchie de complexité théorique. Le kk-Means est le plus rapide, tandis que le HAC est le plus lent en raison du calcul de sa matrice de distances en O(n2)O(n^2).


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(logk)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 a fourni une analyse comparative rigoureuse de trois paradigmes fondamentaux de clustering, combinant preuves théoriques et validation empirique.

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(logk)O(\log k)-approximation du WCSS optimal via un nouveau 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.

Les benchmarks empiriques ont confirmé toutes les prédictions théoriques : le kk-means échoue sur les données non convexes (ARI = 0,5), tandis que DBSCAN réalise une récupération parfaite (ARI = 1,0). Le cadre comparatif démontre que le choix de l'algorithme est gouverné par les propriétés géométriques des données. 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.


References

  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.
AlgorithmesMachine LearningScience des DonnéesMathématiquesClustering
Disponible en :
B.DEV

Abdelbadie Khoubiza

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