Problématique La méthode slaRank Experiences Conclusion Apprentissage de fonctions d'ordonnancement avec un ux de données nonétiquetées V. Truong1 , M-R. Amini2 et P. Gallinari1 1 Université Pierre et Marie Curie 104 avenue du Président Kennedy 75016 Paris 2 National Research Council Canada 283 AlexandreTaché Boulevard Gatineau, QC J8X 3X7, Canada CaP'09 1/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Plan Problématique Ordonnancement bipartite Exemple: Le routage d'information L'approche svm La méthode slaRank Motivation Contribution L'algorithme slaRank Experiences RankSVM vs slaRank Conclusion 2/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Ordonnancement bipartite Exemple: Le routage d'information L'approche svm Ordonnancement bipartite Soit un ensemble d'exemples pertinents et de nonpertinents But: ordonner les exemples pertinents audessus des exemples nonpertinents Cadre diérent de la classication Cas particulier de l'ordonnancement d'instances Fonction score: fonction à valeur réelle induit un ordre sur l'espace de départ x est préféré à x 0 ssi h(x ) > h(x 0 ) Donner un score plus élevé à un exemple pertinent qu'à un exemple nonpertinent 3/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Ordonnancement bipartite Exemple: Le routage d'information L'approche svm Application: le routage d'information Tâche dénie à TREC (jusqu'en 2002) Flux de données ⇔ données absentes de l'apprentissage Ordonner les données en fonction des besoins d'un utilisateur. Donnée: soit pertinente soit nonpertinente 4/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Ordonnancement bipartite Exemple: Le routage d'information L'approche svm Formalisme: l'approche svm Soit une ensemble de données étiquetées S = S1 ∪ S−1 S1 un ensemble d'exemples pertinents S−1 un ensemble d'exemples nonpertinents Minimiser le nombre de paires (pertinent, nonpertinent) mal ordonnées: R (S) = 1 |S1 |S−1 | X (x ,x 0 )∈S [[h(x ) < h(x 0 )]] 1 ×S−1 Majorant convexe: [[h(x < h(x )]] < max (0, ρ − (h(x ) − h(x 0 ))) Cas linéaires: h(x ) = w .x 0) Ranking SVM (forme primale) X ` ´ 1 λ kw k2 + max 0, ρ − w (x − x 0 ) 2 |S1 ||S−1 | 0 (x ,x )∈S1 ×S−1 5/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank Motivation Apprendre à ordonner sur un grand ensemble de données coûteux en temps et en ressource demande des eorts de la part de l'utilisateur Approche semisupervisée: Apprendre sur un ensemble de données étiquetées et non étiquetées 6/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank Idées générales Objectif? Cas linéaire Développer un algorithme semisupervisé Capable de donner un score à n'importe quel exemple Capable de gérer un grand nombre de données nonétiquetées Inspiration: Modèles autoapprenants en classication 1 2 Étiqueter les exemples non étiquetés Apprendre un nouveau modèle Méthode d'apprentissage en ligne 7/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank Idées générales Apprentissage enligne (classication supervisée): 1 2 3 Arrivée d'un exemple étiqueté Prédiction de sa classe Miseàjour du modèle en fonction de l'erreur produite Adaptation à l'apprentissage semisupervisé Initialisation du modèle sur la base étiquetée Arrivée d'un exemple nonétiqueté xt Estimation de l'étiquette zt par une procédure A (autoapprentissage) Miseàjour du modèle suivant une erreur dénie sur D ∪ {(xt , zt )} - Et ainsi de suite 1 2 3 4 8/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank Cadre général: autoapprentissage en ligne Adaptation à l'apprentissage semisupervisé Initialisation du modèle sur la base étiquetée Arrivée d'un exemple nonétiqueté xt Estimation de l'étiquette zt par une procédure A (autoapprentissage) Miseàjour du modèle suivant une erreur dénie sur D ∪ {(xt , zt )} - Et ainsi de suite 1 2 3 4 Adaptation à l'ordonnancement semisupervisé 1 2 Dénir une prodédure d'étiquetage en se basant sur la fonction score Dénir l'étape de miseàjour 9/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank (1) Procédure d'étiquetage Comment étiqueter l'exemple nonétiqueté à chaque itération? Comparer le score de l'exemple non étiqueté avec celui des exemples étiquetés dh (S , S 0 ) la diérence relative entre les scores des éléments S et ceux de S 0 : Exemple: P P dh (S , S 0 ) = |S ||S 0 | x ∈S x 0 ∈S 0 h(x ) − h(x 0 ) 1 10/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank (1) Procédure d'étiquetage Comment étiqueter l'exemple nonétiqueté à chaque itération? Soit x un exemple nonétiqueté Nous dénissons 3 quantités: δh+ (x ) = dh ({x }, S− ) , (mesure relative de pertinence) δh− (x ) = dh (S , {x }) , (mesure relative de nonpertinence) 1 1 δ h (x ) = + (x ),δ − (x )} h h dh (S1 ,S−1 ) , (mesure de conance) min{δ La procédure d'étiquetage: y = sign δh+ (x ) − δh− (x ) Conditions d'étiquetage ? étiqueter seulement les exemples les plus sûrs utilisation de δh (x ) comme mesure d'incertitude utilisation d'un seuil s. 11/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank Rappel des objectifs Adaptation à l'apprentissage semisupervisé Initialisation du modèle sur la base étiquetée Arrivée d'un exemple nonétiqueté xt Estimation de l'étiquette zt par une procédure A (autoapprentissage) Miseàjour du modèle suivant une erreur dénie sur D ∪ {(xt , zt )} - Et ainsi de suite 1 2 3 4 Adaptation à l'ordonnancement semisupervisé 1 2 Dénir une prodédure d'étiquetage en se basant sur la fonction score Dénir l'étape de miseàjour 12/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank (2) Dénition de l'étape de miseàjour On a: un exemple étiqueté par la procédure A et la base étiquetée D Idée pour l'ordonnancement en ligne (supervisée) X ` 1 λ kw k2 + max 0, ρ − w 2 |S1 ||S−1 | (x ,x 0 )∈S1 ×S−1 (x − x 0 ) | {z } ´ paire cruciale Ordonnancement ∼ classication de paires cruciales Ordonnancement en ligne: 1 2 Fabriquer une paire cruciale Donner la paire à un classieur en ligne (laSVMx1) 13/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank (2) Dénition de l'étape de miseàjour On a: un exemple étiqueté zt par la procédure A et la base étiquetée D Idée pour l'ordonnancement en ligne (semisupervisée) 1 2 3 4 Utilisation du classieur en ligne laSVMx1 Fabriquer la paire cruciale avec zt qui viole le plus la marge Donner la paire au classieur S'assurer de la cohérence du modèle sur D Donner les paires cruciales de D qui violent la marge 14/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Motivation Contribution L'algorithme slaRank Base de l'algorithme slaRank 1 2 Initialisation sur la base étiquetée Pour chaque exemple zt non étiqueté arrivant a) b) c) d) Prédire son étiquette avec A Fabriquer la paire avec zt qui viole le plus la marge Mettre à jour le modèle avec cette paire Donner l'ensemble des paires de D qui violent la marge s et le paramètre de régularisation C O (dnm) 2 paramètres: seuil Complexité: 15/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences RankSVM vs slaRank Conclusion Protocole expérimental Mesures de performance: AUC: le nombre moyen de paires cruciales bien ordonnées Pn i =1 P (r )×rel (r ) AvPrec: la précision moyenne = total relevant examples Datasets base usps coil autavn realsim ccat gcat ecat prol 5 5 1 1 1 1 1 dim 256 1 024 20 707 20 958 47 152 47 152 47 152 app 7 291 1 440 68 175 69 201 701 275 701 275 701 275 test 2 007 1 000 2 000 2 000 23 149 23 149 23 149 taux 10% 5% 65% 31% 47% 30% 15% 16/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences RankSVM vs slaRank Conclusion Sélection de modèles 1 2 3 4 slaRank∗ maximise l'erreur moyen sur l'ensemble de test. slaRankcv validation croisée en utilisant la fonction coût svm pour la sélection. lno : variante de la validation croisée en utilisant l'écart moyen des scores. val : maximise l'erreur sur une base de validation slaRank slaRank1000 17/23 Truong, Amini, Gallinari Problématique La méthode slaRank RankSVM vs slaRank Experiences Conclusion Resultats sur la base usps svmsup best usps1 usps2 usps3 usps4 usps5 89,0 99,7 90,6 89,9 88,1 ± ± ± ± ± 14,0 0,2 5,2 5,4 7,5 svmsup 88,7 ± 14,1 ± 0,2 90,5 ± 5,1 89,5 ± 5,2 87,1 ± 7,2 99,7 slaRank∗ 94,3 99,7 93,5 91,9 90,7 ± ± ± ± ± 3,0 0,2 2,5 4,7 6,1 slaRanklno 93,2 99,5 91,6 90,5 90,3 ± ± ± ± ± 3,9 0,4 4,3 4,5 3,5 Table: Performance AUC. svmsup best usps1 usps2 usps3 usps4 usps5 svmsup 76,7 ± 16,8 99,2 ± 0,3 69,8 ± 12,1 61,7 ± 17,5 54,8 ± 16,4 76,3 99,1 69,0 59,9 51,0 ± ± ± ± ± 17,0 0,4 11,5 17,8 16,6 slaRank∗ slaRanklno 79,3 ± 9,6 80,7 ± 6,8 ± 0,4 75,2 ± 10,3 61,0 ± 17,9 53,0 ± 14,8 55,5 ± 20,3 99,3 97,7 ± 2,9 68,2 ± 17,1 57,4 ± 19,5 Table: Précision moyenne. 18/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences RankSVM vs slaRank Conclusion Resultats sur la base coil svmsup best coil1 coil2 coil3 coil4 coil5 svmsup 92, 2 ± 6, 5 68, 9 ± 12, 6 87, 5 ± 6, 5 96, 2 ± 3, 0 74, 8 ± 7, 3 92, 2 ± 6, 6 64, 7 ± 13, 7 87, 5 ± 6, 5 96, 2 ± 3, 0 74, 8 ± 7, 3 slaRank∗ 94, 4 ± 5, 7 70,6 87,9 98,2 77,5 ± ± ± ± 4,3 7,7 2,6 6,8 slaRanklno 95,5 ± 5,2 68,6 ± 16,9 87,3 ± 7,3 97,6 ± 2,8 75,8 ± 9,0 Table: Performance AUC. svmsup best coil1 coil2 coil3 coil4 coil5 68,6 40,4 36,6 74,4 41,3 ± ± ± ± ± svmsup 19,2 17,9 11,3 18,5 12,0 68,6 35,2 36,6 74,4 41,3 ± ± ± ± ± 19,2 17,6 11,3 18,5 13,0 slaRank∗ 72,2 ± 14,9 38,9 ± 22,1 ± 16,6 ± 22,7 27,6 ± 10,0 38,6 81,8 slaRanklno ± 14,9 ± 21,9 37,1 ± 16,9 77,3 ± 23,6 42,6 ± 18,0 72,2 39,2 Table: Précision Moyenne. 19/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences RankSVM vs slaRank Conclusion Resultats sur la base autavn, realsim et rcv1 svmsup best realsim autavn ccat gcat ecat 93,4 94,8 89,5 96,3 84,4 1,0 0,9 0,7 0,4 3,7 ± ± ± ± ± svmsup slaRank∗ 93,4 ± 1,0 94,8 ± 1.0 89,5 ± 2,2 96,3 ± 1,3 84,1 ± 12,2 ± 0,7 91,5 ± 0,7 97,2 ± 0,3 85,4 ± 3,6 94,1 ± 0,9 96,0 slaRankval 1000 saRankvc ± 0,7 ± 0,3 91,7 ± 0,8 97,4 ± 1,9 85,3 ± 3,6 93,6 ± 0,8 91,5 ± 1,0 97,1 ± 3,1 94,3 96,1 85,4 ± 3,6 Table: Performance AUC. svmsup best realsim autavn ccat gcat ecat 86,7 96,9 88,7 92,3 57,6 ± ± ± ± ± 1,0 0,6 1,0 1,3 5,2 svmsup 86,7 96,8 88,6 92,7 57,2 ± ± ± ± ± 1,0 0,8 1,0 1,2 5,5 slaRank∗ 88,1 97,6 91,0 94,8 59,8 ± ± ± ± ± 1,6 0,4 1,3 0,6 7,0 slaRankval 1000 88,1 ± 1,2 91,4 ± ± ± 0,9 97,5 ± 0,3 95,0 59,9 0,4 7,5 saRankvc 87,2 ± 1,2 90,9 ± 1,3 94,5 ± 0,7 59,8± 7,0 Table: Précision moyenne. 20/23 Truong, Amini, Gallinari Problématique La méthode slaRank RankSVM vs slaRank Experiences Conclusion 100 100 98 95 90 96 Précision moyenne Précision moyenne Évolution des performances avec le nombre d'exemples étiquetés 94 92 90 88 85 80 75 70 65 svm supervisé 86 svm supervisé 60 slaRank slaRank 84 55 10 100 1000 10 100 Nombre d’exemples étiquetées (a) autavn 100 1000 Nombre de données étiquetées (b) realsim 100 80 75 95 95 85 80 Précision moyenne Précision moyenne Précision moyenne 70 90 90 85 80 75 65 60 55 50 45 40 75 svm supervisé svm supervisé 70 slaRank svm supervisé 35 slaRank 70 65 10 100 1000 Nombre de données étiquetées (c) ccat slaRank 30 10 100 Nombre de données étiquetées (d) gcat Truong, Amini, Gallinari 1000 10 100 1000 Nombre de données étiquetées (e) ecat 21/23 Problématique La méthode slaRank Experiences Conclusion Conclusion Nous avons proposé: Cadre général pour le semisupervisé: l'autoapprentissage en ligne slaRank algorithme pour l'ordonnancement semisupervisé Une stratégie de sélection de modèle lno Perspectives Amélioration de la mise à jour: prise en compte de l'erreur d'étiquetage Sélection de modèles avec peu de données étiquetées Cas non linéaire Extension au cadre plus général de l'ordonnancement d'instances 22/23 Truong, Amini, Gallinari Problématique La méthode slaRank Experiences Conclusion Merci de votre attention !!! Questions ? 23/23 Truong, Amini, Gallinari