Cette année, nous allons travailler avec la plate forme
Kaggle qui regroupe des concours de « machine
learning ». Nous allons participer au concours "Movie
Recommendation".
Pourquoi ce concours?
Aujourd’hui les usagers et/ou les consommateurs ont la
possibilité de donner leur avis sur les contenus facebook,
youtube…, sur les produits en vente sur internet, sur les
films, etc. Leur avis est exprimé par un vote. Et ces
votes sont des indicateurs utilisés, par exemple, pour guider
les consommateurs ou pour estimer une opinion.
Objectif
L’objectif principal ici est de développer le meilleur
modèle possible pour prédire le vote d’une personne sur
un film. Les votes sont codés 1 à 5. Pour construire le (ou
les) modèle(s), on dispose de données sur 6040
utilisateurs de la plateforme MovieLens et de données sur
environ 3900 films. On dispose aussi, bien sûr, des votes des
utilisateurs pour une partie des films.
Réf : http://files.grouplens.org/papers/harper-tiis2015.pdf
https://en.wikipedia.org/wiki/Learning_to_rank
A visiter : tutoriel
pour les systèmes de recommandation sous Python
Les modèles seront validés selon le score défini ci-dessous
et calculé pour un échantillon test.
Pour chaque individu de l'ensemble de test, on sélectionne les
5% des films les mieux notés. Le score est la moyenne des
notes données à ces films par l'utilisateur.
Données
Pour obtenir les données, il faut s'inscrire sur Kaggle.
Le fichier pour les soumissions : submission_sample.csv
Les fichiers suivants seront utiles : rec_runner.py ,
matrix_factorization_soln.py
6 mars 2017, Exemple de script, mise en
forme des données: MF_algorithms_v1.py,
matrix_factorization_soln_v1.py
Télécharger aussi les fichiers de ce répertoire et
installer le package (ou charger les fichiers dont vous
avez besoin).
Référence : bpmf.pdf
Logiciels
Logiciels recommandés : Python et R.
Evaluation
Le travail sera évalué selon plusieurs critères
1. Classement Kaggle.
2. Présentation de 15 minutes dont l'objectif sera de décrire
et de "défendre" votre solution.
3. Qualité de la programmation.
Les pseudos seront diffusés à tout le groupe pour que chacun
puisse suivre la compétition. On vous demandera en effet de
faire des soumissions régulièrement.
Noms | Méthode |
Données |
Erreur de classement (%) |
|
1 |
Esso, Hamon, Verdon |
Forêts |
quanti |
4.73 |
2 |
Lesaint, Vauleon, Schmidt | ACP+ANN /Forêts / boosting |
quali / quanti | 4.75 / 5.65/trop long... |
3 |
Boulagouaz, Darras, L'Hermitte |
Forêts/bagging |
quanti/quanti |
5.65/5.21 |
4 |
Desrus, Helleu | Forêts/ lasso+forêt | quali | 5.65/ 6.08 |
5 |
Lefeuvre, Remaud | Forêts+combine / adaboost | quali/quanti | 6.09 / 6.52 |
Noms | Méthode |
Données |
Erreur de classement (%) |
|
1 |
Lesaint, Vauleon, Schmidt |
Forêts / ANN |
quanti / quali |
5.65 / 6.95 |
2 |
Desrus, Helleu | Forêts | quali |
5.65 |
3 |
Lefeuvre, Remaud | Forêts+combine | quali |
6.09 |
4 |
||||
5 |
Noms | Méthode |
Données |
Erreur de classement (%) |
|
1 |
Lesaint, Vauleon, Schmidt |
Forêts |
quanti |
5.65 |
2 |
Darras, L'Hermite, Boulagouaz |
GLM logit | quali |
6.09 |
3 |
Hamon, Verdon | knn (k=1) | quali |
8.69 |
4 |
Lefeuvre, Remaud | GLM logit | quanti |
9.13 |
5 |
Desrus, Helleu | GLM logit | quanti |
11.3 |