어떤 데이터는 원래 공간에서는 직선 하나로 나누기 어렵습니다. 하지만 데이터를 더 풍부한 특징공간으로 옮기면, 원래는 비선형처럼 보이던 문제가 선형문제로 바뀔 수 있습니다. 커널방법은 이 발상을 계산 가능하게 만든 방법이고, RKHS는 그 뒤에 있는 함수공간 관점을 정리한 이론적 틀입니다.
먼저 알아둘 말
- 커널: 두 점 사이의 유사도를 계산하는 함수다.
- 특징맵: 원래 데이터를 더 높은 차원의 특징공간으로 보내는 함수다.
- 특징공간: 데이터를 새로운 특징들로 표현한 공간이다.
- 커널트릭: 특징공간을 직접 만들지 않고도 그 공간의 내적만으로 계산하는 기법이다.
- RKHS: 커널이 만들어 내는 함수공간으로, 함수 평가가 내적으로 표현되는 공간이다.
이 강의에서 답할 질문
- 왜 높은 차원으로 보내면 어려운 문제가 쉬워질 수 있을까?
- 커널은 무엇을 대신 계산해 주는가?
- RKHS는 왜 커널방법의 자연스러운 이론적 배경이 될까?
먼저 떠올릴 장면
- 평면에서는 뒤섞여 보이는 점들이 더 높은 차원으로 올리면 평면 하나로 나뉠 수 있다.
- 모든 특징을 직접 만들면 계산량이 너무 커질 수 있다.
- 때로는 데이터 자체보다 데이터 사이의 유사도만 잘 계산해도 좋은 모델을 만들 수 있다.
즉 커널방법의 핵심은 "직접 복잡한 특징을 만들지 않고도, 그 특징공간에서 일어나는 계산 결과를 얻는 것"입니다.
생각의 순서
- 먼저 왜 원래 공간에서는 선형 분리가 어려울 수 있는지 본다.
- 그다음 특징공간과 커널의 관계를 본다.
- 이어서 커널트릭이 왜 유용한지 본다.
- 마지막으로 RKHS를 함수공간 관점에서 이해한다.
본문
1. 원래 공간에서는 비선형이지만, 다른 공간에서는 선형일 수 있다
어떤 분류 문제는 원래 입력공간에서는 직선이나 평면으로 나누기 어렵습니다. 하지만 입력을 더 풍부한 특징으로 바꿔 보면, 그 새로운 공간에서는 직선 하나로 구분이 가능해질 수 있습니다.
이 생각이 중요한 이유는 선형모형이 계산과 해석이 쉽기 때문입니다. 즉 "복잡한 문제를 더 좋은 좌표계로 옮겨 선형문제로 만든다"는 것이 핵심 발상입니다.
이를 수학적으로는 특징맵
$$ \phi(x) $$
로 표현합니다. 원래 입력 x를 새로운 특징공간의 벡터로 보내는 함수입니다.
2. 특징공간에서는 내적이 중요하다
많은 선형알고리즘은 벡터 자체보다 벡터 사이의 내적에 크게 의존합니다. 예를 들어 새로운 공간으로 보낸 두 점
$$ \phi(x), \phi(x') $$
사이의 내적은
$$ \phi(x)^T \phi(x') $$
입니다.
이 값은 두 점이 특징공간에서 얼마나 비슷한지를 나타내는 중요한 양입니다. 즉 알고리즘 입장에서는 특징 벡터 전체를 다 아는 것보다, 필요한 내적값을 계산할 수 있는지가 더 중요할 수 있습니다.
3. 커널은 특징공간의 내적을 대신 계산한다
커널함수는 바로 이 내적을 직접 계산해 주는 함수입니다.
$$ K(x,x') = \phi(x)^T \phi(x') $$
즉 커널은 "특징공간으로 보낸 뒤 내적한 결과"를 원래 공간의 두 점만 가지고 계산하게 해 줍니다.
이 점이 매우 강력합니다. 특징공간이 아주 고차원이거나 심지어 무한차원이어도, 우리가 커널값만 계산할 수 있다면 그 공간에서의 선형알고리즘을 간접적으로 쓸 수 있기 때문입니다.
4. 커널트릭은 높은 차원을 직접 만들지 않는다
여기서 커널트릭이 나옵니다. 특징공간을 실제로 만들지 않고, 필요한 내적값만 커널로 계산하는 방식입니다.
왜 이게 좋을까요?
- 특징공간 차원이 매우 커도 직접 벡터를 만들 필요가 없다.
- 계산량과 메모리를 줄일 수 있다.
- 원래는 비선형처럼 보이는 구조를 간접적으로 활용할 수 있다.
즉 커널트릭은 "복잡한 특징공간을 직접 다루는 부담"을 없애는 계산 아이디어입니다.
5. 커널방법은 유사도 중심의 학습이라고 볼 수 있다
커널방법에서는 데이터 하나하나를 직접 좌표로 다루기보다, 데이터들 사이의 유사도를 중심으로 학습하는 관점이 강해집니다.
그래서 SVM 같은 방법에서는 "어떤 점들이 결정경계에 중요하게 기여하는가"가 유사도 구조를 통해 드러납니다. 이 관점은 딥러닝과는 결이 다르지만, 작은 데이터와 해석 가능한 구조에서는 여전히 의미가 큽니다.
즉 커널방법은 고차원 특징을 다루는 또 하나의 길입니다.
6. RKHS는 커널이 만들어 내는 함수공간이다
이제 RKHS로 넘어갑니다. 이름은 어려워 보이지만 직관은 단순합니다. 커널이 주어지면, 그 커널로 표현 가능한 함수들의 공간을 생각할 수 있습니다. 이 공간이 RKHS입니다.
즉 RKHS는 벡터공간 개념이 함수들로 확장된 공간이라고 볼 수 있습니다.
이 공간에서 가장 중요한 성질은 함수값 평가가 내적으로 표현된다는 점입니다.
$$ f(x) = \langle f, K(\cdot, x) \rangle $$
이 식은 "점 x에서의 함수값"조차 공간 안의 내적 연산으로 나타낼 수 있다는 뜻입니다. 그래서 커널과 함수공간이 아주 자연스럽게 연결됩니다.
7. RKHS가 왜 중요한가
RKHS가 중요한 이유는 다음과 같습니다.
- 커널방법을 단순한 계산기법이 아니라 함수공간 위 학습으로 이해하게 해 준다.
- 최적화와 일반화 이론을 더 깔끔하게 정리하게 해 준다.
- 어떤 함수가 커널로 표현 가능한지를 구조적으로 보게 해 준다.
즉 RKHS는 "커널이 잘 작동한다"는 사실을 뒤에서 떠받치는 이론적 구조입니다.
8. AI에서는 왜 여전히 중요할까
커널방법은 딥러닝 이전 시대의 대표 강자였지만, 지금도 사라진 개념이 아닙니다.
- 작은 데이터에서는 강력한 기준선이 될 수 있다.
- 이론적으로 해석이 명확하다.
- 유사도 기반 학습과 함수공간 관점을 제공한다.
또한 RKHS를 이해하면 신경망을 포함한 더 복잡한 함수근사 문제를 볼 때도 "어떤 함수공간에서 학습하고 있는가"라는 질문을 던질 수 있게 됩니다.
예제
- 커널의 의미 문제: 커널 함수는 무엇을 계산하는가? 풀이: 두 점이 특징공간에서 얼마나 비슷한지를 나타내는 내적 값을 계산한다.
$$ K(x,x') = \phi(x)^T \phi(x') $$
해설: 커널은 복잡한 특징벡터 자체보다, 그 특징벡터들 사이의 유사도를 직접 제공한다.
-
커널트릭의 장점 문제: 왜 높은 차원 특징을 직접 만들지 않는 것이 좋은가? 풀이: 특징공간 차원이 매우 크면 계산량과 메모리가 폭발할 수 있는데, 커널트릭은 필요한 내적만 계산하게 해 준다. 해설: 커널트릭은 "높은 차원의 이점"은 살리고 "직접 계산 비용"은 줄이는 방법이다.
-
RKHS의 직관 문제: RKHS를 왜 함수공간이라고 부를 수 있는가? 풀이: 이 공간의 원소가 숫자 벡터가 아니라 각 점에 값을 주는 함수들이기 때문이다. 해설: 벡터공간의 개념이 함수로 확장된 것이며, 커널이 그 공간의 구조를 결정한다.
스스로 점검
연습 문제
- 왜 원래 공간에서 비선형인 문제가 특징공간에서는 선형적으로 보일 수 있는지 설명하라.
- 커널과 특징맵의 관계를 설명하라.
- 커널트릭이 왜 계산을 줄이는지 설명하라.
- RKHS가 함수학습과 연결되는 이유를 설명하라.
복습 질문
- 커널방법은 어떤 문제를 해결하려 하는가?
- 커널은 무엇을 대신 계산하는가?
- RKHS는 어떤 이론적 구조를 제공하는가?
체크포인트
- 커널과 커널트릭의 뜻을 설명할 수 있다.
- 특징공간의 직관을 이해한다.
- RKHS를 함수공간으로 이해한다.
- 커널방법의 아이디어를 큰 흐름으로 설명할 수 있다.