Por que o aprendizado profundo é incentivado, apesar da má dimensão do VC?


86

A fórmula de dimensão Vapnik – Chervonenkis (VC) para redes neurais varia de a , com O ( E 2 V 2 ) no pior caso, onde E é o número de arestas e V é o número de nós. O número de amostras de treinamento necessárias para ter uma forte garantia de generalização é linear com a dimensão VC.O(E)O(E2)O(E2V2)EV

Isso significa que, para uma rede com bilhões de arestas, como no caso de modelos bem-sucedidos de aprendizado profundo, o conjunto de dados de treinamento precisa de bilhões de amostras de treinamento, na melhor das hipóteses, a quadrilhões, na pior das hipóteses. Atualmente, os maiores conjuntos de treinamento têm cerca de cem bilhões de amostras. Como não há dados de treinamento suficientes, é improvável que os modelos de aprendizado profundo estejam generalizando. Em vez disso, eles estão ajustando demais os dados de treinamento. Isso significa que os modelos não terão bom desempenho em dados diferentes dos dados de treinamento, que é uma propriedade indesejável para aprendizado de máquina.

Dada a incapacidade do aprendizado profundo de generalizar, de acordo com a análise dimensional do VC, por que os resultados do aprendizado profundo são tão sensacionalistas? Apenas ter uma alta precisão em alguns conjuntos de dados não significa muito em si. Existe algo de especial nas arquiteturas de aprendizado profundo que reduz significativamente a dimensão VC?

Se você não acha que a análise da dimensão VC é relevante, forneça evidências / explicações de que o aprendizado profundo está generalizando e não é super adequado. Ou seja, tem boa recordação e precisão, ou apenas boa recordação? É fácil obter um recall de 100%, assim como 100% de precisão. Aproximar os 100% é muito difícil.

Como exemplo contrário, aqui estão as evidências de que o aprendizado profundo é super adequado. Um modelo com excesso de ajuste é fácil de enganar, pois incorpora ruído determinístico / estocástico. Veja a imagem a seguir para um exemplo de sobreajuste.

Exemplo de ajuste insuficiente, ajuste e ajuste excessivo.

Além disso, consulte respostas de classificação mais baixa a esta pergunta para entender os problemas com um modelo de excesso de ajuste, apesar da boa precisão nos dados de teste.

Alguns responderam que a regularização resolve o problema de uma grande dimensão de VC. Veja esta pergunta para uma discussão mais aprofundada.


Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
DW

7
Não acho que as perguntas por que algo "sensacionalista" sejam boas. A resposta é "porque as pessoas". As pessoas se interessam pelas coisas por causa de uma infinidade de razões, incluindo marketing.
Luk32 16/05

A aprendizagem profunda funciona na prática. Pode ser exagerado. Pode ser completamente injustificado. Pode ser que você aprenda os segredos do universo com uma divindade de Eldritch. Mas o hype vem de profissionais que de repente conseguem escrever 30 linhas no código e ensinam uma câmera a digitalizar assinaturas e combiná-las com as armazenadas para validar transações bancárias. Ou marque pessoas desconhecidas nas fotografias. Etc. Talvez você tenha ouvido a frase "não é um insulto se for verdade"? Bem, não é exagero se funcionar. Existem muitos problemas nos quais não funciona e um hype popular excessivo. Mas funciona na aplicação da vida real.
Stella Biderman

A facilidade de ferramentas do @StellaBiderman em torno das técnicas padrão de aprendizado de máquina é boa e tudo. Mas o interesse parece ter mais a ver com a suposta capacidade de aprendizado dos DNNs que talvez rivalizem com a capacidade humana, que parece ser exagerada, dada a análise de VC do modelo. Uma dimensão de VC tão alta implica que os modelos não serão generalizados e estão memorizando os conjuntos de dados, tornando-os muito quebradiços. Todos os exemplos de documentos contraditórios parecem demonstrar esse ponto.
yters

@gerrit Não tenho certeza se a edição foi tão útil. Aposto que muito mais pessoas sabem o que é a dimensão VC do que sabem.
David Richerby

Respostas:


75

"Se o mapa e o terreno discordarem, confie no terreno."

Não se entende realmente por que a aprendizagem profunda funciona tão bem quanto funciona, mas certamente conceitos antigos da teoria da aprendizagem, como as dimensões do VC, parecem não ser muito úteis.

O assunto é muito debatido, veja, por exemplo:

Em relação à questão de exemplos contraditórios , o problema foi descoberto em:

