Eu estou um pouco confuso. Por que os processos gaussianos são chamados de modelos não paramétricos?
Eles assumem que os valores funcionais, ou um subconjunto deles, têm um Gaussiano anterior com média 0 e função de covariância dada como função do kernel. Essas funções do kernel possuem alguns parâmetros (ou seja, hiperparâmetros).
Então, por que eles são chamados de modelos não paramétricos?
nonparametric
gaussian-process
user34790
fonte
fonte
Respostas:
Eu prefácio isso dizendo que nem sempre é claro o que se quer dizer com "não paramétrico" ou "semiparamétrico" etc. Nos comentários, parece provável que o whuber tenha alguma definição formal em mente (talvez algo como escolher um modelo de alguma família onde é de dimensão infinita), mas eu vou ser bem informal. Alguns podem argumentar que um método não paramétrico é aquele em que o número efetivo de parâmetros que você usa aumenta com os dados. Eu acho que há um vídeo no videolectures.net onde (eu acho) Peter Orbanz dá quatro ou cinco tomadas diferentes sobre como podemos definir "não paramétrico". { M θ : θ ∈ Θ } ΘMθ { Mθ: θ ∈ Θ } Θ
Como acho que sei que tipo de coisas você tem em mente, por simplicidade, assumirei que você está falando sobre o uso de processos gaussianos para regressão, de uma maneira típica: temos dados de treinamento estamos interessados em modelar a média condicional . Escrevemos e talvez tenhamos a ousadia de assumir que os são iid e normalmente distribuídos, . será unidimensional, mas tudo será transferido para dimensões superiores.E ( Y | X( YEu, XEu) , I = 1 , . . . , n Y i = f ( X i ) + ϵ i ϵ i ϵ i ∼ N ( 0 , σ 2 ) X iE(Y|X=x):=f(x)
Se nosso pode aceitar valores em um continuum, então pode ser pensado como um parâmetro de (infinita) dimensão infinita. Portanto, no sentido em que estamos estimando um parâmetro de dimensão infinita , nosso problema é não paramétrico. É verdade que a abordagem bayesiana tem alguns parâmetros flutuando aqui e ali. Mas, na verdade, é chamado não paramétrico, porque estamos estimando algo de dimensão infinita. Os anteriores do GP que usamos atribuem massa a todas as vizinhanças de todas as funções contínuas, para que possam estimar arbitrariamente qualquer função contínua. f ( ⋅ )Xi f(⋅)
As coisas na função turbulentos estão desempenhando um papel semelhante ao dos parâmetros de suavização nos estimadores frequentistas habituais - para que o problema a não ser absolutamente impossível nós temos que assumir que há alguma estrutura que nós esperamos ver exposição. Os bayesianos conseguem isso usando um prior no espaço de funções contínuas na forma de um processo gaussiano. De uma perspectiva bayesiana, estamos codificando crenças sobre , assumindo que é extraído de um GP com função de covariância. O prior penaliza efetivamente as estimativas de por ser muito complicado.f f ff f f f
Editar para problemas computacionais
A maioria (tudo?) Dessas coisas está no livro do Processo Gaussiano de Rasmussen e Williams.
Questões computacionais são complicadas para os GPs. Se prosseguirmos com niavelidade, precisaremos de memória de tamanho apenas para manter a matriz de covariância e (ao que parece operações para invertê-la. Existem algumas coisas que podemos fazer para tornar as coisas mais viáveis. Uma opção é notar que o indivíduo que realmente precisamos é , a solução para onde é a matriz de covariância. O método dos gradientes conjugados resolve isso exatamente nos cálculos de , mas se nos satisfizermos com uma solução aproximada, poderíamos terminar o algoritmo do gradiente conjugado após etapas e fazê-lo emO ( NO(N2) v ( K + σ 2 I ) v = Y K O ( N 3 ) k O ( k N 2 ) KO(N3) v (K+σ2I)v=Y K O(N3) k O(kN2) cálculos. Também não precisamos necessariamente armazenar toda a matriz uma só vez.K
Então, passamos de para , mas isso ainda escala quadraticamente em , portanto, podemos não ser felizes. A próxima melhor coisa a fazer é trabalhar com um subconjunto de dados, digamos, do tamanho onde inverter e armazenar uma matriz não é tão ruim. Obviamente, não queremos apenas jogar fora os dados restantes. A abordagem do subconjunto de regressores observa que podemos derivar a média posterior do nosso GP como uma regressão de nossos dados em funções dependentes de dados determinadas por nossa função de covariância; então jogamos fora todos menos deles e reduzimos para cálculos.O ( k N 2 ) N m m × m S N m O ( m 2 N )O(N3) O(kN2) N m m×m Y N m O(m2N)
Existem algumas outras opções em potencial. Poderíamos construir uma aproximação de baixo escalão para e definir onde é e de escalão ; ele vira invertendo , neste caso, pode ser feito em vez invertendo . Outra opção é escolher a função de covariância como esparsa e usar métodos de gradiente conjugado - se a matriz de covariância for muito esparsa, isso poderá acelerar substancialmente os cálculos.K = Q Q T Q n × q q K + σ 2 I Q T Q + σ 2 IK K=QQT Q n×q q K+σ2I QTQ+σ2I
fonte
De um modo geral, o "não paramétrico" nos não paramétricos bayesianos refere-se a modelos com um número infinito de parâmetros (potenciais). Existem muitos tutoriais e palestras realmente agradáveis sobre o assunto no videolectures.net ( como este ) que oferecem boas visões gerais dessa classe de modelos.
Especificamente, o Processo Gaussiano (GP) é considerado não paramétrico porque um GP representa uma função (isto é, um vetor dimensional infinito). À medida que o número de pontos de dados aumenta ((x, f (x)) pares), o mesmo acontece com o número de 'parâmetros' do modelo (restringindo o formato da função). Ao contrário de um modelo paramétrico, em que o número de parâmetros permanece fixo em relação ao tamanho dos dados, em modelos não paramétricos, o número de parâmetros cresce com o número de pontos de dados.
fonte
Os parâmetros que você mencionou como hiperparâmetros não são parâmetros fisicamente motivados e, portanto, o nome. Eles são usados para parametrizar apenas a função do kernel. Para dar um exemplo, em um kernel gaussiano:
Esta questão foi abordada nesta palestra também, pode ajudar a entender melhor.
fonte