Kmeans avec des donnees qualitatives sous R

Le problème exposé dans ce sujet a été résolu.

Bonjour,

On entend trop souvent la différence entre donnée qualitative et donnée quantitative dans les statistiques alors que ça n’a rien d’évident.

La vrai question c’est : Est-ce que les données sont elles comparables entre elles ? Comparable ça veut dire qu’on peut les organiser, savoir si l’une est plus grande que l’autre. Ainsi si nous devions comparer les mots dans un dictionnaire, on pourrait par exemple choisir de comparer leur longueur (le nombre de lettres qui les composent) ou leur proximité dans un texte (le modèle serait un espace de sémantique).

Les dates sont comparables. Il est donc tout à fait possible d’utiliser un algorithme statistique comme k-means. Il faut nécessairement les avoir sous un format numérique, typiquement un timestamp. :)

+1 -0

Ça dépend de ta problématique. En général pour des données brutes nécessitant une analyse avancée et avec un grand nombre de dimensions, on a besoin de les vectoriser.

Par exemple, nous avons cinq films et de l’autre des notes données par des cinéphiles. Evidemment, certains n’ont pas vu les films. Voici à peu près à quoi ça ressemblerait sous forme de vecteur:

[<3.5, 2.5, 4.5, 0, 5>, <1, 5, 3, 0, 0>, <0, 0, 4.5, 3, 6>, <3, 5, 4.5, 3, 2, 0>...]

Les films ont également des vecteurs associés :

[<5, 0, 0, 0, 0>, <0, 5, 0, 0, 0>, <0, 0, 5, 0, 0>, <0, 0, 0, 5, 0>, <0, 0, 0, 0, 5>]

Grâce à cette méthode, il est très facile de les représenter dans un espace vectoriel et de proposer à un cinéphile un film qu’il pourrait aimer. Comment ?

  • On prend les deux derniers films qu’a vu X.
  • Puis on recherche les utilisateurs qui ont également visionné ces deux derniers films.
  • En calculant les distances les plus courtes (ceux des films et des autres utilisateurs) on pourra proposer à X, un film dans son fil d’actualité qui correspondra à ses centres d’intérêts. Bien évidemment c’est à bidouiller en fonction des besoins.

Ce vecteur peut avoir autant de dimensions que de niveau de complexité. Attention toutefois à ne pas se heurter au fléau de la dimension. Dans ce cas on peut utiliser des méthodes comme Singular Value Decomposition (SVD) ou Analyse par Composantes Principales (ACP) pour réduire les dimensions. Je te conseille la vidéo Youtube de Science4all.

+1 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte