A função de custo da rede neural é e é reivindicada como não convexa . Não entendo muito bem por que é assim, pois, como vejo, é bastante semelhante à função de custo da regressão logística, certo?
Se não for convexa, a derivada de 2ª ordem , certo?
ATUALIZAR
Graças às respostas abaixo, bem como ao comentário de @ gung, entendi que, se não houver camadas ocultas, é convexa, assim como a regressão logística. Mas se houver camadas ocultas, permutando os nós nas camadas ocultas, bem como os pesos nas conexões subseqüentes, poderíamos ter várias soluções dos pesos, resultando na mesma perda.
Agora mais perguntas,
1) Existem vários mínimos locais, e alguns deles devem ter o mesmo valor, pois correspondem a algumas permutações de nós e pesos, certo?
2) Se os nós e pesos não serão permutados, então é convexo, certo? E os mínimos serão os mínimos globais. Nesse caso, a resposta para 1) é que todos os mínimos locais terão o mesmo valor, correto?
fonte
Respostas:
A função de custo de uma rede neural geralmente não é convexa nem côncava. Isso significa que a matriz de todas as segundas derivadas parciais (o Hessiano) não é nem semidefinida positiva nem semidefinida negativa. Como a segunda derivada é uma matriz, é possível que não seja uma ou a outra.
Para tornar isso análogo às funções de uma variável, pode-se dizer que a função de custo não tem a forma do gráfico de nem do gráfico de - x 2 . Outro exemplo de uma função não convexa e não côncava é sin (x2 −x2 em R . Uma das diferenças mais impressionantes é que ± x 2 tem apenas um extremo, enquanto o pecado tem infinitos e máximos infinitos.pecado( X ) R ± x2 pecado
Como isso se relaciona com a nossa rede neural? Uma função de custo também possui vários máximos e mínimos locais, como você pode ver nesta figura , por exemplo.J( W, B )
O fato de ter vários mínimos também pode ser interpretado de uma maneira agradável. Em cada camada, você usa vários nós aos quais são atribuídos parâmetros diferentes para reduzir o custo da função. Exceto pelos valores dos parâmetros, esses nós são os mesmos. Portanto, você pode trocar os parâmetros do primeiro nó em uma camada pelos do segundo nó na mesma camada e contabilizar essa alteração nas camadas subseqüentes. Você terminaria com um conjunto diferente de parâmetros, mas o valor da função de custo não pode ser distinguido (basicamente, você acabou de mover um nó para outro local, mas manteve todas as entradas / saídas iguais).J
fonte
Se você permuta os neurônios na camada oculta e faz a mesma permutação nos pesos das camadas adjacentes, a perda não muda. Portanto, se existe um mínimo global diferente de zero em função dos pesos, ele não pode ser único, pois a permutação de pesos fornece outro mínimo. Portanto, a função não é convexa.
fonte
Se a função objetivo é convexa ou não, depende dos detalhes da rede. No caso em que existem vários mínimos locais, você pergunta se todos são equivalentes. Em geral, a resposta é não, mas a chance de encontrar um mínimo local com bom desempenho de generalização parece aumentar com o tamanho da rede.
Este artigo é de interesse:
Desde a introdução:
Eles também citam alguns documentos que descrevem como os pontos de sela são um problema maior do que os mínimos locais ao treinar grandes redes.
fonte
Algumas respostas para suas atualizações:
Sim, geralmente existem vários mínimos locais. (Se houvesse apenas um, seria chamado de mínimo global.) Os mínimos locais não terão necessariamente o mesmo valor. Em geral, pode não haver mínimos locais compartilhando o mesmo valor.
Não, não é convexa, a menos que seja uma rede de uma camada. No caso geral de múltiplas camadas, os parâmetros das camadas posteriores (pesos e parâmetros de ativação) podem ser funções altamente recursivas dos parâmetros nas camadas anteriores. Geralmente, a multiplicação de variáveis de decisão introduzidas por alguma estrutura recursiva tende a destruir a convexidade. Outro grande exemplo disso são os modelos MA (q) na análise de séries temporais.
fonte
Você terá um mínimo global se o problema for convexo ou quaseiconvexo.
Sobre "blocos de construção" convexos durante a construção de redes neurais (versão Computer Science)
Eu acho que existem vários deles que podem ser mencionados:
max (0, x) - convexo e crescente
log-sum-exp - convexo e crescente em cada parâmetro
y = Ax é afim e tão convexo em (A), talvez aumentando talvez diminuindo. y = Ax é afim e tão convexo em (x), talvez aumentando talvez diminuindo.
Infelizmente, não é convexa em (A, x) porque parece uma forma quadrática indefinida.
Convolução matemática matemática usual (por "usual", quero dizer definida com sinal de repetição) Y = h * X Parece que é uma função afim de h ou da variável X. Portanto, é um convexo na variável h ou na variável X. Sobre as duas variáveis - Acho que não, porque quando he X são escalares, a convolução reduzirá para a forma quadrática indefinida.
max (f, g) - se f e g são convexos, max (f, g) também é convexo.
Se você substituir uma função por outra e criar composições, mantenha-o na sala convexa para y = h (g (x), q (x)), mas h deve ser convexo e deve aumentar (sem diminuir) em cada argumento. ...
Por que redes neurais não-convexas:
Eu acho que a convolução Y = h * X não é necessária aumentando em h. Portanto, se você não usar nenhuma suposição extra sobre o kernel, sairá da otimização convexa imediatamente após aplicar a convolução. Portanto, não há tudo bem com a composição .
Além disso, a convolução e a multiplicação de matrizes não são convexas se considerarmos alguns parâmetros, como mencionado acima. Portanto, existe um problema com a multiplicação de matrizes: é uma operação não convexa nos parâmetros (A, x)
y = Ax pode ser quaseiconvexo em (A, x), mas também suposições extras devem ser levadas em consideração.
Entre em contato se você não concordar ou tiver alguma consideração extra. A questão também é muito interessante para mim.
ps max-pooling - que reduz o tamanho da seleção de max parece uma modificação das operações max elementwise com pré-composição afim (para puxar blocos de necessidade) e parece convexo para mim.
Sobre outras perguntas
Não, a regressão logística não é convexa ou côncava, mas é log-côncava. Isso significa que, após aplicar o logaritmo, você terá uma função côncava nas variáveis explicativas. Portanto, aqui o truque máximo de probabilidade de log é ótimo.
Se não houver apenas um mínimo global. Nada pode ser dito sobre a relação entre os mínimos locais. Ou pelo menos você não pode usar a otimização convexa e suas extensões, porque esta área da matemática é profundamente baseada no subestimador global.
Talvez você tenha confusão sobre isso. Porque realmente as pessoas que criam tais esquemas apenas fazem "alguma coisa" e recebem "alguma coisa". Infelizmente, porque não temos um mecanismo perfeito para lidar com a otimização não convexa (em geral).
Mas existem coisas ainda mais simples além das Redes Neurais - que não podem ser resolvidas como mínimos quadrados não lineares - https://youtu.be/l1X4tOoIHYo?t=2992 (EE263, L8, 50:10)
fonte