Algoritmo de aprendizado de conjunto de última geração em tarefas de reconhecimento de padrões?

14

A estrutura desta questão é a seguinte: a princípio, forneço o conceito de aprendizagem por conjuntos , além de fornecer uma lista de tarefas de reconhecimento de padrões , depois apresento exemplos de algoritmos de aprendizagem por conjuntos e, finalmente, apresento minha pergunta. Aqueles que não precisam de todas as informações suplementares podem apenas olhar para as manchetes e ir direto para a minha pergunta.


O que é aprendizado em conjunto?

De acordo com o artigo da Wikipedia :

Em estatística e aprendizado de máquina, os métodos de agrupamento usam vários algoritmos de aprendizado para obter melhor desempenho preditivo do que o obtido por qualquer um dos algoritmos de aprendizado constituintes. Ao contrário de um conjunto estatístico em mecânica estatística, que geralmente é infinito, um conjunto de aprendizado de máquina refere-se apenas a um conjunto finito concreto de modelos alternativos, mas normalmente permite a existência de uma estrutura muito mais flexível entre essas alternativas.


Exemplos de tarefas de reconhecimento de padrões:


Exemplos de algoritmos de aprendizagem de conjuntos:

Os seguintes algoritmos de aprendizado de conjunto usados ​​para tarefas de relações públicas (de acordo com o Wiki):

Algoritmos de aprendizado em conjunto (meta-algoritmos supervisionados para combinar vários algoritmos de aprendizado):

  • Boosting (ummeta-algoritmo doconjunto de aprendizado de máquinapara reduzir principalmente oviése também a variação noaprendizado supervisionado, e uma família de algoritmos de aprendizado de máquina que convertem alunos fracos em alunos fortes)

  • Agregação de bootstrap (" ensacamento ") (um meta-algoritmo de conjunto de aprendizado de máquina desenvolvido para melhorar a estabilidade e a precisão dos algoritmos de aprendizado de máquina usados ​​naclassificaçãoeregressãoestatística).

  • Média do conjunto (o processo de criar vários modelos e combiná-los para produzir a saída desejada, em vez de criar apenas um modelo. Freqüentemente, um conjunto de modelos tem um desempenho melhor do que qualquer modelo individual, porque os vários erros dos modelos "se esgotam". )

  • Mistura de especialistas, mistura hierárquica de especialistas

Implementações diferentes

  • Conjuntos de redes neurais (um conjunto de modelos de redes neurais que tomam uma decisão calculando a média dos resultados de modelos individuais).
  • Floresta aleatória (um método de aprendizado conjunto para classificação, regressão e outras tarefas, que opera construindo uma infinidade deárvoresdedecisãono momento do treinamento e gerando a classe que é omododas classes (classificação) ou previsão média (regressão) do indivíduo árvores).
  • O AdaBoost (o resultado de outros algoritmos de aprendizado ('alunos fracos') é combinado em uma soma ponderada que representa o resultado final do classificador aprimorado).

Além disso:

  • Métodos que usam uma rede neural para combinar diferentes classificadores
  • Método das áreas de competência

Minha pergunta

Qual dos algoritmos de aprendizado de conjunto é atualmente considerado o estado da arte e é realmente usado na prática (para detecção de faces, reconhecimento de placas de veículos, reconhecimento óptico de caracteres etc.) por empresas e organizações? O uso de algoritmos de aprendizado de conjunto deve aumentar a precisão do reconhecimento e levar a uma melhor eficiência computacional. Mas, as questões permanecem assim na realidade?

Qual método de conjunto, potencialmente, pode mostrar melhor precisão de classificação e desempenho nas tarefas de reconhecimento de padrões? Talvez alguns dos métodos estejam desatualizados agora ou tenham se mostrado ineficazes. Também é possível que os métodos de agrupamento agora tendam a não ser mais usados ​​com base em alguns novos algoritmos. Quem tem experiência na área ou possui conhecimento suficiente nesse campo, pode ajudar a esclarecer as questões?

Erba Aitbayev
fonte
O que ouvi recentemente é que as pessoas adoram o XGBoost e ele mostrou um desempenho realmente impressionante em várias competições do Kaggle.
Sangwoong Yoon
A resposta é curta: a que dá a melhor pontuação de CV. Geralmente é empilhamento
Alexey Grigorev
O sucesso e o fracasso de um modelo de conjunto são uma função dos modelos de membros do conjunto e da natureza dos dados. O Ensemble funciona porque os modelos de membros produzem um grau de diversidade. Sua pergunta provavelmente não pode ser respondida sem as especificidades dos modelos que você colocou no seu conjunto e do conjunto de dados em questão.
precisa saber é

Respostas:

9

Os algoritmos de última geração podem diferir do que é usado na produção na indústria. Além disso, o último pode investir em aperfeiçoar abordagens mais básicas (e muitas vezes mais interpretáveis) para fazê-las funcionar melhor do que os acadêmicos.

Exemplo 1: De acordo com o TechCrunch , a Nuance começará a usar a "deep learning tech" em seus produtos de reconhecimento de fala Dragon em setembro.

Exemplo 2: Chiticariu, Laura, Yunyao Li e Frederick R. Reiss. "A extração de informações com base em regras está morta! Viva sistemas de extração de informações com base em regras !." No EMNLP, não. Outubro, pp. 827-832. 2013. https://scholar.google.com/scholar?cluster=12856773132046965379&hl=pt_BR&as_sdt=0,22 ; http://www.aclweb.org/website/old_anthology/D/D13/D13-1079.pdf

