KNN이“모델 기반”이 아닌 이유는 무엇입니까?


10

ESL 2.4 장에서는 선형 회귀를 "모델 기반"으로 분류하는 것 같습니다.f(x)xβk- 최근 접 이웃에 대해서는 유사한 근사가 언급되지 않는다. 그러나 두 방법이 모두 가정하지는 않습니다.f(x)?

나중에 2.4에서는 다음과 같이 말합니다.

  • 최소 제곱은 f(x) 전역 선형 함수에 의해 근사됩니다.
  • k- 최근 접 이웃 가정 f(x) 로컬로 일정한 함수로 근사합니다.

KNN 가정은 공식화 될 수있는 것처럼 보입니다 (그렇지 않으면 KNN 알고리즘이 가정하는 방식으로 이어질지 확실하지는 않습니다)f 선형은 선형 회귀로 이어집니다).

KNN이 실제로 모델 기반이 아니라면 왜 그럴까요? 아니면 ESL을 잘못 읽고 있습니까?

답변:


8

kNN과 선형 회귀를 서로 매우 다른 것으로 직접 비교하는 것은 매우 어렵지만 여기서 중요한 것은 "모델링의 차이점"이라고 생각합니다. f(x)"및"에 대한 가정 f(x)".

선형 회귀 분석을 수행 할 때 f(x)종종 f(x)=wx+ϵ 어디 ϵ가우스 잡음 항입니다. 최대 우도 모델이 최소 제곱합 오류 모델과 동일하다는 것을 알 수 있습니다.

반면 KNN은 두 번째 요점에서 알 수 있듯이 로컬로 일정한 함수 를 사용하여 해당 함수를 근사 할 수 있다고 가정합니다 .x전체 분포를 구체적으로 모델링하지 않고 -ses.

다시 말해서, 선형 회귀는 종종 다음의 가치에 대한 좋은 아이디어를 가질 것입니다 f(x) 보이지 않는 사람들을 위해 x 단지의 가치에서 xkNN은 다른 정보 (예 : k 이웃)를 예측해야하지만 f(x)의 가치 때문에 x에 대한 모델이 없으므로 값 자체만으로 정보를 제공하지 않습니다. f(x).

편집 :이 명확성을 다시 표현하기 위해 아래를 반복하십시오 (주석 참조)

선형 회귀 분석과 가장 가까운 이웃 방법 모두의 가치 예측을 목표로한다는 것이 분명합니다. y=f(x) 새로운 x. 이제 두 가지 접근 방식이 있습니다. 선형 회귀는 데이터가 직선 (플러스에서 약간의 노이즈를 뺀 값)에 있다고 가정하여 y의 값이f(x)곱하기 선의 기울기. 즉, 선형 표현식 은 데이터를 직선으로 모델링 합니다.

이제 가장 가까운 이웃 방법은 데이터가 어떻게 보이는지 (데이터를 모델링하지는 않음) 상관하지 않습니다. 즉, 데이터가 선, 포물선, 원 등인지 상관하지 않습니다. f(x1)f(x2) 비슷한 경우 x1x2비슷합니다. 이 가정은 위에서 언급 한 모든 모델을 포함하여 거의 모든 모델에 적용됩니다. 그러나 NN 방법은f(x) ~와 연관되어있는 x (선, 포물선 등이든),이 관계의 모델이 없기 때문에 가까운 지점을 살펴보면 근사치가 될 수 있다고 가정합니다.


"하나는 구체적으로 f (x)를 모델링합니다"이것은 무엇을 의미합니까? f가 국소 적으로 일정하다는 가정을 공식화 할 수있는 것으로 보인다. KNN이 그러한 공식화에 의해 도출 될 수 없다는 것입니까?
Alec

"선형 회귀는 종종 x의 값에서 보이지 않는 일부 x에 대한 f (x)의 값에 대한 좋은 아이디어를 가질 것입니다."이것의 의미가 무엇인지 확실하지 않습니다. 여전히 선형 모델의 매개 변수가 필요합니다. KNN에 대한 매개 변수가 필요하기 때문에 (매개 변수가 더 관련되어 있지만)
Alec

좋은 지적, 나는 대답을 명확하고 명확하게하기 위해 답을 편집하려고 노력했습니다 (댓글의 글자 수 제한이 낮습니다).
Saulius Lukauskas

