filtrage collaboratif avec un algorithme d'ordonnancement

25
Filtrage Collaboratif Ordonnancement pour le Filtrage Collaboratif Conclusion et Perspectives Filtrage Collaboratif avec un Algorithme d’Ordonnancement JF. Pessiot, V. Truong, N. Usunier, M. Amini et P. Gallinari LIP6 - Université Pierre et Marie Curie Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Upload: others

Post on 21-Jun-2022

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Filtrage Collaboratif avec un Algorithmed’Ordonnancement

JF. Pessiot, V. Truong, N. Usunier, M. Amini et P. GallinariLIP6 - Université Pierre et Marie Curie

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 2: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Petit Problème

JF, Vinh et Nico ont donné leur avis sur 4 films :

LaMôme

LesBronzés

InlandEmpire Taxi 4

JF 4 ? 5 1Vinh ? ? 4 2Nico 1 3 ? ?

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 3: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Plan

Filtrage CollaboratifPrésentationPrédiction de NotesApproche Alternative

Ordonnancement pour le Filtrage CollaboratifUn Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Conclusion et Perspectives

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 4: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Plan

Filtrage CollaboratifPrésentationPrédiction de NotesApproche Alternative

Ordonnancement pour le Filtrage CollaboratifUn Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Conclusion et Perspectives

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 5: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Définition

DefinitionFiltrage Collaboratif :

permet d’automatiser la sélection et la recommandationd’articles (filtrage)sert à prédire les préférences d’un utilisateur à partir despréférences d’autres utilisateurs (collaboratif)

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 6: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Applications et Enjeux

Les systèmes de FC sont utilisés pour recommander desproduits culturels :

des films (MovieLens, Ymdb)de la musique (Lastfm, Indy)des pages web (Del.icio.us, StumbleUpon)

Le FC permet de générer des recommandationspersonnalisées à l’utilisateur. Pour les sites commerciaux(Amazon, iTunes, CDnow...), il présente donc des enjeuxfinanciers importants.

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 7: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Approche Standard

Approche standard repose sur la prédiction de notes :

considérer la matrice de notes ( utilisateurs × articles )matrice à «trous»tâche = prédiction des notes manquantes

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 8: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Exemple

LaMôme

LesBronzés

InlandEmpire Taxi 4

JF 4 ? 5 1Vinh ? ? 4 2Nico 1 3 ? ?

⇓4 2 5 15 1 4 21 3 2 4

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 9: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Etat de l’Art

De nombreuses approches pour la prédiction de notes :

modèles probabilistes (Hoffman 2004, Marlin 2004)modèles factoriels linéaires (Srebro 2003, Rennie 2005,Pessiot 2006)ordonnancement d’instances (Crammer 2002, Yu 2006)

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 10: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Remarque sur la Prédiction de Notes

but d’un système de recommandation = recommander Narticles à chaque utilisateurl’ordre des articles est plus important que la prédiction desnotes

Prédire ordre des articles 6= prédire les notes

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 11: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Exemple

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 12: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Prédiction de Préférences

Pour chaque utilisateur, prédire directement l’ordre des articles:

prédire un score réel pour chaque articleordonner les articles en fonction des scoresprésenter les N articles correspondant aux meilleursscores

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 13: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

PrésentationPrédiction de NotesApproche Alternative

Exemple

LaMôme

LesBronzés

InlandEmpire Taxi 4

JF 4 ? 5 1Vinh ? ? 4 2Nico 1 3 ? ?

⇓ 0.6 −0.1 0.8 −0.40.9 −0.7 0.5 −0.2−0.8 0.7 −0.4 0.8

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 14: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Plan

Filtrage CollaboratifPrésentationPrédiction de NotesApproche Alternative

Ordonnancement pour le Filtrage CollaboratifUn Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Conclusion et Perspectives

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 15: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Définitions

Notations :utilisateur x représenté par ux ∈ Rk

article a représenté par ia ∈ Rk

intérêt de a pour x : < ia, ux >

Formalisation matricielle :U matrice des n utilisateurs (n × k)

I matrice des p articles (k × p)

(UI)xa =< ia, ux >

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 16: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Préférences par Paires

utilisateur x , préférence par paire (a, b) ( a est préféré à b )modèle (U, I)si (a, b) et (UI)xa ≤ (UI)xb, alors la prédiction est fausse

[[(UI)xa ≤ (UI)xb]] est l’erreur de prédiction du modèle sur (a, b)

D(U, I) =∑

x

∑(a,b)∈yx

[[(UI)xa ≤ (UI)xb]]

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 17: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Fonction de Coût

Nombre d’erreurs sur les préférences par paires :

D(U, I) =∑

x

∑(a,b)∈yx

[[(UI)xa ≤ (UI)xb]]

Borne supérieure :

D(U, I) ≤∑

x

∑(a,b)∈yx

e(UI)xb−(UI)xa

Fonction de coût régularisée :

R(U, I) =∑

x

∑(a,b)∈yx

e(UI)xb−(UI)xa + µU ‖U‖2 + µI ‖I‖2

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 18: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Algorithme

Problème d’optimisation

(U∗, I∗) = argminU,I

R(U, I)

AlgorithmeInitialiser U, IRépéter jusqu’à convergence :

1 U ← argminU R(U, I)2 I ← argminI R(U, I)

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 19: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Implémentation

Problème :considérer toutes les paires d’articles possiblescalculs en O(nvkp2)

n utilisateurs, notes de 1 à v , k variables latentes et particlesinapplicable sur des bases réelles

Stratégie :parcours «intelligent» de l’ensemble des paires d’articlescomplexité en O(nvkp)

linéaire en p

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 20: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Base de Test

Base de films MovieLens :6, 040 utilisateurs et 3, 706 films1, 000, 209 notes de 1 à 595.5% de notes manquantes

Génération des bases :pour chaque utilisateur, choisir 2 notes de testutiliser le reste pour l’apprentissagetotal de 10 bases pour l’apprentissage / test

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 21: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Evaluation

Mesure d’évaluation :

MRE =1n

∑x

[[(IT ux)ax ≤ (IT ux)bx ]]

Deux approches pour la prédiction de notes :

Factorisation Matricielle Non-négative (FMN)Décomposition en Valeurs Singulières (DVS)

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 22: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Un Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Résultats

FMN gén. DVS pond. Ordo.k 9 9 8

MRE 0.2658 0.2770 0.2737

Améliorations :Normalisation par utilisateurCritères d’arrêtCoefficients de régularisation

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 23: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Plan

Filtrage CollaboratifPrésentationPrédiction de NotesApproche Alternative

Ordonnancement pour le Filtrage CollaboratifUn Modèle d’OrdonnancementAlgorithme et ImplémentationExpériences et Résultats

Conclusion et Perspectives

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 24: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Conclusion

Nouvelle approche basée sur la prédiction des préférencesAlgorithme optimisant erreur d’ordonnancementRésultats encore à interpréter et à améliorer

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement

Page 25: Filtrage Collaboratif avec un Algorithme d'Ordonnancement

Filtrage CollaboratifOrdonnancement pour le Filtrage Collaboratif

Conclusion et Perspectives

Perspectives

Liens avec l’apprentissage multi-tâchesExtension à d’autres cadres (exemple : apprentissagesemi-supervisé)Démo en ligne !

http://connex.lip6.fr/~pessiot

Pessiot, Truong, Usunier, Amini et Gallinari Filtrage Collaboratif avec un Algorithme d’Ordonnancement