어떤 기능이 커널 일 수 있습니까?


21

기계 학습 및 패턴 인식과 관련하여 Kernel Trick 이라는 개념이 있습니다. 함수가 커널 함수일 수 있는지 여부를 묻는 문제가 발생하면 정확히 어떻게해야합니까? 다항식, RBF 및 가우시안과 같은 3 개 또는 4 개의 커널 함수 형태인지 먼저 확인해야합니까? 그럼 어떻게해야합니까? 그것이 양의 명확한 지 보여 주어야합니까? 누군가가 그러한 문제에 대한 단계별 해결책을 보여주기 위해 예를 해결할 수 있습니까? 예를 들어 마찬가지로, 이다 f(x)=extx 는 커널 함수 (우리가 가우시안 커널 모르는 가정 해 봅시다)?

답변:


27

일반적으로 함수 는 두 가지 주요 속성을 만족하는 경우 유효한 커널 함수입니다 (커널 트릭의 의미에서).k(x,y)

  • 대칭 : k(x,y)=k(y,x)

  • 양의 반정도.

참조 : http://www.cs.berkeley.edu/~jordan/courses/281B-spring04/lectures/lec3.pdf의 4 페이지

대칭 점검은 일반적으로 점검을 통해 간단합니다. 분석적으로 양의 반 정확성을 확인하는 것은 때때로 털이 될 수 있습니다. 이 사실을 확인하기위한 두 가지 전략을 생각할 수 있습니다.

  • (1) "내부 제품"표현 검사

k(x,y)=ex+yϕ(a)k(x,y)=ϕ(x)Tϕ(y)ex+y=exeyϕ(a)=ea

운이 좋으면 를이 분석에 사용할 수 있습니다. 그렇지 않은 경우 옵션 (2)를 사용할 수 있습니다.k()

  • (2) 랜덤 시뮬레이션을 통한 긍정적 인 확실성 확인.

dim 벡터 k ( x , y ) = D d = 1( x d , y d ) 의 함수를 고려하십시오. 여기서 각 벡터 x , y 는 음이 아니어야하며 1로 합산되어야합니다. 이것이 유효한 커널입니까?Dk(x,y)=d=1Dmin(xd,yd)x,y

N{xi}i=1NKKij=k(xi,xj)K

K

샘플 MATLAB / Octave 코드 :

D=5;
N=100;

X = zeros(N,D);
for n = 1:N
   xcur = rand(1,D);
   X(n,:) = xcur/sum(xcur);
end

K = zeros(N,N);
for n = 1:N;  for m = 1:N
    K(n,m) = sum( min( X(n,:), X(m,:) ) );
end;  end;

disp( min( eig(K) ) );

이것은 매우 간단한 테스트이지만 조심하십시오 . 테스트가 실패하면 커널이 유효 하지 않은지 확인할 수 있지만 통과해도 커널 이 유효 하지 않을 수 있습니다.

ND

k(x,y)=d=1Dmax(xd,yd)

컴파일 된 형식 증명보다 훨씬 빠르고 디버깅하기 쉽기 때문에이 두 번째 옵션이 정말 좋습니다. Jitendra Malik의 슬라이드 19 에 따르면 , 교차로 커널은 1991 년에 도입되었지만 2005 년까지는 제대로 입증되지 않았습니다. 공식적인 증거는 매우 어려울 수 있습니다!


내가 이해하는 것처럼 두 번째 조건은 긍정적 인 정확성입니다. 제가 말씀 드린대로 SVM 알고리즘의 수렴을 입증하려는 경우에만 필요합니다. 실제로 PSD가 아니지만 실제로는 잘 작동하는 많은 커널이 있습니다.
Peter

@ 피터 : 네, 그렇습니다. 그것은 단지 한정된 것이 아니라 반-정된 일 수있다. 이에 따라 편집되었습니다.
Mike Hughes

SVM 도메인에서 PSD 커널을 사용하면 문제가 볼록 해 지므로 최적화는 전 세계적으로 고유 한 고유 한 솔루션을 얻을 수 있습니다. PSD 속성이 없으면 찾은 솔루션이 가능한 최상의 위치에 있다는 보장이 없습니다. 그러나 그렇습니다. PSD는 아니지만 실제로 성공한 몇 가지 커널 (Sigmoid와 같은)이 있습니다. 이 문제에 대한 적절한 참조는 perso.lcpc.fr/tarel.jean-philippe/publis/jpt-icme05.pdf 입니다.
Mike Hughes
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.