커널(공분산) 함수 옵션
지도 학습에서, 유사한 예측 변수 값 를 가진 점들은 당연히 비슷한 응답 변수(목표) 값 을 가질 것으로 예상됩니다. 가우스 과정에서 공분산 함수는 이러한 유사성을 표현합니다[1]. 이 함수는 두 개의 잠재 변수 와 간의 공분산을 지정합니다. 여기서 와 는 모두 d×1 벡터입니다. 다시 말해, 이 함수는 한 점 에서의 응답 변수가 다른 점들 , i ≠ j, i = 1, 2, ..., n에서의 응답 변수에 의해 어떻게 영향을 받는지를 결정합니다. 공분산 함수 는 다양한 커널 함수에 의해 정의될 수 있습니다. 또한 벡터 의 커널 모수로 모수화될 수 있습니다. 따라서 공분산 함수를 로 표현할 수 있습니다.
다수의 표준 커널 함수에서 커널 모수는 신호 표준편차 와 특성 길이 스케일 을 기반으로 합니다. 특성 길이 스케일은 입력값 들이 서로 얼마나 멀리 떨어져 있을 때 응답 변수의 값들이 서로 상관관계를 잃게 되는지를 간단히 정의합니다. 과 는 모두 0보다 커야 하며 이는 다음을 충족하는 비제약 모수화 벡터 에 의해 강제될 수 있습니다.
각 예측 변수마다 동일한 길이 스케일을 갖는 내장 커널(공분산) 함수는 다음과 같습니다.
제곱 지수 커널
이는 가장 일반적으로 사용되는 공분산 함수 중 하나이며
fitrgp에 대한 디폴트 옵션입니다. 제곱 지수 커널 함수는 다음과 같이 정의됩니다.여기서 은 특성 길이 스케일이고 는 신호 표준편차입니다.
지수 커널
'KernelFunction','exponential'이름-값 쌍의 인수를 사용하여 지수 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 다음으로 정의됩니다.여기서 은 특성 길이 스케일이고,
위의 식은 와 사이의 유클리드 거리입니다.
매턴 3/2
'KernelFunction','matern32'이름-값 쌍의 인수를 사용하여 매턴 3/2 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 다음으로 정의됩니다.여기서
위의 식은 와 사이의 유클리드 거리입니다.
매턴 5/2
'KernelFunction','matern52'이름-값 쌍의 인수를 사용하여 매턴 5/2 커널 함수를 지정할 수 있습니다. 매턴 5/2 공분산 함수는 다음과 같이 정의됩니다.여기서
위의 식은 와 사이의 유클리드 거리입니다.
유리 2차 커널
'KernelFunction','rationalquadratic'이름-값 쌍의 인수를 사용하여 유리 2차 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 다음으로 정의됩니다.여기서 은 특성 길이 스케일이고, 는 양의 값을 갖는 스케일 혼합 모수이며,
위의 식은 와 사이의 유클리드 거리입니다.
각 예측 변수 m, m = 1, 2, ...,d에 대해 개별적인 길이 스케일 을 사용할 수 있습니다. 각 예측 변수마다 개별적인 길이 스케일을 갖는 내장 커널(공분산) 함수는 자동 관련성 결정(ARD: Automatic Relevance Determination)을 구현합니다[2]. 이 경우의 비제약 모수화 는 다음과 같습니다.
각 예측 변수마다 개별적인 길이 스케일을 갖는 내장 커널(공분산) 함수는 다음과 같습니다.
ARD 제곱 지수 커널
'KernelFunction','ardsquaredexponential'이름-값 쌍의 인수를 사용하여 이 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 각 예측 변수마다 개별적인 길이 스케일을 갖는 제곱 지수 커널 함수입니다. 다음과 같이 정의됩니다.ARD 지수 커널
'KernelFunction','ardexponential'이름-값 쌍의 인수를 사용하여 이 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 각 예측 변수마다 개별적인 길이 스케일을 갖는 지수 커널 함수입니다. 다음과 같이 정의됩니다.여기서
ARD 매턴 3/2
'KernelFunction','ardmatern32'이름-값 쌍의 인수를 사용하여 이 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 각 예측 변수마다 다른 길이 스케일을 갖는 매턴 3/2 커널 함수입니다. 다음과 같이 정의됩니다.여기서
ARD 매턴 5/2
'KernelFunction','ardmatern52'이름-값 쌍의 인수를 사용하여 이 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 각 예측 변수마다 다른 길이 스케일을 갖는 매턴 5/2 커널 함수입니다. 다음과 같이 정의됩니다.여기서
ARD 유리 2차 커널
'KernelFunction','ardrationalquadratic'이름-값 쌍의 인수를 사용하여 이 커널 함수를 지정할 수 있습니다. 이 공분산 함수는 각 예측 변수마다 개별적인 길이 스케일을 갖는 유리 2차 커널 함수입니다. 다음과 같이 정의됩니다.
fitrgp에 대한 호출에서 KernelFunction 이름-값 쌍의 인수를 사용하여 커널 함수를 지정할 수 있습니다. 내장 커널 모수 옵션 중 하나를 지정하거나 사용자 지정 함수를 지정할 수 있습니다. 내장 커널 함수에 대한 초기 커널 모수 값을 제공하는 경우에는 신호 표준편차에 대한 초기값과 특성 길이 스케일을 숫자형 벡터로 입력하십시오. 사용자 지정 커널 함수에 대한 초기 커널 모수 값을 제공하는 경우에는 비제약 모수화 벡터 에 대한 초기값을 입력하십시오. fitrgp는 내장 커널 함수를 사용할 때는 모수를 추정하기 위해 해석적 도함수를 사용하는 반면, 사용자 지정 커널 함수를 사용할 때는 수치적 도함수를 사용합니다.
참고 문헌
[1] Rasmussen, C. E. and C. K. I. Williams. Gaussian Processes for Machine Learning. MIT Press. Cambridge, Massachusetts, 2006.
[2] Neal, R. M. Bayesian Learning for Neural Networks. Springer, New York. Lecture Notes in Statistics, 118, 1996.