+1, 이것은 잘 설명되어 있습니다. '모델링 f (x)'와 'f (x)에 대한 가정을 갖는 것'의 차이점 '은 아이디어를 잘 보여줍니다. IMO. 아마도 이것을 넣는 또 다른 방법은 f (x) 모델링데이터 생성 프로세스 에 대한 가정을 만드는 데 고려되는 반면 knn 은이를 수행하지 않지만 주어진 데이텀의 값이 근처의 값과 유사 할 수 있음을 보여주는 것입니다 데이터.
gung-Monica Monica 복원

흠. 당신의 편집은 분명히 조금 더 명확 해지지 만, 여전히 공식적인 구별을 보는 데 어려움을 겪고 있습니다. "모델링"은 "글로벌 f의 모양에 대한 좋은 아이디어를 얻는"것을 의미하는 반면 KNN은 로컬 동작에만 관심이있는 것 같습니다. 그렇다면 선형 회귀 모델링을 만들고 KNN을 사용하지 않는 것은 글로벌 대 로컬의 차이점입니까?
Alec

5

선형 회귀는 모델을 생성하기 위해 데이터 구조에 대해 가정하기 때문에 모델 기반입니다. 데이터 세트를 통계 프로그램에로드하고 선형 회귀 분석을 실행하는 데 사용하면 출력은 실제로 모델입니다.f^(X)=β^X. 출력 변수가 실제로 생성되는 방식에 대한 가정을 했으므로이 모델에 새 데이터를 공급하고 예측 된 출력을 얻을 수 있습니다.

KNN에는 실제로 모델이 없습니다. 서로 가까이있는 관측치가 X-space는 아마도 출력 변수 측면에서 비슷하게 작동합니다. 'KNN 모델'에 새 관측치를 제공하지 않고 기존 관측치가 새 관측치와 가장 유사한 것을 결정하고 훈련 데이터에서 새 관측치의 출력 변수를 예측하기 만하면됩니다.


직관적으로 나는 당신이 무엇을 의미하는지 이해하지만, 구별은 여전히 ​​나에게 흔들리는 느낌입니다 ... KNN을 R ^ d 파티션과 파티션에 할당 된 가중치로 매개 변수화 된 것으로 볼 수 없습니까?
Alec

1
누군가 예측 결과를 정당화하도록 요청한 경우 모델이 가정하는 입력과 출력 간의 관계를 설명하여 선형 회귀 분석을 사용하면 그렇게 할 수 있습니다. 모델은 입력과 출력의 관계를 설명하려고 시도합니다. KNN은 입력 / 출력의 관계를 설명하려고 시도하지 않으므로 모델이 없습니다.
tjnel

4

모델 기반이라는 용어는 클러스터링 방법을 논의 할 때 "배포 기반"과 동의어입니다. 선형 회귀는 분포 가정 (오류가 가우시안 임)을 가정합니다. KNN은 어떠한 배포 가정도하지 않습니다. 그것이 구별입니다.


1
ESL은 이런 식으로 선형 회귀를 실제로 제시하지는 않았지만 이것은 공식적인 구별 측면에서 지금까지 가장 의미가 있습니다. 그들은 (가우스에 대한 MLE을 수행하는 대신에) 임의의 종류의 제곱 오차 비용 함수를 먼저 도입했으며, 우리가 f (x) = E (Y | X = x)를 예측해야한다는 것을 발견했다. 이것은 특정 가정 하에서 선형 회귀를 얻기 위해 f가 선형이라고 가정했습니다.
Alec

흥미로운 제안이지만, 이것에 대한 언급이 있으면 훨씬 좋습니다.
ivanmp

0

kNN은 인스턴스 기반입니다

새로운 관측치를 예측 하려면 데이터 집합에 대한 모델 이 없기 때문에 모든 교육 데이터 집합을 유지해야합니다 .

kNN의 작동 방식은 다음과 같습니다. 새로운 관측치가 주어지면이 새로운 관측치와 훈련 데이터 세트의 다른 모든 관측치 간의 거리를 계산합니다. 그런 다음 이웃 (새로운 관찰에 가장 가까운 이웃)을 얻습니다.

만약 k=5그런 다음 5 개의 가장 가까운 관측 값을 봅니다. "로컬 상수 함수"는이 5 개의 관측 값을 선택한 후 거리에 신경 쓰지 않음을 의미합니다. 그것들은 동일하며 예측에 대해 동일한 중요성을 가지고 있습니다.

모델을 어떻게 찾을 수 있습니까?

이제 "로컬 상수"가 아닌 함수를 찾으려면 정규 분포가됩니다. 이 경우 선형 가정 분석 또는 Naive Bayes (다른 가정에 따라)라는 알고리즘 호출이 제공됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.