Utilisation des méthodes Support Vector Machine (SVM) dans l analyse des bases de données Abdelhamid DJEFFAL Encadré par: M.C. BABAHENINI Co-Encadré par: A. TALEB-AHMED Département d informatique, Laboratoire LESIA Université de Biskra Mai 2012
Plan 1 Problématique 2 Data mining 3 SVM 4 SVM & analyse des BDD 5 Contributions Accélération des SVMs par réduction d exemples SVM multiclasse accélérée à base de OC-SVM Applications 6 Conclusion
Outline 1 Problématique 2 Data mining 3 SVM 4 SVM & analyse des BDD 5 Contributions Accélération des SVMs par réduction d exemples SVM multiclasse accélérée à base de OC-SVM Applications 6 Conclusion
Motivations de la thèse Motivations Le développement du data mining et utilisation dans les grand SGBD Le développement des SVMs et leurs applications dans plusieurs domaines Le développement continu des volumes des BDDs Insuffisances et lacunes des techniques de data mining Proposition Utilisation des SVMs pour l analyse des BDD
Motivations de la thèse Motivations Le développement du data mining et utilisation dans les grand SGBD Le développement des SVMs et leurs applications dans plusieurs domaines Le développement continu des volumes des BDDs Insuffisances et lacunes des techniques de data mining Proposition Utilisation des SVMs pour l analyse des BDD
Motivations de la thèse Motivations Le développement du data mining et utilisation dans les grand SGBD Le développement des SVMs et leurs applications dans plusieurs domaines Le développement continu des volumes des BDDs Insuffisances et lacunes des techniques de data mining Proposition Utilisation des SVMs pour l analyse des BDD
Motivations de la thèse Motivations Le développement du data mining et utilisation dans les grand SGBD Le développement des SVMs et leurs applications dans plusieurs domaines Le développement continu des volumes des BDDs Insuffisances et lacunes des techniques de data mining Proposition Utilisation des SVMs pour l analyse des BDD
Motivations de la thèse Motivations Le développement du data mining et utilisation dans les grand SGBD Le développement des SVMs et leurs applications dans plusieurs domaines Le développement continu des volumes des BDDs Insuffisances et lacunes des techniques de data mining Proposition Utilisation des SVMs pour l analyse des BDD
Motivations de la thèse Motivations Le développement du data mining et utilisation dans les grand SGBD Le développement des SVMs et leurs applications dans plusieurs domaines Le développement continu des volumes des BDDs Insuffisances et lacunes des techniques de data mining Proposition Utilisation des SVMs pour l analyse des BDD
Motivations de la thèse Contraintes Dans quel niveau d analyse? Pour quelles tâches? Que faire face aux spécificités des BDD? Quelles adaptations pour les SVMs? Comment assurer la scalabilité?
Motivations de la thèse Contraintes Dans quel niveau d analyse? Pour quelles tâches? Que faire face aux spécificités des BDD? Quelles adaptations pour les SVMs? Comment assurer la scalabilité?
Motivations de la thèse Contraintes Dans quel niveau d analyse? Pour quelles tâches? Que faire face aux spécificités des BDD? Quelles adaptations pour les SVMs? Comment assurer la scalabilité?
Motivations de la thèse Contraintes Dans quel niveau d analyse? Pour quelles tâches? Que faire face aux spécificités des BDD? Quelles adaptations pour les SVMs? Comment assurer la scalabilité?
Motivations de la thèse Contraintes Dans quel niveau d analyse? Pour quelles tâches? Que faire face aux spécificités des BDD? Quelles adaptations pour les SVMs? Comment assurer la scalabilité?
Outline 1 Problématique 2 Data mining 3 SVM 4 SVM & analyse des BDD 5 Contributions Accélération des SVMs par réduction d exemples SVM multiclasse accélérée à base de OC-SVM Applications 6 Conclusion
Définition Data mining Définition Data mining, Fouilles de données, ECD Utilisation des techniques de: statistiques, IA, Optimisation,... Pour découvrir les modèles, les relations, les règles, les motifs, les patterns,... qui se cachent dans les grandes quantités de données, Pour comprendre, aider à la décision, optimiser, améliorer,... Dans les banques, les laboratoires, les supermarchés, les hôpitaux,...
Définition Data mining Définition Data mining, Fouilles de données, ECD Utilisation des techniques de: statistiques, IA, Optimisation,... Pour découvrir les modèles, les relations, les règles, les motifs, les patterns,... qui se cachent dans les grandes quantités de données, Pour comprendre, aider à la décision, optimiser, améliorer,... Dans les banques, les laboratoires, les supermarchés, les hôpitaux,...
Définition Data mining Définition Data mining, Fouilles de données, ECD Utilisation des techniques de: statistiques, IA, Optimisation,... Pour découvrir les modèles, les relations, les règles, les motifs, les patterns,... qui se cachent dans les grandes quantités de données, Pour comprendre, aider à la décision, optimiser, améliorer,... Dans les banques, les laboratoires, les supermarchés, les hôpitaux,...
Définition Data mining Définition Data mining, Fouilles de données, ECD Utilisation des techniques de: statistiques, IA, Optimisation,... Pour découvrir les modèles, les relations, les règles, les motifs, les patterns,... qui se cachent dans les grandes quantités de données, Pour comprendre, aider à la décision, optimiser, améliorer,... Dans les banques, les laboratoires, les supermarchés, les hôpitaux,...
Définition Data mining Définition Data mining, Fouilles de données, ECD Utilisation des techniques de: statistiques, IA, Optimisation,... Pour découvrir les modèles, les relations, les règles, les motifs, les patterns,... qui se cachent dans les grandes quantités de données, Pour comprendre, aider à la décision, optimiser, améliorer,... Dans les banques, les laboratoires, les supermarchés, les hôpitaux,...
Définition Data mining Définition Data mining, Fouilles de données, ECD Utilisation des techniques de: statistiques, IA, Optimisation,... Pour découvrir les modèles, les relations, les règles, les motifs, les patterns,... qui se cachent dans les grandes quantités de données, Pour comprendre, aider à la décision, optimiser, améliorer,... Dans les banques, les laboratoires, les supermarchés, les hôpitaux,...
Processus Processus de data mining Analyse du problème BDD originales Collecte des données BDD initiales Préparation des données Evaluation Modèles/patterns Motifs Fouille de données BDD préparées Connaissances Déploiement
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Tâches Data mining Tâches de data mining Classification, Régression, Clustering, Renforcement, Recherche des motifs fréquents et des règles d association, Visualisation,...
Outline 1 Problématique 2 Data mining 3 SVM 4 SVM & analyse des BDD 5 Contributions Accélération des SVMs par réduction d exemples SVM multiclasse accélérée à base de OC-SVM Applications 6 Conclusion
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Principe Classification binaire: y i = ±1 Rechercher un hyperplan de séparation: w x + b = 0 Qui maximise la marge: 2 w 2
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Principe Classification binaire: y i = ±1 Rechercher un hyperplan de séparation: w x + b = 0 Qui maximise la marge: 2 w 2
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Principe Classification binaire: y i = ±1 Rechercher un hyperplan de séparation: w x + b = 0 Qui maximise la marge: 2 w 2
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Principe Classification binaire: y i = ±1 Rechercher un hyperplan de séparation: w x + b = 0 Qui maximise la marge: 2 w 2
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Principe Résoudre l équation: Minimiser 1 2 w 2 + C n Avec ξ i i=1 y i (w T x i + b) 1 ξ i ; i = 1..n ξ i 0
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Solution Introduire les multiplicateurs de Lagrange α i 1 n n n Minimiser 2 α i α j y i y j xi, x j i=1 j=1 i=1 n Avec α i y i = 0 i=1 0 α i C α i La fonction de décision est: H(x) = n α i y i x i, x + b i=1
Principe Introduction Support vector machines Une méthode d apprentissage statistique due à Vladimir Vapnik Solution Introduire les multiplicateurs de Lagrange α i 1 n n n Minimiser 2 α i α j y i y j xi, x j i=1 j=1 i=1 n Avec α i y i = 0 i=1 0 α i C α i La fonction de décision est: H(x) = n α i y i x i, x + b i=1
Principe Utilisation des noyaux y φ Espace original x Espace de caractéristiques φ -1 Espace original
Principe Utilisation des noyaux Noyau (Kernel) La transformation et son inverse sont calculées par une fonction réelle appelée Noyau K (x i, x j ) Linéaire: K (x i, x j ) = xi T x j Polynomial: K (x i, x j ) = (xi T x j ) d ( x i x j 2 ) Gaussien: K (x i, x j ) = e... 2σ 2
Principe Utilisation des noyaux Noyau (Kernel) La transformation et son inverse sont calculées par une fonction réelle appelée Noyau K (x i, x j ) Linéaire: K (x i, x j ) = xi T x j Polynomial: K (x i, x j ) = (xi T x j ) d ( x i x j 2 ) Gaussien: K (x i, x j ) = e... 2σ 2
Principe Utilisation des noyaux Noyau (Kernel) La transformation et son inverse sont calculées par une fonction réelle appelée Noyau K (x i, x j ) Linéaire: K (x i, x j ) = xi T x j Polynomial: K (x i, x j ) = (xi T x j ) d ( x i x j 2 ) Gaussien: K (x i, x j ) = e... 2σ 2
Principe Utilisation des noyaux Noyau (Kernel) La transformation et son inverse sont calculées par une fonction réelle appelée Noyau K (x i, x j ) Linéaire: K (x i, x j ) = xi T x j Polynomial: K (x i, x j ) = (xi T x j ) d ( x i x j 2 ) Gaussien: K (x i, x j ) = e... 2σ 2
Principe Utilisation des noyaux Noyau (Kernel) La transformation et son inverse sont calculées par une fonction réelle appelée Noyau K (x i, x j ) Linéaire: K (x i, x j ) = xi T x j Polynomial: K (x i, x j ) = (xi T x j ) d ( x i x j 2 ) Gaussien: K (x i, x j ) = e... 2σ 2
Principe Utilisation des noyaux Le problème dual à résoudre devient: 1 n n Minimiser 2 α i α j y i y j K (x i, x j ) n i=1 j=1 i=1 n Avec α i y i = 0 i=1 0 α i C La fonction de décision est: H(x) = n α i y i K (x i, x) + b i=1 α i
Implémentation Implémentation Optimisation Heuristiques SMO (Platt et al. 97) Optimiser à chaque itération deux α i Plusieurs packages: SVMlight, SVMTORCH, LibSVM... Complexité O(MN 2 ) Problème avec les grands ensembles de données
Implémentation Implémentation Optimisation Heuristiques SMO (Platt et al. 97) Optimiser à chaque itération deux α i Plusieurs packages: SVMlight, SVMTORCH, LibSVM... Complexité O(MN 2 ) Problème avec les grands ensembles de données
Implémentation Implémentation Optimisation Heuristiques SMO (Platt et al. 97) Optimiser à chaque itération deux α i Plusieurs packages: SVMlight, SVMTORCH, LibSVM... Complexité O(MN 2 ) Problème avec les grands ensembles de données
Implémentation Implémentation Optimisation Heuristiques SMO (Platt et al. 97) Optimiser à chaque itération deux α i Plusieurs packages: SVMlight, SVMTORCH, LibSVM... Complexité O(MN 2 ) Problème avec les grands ensembles de données
Implémentation Implémentation Optimisation Heuristiques SMO (Platt et al. 97) Optimiser à chaque itération deux α i Plusieurs packages: SVMlight, SVMTORCH, LibSVM... Complexité O(MN 2 ) Problème avec les grands ensembles de données
Implémentation Implémentation Optimisation Heuristiques SMO (Platt et al. 97) Optimiser à chaque itération deux α i Plusieurs packages: SVMlight, SVMTORCH, LibSVM... Complexité O(MN 2 ) Problème avec les grands ensembles de données
Architecture Architecture Décision 1 si f >0 autre sinon b ff = α i y i K(x i, x) + bb Fonction de décision α1 α2 αs-1 αs Multiplicateurs K(x1,x 1,x) K(x 2,x) K(x K(xi,xj) s-1,x) K(x s,x) Fonction noyau K Vecteurs supports x 1..x s Vecteur x à tester
Variantes Variantes SVM Multiclasse H2(x) X2 X2 Classe 1 Classe 1 H12(x) H3(x) H1(x) Classe 2 H 13(x) Classe 2 Classe 3 Classe 3? H23(x) X1 1 Vs Reste 1 Vs 1 X1 {1,2,3,4} H12 Ecarter 1 Ecarter 2 DAG {2,3,4} H23 H14 {1, 3,4} Ecarter 3 Ecarter Ecarter 2 Ecarter 1 4 H24 {2,4} {3,4} H34 {1, 3} H13 Ecarter 4 Ecarter 2 Ecarter 3 Ecarter 4 Ecarter 1 Ecarter 3 2 4 3 1
Variantes Variantes SVM Monoclasse (Novelty detection) Classe cible Origine
Variantes Variantes SVM pour la régression (SVR) y y = w x + b y φ φ -1 2ε x Espace original Espace de caractéristiques Espace original x
Variantes Variantes SVM pour le clustering (SVC) X 2 x 4 x 1 x 3 x 2 X 1
Variantes Variantes SVM pour le renforcement (Transductive) X 2 + + + + - - - - Hyperplan sans renforcement Hyperplan avec renforcement X 1
Evaluation Evaluation des SVMs Technique d évaluation Hold Out (partie training + partie test) N Cross Validation (Leave One Out), Bootstrap (choix aléatoire des exemples d entrainement).
Evaluation Evaluation des SVMs Technique d évaluation Hold Out (partie training + partie test) N Cross Validation (Leave One Out), Bootstrap (choix aléatoire des exemples d entrainement).
Evaluation Evaluation des SVMs Technique d évaluation Hold Out (partie training + partie test) N Cross Validation (Leave One Out), Bootstrap (choix aléatoire des exemples d entrainement).
Evaluation Evaluation des SVMs Technique d évaluation Hold Out (partie training + partie test) N Cross Validation (Leave One Out), Bootstrap (choix aléatoire des exemples d entrainement).
Outline 1 Problématique 2 Data mining 3 SVM 4 SVM & analyse des BDD 5 Contributions Accélération des SVMs par réduction d exemples SVM multiclasse accélérée à base de OC-SVM Applications 6 Conclusion
Où sont utilisées les BDDs Visualisation et intégration Connaissances (bases de données) Analyse Extraction des connaissances Entrepôt de données (bases de données) Acquisition Analyse Extraction des caractéristiques Bases de données Images Son Web Textes
Acquisition Utilisation des SVMs pour l acquisition Préparation des BDDs Lissage (SVR): élimination du bruit au niveau des attributs, Nettoyage (SVM, OCSVM, SVC): détection des exemples erronés, élimination des doublons, élimination des outliers, Réduction verticale (SVM): éliminations successives des attributs, Réduction Horizontale (OC-SVM, Multiclasse): éliminations des exemples redondants et de faible importance.
Acquisition Utilisation des SVMs pour l acquisition Préparation des BDDs Lissage (SVR): élimination du bruit au niveau des attributs, Nettoyage (SVM, OCSVM, SVC): détection des exemples erronés, élimination des doublons, élimination des outliers, Réduction verticale (SVM): éliminations successives des attributs, Réduction Horizontale (OC-SVM, Multiclasse): éliminations des exemples redondants et de faible importance.
Acquisition Utilisation des SVMs pour l acquisition Préparation des BDDs Lissage (SVR): élimination du bruit au niveau des attributs, Nettoyage (SVM, OCSVM, SVC): détection des exemples erronés, élimination des doublons, élimination des outliers, Réduction verticale (SVM): éliminations successives des attributs, Réduction Horizontale (OC-SVM, Multiclasse): éliminations des exemples redondants et de faible importance.
Acquisition Utilisation des SVMs pour l acquisition Préparation des BDDs Lissage (SVR): élimination du bruit au niveau des attributs, Nettoyage (SVM, OCSVM, SVC): détection des exemples erronés, élimination des doublons, élimination des outliers, Réduction verticale (SVM): éliminations successives des attributs, Réduction Horizontale (OC-SVM, Multiclasse): éliminations des exemples redondants et de faible importance.
Acquisition Utilisation des SVMs pour l acquisition Préparation des BDDs Lissage (SVR): élimination du bruit au niveau des attributs, Nettoyage (SVM, OCSVM, SVC): détection des exemples erronés, élimination des doublons, élimination des outliers, Réduction verticale (SVM): éliminations successives des attributs, Réduction Horizontale (OC-SVM, Multiclasse): éliminations des exemples redondants et de faible importance.
Extraction des connaissances Utilisation des SVMs pour l Extraction des connaissances Extraction des connaissances Classification (mono, bi et multiclasse), Régression (SVR), Clustering (SVC) Renforcement (Transductive SVM)
Extraction des connaissances Utilisation des SVMs pour l Extraction des connaissances Extraction des connaissances Classification (mono, bi et multiclasse), Régression (SVR), Clustering (SVC) Renforcement (Transductive SVM)
Extraction des connaissances Utilisation des SVMs pour l Extraction des connaissances Extraction des connaissances Classification (mono, bi et multiclasse), Régression (SVR), Clustering (SVC) Renforcement (Transductive SVM)
Extraction des connaissances Utilisation des SVMs pour l Extraction des connaissances Extraction des connaissances Classification (mono, bi et multiclasse), Régression (SVR), Clustering (SVC) Renforcement (Transductive SVM)
Extraction des connaissances Utilisation des SVMs pour l Extraction des connaissances Extraction des connaissances Classification (mono, bi et multiclasse), Régression (SVR), Clustering (SVC) Renforcement (Transductive SVM)
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Problèmes Attributs symboliques Utilisation des noyaux symboliques (text mining) Sac de mots p-spectrum, All Sub Sequences,... Nombre élevé d enregistrement Utilisation des techniques d accélération SVM online, Parallélisation, Réduction d exemples (contribution 1), Techniques d accélération (contribution 2).
Problèmes d utilisation des SVMs Intégration des SVMs dans les SGBD Utiliser les outils SGBDs dans l entrainement des SVMs, Utiliser le jargon SGBD (SQL, PL) pour l utilisation des SVMs, Exemple d Oracle.
Problèmes d utilisation des SVMs Intégration des SVMs dans les SGBD Utiliser les outils SGBDs dans l entrainement des SVMs, Utiliser le jargon SGBD (SQL, PL) pour l utilisation des SVMs, Exemple d Oracle.
Problèmes d utilisation des SVMs Intégration des SVMs dans les SGBD Utiliser les outils SGBDs dans l entrainement des SVMs, Utiliser le jargon SGBD (SQL, PL) pour l utilisation des SVMs, Exemple d Oracle.
Problèmes d utilisation des SVMs Intégration des SVMs dans les SGBD Utiliser les outils SGBDs dans l entrainement des SVMs, Utiliser le jargon SGBD (SQL, PL) pour l utilisation des SVMs, Exemple d Oracle.
Outline 1 Problématique 2 Data mining 3 SVM 4 SVM & analyse des BDD 5 Contributions Accélération des SVMs par réduction d exemples SVM multiclasse accélérée à base de OC-SVM Applications 6 Conclusion
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Observations 1 Les vecteurs non support n ont aucune influence sur l hyperplan, 2 Selon V.Vapnik, les vecteurs supports représentent 10% des exemples. Idée Découvrir ces vecteurs et les utiliser seuls pour l apprentissage
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Observations 1 Les vecteurs non support n ont aucune influence sur l hyperplan, 2 Selon V.Vapnik, les vecteurs supports représentent 10% des exemples. Idée Découvrir ces vecteurs et les utiliser seuls pour l apprentissage
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Observations 1 Les vecteurs non support n ont aucune influence sur l hyperplan, 2 Selon V.Vapnik, les vecteurs supports représentent 10% des exemples. Idée Découvrir ces vecteurs et les utiliser seuls pour l apprentissage
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Observations 1 Les vecteurs non support n ont aucune influence sur l hyperplan, 2 Selon V.Vapnik, les vecteurs supports représentent 10% des exemples. Idée Découvrir ces vecteurs et les utiliser seuls pour l apprentissage
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Travaux antérieurs sur la réduction d exemples Liu & Feng, 2008 Kernel Bisecting k-means clustering A. Arslan, 2008 Clustering k-nn Lin &. Yeh, 2009 Réduction basée sur les algorithmes génétiques
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Travaux antérieurs sur la réduction d exemples Liu & Feng, 2008 Kernel Bisecting k-means clustering A. Arslan, 2008 Clustering k-nn Lin &. Yeh, 2009 Réduction basée sur les algorithmes génétiques
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Travaux antérieurs sur la réduction d exemples Liu & Feng, 2008 Kernel Bisecting k-means clustering A. Arslan, 2008 Clustering k-nn Lin &. Yeh, 2009 Réduction basée sur les algorithmes génétiques
Accélération des SVMs par réduction d exemples Contribution 1: CB-SR Travaux antérieurs sur la réduction d exemples Liu & Feng, 2008 Kernel Bisecting k-means clustering A. Arslan, 2008 Clustering k-nn Lin &. Yeh, 2009 Réduction basée sur les algorithmes génétiques
Accélération des SVMs par réduction d exemples Covering Based Samples Reduction Filtrage Détecter les vecteurs supports potentiels par des hyperplans locaux Révision Rajouter les exemples éventuellement écartés par erreur.
Accélération des SVMs par réduction d exemples Covering Based Samples Reduction Filtrage Détecter les vecteurs supports potentiels par des hyperplans locaux Révision Rajouter les exemples éventuellement écartés par erreur.
Accélération des SVMs par réduction d exemples Covering Based Samples Reduction Filtrage Détecter les vecteurs supports potentiels par des hyperplans locaux Révision Rajouter les exemples éventuellement écartés par erreur.
Accélération des SVMs par réduction d exemples Filtrage Zone de couverture La zone de couverture de x i par rapport à x k = Zone délimitée par H + ik et H ik : x j / 1 H ik (x j ) 1 X2 Zone de couverture de x i par rapport à x k Classe - Classe + H ik=-1 Couverture x i y i (±1) est couvert par x j y i par rapport à x k y k = y i si x j se situe dans la zone de couverture de x i par rapport à x k. mais... X4 x k X2 x j x i H ik=+1 X1
Accélération des SVMs par réduction d exemples Filtrage Zone de couverture La zone de couverture de x i par rapport à x k = Zone délimitée par H + ik et H ik : x j / 1 H ik (x j ) 1 X2 Zone de couverture de x i par rapport à x k Classe - Classe + H ik=-1 Couverture x i y i (±1) est couvert par x j y i par rapport à x k y k = y i si x j se situe dans la zone de couverture de x i par rapport à x k. mais... X4 x k X2 x j x i H ik=+1 X1
Accélération des SVMs par réduction d exemples Filtrage Couverture mutuelle On dit que x i et x j y i (±1) sont mutuellement couvert par rapport à x k y k = y i si chacun se situe dans la zone de couverture de l autre. X2 H ik=-1 Couverture de x i par rapport à x k x k X3 x i Classe + Classe - Couverture x i y i (±1) est couvert par x j y i par rapport à x k y k = y i si x j se situe dans la zone de couverture de x i par rapport à x k et x i ne se situe pas dans la H jk=-1 Couverture de x j X4 par rapport à x k H jk=+1 X2 x j H ik=+1 X1 zone de couverture de x j par rapport à x k
Accélération des SVMs par réduction d exemples Filtrage Couverture mutuelle On dit que x i et x j y i (±1) sont mutuellement couvert par rapport à x k y k = y i si chacun se situe dans la zone de couverture de l autre. X2 H ik=-1 Couverture de x i par rapport à x k x k X3 x i Classe + Classe - Couverture x i y i (±1) est couvert par x j y i par rapport à x k y k = y i si x j se situe dans la zone de couverture de x i par rapport à x k et x i ne se situe pas dans la H jk=-1 Couverture de x j X4 par rapport à x k H jk=+1 X2 x j H ik=+1 X1 zone de couverture de x j par rapport à x k
Accélération des SVMs par réduction d exemples Filtrage Couverture totale On dit qu un exemple x i d une classe y i (±1) est totalement couvert par rapport à la classe y i, si pour tout exemple x k de la classe y i, il existe un exemple x j de la classe y i qui couvre x i par rapport à x k : x j non écarté N + /( 1 H ik (x j ) 1) et ( 1 > H jk (x i ) ou H jk (x i ) > 1) Filtrage Ecarter tous les exemples totalement couverts.
Accélération des SVMs par réduction d exemples Filtrage Couverture totale On dit qu un exemple x i d une classe y i (±1) est totalement couvert par rapport à la classe y i, si pour tout exemple x k de la classe y i, il existe un exemple x j de la classe y i qui couvre x i par rapport à x k : x j non écarté N + /( 1 H ik (x j ) 1) et ( 1 > H jk (x i ) ou H jk (x i ) > 1) Filtrage Ecarter tous les exemples totalement couverts.
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Filtrage Exemple récapitulatif
Accélération des SVMs par réduction d exemples Tuning Utilisation du paramètre ρ X2 Zone de couverture de xi par rapport à xk Classe - Classe + H ik =-1 ρ ρ x i x j x k H ik =+1 X 4 X 2 X1
Accélération des SVMs par réduction d exemples Tuning Effet: contrôle du taux de filtrage
Accélération des SVMs par réduction d exemples Révision Rajouter les exemples écartés par erreurs Pas toujours Uniquement si le taux de reconnaissance de l hyperplan obtenu n est pas satisfaisant Sources d erreurs 1 Le filtrage (ρ, noyau et ses paramètres) 2 L apprentissage (noyau et ses paramètres, C, Optimisation: heuristiques et critère d arrêt) Résultat Ecarter des vecteurs supports potentiels
Accélération des SVMs par réduction d exemples Révision Rajouter les exemples écartés par erreurs Pas toujours Uniquement si le taux de reconnaissance de l hyperplan obtenu n est pas satisfaisant Sources d erreurs 1 Le filtrage (ρ, noyau et ses paramètres) 2 L apprentissage (noyau et ses paramètres, C, Optimisation: heuristiques et critère d arrêt) Résultat Ecarter des vecteurs supports potentiels
Accélération des SVMs par réduction d exemples Révision Rajouter les exemples écartés par erreurs Pas toujours Uniquement si le taux de reconnaissance de l hyperplan obtenu n est pas satisfaisant Sources d erreurs 1 Le filtrage (ρ, noyau et ses paramètres) 2 L apprentissage (noyau et ses paramètres, C, Optimisation: heuristiques et critère d arrêt) Résultat Ecarter des vecteurs supports potentiels
Accélération des SVMs par réduction d exemples Révision Rajouter les exemples écartés par erreurs Pas toujours Uniquement si le taux de reconnaissance de l hyperplan obtenu n est pas satisfaisant Sources d erreurs 1 Le filtrage (ρ, noyau et ses paramètres) 2 L apprentissage (noyau et ses paramètres, C, Optimisation: heuristiques et critère d arrêt) Résultat Ecarter des vecteurs supports potentiels
Accélération des SVMs par réduction d exemples Révision Rajouter les exemples écartés par erreurs Pas toujours Uniquement si le taux de reconnaissance de l hyperplan obtenu n est pas satisfaisant Sources d erreurs 1 Le filtrage (ρ, noyau et ses paramètres) 2 L apprentissage (noyau et ses paramètres, C, Optimisation: heuristiques et critère d arrêt) Résultat Ecarter des vecteurs supports potentiels
Accélération des SVMs par réduction d exemples Révision Utiliser les conditions KKT: (Karush-Kuhn-Tucker) α i = 0 y i f (x i ) > 1 : exemples bien classés α i = C y i f (x i ) 1 : exemples mal classés 0 < α i < C y i f (x i ) = 1 : vecteurs supports
Accélération des SVMs par réduction d exemples Révision Utiliser les conditions KKT: (Karush-Kuhn-Tucker) α i = 0 y i f (x i ) > 1 : exemples bien classés α i = C y i f (x i ) 1 : exemples mal classés 0 < α i < C y i f (x i ) = 1 : vecteurs supports
Accélération des SVMs par réduction d exemples Révision Utiliser les conditions KKT: (Karush-Kuhn-Tucker) α i = 0 y i f (x i ) > 1 : exemples bien classés α i = C y i f (x i ) 1 : exemples mal classés 0 < α i < C y i f (x i ) = 1 : vecteurs supports
Accélération des SVMs par réduction d exemples Révision Utiliser les conditions KKT: (Karush-Kuhn-Tucker) α i = 0 y i f (x i ) > 1 : exemples bien classés α i = C y i f (x i ) 1 : exemples mal classés 0 < α i < C y i f (x i ) = 1 : vecteurs supports
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Révision Etapes de la révision 1 Utiliser l hyperplan obtenu dans la phase de filtrage, 2 Mettre les α i des exemples écartés à 0, 3 Vérifier les conditions KKT pour ces exemples, 4 Ajouter les exemples qui ne vérifient pas les conditions KKT à l ensembles des exemples filtrés, 5 Recommencer un nouvel apprentissage en démarrant de l hyperplan précédent (valeurs précédentes des α i ) Résultat Obtenir un hyperplan final
Accélération des SVMs par réduction d exemples Données utilisées pour les tests Tests sur: 1 Des données artificielles: type Toy 2 Des données réelles du cite UCI Tables Table N Att N N Entr N Test Germen 24 1000 500 500 Diabetes 8 768 384 384 Tow Spiras 2 3000 300 2700 Tow Ellipses 2 3000 300 2700 Cancer Analysis 32 596 596 596 Segmentation 19 2309 2309 2309
Accélération des SVMs par réduction d exemples Données utilisées pour les tests Tests sur: 1 Des données artificielles: type Toy 2 Des données réelles du cite UCI Tables Table N Att N N Entr N Test Germen 24 1000 500 500 Diabetes 8 768 384 384 Tow Spiras 2 3000 300 2700 Tow Ellipses 2 3000 300 2700 Cancer Analysis 32 596 596 596 Segmentation 19 2309 2309 2309
Accélération des SVMs par réduction d exemples Données utilisées pour les tests Tests sur: 1 Des données artificielles: type Toy 2 Des données réelles du cite UCI Tables Table N Att N N Entr N Test Germen 24 1000 500 500 Diabetes 8 768 384 384 Tow Spiras 2 3000 300 2700 Tow Ellipses 2 3000 300 2700 Cancer Analysis 32 596 596 596 Segmentation 19 2309 2309 2309
Accélération des SVMs par réduction d exemples Données utilisées pour les tests Tests sur: 1 Des données artificielles: type Toy 2 Des données réelles du cite UCI Tables Table N Att N N Entr N Test Germen 24 1000 500 500 Diabetes 8 768 384 384 Tow Spiras 2 3000 300 2700 Tow Ellipses 2 3000 300 2700 Cancer Analysis 32 596 596 596 Segmentation 19 2309 2309 2309
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Evaluation Paramètres d évaluation 1 Nombre d exemples maintenus après filtrage 2 Temps d apprentissage à bases des exemples maintenus 3 Taux de reconnaissances Comparer avec 1 KBK-SR (Kernel Bisecting k-means Clustering) [Liu & Feng, 2008] 2 Méthode de Lin [Lin &. Yeh, 2009]
Accélération des SVMs par réduction d exemples Résultats Résultats sur des toys SVM seule après Filtrage N T(s) R(%) N T(s) R(%) 1169 432.656 100 471 60.516 99,65
Accélération des SVMs par réduction d exemples Résultats Résultats sur des toys SVM seule après Filtrage et Révision N T(s) R(%) N T(s) R(%) 1169 432.656 100 679 93.268 100
Accélération des SVMs par réduction d exemples Résultats Résultats sur des BDDs du cite UCI Base de test Méthode N ρ T(s) R(%) German SVM 500 / 501.375 72.8 KBK-SR 156 / 60.42 70.83 CB-SR 3 0.95 0.578 72.8 Tow Spirals SVM 300 / 10.687 100 Lin 92 / / 99.95 CB-SR 37 0.86 0.875 100 Tow Ellipses SVM 300 / 12.395 100 Lin 39 / / 100 CB-SR 12 0.79 0.126 100 Segmentation SVM 2309 / 84.61 100 CB-SR 32 / 0.937 100
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Large utilisation de la variante multiclasse La plupart des applications réelles utilisent la SVM multiclasse OCR, Reconnaissance des caractères manuscrits, Reconnaissance visages humains,... Lenteur des SVM multiclasse utilisées 1vsR 1vs1, DAG Arbres de décisions,...
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Travaux antérieurs (HvsH: Han-sheng & al, 2005) ABC vs DEF B B BBB B B BB B C C CCC C C CC C A vs BC DE vs F B vs C D vs E F A A AAA A A AA A D D DDD D D DD D B C D E F F F F F F F F F F E E EEE E E EE E
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Travaux antérieurs (OC-SVM:Yang & al, 2007) R 1 C 1 C 2 C 3 R 3 R 2
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Travaux antérieurs (R-1vsR: Arun & al, 2010) Reduced-1vsR Pour chaque hyperplan: utiliser les exemples restants et les vecteurs supports précédents
SVM multiclasse accélérée à base de OC-SVM Contribution 2: OCBM Travaux antérieurs (ODT-SVM: Agrawal & al, 2011) 1vs(2,3,4) Classe 4 classe1 2vs(3,4) Classe 1 Classe 3 Classe2 3vs4 Classe3 Classe4 Classe 2
SVM multiclasse accélérée à base de OC-SVM Principe Utiliser le OC-SVM avec renforcement de la précision Prendre un hyperplan mono classe pour chaque classe Calculer des décalages pour renforcer la précision Utiliser le principe de maximum de profondeur
SVM multiclasse accélérée à base de OC-SVM Principe Utiliser le OC-SVM avec renforcement de la précision Prendre un hyperplan mono classe pour chaque classe Calculer des décalages pour renforcer la précision Utiliser le principe de maximum de profondeur
SVM multiclasse accélérée à base de OC-SVM Principe Utiliser le OC-SVM avec renforcement de la précision Prendre un hyperplan mono classe pour chaque classe Calculer des décalages pour renforcer la précision Utiliser le principe de maximum de profondeur
SVM multiclasse accélérée à base de OC-SVM Principe Utiliser le OC-SVM avec renforcement de la précision Prendre un hyperplan mono classe pour chaque classe Calculer des décalages pour renforcer la précision Utiliser le principe de maximum de profondeur
SVM multiclasse accélérée à base de OC-SVM Principe Hyperplan OC-SVM Hyperplan HH kk décalé HH dddd Classe K (cible) xx kk xx kk HH(xx kk ) HH(xx kk ) Les autres classes K
SVM multiclasse accélérée à base de OC-SVM Principe X2 Classe 1 Classe 2 Classe 1 Classe 2 Classe 3 Classe 3 Classe 4 Classe 4 OC-SVM X1 Décalages X2 Classe 1 Classe 2 Classe 3 Classe 4 X1 Maximum de profondeur X1
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Evaluation Paramètres d évaluation 1 Temps d apprentissage, 2 Temps de classification, 3 Taille du modèle obtenu, 4 Taux de reconnaissance Comparer avec 1 1vsR, 1vs1, DAG 2 HvsH (Han-sheng & all, 2005) 3 OC-SVM (Yang & all, 2007) 4 R-1vsR (Arun & all, 2010) 5 ODT-SVM (Agrawal & all, 2011)
SVM multiclasse accélérée à base de OC-SVM Analyse de complexité Soit K : nombre de classes N c : Nombre d exemple par classe β: constante relative aux conditions d exécution δ:nombre d octets nécessaires au stockage d une valeur d un attribut Exemple d application K = 10, N c = 20, β = 1, δ = 1
SVM multiclasse accélérée à base de OC-SVM Analyse de complexité Temps d entrainement Méthode # hyperplans Temps estimé Exemple 1vsR K K 3 βnc 2 400000 1vs1 K (K 1)/2 2βK 2 Nc 2 80000 K ODT K 1 3 3 βn2 c 27000 HvsH 2 log2k 1 2βK 2 Nc 2 80000 K R-SVM K 3 3 βn2 c 27000 OC K K βnc 2 4000 OCBM K K βnc 2 4000
SVM multiclasse accélérée à base de OC-SVM Analyse de complexité Temps de classification Méthode # hyperplans Temps estimé Exemple 1vsR K K 2 βn c 2000 1vs1 K (K 1)/2 K (K 1)βN c 1800 DAG (K 1) 2(K 1)βN c 360 K (K +1) ODT K 1 ( 2 1)βN c 1080 HvsH log 2 K 2K βn c 400 R-1vsR K ODT 1080 OC-SVM K K βn c 200 OCBM K K βn c 200
SVM multiclasse accélérée à base de OC-SVM Analyse de complexité Taille du modèle Méthode # hyperplans Taille estimé Exemple 1vsR K 2K 2 δn c + K δ 4010 1vs1 K (K 1)/2 K (K 1)(2N c + δ 2 ) 3600 K (K +1) ODT K 1 2( 2 1)δN c 1769 HAH 2 log2k 1 2Klog 2 (K )δn c 1409 R-1vsR K ODT-SVM 1769 OC K K δ(n c + 2) 220 OCBM K K δ(n c + 2) 220
SVM multiclasse accélérée à base de OC-SVM Résultats sur des toys 1vs1 DAG Te(s) Tt (s) R(%) T(KB) Te(s) Tt (s) R(%) T(KB) 343.5 644.2 100 302.5 343.5 152.3 100 302.5