É desenvolvido ainda em:

Há muito trabalho subsequente.


Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
DW

Quando você diz "Há muito trabalho de acompanhamento", você está se referindo ao último artigo de 2014? Os dois primeiros trabalhos mencionados são bastante recentes. Você pode atualizar com os documentos a que se refere?
VF1

2
+1 forte para "Se o mapa e o terreno discordarem, confie no terreno". Os modelos funcionam extremamente bem na prática, independentemente de a matemática dizer que deveria. De um ponto de vista científico, isso acontece o tempo todo e se alguma coisa torna os problemas mais interessantes. Ninguém leu o trabalho de Razborov e Rudich em Provas Naturais e foi "bem, acho que P vs NP não é uma pergunta interessante, afinal". Eles descobriram que seria possível usar a geometria algébrica para fazer a teoria da complexidade. Do ponto de vista da ciência, os problemas que transcendem nossa compreensão são melhores , não piores.
Stella Biderman 27/06

65

"Dada a incapacidade do Deep Learning de generalizar, de acordo com a análise dimensional do VC [...]"

Não, não é isso que a análise dimensional do VC diz. A análise dimensional do VC fornece algumas condições suficientes sob as quais a generalização é garantida. Mas o contrário não é necessariamente verdade. Mesmo se você não atender a essas condições, o método ML ainda poderá generalizar.

Dito de outra forma: o aprendizado profundo funciona melhor do que a análise dimensional do VC o levaria a esperar (melhor do que o previsto pela análise do VC). Isso é uma falta da análise dimensional do VC, não uma falta de aprendizado profundo. Isso não implica que a aprendizagem profunda seja falha. Em vez disso, significa que não sabemos por que a aprendizagem profunda funciona - e a análise de VC é incapaz de fornecer informações úteis.

A alta dimensão do VC não implica que a aprendizagem profunda possa ser enganada. A dimensão alta do VC não garante nada sobre se pode ser enganada em situações práticas. A dimensão VC fornece um limite unidirecional, na pior das hipóteses: se você atende a essas condições, coisas boas acontecem, mas se você não atende a essas condições, não sabemos o que acontecerá (talvez coisas boas ainda ocorram de qualquer maneira, se a natureza se comporta melhor do que o pior caso possível; a análise de VC não promete que coisas boas não podem / não vão acontecer).

Pode ser que a dimensão VC do espaço do modelo seja grande (inclui padrões muito complexos possíveis), mas a natureza é explicada por padrões simples, e o algoritmo ML aprende o padrão simples presente na natureza (por exemplo, devido à regularização) - - nesse caso, a dimensão VC seria alta, mas o modelo seria generalizado (para o padrão específico presente na natureza).

Dito isto ... há evidências crescentes de que o aprendizado profundo pode ser enganado por exemplos contraditórios. Mas tenha cuidado com sua cadeia de raciocínio. As conclusões que você está tirando não seguem as premissas com as quais você começou.


6
Ω(dn)

5
-1 para "Alto VC dimensional não garante absolutamente nada". Isso não é verdade: a alta dimensão do VC implica limites inferiores da complexidade da amostra para o aprendizado do PAC. Uma boa resposta deve abordar as distribuições de pior caso versus "vida real".
Sasho Nikolov

1
@SashoNikolov, bom ponto - obrigado! Editado.
DW

Esta postagem estava em revisão de baixa qualidade. Dado conteúdo, duração, votos e qualidade, isso é ridículo, apontando isso aqui, mas pode precisar de meta, porque algo está realmente errado.
Mal

23

O pessoal da indústria não tem consideração pela dimensão do VC, hooligans ...

Em uma observação mais séria, embora o modelo do PAC seja uma maneira elegante de pensar sobre a aprendizagem (pelo menos na minha opinião), e seja suficientemente complexo para gerar conceitos e perguntas interessantes (como a dimensão VC e sua conexão com a complexidade da amostra) , tem muito pouco a ver com situações da vida real.

Lembre-se de que no modelo PAC você deve lidar com distribuições arbitrárias, isso significa que seu algoritmo deve lidar com distribuições adversárias. Ao tentar aprender alguns fenômenos no mundo real, ninguém está fornecendo "dados contraditórios" para atrapalhar seus resultados; portanto, exigir que uma classe conceitual seja aprendida pelo PAC pode ser muito forte. Às vezes, você pode vincular o erro de generalização independentemente da dimensão VC, para uma classe específica de distribuições. É o caso dos limites de margem, formulados independentemente da dimensão VC. Eles podem prometer um erro de generalização baixo se você puder garantir uma margem empírica alta (o que, é claro, não pode acontecer para todas as distribuições, por exemplo, faça dois pontos próximos no plano com tags opostas e concentre a distribuição nelas).

