AI바라기의 인공지능

개념 정리 : NW kernel regression 본문

인공지능

개념 정리 : NW kernel regression

AI바라기 2026. 3. 27. 15:42

1. NW kernel regression이 하려는 일

데이터가 있다고 해보겠습니다.

$$(x_1,y_1), (x_2,y_2), \dots, (x_n,y_n)$$

그리고 우리는 어떤 새로운 입력 $x$가 들어왔을 때, 그에 대응하는 출력 $y$를 예측하고 싶습니다.

예를 들면:

  • $x$: 공부 시간
  • $y$: 시험 점수

그러면 질문은 이런 겁니다.

"공부 시간이 5시간이면 점수는 대충 얼마쯤일까?"

NW kernel regression은 이걸 근처 데이터들의 평균으로 추정합니다.

2. 제일 직관적인 출발점

새로운 점 $x$를 예측할 때, 가장 자연스러운 생각은 이겁니다.

"$x$와 비슷한 입력을 가진 데이터들만 보고, 그 데이터들의 $y$ 평균을 내면 되지 않을까?"

예를 들어 $x=5$를 예측하고 싶은데, 주변 데이터가

  • $(4,70)$
  • $(5,80)$
  • $(6,90)$

이라면, 이 셋의 $y$를 참고해서 5에서의 값을 예측하는 게 자연스럽습니다. 즉, NW의 핵심 직관은 처음부터 단순합니다. 가까운 사례일수록 더 참고하자.

3. 그런데 "가깝다"를 어떻게 정할까?

문제는 여기서 생깁니다.

  • 5와 5.1은 가깝다
  • 5와 6은 좀 덜 가깝다
  • 5와 10은 멀다

이건 알겠는데, 그걸 딱 잘라서 "포함/제외" 해버리면 너무 거칩니다. 그래서 등장하는 게 kernel입니다.

kernel은 쉽게 말하면 거리 따라 점수를 주는 함수입니다.

  • 아주 가까우면 큰 점수
  • 멀면 작은 점수

즉, 데이터를 아예 버리는 대신 가까운 점은 많이, 먼 점은 조금 반영하겠다는 것입니다.

4. 여기서 NW 공식이 나옵니다

공식은 보통 이렇게 씁니다.

$$\hat m(x) = \frac{\sum_{i=1}^n K_h(x-x_i) y_i}{\sum_{i=1}^n K_h(x-x_i)}$$

이제 여기서 중요한 건, 이 식을 그냥 "외우는 것"이 아니라 읽을 줄 아는 것입니다. 한 조각씩 뜯어보겠습니다.

4-1. $\hat m(x)$ 는 뭐냐

이건 $x$에서의 예측값입니다.

  • $m(x)$: 진짜 평균 함수라고 생각하는 것
  • $\hat m(x)$: 데이터를 가지고 실제로 만든 추정값

즉, $x$라는 위치에서 우리가 내놓는 답이 바로 $\hat m(x)$입니다.

4-2. $\sum_{i=1}^n$ 는 뭐냐

이건 그냥 모든 데이터 점을 1번부터 $n$번까지 다 더한다는 뜻입니다. 여기서 중요한 포인트가 있습니다. NW는 모든 데이터를 보긴 봅니다. 하지만 똑같이 보지 않습니다.

  • 가까운 점은 크게 반영
  • 먼 점은 작게 반영

즉, **"모든 데이터를 사용하되, local하게 사용한다"**라고 보시면 됩니다.

4-3. $x-x_i$ 는 뭐냐

이건 지금 예측하려는 점 $x$와, $i$번째 데이터의 입력값 $x_i$ 사이의 차이입니다. 쉽게 말하면 거리 정보입니다.

  • $x$$x_i$가 가까우면 작음
  • 멀면 큼

예를 들어 $x=5$일 때,

  • $x_i=4.8$이면 $x-x_i=0.2$ 정도
  • $x_i=9$이면 $x-x_i=-4$

부호 자체보다는 보통 얼마나 떨어져 있는지가 중요합니다.

4-4. $K_h(x-x_i)$ 는 뭐냐

이게 가장 핵심입니다. 이건 $x_i$가 현재 위치 $x$에 얼마나 가까운지를 숫자로 나타낸 값입니다.

