Ç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.