Então, deixando de lado o modelo PAC e a dimensão VC, acho que o hype vem do fato de que eles parecem funcionar e ter sucesso em tarefas que antes não eram possíveis (uma das mais recentes conquistas que vem à mente é o AlphaGo). Eu sei muito pouco sobre redes neurais, então espero que alguém com mais experiência apareça, mas que eu saiba ainda não há boas garantias (definitivamente não é como no modelo PAC). Talvez, sob as suposições corretas, alguém possa justificar formalmente o sucesso das redes neurais (presumo que haja trabalhos em torno do tratamento formal das redes neurais e do "aprendizado profundo", por isso, espero que pessoas com mais conhecimento sobre o assunto possam vincular alguns trabalhos) .


Comentários não são para discussão prolongada; esta conversa foi movida para o bate-papo .
DW

15

Dada a incapacidade de generalizar o Deep Learning,

Eu não sei de onde você tira isso. Empiricamente, a generalização é vista como a pontuação (por exemplo, precisão) em dados não vistos.

A resposta por que as CNNs são usadas é simples: as CNNs funcionam muito melhor do que qualquer outra coisa . Veja o ImageNet 2012, por exemplo:

  • CNNs: 15,315% (esse foi um exemplo inicial. As CNNs estão muito melhores agora. Com cerca de 4% de erro no top 5)
  • Melhor não CNN: 26,172% de erro no top 5 ( fonte - até as minhas técnicas de conhecimento que não usam CNNs não obtiveram abaixo de 25% de erro no top 5)

Crie um classificador que seja melhor e as pessoas mudem para isso.

ATUALIZAÇÃO: Eu darei uma resposta a qualquer pessoa que forneça evidências publicadas de que o aprendizado de máquina em geral é facilmente enganado, como essa para o Deep Learning.

Este não é o caso. Você pode criar um classificador extremamente simples em um conjunto de dados simples. Não será possível enganá-lo (nem importa o que "fácil" significa), mas também não é interessante.


3
Um erro baixo não implica generalização. É uma condição necessária, mas não suficiente.
yters

3
@yters Por favor defina generalização então.
Martin Thoma

5
@yters, esse comentário me faz pensar que você não leu muito sobre o Machine Learning. Martin disse precisão em dados invisíveis . Você está falando sobre precisão nos dados de treinamento. Você está basicamente correto sobre o que é generalização, mas saiba que todo mundo aqui também entende isso .
Ken Williams

1
@yters Tenho certeza de que Ken (e muitas pessoas neste site, inclusive eu) sabe disso. Se seu conjunto de testes, no entanto, não representar seu conjunto de dados, você não poderá fazer nenhuma declaração sobre generalização. Embora valha a pena manter isso em mente, não vejo como isso o ajude de alguma maneira para esta pergunta. Você apenas precisa assumir / certificar-se de que seu conjunto de testes represente seus dados no momento da produção. De fato, é realmente fácil mostrar que você pode tornar qualquer classificador arbitrariamente ruim se as amostras de treinamento não representarem a distribuição.
Martin Thoma 16/05

2
Isso é óbvio. Você não pode esperar que um modelo generalize bem se ele for treinado para validar os dados errados. Você precisa de melhores dados, não de um modelo melhor.
Emre

9

A resposta de uma palavra é "regularização". A fórmula ingênua da dimensão VC realmente não se aplica aqui, porque a regularização exige que os pesos não sejam gerais. Apenas uma pequena proporção (infinitesimal?) De combinações de peso apresenta perda aceitável após a regularização. Como a dimensão verdadeira é muitas ordens de magnitude menor como resultado, é possível generalizar com os conjuntos de treinamento que temos. Os resultados da vida real confirmam que o ajuste excessivo geralmente não está acontecendo.


2
Vi a afirmação repetida de que os resultados da vida real mostram generalizações profundas de aprendizado. Quais são exatamente os resultados que mostram generalização? Tudo o que vi até agora é que o DL atinge baixas taxas de erro em conjuntos de dados específicos, o que não significa que o DL generalize.
yters

3
mostra bons resultados ("bom" = melhor que outros métodos de ML) em dados nos quais não foi treinado . não tenho certeza de que outra forma você deseja medir praticamente a generalização.
Lvilnis