즉, **"$i$번째 데이터가 $x$를 예측할 때 얼마나 중요한가?"**를 나타내는 점수입니다.

  • 가까우면 큼
  • 멀면 작음

그래서 $K_h(x-x_i)$는 사실상 가중치의 재료입니다.

4-5. 왜 $y_i$에 이걸 곱하냐

분자에 보면 $K_h(x-x_i)y_i$ 가 있습니다. 이건 그냥 **"$y_i$를 그대로 더하지 말고, 가까움 정도만큼 곱해서 더하자"**라는 뜻입니다.

  • 가까운 점의 $y_i$는 크게 반영
  • 먼 점의 $y_i$는 작게 반영

그래서 분자 $\sum_{i=1}^n K_h(x-x_i)y_i$ 는 가까운 점들의 $y$를 더 많이 반영한 가중합입니다.

4-6. 그런데 왜 분모가 또 있냐

분모는 $\sum_{i=1}^n K_h(x-x_i)$ 입니다. 이건 가중치들의 총합입니다. 즉,

  • 분자: $y$의 가중합
  • 분모: 가중치 총합

이 둘을 나누면

$$\frac{\text{가중합}}{\text{가중치 총합}}$$

이 되니까, 결국 가중평균이 됩니다. 이 분모가 굉장히 중요합니다. 왜냐하면 분모 없이 분자만 쓰면 그냥 "큰 수"가 나올 뿐이지, 평균이라고 부르기 어렵기 때문입니다.

즉 분모의 역할은 가중치들을 정규화해서 평균 형태로 만들어 주는 것입니다.

5. 그래서 이 식 전체를 말로 읽으면

다시 공식을 보면

$$\hat m(x) = \frac{\sum_{i=1}^n K_h(x-x_i) y_i}{\sum_{i=1}^n K_h(x-x_i)}$$

이 식은 그냥 이렇게 읽으면 됩니다.

"$x$와 가까운 데이터일수록 더 큰 비중을 주고, 그 $y_i$들을 가중평균한 값이 $x$에서의 예측값이다."

이 문장을 그대로 수식으로 적은 것이 NW입니다.

6. 가중치 형태로 쓰면 더 잘 보입니다

같은 식을 이렇게도 씁니다.

$$\hat m(x) = \sum_{i=1}^n w_i(x)y_i$$

여기서 $w_i(x)$는 다음과 같습니다.

$$w_i(x) = \frac{K_h(x-x_i)}{\sum_{j=1}^n K_h(x-x_j)}$$

이렇게 쓰면 훨씬 더 직관적입니다. 왜냐하면 $w_i(x)$가 진짜로 **"$x$를 예측할 때 $i$번째 데이터가 차지하는 비중"**처럼 보이기 때문입니다.

그리고 이 가중치들은 모두 더하면 1이 됩니다.

$$\sum_{i=1}^n w_i(x) = 1$$

즉, 이건 진짜 평균입니다. 모든 비중을 합치면 1이 되고, 그 비중으로 $y_i$를 섞는 것입니다.

7. 작은 숫자 예시로 실제로 읽어보기

예를 들어 데이터가 다음과 같다고 해보겠습니다.

$$(4,10),\quad (5,20),\quad (7,30)$$

이제 $x=5$에서 예측하고 싶습니다. 직관적으로 보면:

  • 5는 자기 자신이니까 가장 중요
  • 4도 가깝다
  • 7은 좀 멀다

그래서 kernel이 대충 이런 값을 줬다고 해보겠습니다.

$$K_h(5-4)=0.4,\quad K_h(5-5)=0.5,\quad K_h(5-7)=0.1$$

그러면 분자는

$$0.4 \cdot 10 + 0.5 \cdot 20 + 0.1 \cdot 30 = 4 + 10 + 3 = 17$$

분모는

$$0.4 + 0.5 + 0.1 = 1$$

따라서 $\hat m(5) = 17$ 입니다.

이 예시는 분모가 1이라서 깔끔했는데, 항상 1일 필요는 없습니다. 예를 들어 kernel 값이 $2,\ 3,\ 1$ 처럼 나와도 상관없습니다. 그럼 아래처럼 계산합니다.

