Les Systèmes de Recommandations [RES et VAR, 97] identifient automatiquement les préférences des utilisateurs à travers leurs interactions avec le système en se basant sur le feedback implicite [HU et al., 08] [SAL 13] [SAL et al., 13] ou feedback explicite [BOB et al., 10] ou les deux ensembles [SHA et Sum, 13] [SAL et KAM, 13], pour leur suggérer des recommandations en utilisant le filtrage d’information. Pour générer des recommandations, un certain nombre d’approches ont été identifiées [BUR 02], où les plus utilisées sont le Filtrage Collaboratif [BAL et SHO, 97] et la Filtrage basé Contenu [MOO et ROY, 99] [PAZ et BIL, 07]. Les deux techniques ont leurs forces et faiblesses [BUR 02], où l’hybridation entre eux a été rapidement adoptée pour profiter de leurs avantages. L’un des problèmes majeurs des systèmes de recommandation est le problème de la stabilité de ces systèmes par rapport au profil dynamique de l’utilisateur (Stability vs. Dynamicity Problem) [BUR 02]. Ce problème revient au faite que si l’utilisateur s’intéresse à plusieurs items différents en même temps, comme il peut alterner ses préférences au fil du temps, et si son profil est créé dans le système, il devient difficile de changer ses préférences et prendre en considération ses différents choix et préférences. Cela limite la capacité des systèmes de recommandation à suivre l’évolution du profil de l’utilisateur et de s’adapter à ses différents choix et préférences, et par la suite lui recommander des items qui ne correspondent pas à ses différents choix et intérêts, ce qui conduit à un manque de diversité dans les listes de recommandation. En outre, les systèmes de recommandation, spécialement ceux utilisant le Filtrage Collaboratif souffrent du problème de l’évolutivité [BUR 02], lors de l’ajout d’un nouvel utilisateur ou d’un nouvel item, et souffre aussi du problème de la clairsemé de donnée [BUR 02], en raison des grandes matrices utilisateur-item contenant des évaluations dispersées.
LES SYSTEMES DE RECOMMANDATION
Le développement du Web a créé un besoin de nouvelles techniques pour aider les utilisateurs à trouver ce qu’ils recherchent mais aussi pour faire savoir qu’une information existe, ces techniques sont appelées les Systèmes de Recommandation (SRs). Une définition des systèmes de recommandation a été donnée dans ce chapitre ainsi que les fondements, concepts de base et notions liées au domaine. Ensuite, en se basant sur la manière dont les recommandations sont formulées, les principaux types de techniques de recommandation [BUR 02] sont identifiés, en précisant le Filtrage Collaboratif (FC) et le Filtrage basé Contenu (FBC), ainsi que les problèmes dont souffrent ces systèmes. Une panoplie de mesures de similarité et d’évaluation a été présentée, ainsi que les nouveaux critères d’évaluation pour les systèmes de recommandation.
Définition et fonctionnement des Systèmes de Recommandation
Les Systèmes de Recommandation (SR) [RES et VAR, 97] identifient automatiquement les préférences des utilisateurs à travers leurs interactions avec le système, en se basant sur le feedback implicite [Hu et al., 08] [SAL 13] [SAL et al., 13], le feedback explicite [BOB et al., 10], ou les deux feedbacks [SHA et SUM, 13] [SAL et KAM, 13], pour leur suggérer des recommandations en utilisant le filtrage d’information. Le filtrage d’information est l’expression utilisée pour décrire une variété de processus dédiés à la fourniture de l’information adéquate aux personnes qui en ont besoin [BEL et CRO, 92]. Son but est de sélectionner et suggérer aux utilisateurs, à partir de larges volumes d’informations générés dynamiquement, les informations jugées pertinentes pour eux. Par conséquent, le filtrage d’information peut être vu aussi comme étant le processus d’élimination de données indésirables sur un flux entrant, plutôt que la recherche de données spécifiques sur ce flux. Le processus du filtrage d’information commence lors de l’utilisation du système par des personnes ayant des désirs et des objectifs qui sont stables, à long terme ou périodiques. Par conséquent, cela conduit à des besoins réguliers en information, qui peuvent évoluer lentement au cours du temps au fur et à mesure que les conditions, les objectifs et les connaissances changent. Le filtrage est basé sur des descriptions des individus et des groupes appelées profils, qui représentent généralement leurs intérêts à long terme, afin de répondre à leurs besoins. De tels intérêts ou profils engagent les utilisateurs dans un processus passif de recherche d’information, car ils reçoivent les informations à partir du système sans avoir à les rechercher. D’un autre côté, les producteurs des items disponibles en ligne (incluant documents, services ou produits) prennent en charge la distribution de leurs produits dès qu’ils sont générés. Pour accomplir cette tâche, les items sont associés à une représentation de leur contenu appelée profil item, qui est ensuite comparée aux profils des utilisateurs ou des groupes. Par la suite, les utilisateurs consultent les items suggérés et expriment leurs avis sur eux en les évaluant par rapport à leur réponse aux besoins des utilisateurs. Cette évaluation peut mener à la modification des profils des utilisateurs et des domaines de leurs intérêts. Afin de générer des recommandations, un certain nombre d’approches de filtrage ont été présentées dans la littérature [BUR 02], où les plus utilisées sont le Filtrage Collaboratif (CF) [BAL et SHO, 97], et le Filtrage basé sur le Contenu (FBC) [MOO et ROY, 99] [PAZ et BIL, 07]. Les deux techniques ont des forces et des faiblesses [BUR 02], où l’hybridation entre eux a été rapidement adoptée pour profiter de leurs avantages .
Historique des Systèmes de Recommandation
La notion du filtrage d’information a vu le jour dans le domaine de la Recherche d’Information (RI) [BEL et CRO, 92] quand la tendance s’est tournée vers la personnalisation des résultats présentés à l’utilisateur à la suite d’une requête. Puis, l’intérêt progressif porté à cette notion de filtrage et l’exploitation des méthodes de fouilles de données (Data Mining) dans ce contexte, a donné naissance aux systèmes de recommandation comme des systèmes voisins, mais indépendants des systèmes de RI du fait que les SRs sont spécialisés beaucoup plus dans le traitement des profils à long terme (les requêtes dans la RI représentent des profils à court terme). Le premier système de recommandation, a été introduit par Goldberg [GOL et al., 92] et nommé Tapestry. Deux ans plus tard, les chercheurs du Grouplens ont présenté leur premier Système de Recommandation [RES et VAR, 97] en parallèle avec le système Ringo [UPE 94]. Jusqu’à l’année 1997, les auteurs ont utilisé le terme « Filtrage Collaboratif » au lieu de « Système de Recommandation ». Cette dernière appellation a été stabilisée en cette année par Resnick et Varian [RES et VAR 97]. L’année 1997 a reconnu également l’apparition du premier SR hybride ‘Fab’ créé par Balavonic et Shoham [BAL et SHO, 97], et qui combine le Filtrage basé sur le Contenu avec le Filtrage Collaboratif. Ensuite, en 2001, la notion du FC basé item a été introduite par Sarwar et al. [SAR et al., 01] et elle a étendu le champ de popularité des SRs du secteur académique vers le secteur commercial. Cette approche a été exploitée plus tard par Linden [LIN et al., 03] dans le portail Web d’Amazon.com .
Filtrage d’information vs Recherche d’information
La différence entre le filtrage d’information et la recherche d’information n’est pas toujours claire; mais une première différence peut être tirée de leur définition. Généralement, un système de recherche d’information est un système ayant pour fonction d’apporter aux utilisateurs les documents qui leur permettent de satisfaire leurs besoins en information, en se basant sur les requêtes qu’ils fournissent [BEL et CRO, 92], tandis qu’un système de filtrage d’information fournit des documents (ou des items) à une personne ou ensemble de personnes, en se basant sur leurs profils à long terme [CRO 93]. Un système de recherche d’information a pour but de guider les utilisateurs à retrouver les items qui leur permettent de répondre à leurs besoins, alors qu’un système de filtrage leur recommande directement les items intéressants qui conviennent à leurs préférences et besoins. Dans un système de recherche d’information, l’utilisateur saisie une requête et le système la compare avec les sources d’information disponibles, pour trouver un ensemble de documents répondant à sa requête. Les sources d’information utilisées par le système de recherche d’information sont un ensemble de données collectées dans des bases de données et souvent indexés par un ensemble de mots clés. Dans un système de filtrage d’information, le système compare l’ensemble des informations disponibles aux profils des individus ou groupe d’individus, afin de leur suggérer les items\ et ou informations correspondants à leurs besoins. Dans ces systèmes, les items\ et ou informations proviennent directement de la part des producteurs ou bien collectés dans des bases de données. Par conséquent, un certain nombre de points de distinction entre la recherche d’information et le filtrage d’information peuvent être cités:
➠ Dans un système de recherche d’information, les données sont sélectionnées à partir d’une base de données statique, alors que le filtrage d’information établit une sélection ou bien une élimination d’information à partir d’une source de données dynamique.
➠ Un système de recherche d’information ne peut traiter qu’une seule requête à la fois, ce qui le rend capable d’être utilisé que par une seule personne à un moment donné, tandis qu’un système de filtrage peut être utilisé par une ou plusieurs personnes en même temps.
➠ Un système de recherche d’information collecte et organise les documents selon la recherche des individus, tandis qu’un système de filtrage d’information distribue automatiquement des documents\ et ou des items aux personnes qui en ont besoin.
➠ Un système de recherche d’information utilise le principe de la découverte de l’information dans la base de données alors que le filtrage d’information utilise un processus d’élimination d’information du flux de données entrant.
➠ Un système de recherche d’information utilise les requêtes fournies par l’utilisateur qui représentent des intérêts à court terme. Par contre, le filtrage d’information utilise les profils des utilisateurs qui représentent généralement des intérêts à long terme, et qui peuvent être considérés comme des descriptions plus exactes des intérêts des utilisateurs que les requêtes.
➠ Un système de recherche d’information autorise l’utilisateur à interagir avec un document pendant une seule session de recherche, alors que le filtrage d’information permet l’interaction dans différentes sessions et prend en considération les changements de profils à travers les différentes sessions.
|
Table des matières
INTRODUCTION GENERALE
CHAPITRE 1 : Les Systèmes de Recommandation
1.1. Introduction
1.2. Définition et fonctionnement des Systèmes de Recommandation
1.3. Historique des Systèmes de Recommandation
1.4. Filtrage d’information Vs. Rechechre d’Information
1.5. Concepts de base, Notation, et Notions liées
1.5.1. Les entités Utilisateur et Items
1.5.2. Evaluation (Note ou Vote)
1.5.3. Matrice d’évaluation Utilisateur-Item
1.5.4. Notion de communauté
1.5.5. Notion du profil
1.5.6. La prédiction
1.5.7. La recommandation
1.5.8. La personnalisation
1.6. La Formalisation des Systèmes de Recommandation
1.6.1. Formalisation du problème de la recommandation
1.6.2. La formalisation des méthodes collaboratives
1.6.2.1. Les algorithmes basés mémoire (memory-based algorithms)
1.6.2.2. Les algorithmes basés modèle (model-based algorithms)
1.6.3. La formalisation des méthodes basées sur le contenu
1.7. Les techniques de recommandation
1.7.1. Le Filtrage basé sur le Contenu
1.7.1.1. Représentation des items (profil Item)
1.7.1.2. Méthodes pour l’apprentissage du profil de l’utilisateur
1.7.1.3. Avantages
1.7.1.4. Limites
1.7.1.5. Exemple d’un système de recommandation basé sur le contenu
1.7.2. Le Filtrage Collaboratif
1.7.2.1. La méthode basée modèle
1.7.2.2. La méthode basée mémoire (basée voisinage)
1.7.2.3. Avantages des méthodes collaboratives
1.7.2.4. Limites des méthodes collaboratives
1.7.2.5. Exemples de systèmes de recommandation basés sur le FC
1.7.3. Le Filtrage démographique
1.7.3.1. Exemple d’un système de recommandation basé sur le filtrage démographique
1.7.4. Le Filtrage basé utilité
1.7.5. Le Filtrage basé connaissance
1.7.5.1. Avantages
1.7.5.2. Limites
1.7.5.3. Exemple de systèmes de recommandation basés connaissance
1.7.6. Les systèmes de recommandation hybrides
1.7.6.1. L’hybride pondéré (Weighted)
1.7.6.2. L’hybride par commutation (Switching)
1.7.6.3. L’hybride mixte (Mixed)
1.7.6.4. L’hybride par combinaison de caractéristiques (Feature combination)
1.7.6.5. L’hybride en cascade
1.7.6.6. L’hybride par augmentation de caractéristiques ( Feature augmentation)
1.7.6.7. L’hybride de Méta-niveau (Meta-level)
1.7.6.8. Des exemples de systèmes de recommandation hybrides
1.8. Les problèmes des Systèmes de Recommandation
18.1. Le problème du démarrage à froid (Cold Start Problem)
1.8.2. Le problème de la Stabilité Vs. Dynamicité (Stability Vs. Plasticity Problem)
1.8.3. Les systèmes statiques
1.8.4. Le problème de la parcimonie de données (Sparcity problem)
1.8.5. Le problème de l’évolutivité de données
1.8.6. Le problème de la sur-spécialisation
1.8.7. Bilan des approches et des problèmes inhérents aux Systèmes de Recommandation
1.9. La prédiction dans les Systèmes de Recommandation
1.9.1. La prédiction basée Modèle (basée factorisation matricielle)
1.9.2. La prédiction basée Mémoire
1.9.2.1. L a prédiction basée utilisateur
1.9.2.2. La prédiction basée item
1.10. Evaluation des Systèmes de Recommandation
1.10.1. Métriques d’évaluation de la prédiction
1.10.1.1. Erreur Moyenne Absolue [Mean Absolute Error MAE]
1.10.1.2. Erreur Quadratique Moyenne [Root Mean Squared Error RMSE]
1.10.1.3. Erreur moyenne Absolue Normalisée [Normalized MAE NMAE]
1.10.2. Métriques d’évaluation des recommandations (Top-N)
1.10.2.1. Précision
1.10.2.2. Rappel
1.10.2.3. La métrique F1
1.10.2.4. La mesure d’évaluation de la diversité
1.11. Critères d’évaluation pour les Systèmes de Recommandation
1.11.1.Les préférences de l’utilisateur
1.11.2.Précision de la prédiction
1.11.3.La Couverture
1.11.3.1.Couverture de l’espace d’items
1.11.3.2.Couverture de l’espace utilisateur
1.11.4. La confiance (Confidence)
1.11.3. La confiance (Trust)
1.11.4. La Sérendipité (Le hasard)
1.11.5. La Nouveauté
1.11.6. La Diversité
1.11.7. L’Utilité
1.11.8. La Robustesse
1.11.9. La Confidentialité
1.11.10. L’Aadaptabilité
1.11.12. L’évolutivité
1.12. Synthèse des approches de recommandation
1.13. Conclusion
CHAPITRE 2 : Travaux Connexes
2.1. Introduction
2.2. Les Systèmes de Recommandation
2.3. Le clustering dans le Filtrage Collaboratif
2.3.1. La méthode du Lissage basé cluster(Cluster-based smoothing)
2.3.2. L’algorithme FCM dans les Systèmes de Recommandation
2.3.3. La méthode de factorisation matricielle dans les systèmes de recommandation
2.3.4. Synthèse des travaux sur le custering dans le FC
2.3.5. Discussion
2.4. La diversité dans la Recommandation
2.4.1. Définition
2.4.2. Métriques de Diveristé
2.4.2.1. La Diversité Individuelle (Individual Diversity)
2.4.2.2. La Diversité Globale (Aggregate Diversity)
2.4.3. Algorithmes de diversification du contenu des recommandations
2.4.4. Synthèse des approches sur la diversité
2.4.5. Disscussion
2.5. Conclusion
CHAPITRE 3 : Un Système de Recommandation Hybride et Diversifiée
Partie I : Un Système de Recommandation Hybride Diversifiée basée Flou
3.1. Introduction
3.2. Un Système de Recommandation Hybride Diversifiée basée Flou
3.2.1. Objectifs et Motivations
3.2.2. Proposition
3.2.3. Processus de Recommendation Hybride Diversifiée basée flou
3.2.4. Notations
3.2.5. L’algorithme du Filtrage Collaboratif-basé Flou
3.2.5.1. L’algorithme du clustering-basé flou: Modified FCM to NMF (MFCMNMF)
3.2.5.2. Identification du voisinage
3.2.5.3. La prédiction basée sur le filtrage collaboratif (CF-based prediction)
3.2.5.4. Algorithme du Filtrage Collaboratif basé flou
3.2.6. L’algorithme du Filtrage basé Contenu
3.2.6.1. Profil item (Item Profile)
3.2.6.2. Préférence des caractéristiques (Features’ preferences)
3.2.6.3. Sélection des T-plus proches items (T-Nearest Items Selection)
3.2.6.4. La prédiction basée sur le contenu
3.2.6.5. Algorithme de Filtrage basé Contenu
3.2.7. La prédiction hybride
3.2.8. La recommandation Top-K basée sur la prédiction hybride
3.2.9. La recommandation Top-N Diversifiée
3.3.9.1. Les préférences des clusters
3.3.9.2. La recommandation Top-N
3.3.9.3. La recommandation Top-K
3.3.9.4. Algorithme de la Recommandation Top-N diversifiée basée flou
Partie II: Un Système de Recommandation Hybride Diversifiée basée sur le Niveau de Similarité
3.3. Un Système de Recommandation Hybride Diversifiée basée sur le Niveau de Similarité
3.3.1. Motivations et Objectifs
3.3.2. Proposition
3.3.3. Le processus du Niveau de Similarté
3.3.4. Recommandation Top-K Diversifiée basée sur le niveau de similarité
3.3.4.1. Génération de la recommandation similaire
3.3.4.2. Génération de la recommandation diversifiée basée sur le niveau de similarité
3.3.5. Algorithme de la recommandation Top-K diversifiée basée sur le Niveau de similarité
3.4. Une Nouvelle Approche Hybride pour la Recommandation Top-K ( Une Nouvelle Approche de Recommandation Hybride Diversifiée basée Flou et Niveau de Similarité)
3.4.1. Algorithme de Recommandation Top-K diversifiée basée Flou et Niveau de Similarité
3.5. Conclusion
CHAPITRE 4 : Expérimentations
4.1. Introduction
4.2. Objectifs des expérimantions
4.3. Dataset
4.4. Métriques d’évaluation
4.4.1. Précision de l’algorithme de factorisation
4.4.2. Métrique d’évaluation de la prédiction basée modèle (RMSE)
4.4.3. Métrique d’évaluation de la prédiction (MAE)
4.4.4. Métriques d’évaluation des recommandations (Top-N)
4.4.4.1. les mesures de la précision
4.4.4.2. la mesure de la diversité
Partie I: DATASET
4.5. Expérimentation 1: Evaluation de l’Approche de Recommandation Hybride basée Flou
4.5.1. Evaluation de l’algorithme du Filtrage Collaboratif basé Flou
4.5.1.1. Performance de l’algorithme du clustering MFCM-NMF
4.5.1.2. Performance de l’algorithme de la sélection du voisinage
4.5.1.3. Performance de la prédiction basée sur le Filtrage Collaboratif Flou
4.5.1.4. Impact de l’évolutivité de données (Scalability Impact)
4.5.2. Evaluation de la prédiction hybride basée flou
4.5.2.1. Choix du paramètre Alpha
4.5.2.2. Performance de la prédiction hybride
4.5.2.3. Evaluation de la performance de la recommandation basée prédiction
4.5.3. Evaluation de la recommandation Top-K Diversifiée basée flou
4.5.3.1. Performance générale de la recommandation Top-K basée flou
4.5.3.2. Diversité Vs. Performance de la recommandation hybride basée flou
4.5.3.3. Performance de la recommandation avant Vs. après la prédiction et Impact de la clairsemée de données
4.5.4. Discussion des résultats
4.6. Expérimentation 2: Evalaluation de l’approche de diversité hybride basée sur le niveau de similarité
4.6.1. Test de l’ensemble des items divers à sélectionner
4.6.2. Comparaison avec l’approche hybride basée flou
4.6.3. Comparaison avec les méthodes de diversification de l’état de l’art
4.6.4. Discussion des résultats
4.7. Expérimentation 3: Evaluation de la nouvelle approche de recommandation hybride diversifiée basée flou et niveau de similarité
4.7.1. Test de la méthode de fusion
4.7.2. Performance de la nouvelle méthode hybride de diversité
4.7.3. Discussion des résultats
Partie II: ETUDE DE CAS (Scénario E-learning)
4.8. Intégration des approches proposées dans la plateforme Moodle
4.8.1. Moodle Dataset
4.8.2. Principales interfaces du Système
4.8.3. Evaluation et Résultats
4.8.4. Discussion
4.9. Conclusion
CONCLUSION GENERALE