Atualmente, o aprendizado profundo é um tema cada vez mais popular.
Quais são as principais premissas que tornam falta o aprendizado profundo em alguns conjuntos de dados. Ex: tem bom desempenho em conjuntos de dados ruidosos?
Atualmente, o aprendizado profundo é um tema cada vez mais popular.
Quais são as principais premissas que tornam falta o aprendizado profundo em alguns conjuntos de dados. Ex: tem bom desempenho em conjuntos de dados ruidosos?
Geralmente, pode-se pensar em dois tipos de resultados de dureza no aprendizado de máquina: dureza teórica da informação no contexto do aprendizado estatístico (ou seja, fornecer um limite inferior ao número mínimo de exemplos necessários para aprender) e dureza algorítmica (ou seja, uma má escolha algorítmica) significa que a otimização se torna impossível).
No contexto do aprendizado profundo, discutir dureza é complicado, uma vez que sabemos muito pouco em termos de por que o aprendizado profundo teoricamente funciona. (Lembre-se: O problema de otimização resolvido no aprendizado profundo é o de minimizar uma função altamente não convexa e de alta dimensão, e é conhecido por ser NP-difícil em geral. Ou seja, não há garantias erradas que atinjam o mínimo global. os profissionais usaram variantes do SGD para resolver muitos problemas muito bem. Houve alguns avanços recentes em dar uma resposta justificável para o motivo, mas isso está fora do escopo da sua pergunta.)
Um bom exemplo de dureza algorítmica no aprendizado profundo é tentar aprender problemas nos quais o gradiente não é informativo. Atualmente, o aprendizado profundo usa alguma forma de SGD para atualizar os pesos da rede. por exemplo, os mini-lotes GD calculam o gradiente da função de custo em uma amostra aleatória de exemplos gravados nos parâmetros θ :
Em outras palavras, a otimização de DL está tentando otimizar globalmente uma função usando informações de gradiente local ; Isso sugere que, se um problema de aprendizado é caracterizado por gradientes não informativos, nenhuma arquitetura de aprendizado profundo será capaz de aprendê-lo.
Aprender paridades aleatórias é o seguinte problema de aprendizagem:
Depois de escolher um vetor , o objetivo é treinar um mapeamento de preditor para , em que é uniforme distribuído. Em outras palavras, estamos tentando aprender um mapeamento que determina se o número de 1 em um determinado subconjunto de coordenadas de (indicado por ) é par ou ímpar.
Em "Falhas no aprendizado profundo baseado em gradiente" ( Shamir, 2017 ), os autores provam que esse problema (e mais geralmente, toda função linear composta por uma periódica ) sofre de gradientes não informativos, dificultando o problema de otimização. .
Eles também demonstram isso empiricamente, medindo a precisão em função do número de iterações de treinamento, para várias dimensões de entrada.
A rede usada aqui é uma camada totalmente conectada de largura com ativações ReLU e uma camada de saída totalmente conectada com ativação linear e uma única unidade. (A largura é escolhida para garantir que a função de paridade necessária seja realmente realizada por essa rede)
P: Por que a paridade de aprendizado só se torna difícil em torno de ?
Falha quando você não impõe a estrutura correta ao problema. As redes neurais convolucionais funcionam porque assumem que os pixels que estão próximos um do outro estão relacionados; portanto, faz sentido aplicar convoluções espaciais aos seus recursos. E, ao fazer isso, você reduziu drasticamente o espaço de pesquisa de hipóteses, o que significa que o aprendizado profundo tem mais chances de chegar a uma solução ideal.
Se você aplicar aprendizado profundo a um problema em que os recursos não sejam passíveis de convulsões espaciais / temporais, o aprendizado profundo falhará, porque não faz sentido resumir certos recursos e aplicar funções ao somatório. redes neurais fazem.
Se alguém puder pensar em um exemplo de onde a aprendizagem profunda foi aplicada com sucesso a dados que não são imagens ou áudio (ou dados espaciais / temporais), eu ficaria satisfeito em retratar esta resposta.