나는 가우시안 프로세스 분야에 익숙하지 않고 머신 러닝에 어떻게 적용되는지에 대해 알고 있습니다. 공분산 함수가 이러한 방법의 주요 매력 인 것에 대해 계속 읽고 듣습니다. 그렇다면 누구나 이러한 공분산 함수에서 일어나는 일을 직관적으로 설명 할 수 있습니까?
그렇지 않으면 특정 자습서 또는 설명하는 문서를 가리킬 수 있습니다.
나는 가우시안 프로세스 분야에 익숙하지 않고 머신 러닝에 어떻게 적용되는지에 대해 알고 있습니다. 공분산 함수가 이러한 방법의 주요 매력 인 것에 대해 계속 읽고 듣습니다. 그렇다면 누구나 이러한 공분산 함수에서 일어나는 일을 직관적으로 설명 할 수 있습니까?
그렇지 않으면 특정 자습서 또는 설명하는 문서를 가리킬 수 있습니다.
답변:
느슨한 용어로, 커널 또는 공분산 함수 는 입력 공간에서 두 점 사이의 통계적 관계를 지정합니다 . 즉, 에서 가우시안 프로세스 (GP) 값의 변화가 의 GP 변화와 얼마나 관련이 있는지 . 어떤 의미에서 는 입력 (*) 간의 유사성을 정의하는 것으로 생각할 수 있습니다 .
전형적인 커널은 단순히 점들 간의 유클리드 거리 (또는 그것의 선형 변환)에 의존 할 수 있지만, 훨씬 더 많은 것을 할 수 있다는 것을 알게되면 재미가 시작됩니다.
David Duvenaud는 다음과 같이 말합니다.
커널은 텍스트, 이미지, 행렬 및 커널과 같은 모든 유형의 데이터 구조에 대해 정의 할 수 있습니다. NIPS 논문을 얻는 쉬운 방법이었던 새로운 유형의 데이터에 대한 커널을 생각해 냈습니다.
GP의 커널에 대한 쉬운 개요를 위해, Kernel Cookbook 과 그 안의 참고 문헌을 적극 추천 합니다.
(*) @Dikran Marsupial이 지적한 것처럼, 대화가 사실이 아님을주의하십시오. 모든 유사성 메트릭이 유효한 커널은 아닙니다 (자신의 답변 참조).
@lacerbi가 제안한 것처럼 커널 함수 (가우시안 프로세스 설정의 공분산 함수)는 본질적으로 유사성 메트릭이므로 두 입력 벡터가 응용 프로그램의 요구에 따라 "유사한"것으로 간주 될 경우 커널 값이 높습니다. 서로 다르면 더 낮아집니다. 그러나 모든 유사성 메트릭이 유효한 커널 기능인 것은 아닙니다. 유효한 커널이 되려면 함수는 변환 된 피쳐 공간에서 내부 제품을 계산하는 것으로 해석 가능해야합니다. 즉 여기서 는 입력 벡터를 피처 공간에 매핑하는 함수입니다.
그렇다면 왜 일부 기능 공간에서 커널을 내부 제품으로 해석해야합니까? 그 이유는 비선형 모델 (예 : 신경망)보다 선형 모델 (예 : 로지스틱 회귀)의 일반화 성능에 대한 이론적 한계를 세우는 것이 훨씬 쉽기 때문입니다. 입력 벡터는 내부 제품의 형태로만 나타나도록 대부분의 선형 모델을 작성할 수 있습니다. 이는 커널 피처 공간에 선형 모델을 구성하여 비선형 모델을 구축 할 수 있음을 의미합니다. 이것은 데이터의 고정 변환이므로 선형 모델에 대한 모든 이론적 성능 한계는 새로운 커널 비선형 모델 *에 자동으로 적용됩니다.
처음에는 이해하기 어려운 중요한 점은 특정 응용 프로그램에 적합한 기능 공간을 생각하지 않고 해당 기능 공간을 발생시키는 커널을 설계하는 경향이 있다는 것입니다. 일반적으로 우리는 좋은 유사성 메트릭을 제시하고 그것이 커널인지 확인합니다 (일반 위치의 커널 함수에 대한 쌍 단위 평가 행렬이 양의 명확한 경우 유효한 커널입니다) .
물론 교차 유효성 검사 오류를 최소화하는 등 일반화 성능을 최적화하기 위해 커널 매개 변수를 조정하는 경우 더 이상 고정 변환이 아니라 데이터에서 배우고 아름다운 이론의 대부분은 무효화되었습니다. 실제로 커널 방법의 설계에는 많은 이론이 뒷받침되어 있지만 실제로는 실제 응용 프로그램에는 적용되지 않지만 모델을 뒷받침하는 건전한 원칙이 있기 때문에 여전히 안심입니다.