Quels sont les domaines dans lesquels les SVM sont toujours à la pointe de la technologie?

10

Il semble que les réseaux de neurones profonds et d'autres modèles basés sur les réseaux de neurones dominent de nombreux domaines actuels comme la vision par ordinateur, la classification d'objets, l'apprentissage par renforcement, etc.

Existe-t-il des domaines dans lesquels les SVM (ou d'autres modèles) produisent toujours des résultats de pointe?

Steven Davis
la source

Réponses:

12

L'état de l'art est une barre difficile, car il n'est pas clair comment il doit être mesuré. Un autre critère, qui s'apparente à l'état de l'art, consiste à demander quand vous préférerez peut-être essayer un SVM.

Les SVM présentent plusieurs avantages:

  1. Grâce à l'astuce du noyau, le temps d'exécution d'un SVM n'augmente pas de manière significative si vous souhaitez apprendre des modèles sur de nombreuses combinaisons non linéaires de fonctionnalités, plutôt que sur le jeu de fonctionnalités d'origine. En revanche, une approche plus moderne comme un réseau de neurones profonds devra être plus profonde ou plus large pour modéliser les mêmes modèles, ce qui augmentera son temps d'entraînement.
  2. Les SVM ont un biais inhérent à la sélection d'hypothèses "conservatrices", qui sont moins susceptibles de sur-ajuster les données, car elles essaient de trouver des hypothèses de marge maximale. Dans un certain sens, ils "font cuire" le rasoir d'Occam.
  3. Les SVM n'ont que deux hyperparamètres (le choix du noyau et la constante de régularisation), ils sont donc très faciles à régler pour des problèmes spécifiques. Il est généralement suffisant de les régler en effectuant une simple recherche dans la grille à travers l'espace des paramètres, ce qui peut être fait automatiquement.

Les SVM présentent également certains inconvénients:

  1. O(n3)O(wne)neww,e<<n
  2. O(n2)

Tous ces facteurs indiquent que les SVM sont pertinents pour exactement un cas d'utilisation: de petits ensembles de données où le modèle cible est considéré, apriori, comme une fonction régulière, mais très non linéaire, d'un grand nombre de caractéristiques. Ce cas d'utilisation se produit en fait assez souvent. Un exemple récent d'application où j'ai trouvé que les SVM étaient une approche naturelle consistait à créer des modèles prédictifs pour une fonction cible qui était connue pour être le résultat d'interactions entre des paires de caractéristiques (en particulier, des communications entre des paires d'agents). Un SVM avec un noyau quadratique pourrait donc apprendre efficacement des suppositions conservatrices et raisonnables.


1 Il existe des algorithmes approximatifs qui résoudront le SVM plus rapidement que cela, comme indiqué dans les autres réponses.

John Doucette
la source
7

L'apprentissage profond et les réseaux de neurones sont au centre des préoccupations en raison des récentes avancées dans le domaine et la plupart des experts pensent que c'est l'avenir de la résolution des problèmes d'apprentissage automatique.

Mais ne vous y trompez pas, les modèles classiques produisent toujours des résultats exceptionnels et dans certains problèmes, ils peuvent produire de meilleurs résultats que l'apprentissage en profondeur.

La régression linéaire est toujours de loin l'algorithme d'apprentissage automatique le plus utilisé au monde.

Il est difficile d'identifier un domaine spécifique où les modèles classiques fonctionnent toujours mieux car la précision est très déterminée par la forme et la qualité des données d'entrée.

La sélection d'algorithmes et de modèles est donc toujours un compromis. C'est une déclaration quelque peu précise pour faire en sorte que les modèles classiques fonctionnent toujours mieux avec des ensembles de données plus petits. Cependant, de nombreuses recherches sont en cours pour améliorer les performances des modèles d'apprentissage en profondeur sur moins de données.

La plupart des modèles classiques nécessitent moins de ressources de calcul, donc si votre objectif est la vitesse, c'est beaucoup mieux.

De plus, les modèles classiques sont plus faciles à implémenter et à visualiser, ce qui peut être un autre indicateur de performance, mais cela dépend de vos objectifs.

Si vous avez des ressources illimitées, un ensemble de données observable massif qui est correctement étiqueté et que vous l'implémentez correctement dans le domaine problématique, alors l'apprentissage en profondeur va probablement vous donner de meilleurs résultats dans la plupart des cas.

Mais d'après mon expérience, les conditions du monde réel ne sont jamais aussi parfaites

IsakBosman
la source
0

Entièrement d'accord avec la réponse de @ John. J'essaierai de compléter cela avec quelques points supplémentaires.

Quelques avantages des SVM:

a) SVM est défini par un problème d'optimisation convexe pour lequel il existe des méthodes efficaces à résoudre, comme SMO .

b) Efficace dans les espaces de grande dimension et également dans les cas où le nombre de dimensions est supérieur au nombre d'échantillons.

c) Utilise un sous-ensemble de points d'apprentissage dans la fonction de décision (appelés vecteurs de support), il est donc également efficace en mémoire.

d) Différentes fonctions du noyau peuvent être spécifiées pour la fonction de décision. . Dans sa forme la plus simple, l'astuce du noyau signifie transformer les données en une autre dimension qui a une nette marge de division entre les classes de données.

Les inconvénients des machines à vecteurs de support sont les suivants:

a) Si le nombre de fonctionnalités est beaucoup plus grand que le nombre d'échantillons, il est crucial d'éviter le sur-ajustement dans le choix des fonctions du noyau et du terme de régularisation. Les modèles de noyau peuvent être assez sensibles au sur-ajustement du critère de sélection de modèle

b) Les SVM ne fournissent pas directement d'estimations de probabilité. Dans de nombreux problèmes de classification, vous voulez réellement la probabilité d'appartenance à une classe, il serait donc préférable d'utiliser une méthode comme la régression logistique, plutôt que de post-traiter la sortie du SVM pour obtenir des probabilités.

naïve
la source
-1

Pour les ensembles de données de données tabulaires de faible dimension. Les DNN ne sont pas efficaces sur les entrées de faible dimension en raison d'une énorme sur-paramétrisation. Donc, même si l'ensemble de données est de grande taille, mais chaque échantillon est SVM de faible dimension battrait DNN.

Plus généralement, si les données sont tabulaires et que la corrélation entre les champs de l'échantillon est faible et bruyante, SVM peut toujours battre DNN même pour les données de grande dimension, mais cela dépend de la spécificité des données.

Malheureusement, je ne me souviens d'aucun article spécifique sur le sujet, c'est donc principalement un raisonnement de bon sens, vous n'avez pas à lui faire confiance.

mirror2image
la source