Por que o KNN não é "baseado em modelo"?

10

O capítulo 2.4 da ESL parece classificar a regressão linear como "baseada em modelo", porque assume , enquanto nenhuma aproximação semelhante é declarada para os vizinhos k-mais próximos. Mas os dois métodos não fazem suposições sobre ?f(x)xβf(x)

Mais tarde, na 2.4, ele ainda diz:

  • Os mínimos quadrados assumem que é bem aproximado por uma função globalmente linear.f(x)
  • Os vizinhos k-mais próximos assumem que é bem aproximado por uma função localmente constante.f(x)

A suposição de KNN parece que também pode ser formalizada (embora não tenha certeza se isso levaria ao algoritmo KNN da maneira que supor que é linear leva à regressão linear).f

Então, se o KNN realmente não é baseado em modelo, por quê? Ou estou interpretando mal a ESL?

Alec
fonte

Respostas:

9

É muito difícil comparar kNN e regressão linear diretamente, pois são coisas muito diferentes; no entanto, acho que o ponto principal aqui é a diferença entre "modelagem" f ( x )f(x) " e "ter suposições sobre ".f(x)

Ao fazer regressão linear, modelamos especificamente , geralmente algo entre as linhas def ( x ) = w x + ϵ ϵf(x)f(x)=wx+ϵ que é um termo de ruído gaussiano. Você pode descobrir que o modelo de probabilidade máxima é equivalente ao modelo de erro de soma dos quadrados mínimos.ϵ

O KNN, por outro lado, como sugere o seu segundo ponto, pressupõe que você possa aproximar essa função por uma constante local função - alguma medida de distância entre os ses, sem modelar especificamente toda a distribuição.x

Em outras palavras, a regressão linear geralmente terá uma boa idéia do valor de para algum invisível apenas do valor de , enquanto o kNN precisaria de outras informações (isto é, os vizinhos k) para fazer previsões sobre , porque o valor de , e apenas o próprio valor, não fornecerá nenhuma informação, pois não há modelo parax x f ( x ) x f ( x )f(x)xxf(x)xf(x) .

EDIT: reiterando isso abaixo para reexprimir esse esclarecimento (ver comentários)

É claro que os métodos de regressão linear e vizinho mais próximo visam prever o valor de para um novo . Agora, existem duas abordagens. A regressão linear continua assumindo que os dados caem em uma linha reta (mais menos algum ruído) e, portanto, o valor de y é igual ao valor dex f ( x )y=f(x)xf(x) vezes a inclinação da linha. Em outras palavras, a expressão linear modela os dados como uma linha reta.

Agora, os métodos vizinhos mais próximos não se importam se a aparência dos dados (não os modela), ou seja, eles não se importam se é uma linha, uma parábola, um círculo etc. Tudo o que supõe é que e será semelhante, se e são semelhantes. Observe que essa suposição é basicamente verdadeira para praticamente qualquer modelo, incluindo todos os que mencionei acima. No entanto, um método NN não pode dizer como o valor de está relacionado a (se é uma linha, parábola etc.), porque não possui modelo desse relacionamento, apenas assume que ele pode ser aproximado por olhando para pontos próximos.f ( x 2 ) x 1 x 2 f ( x ) xf(x1)f(x2)x1x2f(x)x

Saulius Lukauskas
fonte
"modelamos especificamente f (x)" O que isso significa? Parece que se pode formalizar a suposição de que f é localmente constante. Será que o KNN não pode ser derivado dessa formalização?
Alec
"a regressão linear geralmente terá uma boa idéia do valor de f (x) para algum x invisível apenas do valor de x" não sabe o que você quer dizer com isso também ... você ainda precisa dos parâmetros do modelo linear, apenas como você precisaria de parâmetros para KNN (embora seus parâmetros estão mais envolvidos)
Alec
Bons pontos, tentei editar minha resposta para torná-la mais clara e espero responder a seus pontos (o limite de caracteres para comentários é baixo).
Saulius Lukauskas
+1, isso está bem explicado. 'a diferença entre "modelar f (x)" e "ter suposições sobre f (x)"' captura muito bem a ideia, IMO. Talvez outra maneira de colocar isso seja considerar que a modelagem f (x) equivale a fazer suposições sobre o processo de geração de dados , enquanto knn não faz isso, mas apenas calcula que o valor de um dado dado pode ser semelhante ao valor das proximidades. dados.
gung - Restabelece Monica
Hum, tudo bem. Sua edição definitivamente torna um pouco mais clara, mas ainda estou tendo problemas para realmente ver uma distinção formal. Parece que por "modelagem" você quer dizer "ter uma boa idéia para a forma de f globalmente", enquanto o KNN se importa apenas com o comportamento local. Então é essa diferença entre global e local que faz com que a modelagem de regressão linear e o KNN não?
Alec
5

f^(X)=β^X . Você pode alimentar novos dados nesse modelo e obter uma saída prevista porque fez suposições sobre como a variável de saída é realmente gerada.

X

tjnel
fonte
Embora intuitivamente eu entenda o que você quer dizer, a distinção ainda me parece instável ... você não pode ver o KNN como sendo parametrizado por uma partição de R ^ d e pesos atribuídos às partições?
Alec
11
Se alguém lhe pedisse para justificar suas previsões, você poderia fazê-lo se usasse regressão linear, explicando as relações entre as entradas e saídas que o seu modelo assume. Um modelo tenta explicar o relacionamento entre entradas e saídas. O KNN não tenta explicar a relação entre entradas e saídas, portanto não há modelo.
tjnel
3

O termo baseado em modelo é sinônimo de "baseado em distribuição" ao discutir métodos de cluster. A regressão linear faz suposições distributivas (de que os erros são gaussianos). O KNN não faz nenhuma suposição distributiva. Essa é a distinção.

DL Dahly
fonte
11
Até agora, isso faz mais sentido para mim em termos de distinção formal, embora a ESL realmente não tenha apresentado regressão linear dessa maneira. Eles introduziram primeiro a função de custo do erro quadrático, meio que arbitrariamente (em vez de fazer um MLE para um gaussiano), usaram-no para descobrir que deveríamos prever f (x) = E (Y | X = x), explicou como o KNN se aproxima isso sob certas suposições e, em seguida, assumiu que f era linear para obter regressão linear.
Alec
Proposição interessante, mas seria muito melhor se tivéssemos algumas referências sobre isso.
ivanmp