$$\hat m(5) = \frac{2\cdot 10 + 3\cdot 20 + 1\cdot 30}{2+3+1} = \frac{20+60+30}{6} = \frac{110}{6}$$

즉, 중요한 건 절대 크기보다 상대적인 비중입니다.

8. 여기서 bandwidth ($h$)가 왜 들어가냐

아까 $K_h(x-x_i)$라고 썼는데, 여기서 $h$가 굉장히 중요합니다. 보통은 이렇게 씁니다.

$$K_h(x-x_i) = \frac{1}{h}K\left(\frac{x-x_i}{h}\right)$$

처음에는 좀 복잡해 보이는데, 의미는 단순합니다.

$\frac{x-x_i}{h}$ 의 의미

거리를 그냥 쓰지 않고 $h$로 나눕니다. 즉, 얼마나 가깝다고 볼지의 기준$h$가 정합니다.

  • $h$가 작으면: 조금만 떨어져도 멀다고 판단
  • $h$가 크면: 꽤 떨어져도 아직 가깝다고 판단

$h$는 **"근처를 얼마나 넓게 볼 것인가"**를 정하는 값입니다.

9. $h$가 작을 때와 클 때

  • $h$가 작으면: 아주 가까운 점만 크게 반영합니다. 그래서 예측이 데이터에 바짝 붙습니다.
    • 장점: 세세한 패턴을 잘 따라감
    • 단점: 노이즈까지 따라가서 들쭉날쭉할 수 있음
  • $h$가 크면: 더 넓은 범위를 평균냅니다. 그래서 곡선이 부드러워집니다.
    • 장점: 매끈하고 안정적
    • 단점: 중요한 구조를 너무 뭉개버릴 수 있음

그래서 NW에서는 커널 종류보다도 보통 **"bandwidth $h$가 훨씬 더 중요하다"**고 합니다.

10. 결국 NW는 뭘 추정하는 거냐

우리가 궁극적으로 알고 싶은 것은 보통 이렇습니다.

$$m(x) = \mathbb E[Y\mid X=x]$$

즉, "입력이 $x$일 때 평균적인 출력은 얼마인가?"

NW는 이걸 비모수적(non-parametric)으로 추정합니다.

여기서 비모수적이라는 말은,

  • 직선이라고 가정하지도 않고
  • 2차식이라고 가정하지도 않고
  • 미리 함수 형태를 정하지도 않고
  • 그냥 근처 데이터들의 패턴만 보고 값을 정한다는 뜻입니다.

즉 NW는 "전체를 한 번에 맞추는 방식"이 아니라 **"각 $x$마다 주변을 들여다보며 locally 평균내는 방식"**입니다.

11. 선형회귀랑 비교하면 더 잘 보입니다

  • 선형회귀: $y \approx \beta_0 + \beta_1 x$
  • 이건 전체 데이터를 보고 하나의 직선을 전체 구간에 맞춥니다. 즉 global fit입니다.
  • NW kernel regression:$x$마다 주변 점들을 새로 보고 그 주변의 $y$를 평균냅니다. 즉 local fit입니다.

그래서 데이터가 굽어 있거나 비선형이면, NW가 더 자연스럽게 따라갈 수 있습니다.

12. 한 번에 감 잡는 요약

NW의 핵심은 사실 이 한 줄입니다.

$$\hat m(x) = \frac{\sum_{i=1}^n K_h(x-x_i) y_i}{\sum_{i=1}^n K_h(x-x_i)}$$

이 식은

  1. $x$와 각 데이터 $x_i$의 거리를 본다.
  2. 가까우면 큰 가중치 $K_h(x-x_i)$를 준다.
  3. 그 가중치로 $y_i$를 평균낸다.

를 그대로 적은 것입니다.

13. 정말 핵심만 다시 말하면

지금 단계에서 아래만 완전히 잡히면 됩니다.

  • NW는 근처 $y$들의 가중평균이다.
  • $K_h(x-x_i)$는 가까움 점수다.
  • 분자는 가중합, 분모는 그 가중치 총합이다.
  • $h$는 얼마나 local하게 볼지를 정한다.