La structure de cette question est la suivante: dans un premier temps, je donne le concept d' apprentissage d'ensemble , ensuite je donne une liste de tâches de reconnaissance de formes , puis je donne des exemples d'algorithmes d'apprentissage d'ensemble et, enfin, j'introduis ma question. Ceux qui n'ont pas besoin de toutes les informations supplémentaires pourraient simplement regarder les gros titres et passer directement à ma question.
Qu'est-ce que l'apprentissage d'ensemble?
Selon un article de Wikipedia :
Dans les statistiques et l'apprentissage automatique, les méthodes d'ensemble utilisent plusieurs algorithmes d'apprentissage pour obtenir de meilleures performances prédictives que celles qui pourraient être obtenues à partir de n'importe lequel des algorithmes d'apprentissage constitutifs. Contrairement à un ensemble statistique en mécanique statistique, qui est généralement infini, un ensemble d'apprentissage automatique se réfère uniquement à un ensemble fini concret de modèles alternatifs, mais permet généralement à une structure beaucoup plus flexible d'exister parmi ces alternatives.
Exemples de tâches de reconnaissance de formes:
- Reconnaissance optique de caractères
- Reconnaissance de codes-barres
- Reconnaissance de plaque d'immatriculation
- Détection facial
- Reconnaissance de la parole
- Reconnaissance d'image
- Classification des documents
Exemples d'algorithmes d'apprentissage d'ensemble:
Les algorithmes d'apprentissage d'ensemble suivants utilisés pour les tâches de relations publiques (selon Wiki):
Algorithmes d'apprentissage d'ensemble (méta-algorithmes supervisés pour combiner plusieurs algorithmes d'apprentissage ensemble):
Boosting (unméta-algorithme d'ensemble d'apprentissage automatiquepour réduire principalement lebiais, ainsi que la variance de l'apprentissage supervisé, et une famille d'algorithmes d'apprentissage automatique qui convertissent les apprenants faibles en apprenants forts)
Agrégation bootstrap (" bagging ") (un méta-algorithme d'ensemble d'apprentissage automatique conçu pour améliorer la stabilité et la précision des algorithmes d'apprentissage automatique utilisés dansla classification statistiqueet larégression).
Moyennage d'ensemble (processus de création de plusieurs modèles et de les combiner pour produire une sortie souhaitée, par opposition à la création d'un seul modèle. Souvent, un ensemble de modèles fonctionne mieux que n'importe quel modèle individuel, car les diverses erreurs des modèles sont «moyennées». )
- Mélange d'experts, mélange hiérarchique d'experts
Différentes implémentations
- Ensembles de réseaux de neurones (un ensemble de modèles de réseaux de neurones prenant une décision en faisant la moyenne des résultats de modèles individuels).
- Forêt aléatoire (une méthode d'apprentissage d'ensemble pour la classification, la régression et d'autres tâches, qui fonctionne en construisant une multitude d'arbresdedécisionau moment de la formation et en produisant la classe qui est lemodedes classes (classification) ou la prédiction moyenne (régression) de l'individu des arbres).
- AdaBoost (la sortie des autres algorithmes d'apprentissage («apprenants faibles») est combinée en une somme pondérée qui représente la sortie finale du classificateur boosté).
Aditionellement:
- Méthodes qui utilisent un réseau de neurones pour combiner différents classificateurs
- Méthode des domaines de compétence
Ma question
Lequel des algorithmes d'apprentissage d'ensemble est considéré comme étant à la pointe de la technologie de nos jours et est effectivement utilisé dans la pratique (pour la détection des visages, la reconnaissance des plaques d'immatriculation des véhicules, la reconnaissance optique des caractères, etc.) par les entreprises et les organisations? L'utilisation d'algorithmes d'apprentissage d'ensemble est censée augmenter la précision de la reconnaissance et conduire à une meilleure efficacité de calcul. Mais, les choses se passent-elles ainsi dans la réalité?
Quelle méthode d'ensemble, potentiellement, peut montrer une meilleure précision de classification et de meilleures performances dans les tâches de reconnaissance de formes? Peut-être que certaines des méthodes sont obsolètes maintenant ou se sont révélées inefficaces. Il est également possible que les méthodes d'ensemble aient désormais tendance à ne plus être utilisées en raison de certains nouveaux algorithmes. Ceux qui ont une expérience dans le domaine ou ont des connaissances suffisantes dans ce domaine, pouvez-vous aider à clarifier les choses?
la source
Réponses:
Les algorithmes de pointe peuvent différer de ceux utilisés dans la production dans l'industrie. En outre, ces derniers peuvent investir dans le perfectionnement d'approches plus fondamentales (et souvent plus interprétables) pour les faire fonctionner mieux que ne le feraient les universitaires.
Exemple 1: Selon TechCrunch , Nuance commencera à utiliser la «technologie d'apprentissage en profondeur» dans ses produits de reconnaissance vocale Dragon en septembre.
Exemple 2: Chiticariu, Laura, Yunyao Li et Frederick R. Reiss. "L'extraction d'informations basée sur des règles est morte! Longue vie aux systèmes d'extraction d'informations basés sur des règles!" Dans EMNLP, non. Octobre, p. 827-832. 2013. https://scholar.google.com/scholar?cluster=12856773132046965379&hl=en&as_sdt=0,22 ; http://www.aclweb.org/website/old_anthology/D/D13/D13-1079.pdf
Cela étant dit:
L'un des systèmes de pointe pour la classification d'images obtient un bon gain avec l'ensemble (tout comme la plupart des autres systèmes que je sache): lui, Kaiming, Xiangyu Zhang, Shaoqing Ren et Jian Sun. "Apprentissage résiduel profond pour la reconnaissance d'image." arXiv préimpression arXiv: 1512.03385 (2015). https://scholar.google.com/scholar?cluster=17704431389020559554&hl=en&as_sdt=0,22 ; https://arxiv.org/pdf/1512.03385v1.pdf
la source
Je suppose que l'on pourrait dire que l'apprentissage en profondeur est à peu près à la pointe de la technologie dans la plupart des sous-domaines de la vision par ordinateur (classification, détection, super-résolution, détection des bords, ...), sauf pour des tâches très spécifiques comme SLAM où l'apprentissage en profondeur n'est pas encore à la hauteur des méthodes existantes.
Souvent, pour obtenir quelques pour cent supplémentaires pour gagner, la moyenne des réseaux de compétition est utilisée, mais les réseaux deviennent si bons que cela n'a plus vraiment d'importance.
En production, c'est totalement différent. Les grandes entreprises s'appuient généralement sur d'anciens algorithmes qui se sont révélés efficaces et que les experts en place ont des connaissances et des années de pratique à les utiliser.
De plus, l'intégration d'un nouvel algorithme dans la chaîne d'approvisionnement nécessite beaucoup de temps. Je pense que certaines sociétés de caméras utilisent toujours le détecteur Viola Jones pour la détection des visages et je sais pertinemment que SIFT est largement utilisé dans de nombreuses applications dans l'industrie.
Ils sont également encore un peu sceptiques envers les méthodes d'apprentissage en profondeur qui sont considérées comme des boîtes noires dangereuses.
Mais les résultats impressionnants de ces algorithmes sont lents à faire changer d'avis les gens à ce sujet.
Les start-ups sont plus disposées à utiliser de telles solutions car elles doivent disposer de solutions innovantes pour être financées.
Je dirais que dans vingt ans, la plupart des produits basés sur la vision par ordinateur utiliseront l'apprentissage en profondeur même si quelque chose de plus efficace est découvert entre les deux.
Pour ajouter à la réponse de Franck, le deep learning évolue si rapidement que ResNets of Kaiming He n'est plus à la pointe de la technologie Les réseaux convolutionnels et les réseaux larges et profonds avec redémarrage SGD sont maintenant SOTA sur EDIT CIFAR et SVHN et probablement Imagenet aussi et même cela pourrait changer dans quelques jours avec les résultats de l'ILSVRC 2016 le 16 septembre.
Si vous êtes intéressé par des résultats plus avancés sur MS-COCO, le jeu de données de détection le plus difficile existant sera publié à l'ECCV en octobre.
la source
Il y a beaucoup d'hypothèses impliquées dans votre question, et généralement trouver le meilleur modèle implique de tester la plupart d'entre elles sur les données. Ce n'est pas parce qu'un modèle en théorie pourrait produire des résultats plus précis qu'il produira toujours un modèle avec l'erreur la plus faible.
Cela étant dit ... Les ensembles Neural Net peuvent être très précis, tant que vous pouvez accepter la boîte noire. La variation à la fois du nombre de nœuds et du nombre de couches peut couvrir beaucoup de variance dans les données, avec l'introduction de ces nombreux facteurs de modélisation, il pourrait être facile d'ajuster les données.
Les forêts aléatoires ont rarement produit les résultats les plus précis, mais les arbres boostés peuvent modéliser des relations complexes comme dans les tâches d'IA dont vous avez discuté sans grand risque de sur-ajustement.
On pourrait penser, eh bien pourquoi ne pas simplement regrouper tous ces modèles ensemble, mais ce modèle compromet les points forts possibles des modèles individuels. Encore une fois, cela entraînerait probablement des problèmes de surajustement.
Les modèles qui sont efficaces sur le plan du calcul sont une autre affaire, et je ne commencerais pas avec un réseau neuronal très compliqué. En utilisant un réseau neuronal comme référence, d'après mon expérience, il a été plus efficace d'utiliser des arbres boostés.
Ceci est basé sur mon expérience et une compréhension raisonnable de la théorie sous-jacente à chacun des types de modélisation discutés.
la source