Data Science, Python, Economie ...

Accueil

Inertie

L'inertie, dans le cadre du clustering par K-neighborsK-neighbors
L'algorithme dit des K-neighbors regroupe une famille d'algorithmes utilisés pour classifier des données de manière non-supervisée (sans variable réponse). Le seul hyperparamètre que l'on passera au modèle sera celui du nombre de classes que l'on souhaite obtenir.

Fonctionnement de l'algorithme K-Means

L'algorithme K-means est un algorithme de [[classification]] (clustering) très courant et souvent parmis les premiers du genre abordés. Par exemple, Chris McKinlay l'a utilisé pour son étude ...
, correspond à somme du carré de la distance entre les points de chaque cluster et leur point moyen.

Le but de l'algoithme K-neighborsK-neighbors
L'algorithme dit des K-neighbors regroupe une famille d'algorithmes utilisés pour classifier des données de manière non-supervisée (sans variable réponse). Le seul hyperparamètre que l'on passera au modèle sera celui du nombre de classes que l'on souhaite obtenir.

Fonctionnement de l'algorithme K-Means

L'algorithme K-means est un algorithme de [[classification]] (clustering) très courant et souvent parmis les premiers du genre abordés. Par exemple, Chris McKinlay l'a utilisé pour son étude ...
est de minimiser l'inertie des clusters formés :

$$ \sum^{n}_{i=0}min(\lvert\lvert x_{i}-\mu_{j}\rvert\rvert^{2}) $$

Du fait de l'absence de normalisation des données au préalable, l'inertie peut augmenter fortement. De ce fait, il peut être utile de réduire le nombre de dimensions dans les données par une ACP, ce qui permet par ailleurs d'accélérer les calculs.

Si l'on utilise sklearn.cluster.Kmeanssklearn.cluster.Kmeans
sklearn.cluster.Kmeans applique l'algorithme des [[K-neighbors]].

L'algorithme K-means est un algorithme de [[classification]] catégorisant les observations en fonction de leur distance au point moyen ([[Centroïde|centroïde]]) de la classe. La catégorisation des points peut changer au fur et à mesure des itérations, jusqu'à convergence.

Initialisation et usage :

On spécifie avec n_cluster=x le nombre de [[Centroide|centroides]] qui génèreront des clusters en conséquence.

f = Kmeans(n_clus...
pour générer des clusters au moyen d'un algorithme K-neighborsK-neighbors
L'algorithme dit des K-neighbors regroupe une famille d'algorithmes utilisés pour classifier des données de manière non-supervisée (sans variable réponse). Le seul hyperparamètre que l'on passera au modèle sera celui du nombre de classes que l'on souhaite obtenir.

Fonctionnement de l'algorithme K-Means

L'algorithme K-means est un algorithme de [[classification]] (clustering) très courant et souvent parmis les premiers du genre abordés. Par exemple, Chris McKinlay l'a utilisé pour son étude ...
, on peut accéder aux valeurs d'un modèle généré (.fit()) avec l'attribut .inertia_.

Cela permet notamment d'utiliser la technique du coude pour calculer le nombre optimal de clusters :

k_values = range(1, 10)
inertia_values = [KMeans(k).fit(darts).inertia_
                  for k in k_values]

plt.plot(k_values, inertia_values)
plt.xlabel('K')
plt.ylabel('Inertia')
plt.show()

On peut dès lors choisir le nombre K de clusters qui minimise (K, inertie)