3

Abordamos o artigo: Compreender o Deep Learning Requer Repensar a Generalização. no

Repensar a generalização requer revisitar velhas idéias: abordagens da mecânica estatística e comportamento complexo de aprendizagem Charles H. Martin e Michael W. Mahoney

Veja: https://arxiv.org/pdf/1710.09553.pdf

Basicamente, argumentamos que os limites de VC são muito frouxos, porque a abordagem fundamental e como o limite estatístico adotado não é realista.

Uma abordagem melhor está na Mecânica Estatística, que considera uma classe de funções dependentes de dados, assume o limite Termodinâmico (não apenas o limite de grandes números)

Além disso, também apontamos como as descontinuidades naturais em necessidade profunda levam a transições de fase na curva de aprendizado, que acreditamos estar sendo observadas no artigo do Google (acima)

Com relação aos limites, consulte a seção 4.2 do nosso artigo

"Claramente, se fixarmos o tamanho da amostra me deixarmos [o tamanho da classe de função] N → ∞, [ou vice-versa, fixar N, vamos m → ∞], não devemos esperar um resultado não trivial, pois [ N] está se tornando maior, mas o tamanho da amostra é fixo. Assim, [em Mecânica Estatística], normalmente se considera o caso em que m, N → ∞ seja tal que α = m / N seja uma constante fixa ".

Ou seja, muito raramente adicionaríamos mais dados (m) a uma rede profunda. Também sempre aumentamos o tamanho da rede (N), porque sabemos que podemos capturar recursos / informações mais detalhadas dos dados. Em vez disso, fazemos na prática o que defendemos no artigo - assumimos o limite do tamanho grande, com a razão m / N fixa (em vez de dizer fixar me deixar N aumentar).

Estes resultados são bem conhecidos na Mecânica Estatística da Aprendizagem. A análise é mais complicada, mas os resultados levam a uma estrutura muito mais rica que explica muitos fenômenos no aprendizado profundo.

Além disso, e em particular, sabe-se que muitos limites das estatísticas se tornam triviais ou não se aplicam a distribuições de probabilidade não suaves ou quando as variáveis ​​assumem valores discretos. Nas redes neurais, o comportamento não trivial surge devido a descontinuidades (nas funções de ativação), levando a transições de fase (que surgem no limite termodinâmico).

O artigo que escrevemos tenta explicar as idéias mais importantes para um público de ciência da computação.

O próprio Vapnik percebeu que sua teoria não era realmente aplicável às redes neurais ... em 1994

"A extensão da [dimensão VC] a redes multicamadas enfrenta [muitas] dificuldades .. os algoritmos de aprendizado existentes não podem ser vistos como minimizadores do risco empírico sobre todo o conjunto de funções implementáveis ​​pela rede ... [porque] é provável ... a pesquisa será confinada a um subconjunto de [essas] funções ... A capacidade deste conjunto pode ser muito menor que a capacidade de todo o conjunto ... [e] pode mudar com o número de observações. Isso pode exigir uma teoria que considere a noção de capacidade não constante com um subconjunto de funções "ativo" "
Vapnik, Levin e LeCun 1994

http://yann.lecun.com/exdb/publis/pdf/vapnik-levin-lecun-94.pdf

Embora não seja fácil de tratar com a teoria de VC, esse não é um problema para os stat statech ... e o que eles descrevem se parece muito com a Energy Landscape Theory do dobramento de proteínas. (que será o tópico de um artigo futuro)


Parece interessante, mas não tenho certeza se sigo seu argumento. Você pode elaborar na primeira frase, ou seja, como a abordagem fundamental / limite estatístico é irrealista, de uma maneira independente que não requer entendimento da mecânica estatística? Que suposições fazem os limites de VC e por que eles não são realistas? Talvez você possa editar sua resposta para incluir essas informações?
DW

Acrescentei uma referência ao trabalho original de Vapnik e LeCun (1994) que discute a questão.
Charles Martin

E acrescentou alguns esclarecimentos.
Charles Martin

1

Parece que ninguém apontou nas respostas acima que a fórmula de dimensão VC mencionada é apenas para uma rede neural de uma camada. Meu palpite é que a dimensão VC realmente cresce exponencialmente à medida que o número de camadas L aumenta. Meu raciocínio é baseado em considerar redes neurais profundas, nas quais a função de ativação é substituída por redes polinomiais. Então, o grau dos polinômios compostos aumenta exponencialmente à medida que as camadas aumentam.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.