As redes neurais aprendem uma função ou uma função de densidade de probabilidade?

19

A pergunta pode parecer um pouco estranha, porque sou novo na inferência estatística e nas redes neurais.

Quando em problemas de classificação usando redes neurais, dizemos que queremos aprender uma função que mapeia o espaço das entradas , para o espaço das saídas :fxy

f(x;θ)=y

Estamos ajustando os parâmetros ( ) para modelar uma função não linear ou para modelar uma função de densidade de probabilidade?θ

Eu realmente não sei como escrever a pergunta de uma maneira melhor. Eu li várias vezes as duas coisas (função densidade de probabilidade, ou função assim), portanto, portanto, minha confusão.

sdiabr
fonte

Respostas:

15

A rigor, as redes neurais estão ajustando uma função não linear.

Elas podem ser interpretadas como ajustando uma função de densidade de probabilidade se funções de ativação adequadas forem escolhidas e determinadas condições forem respeitadas (os valores devem ser positivos e 1, etc ...). Mas essa é uma questão de como você escolhe interpretar a saída deles, não o que eles estão realmente fazendo. Sob o capô, eles ainda são estimadores de funções não lineares, que você escolhe aplicar ao problema específico da estimativa de PDF.

Skander H.
fonte
3
@sdiabr, na verdade, você não usaria o limite se quisesse que a rede simulasse um pdf - já que um pdf pode ter outros valores além de 1 e 0. Com esse limite, ele se torna um classificador direto.
Skander H.
2
A maneira correta de analisar isso é que o limiar é um problema externo ao que é aprendido na rede. Não respeitar essa distinção causa muitos problemas nas aplicações de ML para problemas do mundo real.
Matthew Drury
1
Sim, ok, eu entendo. Então, esquecendo o limiar, então eu estaria modelando um pdf? Acho que fiquei confuso com o limiar porque li algo sobre modelagem de uma distribuição de Bernouilli. No entanto, sem o limiar, isso já é Bernoilli, certo? No caso temos apenas um nó de saída com uma função de activação sigmóide, que seria a saída 0 ou 1, com uma probabilidade p ou (1-p)
sdiabr
1
Sim, fiquei confuso novamente, obrigado @CagdasOzgenc. Vamos tentar novamente: usando uma função sigmóide na camada de saída, estamos modelando diretamente um pdf, certo? seguindo qualquer distribuição que possa aprender a seguir.
Sdiabr
2
Você não está, no entanto, aprendendo sobre a distribuição de probabilidade dos coeficientes desconhecidos; portanto, não está aprendendo sobre a distribuição preditiva posterior.
Equilíbrio Brash
11

Geralmente, redes neurais não são usadas para modelar densidades completas de probabilidade. Seu foco é apenas modelar a média de uma distribuição (ou em uma situação determinística simplesmente uma função não linear). No entanto, é muito possível modelar densidades completas de probabilidade via Redes Neurais.

Uma maneira fácil de fazer isso é, por exemplo, para um caso gaussiano: emitir a média de uma saída e a variação de outra saída da rede e, em seguida, minimizar funciona como parte de o processo de treinamento em vez do erro quadrado comum. Esse é o procedimento de probabilidade máxima para uma rede neural.logN(y|x;μ,σ)

Depois de treinar essa rede toda vez que você conectar um valor como entrada, ele fornecerá μ e σ ; então, você poderá conectar todo o trigêmeo y , μ , σ à densidade f ( y | x ) N ( μ , σ ) para obter o valor da densidade para qualquer y que você desejar. Nesse estágio, você pode escolher qual valor y usar com base em uma função de perda de domínio real. É importante lembrar que, para µ, a ativação da saída deve ser irrestrita, para que você possa emitir -xμσy,μ,σf(y|x)N(μ,σ)yyμ para + inf enquanto σ deve ser apenas uma ativação positiva.inf+infσ

Em geral, a menos que seja uma função determinística que buscamos, o treinamento padrão para perda ao quadrado usado em redes neurais é praticamente o mesmo procedimento que descrevi acima. Sob o capô um distribuição assume-se implicitamente sem se preocupar com o σ e se examinar cuidadosamente - l O g N ( y | x ; μ , σ ) dá-lhe uma expressão para perda quadrado ( A perda função do estimador de máxima verossimilhança gaussiana ). Nesse cenário, no entanto, em vez de um yGaussianσlogN(y|x;μ,σ)yvalor ao seu gosto, você está sempre emitindo sempre que recebe um novo valor x .μx

Para a classificação, a saída será uma distribuição em vez de um G um u s s i a n , que tem um único parâmetro a emitir. Conforme especificado na outra resposta, esse parâmetro está entre 0 e 1, de modo que a ativação da saída deve ser adequada. Pode ser uma função logística ou outra coisa que atinja o mesmo objetivo.BernoulliGaussian01

Uma abordagem mais sofisticada são as redes de densidade de mistura do Bishop. Você pode ler sobre isso no artigo frequentemente mencionado aqui:

https://publications.aston.ac.uk/373/1/NCRG_94_004.pdf

Cagdas Ozgenc
fonte
Ouch, você me venceu 😀 Eu queria citar as MDNs de Bishop ... também há outra maneira de fazer com que a Neural Networks produza pdfs, o que é obviamente o paradigma bayesiano. Vou escrever uma resposta sobre isso.
DeltaIV
Outro papel divertido em redes densidade mistura, usado para prever condições de surf: icml.cc/Conferences/2005/proceedings/papers/...
Matthew Drury
Deveria mudar "todo o trigêmeo y, µ, σ" para "todo o trigêmeo x, µ, σ"?
moh
@moh no. x é dado e não aparecerá na densidade.
Cagdas Ozgenc # 12/18
1

Minha resposta dissidente é que, nas aplicações práticas mais impressionantes (aquelas onde eles obtêm mais cobertura na mídia, por exemplo), não é a função nem as probabilidades. Eles implementam a tomada de decisão estocástica.

Na superfície, parece que NN está apenas ajustando a função, na fila da referência de aproximação universal . Em alguns casos, quando determinadas funções de ativação e suposições específicas, como erros gaussianos, são usadas ou quando você lê artigos em redes bayesianas, parece que o NN pode produzir as distribuições de probabilidade.

No entanto, tudo isso é apenas a propósito. O que a NN pretende fazer é modelar a tomada de decisão. Quando um carro é dirigido por IA, seu NN não está tentando calcular a probabilidade de ter um objeto à sua frente, então, dado que existe um objeto para calcular a probabilidade de ser humano. Nem está calculando o mapeamento das entradas do sensor para vários tipos de objetos. Não, o NN deve tomar uma decisão com base em todas as informações para dirigir para o lado ou continuar dirigindo. Não está calculando a probabilidade, está dizendo ao carro o que fazer.

Aksakal
fonte