Comment coder un système de recommandation en Python : l'exemple de Mangaki

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
94
Mois de parution
janvier 2018
Domaines


Résumé
Avec Netflix, Quora, Amazon, Mangaki, les systèmes de recommandation sont omniprésents dans nos vies. Mais comment fonctionnent-ils ? Cet article présente les algorithmes principaux qui permettent de les concevoir. Nous en profitons pour décrire notre tout dernier algorithme utilisant les posters des œuvres pour améliorer les recommandations, présenté au workshop MANPU le 10 novembre 2017 à Kyoto, à l’occasion de la conférence International Conference on Document Analysis and Recognition (ICDAR).


Mangaki.fr est un site de recommandation de culture pop japonaise développé par une association d’otakus invétérés. Le principe : vous notez quelques anime, films ou mangas (ou donnez votre identifiant myAnimeList), et le système vous en recommande d’autres à voir ou lire (cf. figure 1). Il est également possible de demander à Mangaki de prioriser sa watchlist (si l’on hésite entre plusieurs œuvres), de trouver des gens qui ont un profil proche du vôtre, etc. L’accent est davantage mis sur les perles rares de la culture japonaise que sur le fait de simplement vous recommander le dernier blockbuster en date.

figure_01

Fig. 1 : Mangaki permet de noter des œuvres : J’adore / J’aime / Neutre / Je n’aime pas / J’ai envie de voir / Je n’ai pas envie de voir.

Tous les modèles présentés dans cet article sont disponibles sur GitHub, à l’adresse : https://github.com/mangaki/mangaki/. Vous y trouverez des notebooks Jupyter pour pouvoir reproduire les expériences.

1....

Cet article est réservé aux abonnés. Il vous reste 97% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Découvrez la programmation différentiable

Magazine
Marque
GNU/Linux Magazine
Numéro
246
Mois de parution
mars 2021
Domaines
Résumé

La programmation différentiable est une nouvelle façon de penser la programmation. Le principe consiste à considérer tout un programme comme une fonction qu’on puisse différentier, et donc optimiser. Nous allons construire dans cet article les outils de base pour ce faire, et présenter la librairie JAX, qui facilite la tâche.

Scikit-image, une alternative à OpenCV pour la reconnaissance d'images

Magazine
Marque
GNU/Linux Magazine
Numéro
244
Mois de parution
janvier 2021
Domaines
Résumé

Une fois n'est pas coutume, nous allons découvrir et utiliser une alternative à OpenCV, scikit-image communément appelé skimage. Nous implémenterons la reconnaissance d'images avec la méthode des histogrammes de gradients orientés (HOG : Histogram of Oriented Gradients) associée à une machine à vecteurs de support (SVM : Support Vector Machine). Cette méthode est employée dans bien des applications telles que l'automobile, pour la détection de piétons [1].

Intelligence artificielle : la grande méprise

Magazine
Marque
Linux Pratique
Numéro
118
Mois de parution
mars 2020
Domaines
Résumé

Que ce soit dans les salons professionnels, la presse spécialisée ou même les publicités adressées au grand public, on n’échappe pas à l’intelligence artificielle. Pourtant, derrière ce terme, finalement très fourre-tout, il existe une véritable science. Mais entre l’état de l’art et ce qui existe réellement, il y a une différence qui change la donne.