insira a descrição da imagem aqui

Com isso dito:

Qual dos algoritmos de aprendizado de conjunto é considerado o estado da arte atualmente?

Um dos sistemas de última geração para classificação de imagens obtém um bom ganho com o conjunto (assim como a maioria dos outros sistemas que eu conheço): Ele, Kaiming, Xiangyu Zhang, Shaoqing Ren e Jian Sun. "Aprendizado residual profundo para reconhecimento de imagem". pré-impressão do arXiv arXiv: 1512.03385 (2015). https://scholar.google.com/scholar?cluster=17704431389020559554&hl=pt_BR&as_sdt=0,22 ; https://arxiv.org/pdf/1512.03385v1.pdf

insira a descrição da imagem aqui

Franck Dernoncourt
fonte
3

Acho que se poderia dizer que o aprendizado profundo é praticamente o estado da arte na maioria dos subdomínios da visão computacional (classificação, detecção, super-resolução, detecção de borda, ...), exceto em tarefas muito específicas, como o SLAM, em que a aprendizagem profunda ainda não está a par dos métodos existentes.

Frequentemente, para obter alguns por cento extras para vencer nas redes de concorrência, é usada a média, mas as redes estão ficando tão boas que não importa mais.

Na produção é totalmente diferente. As grandes empresas geralmente confiam em algoritmos antigos que provaram ser eficazes e que os especialistas existentes têm conhecimento e anos de prática em usá-los.
Além disso, a integração de um novo algoritmo na cadeia de suprimentos requer muito tempo. Acho que algumas empresas de câmeras ainda usam o detector Viola Jones para detecção de rosto e sei que o SIFT está sendo muito usado em muitas aplicações na indústria.

Eles também ainda são um pouco de ceticismo em relação a métodos de aprendizado profundo que são considerados caixas pretas perigosas.
Mas os resultados impressionantes desses algoritmos são lentos, fazendo as pessoas mudarem de idéia sobre isso.

As empresas iniciantes estão mais dispostas a usar essas soluções, pois precisam ter soluções inovadoras para serem financiadas.

Eu diria que em vinte anos a maioria dos produtos baseados em visão computacional usará aprendizado profundo, mesmo que algo mais eficaz seja descoberto no meio.
Para adicionar à resposta de Franck, o aprendizado profundo está mudando tão rapidamente que as Redes de Kaiming Ele não são mais o estado da arte. Redes Convolucionais densamente conectadas e Redes amplas e profundas com reinicialização do SGD agora são SOTA no EDIT CIFAR e SVHN e provavelmente na Imagenet também. poderá mudar em alguns dias com os resultados do ILSVRC 2016 no dia 16 de setembro.

Se você estiver interessado em obter resultados mais avançados no MS-COCO, o conjunto de dados de detecção mais desafiador existente será lançado no ECCV em outubro.

brim
fonte
1
De fato, após a verificação dupla, os artigos que citei não mencionam seus resultados na Imagenet! Então é meu erro! mas como eles são muito superiores no CIFAR e SVHN, acho que deve ser o mesmo na Imagenet, mas você nunca sabe. Eu acho que eles não o mencionaram para esperar pelos resultados do ILSVRC, mas eu posso estar errado!
jean
1
@FranckDernoncourt esse frenesi de resultados é muito empolgante, mas também pode exercer muita pressão sobre as pessoas que desejam publicar nesse campo, o que pode levar a erros como este agora infame artigo do SARM que o autor retirou do NIPS hoje.
jean
Obrigado, sim, eu vi isso de fato, mas não tive a chance de verificar esse documento… Estou tendo problemas para esvaziar minha lista de leitura com todos esses novos PDFs da ANN: /
Franck Dernoncourt
Esse incidente de retirada do SARM me faz repensar a crise da reprodutibilidade nas estatísticas. Como detalhes de implementação muito deve ser exigido no processo de revisão, o quanto é muito pouco, etc.
horaceT
2

Há muitos e-se envolvidos com sua pergunta, e geralmente encontrar o melhor modelo envolve testar a maioria deles nos dados. Só porque um modelo em teoria poderia produzir resultados mais precisos não significa que sempre produzirá um modelo com o menor erro.

Dito isto ... os conjuntos da Neural Net podem ser muito precisos, desde que você aceite a caixa preta. A variação do número de nós e do número de camadas pode cobrir muita variação nos dados. Com a introdução de vários fatores de modelagem, pode ser fácil superestimar os dados.

As florestas aleatórias raramente produziram os resultados mais precisos, mas as árvores reforçadas podem modelar relacionamentos complexos, como nas tarefas de IA que você discutiu, sem muito risco de sobreajuste.

Alguém poderia pensar: bem, por que não apenas agrupar todos esses modelos juntos, mas esse modelo compromete os possíveis pontos fortes dos modelos individuais. Novamente, isso provavelmente levaria a alguns problemas de sobreajuste.

Modelos que são computacionalmente eficientes é uma questão diferente, e eu não começaria com uma rede neural muito complicada. Usando uma rede neural como referência, na minha experiência, foi mais eficiente o uso de árvores potencializadas.

Isso se baseia na minha experiência e em um entendimento razoável da teoria subjacente a cada um dos tipos de modelagem discutidos.

Roubar
fonte