커널이 무엇인지 직관적으로 설명하는 방법?


96

많은 머신 러닝 분류기 (예 : 벡터 머신 지원)를 사용하면 커널을 지정할 수 있습니다. 커널이 무엇인지 설명하는 직관적 인 방법은 무엇입니까?

내가 생각한 한 가지 측면은 선형 커널과 비선형 커널의 구별입니다. 간단히 말해서 '선형 결정 함수', '비선형 결정 함수'에 대해 말할 수 있습니다. 그러나 커널을 '결정 함수'라고 부르는 것이 좋은 아이디어인지 확실하지 않습니다.

제안?

답변:


112

커널은 (매우 높은 차원의) 특징 공간에서 두 개의 벡터 및 의 내적을 계산하는 방법 이므로, 커널 기능을 "일반적인 내적 곱"이라고도합니다.yxy

우리는 매핑이 있다고 가정 우리의 벡터를 제공합니다 일부 기능 공간에 . 이 공간에서 와 의 내적 은 입니다. 커널은 이 내적에 해당 하는 함수 입니다. 즉 입니다.R n R m x y φ( x ) T φ( y )kk( x , y )=φ( x ) T φ( y )φ:RnRmRnRmxyφ(x)Tφ(y)kk(x,y)=φ(x)Tφ(y)

이것이 왜 유용한가요? 커널은이 공간이 무엇인지 가 무엇인지 모른 채 일부 기능 공간에서 내적을 계산하는 방법을 제공합니다 .φ

예를 들어, 와 함께 간단한 다항식 커널 를 고려하십시오 . 이것은 매핑 함수 에 해당하지 않는 것으로 , 실수를 반환하는 함수일뿐입니다. 및 라고 가정하면 다음 식을 확장 해 보겠습니다.x , yR 2 φ x = ( x 1 , x 2 ) y = ( y 1 , y 2 )k(x,y)=(1+xTy)2x,yR2φx=(x1,x2)y=(y1,y2)

k(x,y)=(1+xTy)2=(1+x1y1+x2y2)2==1+x12y12+x22y22+2x1y1+2x2y2+2x1x2y1y2

이것은 두 벡터 와 및 . 따라서 커널 는 내적을 계산합니다. 이 공간을 명시 적으로 방문하지 않고 6 차원 공간.(1,y 2 1 ,y 2 2 ,(1,x12,x22,2x1,2x2,2x1x2)φ(x)=φ(x1,x2)=(1,x 2 1 ,x 2 2 ,(1,y12,y22,2y1,2y2,2y1y2)k(x,y)=(1+ x Ty)2=φ(x)Tφ(y)φ(x)=φ(x1,x2)=(1,x12,x22,2x1,2x2,2x1x2)k(x,y)=(1+xTy)2=φ(x)Tφ(y)

또 다른 예는 가우시안 커널 입니다. 이 함수를 Taylor 확장하면 의 무한 차원 코 도메인에 해당함을 알 수 있습니다 . φk(x,y)=exp(γxy2)φ

마지막으로, Yaser Abu-Mostafa 교수 의 온라인 데이터 "Learning from Data" 를 커널 기반 방법에 대한 좋은 소개로 추천합니다. 특히, "벡터 기계 지원" , "커널 방법""방사선 기초 함수" 강의 는 커널에 관한 것입니다.


2
현재 태그 정의 : "직관적 : 통계에 대한 개념적 또는 비 수학적 이해를 추구하는 질문" 개념이 수학이 아닌 것과 동의어로 취급되는지 여부는 명확하지 않습니다.
rolando2

40

커널에 대한 매우 간단하고 직관적 인 사고 방식 (적어도 SVM의 경우)은 유사 기능입니다. 두 개의 객체가 주어지면 커널은 유사성 점수를 출력합니다. 커널 함수가 비교하는 방법을 알고 있다면, 객체는 두 개의 정수, 두 개의 실제 값 벡터, 트리로 시작하는 것이 될 수 있습니다.

가장 간단한 예는 선형 커널 (dot-product)입니다. 두 벡터가 주어지면, 유사성은 한 벡터가 다른 벡터에 투영되는 길이입니다.

또 다른 흥미로운 커널 예제는 Gaussian 커널입니다. 두 벡터가 주어지면, 반경은 와 함께 유사성이 감소합니다 . 두 객체 사이의 거리는이 반경 매개 변수에 의해 "가중치"됩니다.σ

커널 학습의 성공 (적어도 SVM의 경우)은 커널의 선택에 따라 크게 달라집니다. 분류 문제에 대한 지식을 간결하게 표현한 것으로 커널을 볼 수 있습니다. 그것은 종종 특정 문제입니다.

커널이 결정 함수 에서 사용되므로 커널을 결정 함수라고 부르지 않습니다 . 분류 할 데이터 포인트가 주어지면 의사 결정 함수는 해당 데이터 포인트를 학습 된 매개 변수 의해 가중치를 부여한 여러 지원 벡터와 비교하여 커널을 사용합니다 . 지원 벡터는 데이터 포인트의 도메인에 있고 학습 된 매개 변수에 따라 학습 알고리즘에 의해 발견된다.ααα


내적과 투영은 동일하지 않습니다.
ttnphns

SVM의 경우, 커널은 다른 공간에서의 거리 측정이라고 생각합니다. 이것은 SVM이 지원 벡터 분류기를 일반화한다는 생각과 일치합니다. 일반적으로 커널은 더 복잡 할 수 있습니다.
aginensky

29

직감에 도움이되는 시각적 예

노란색과 파란색 점을 2 차원에서 선형으로 분리 할 수없는 다음 데이터 세트를 고려하십시오.

여기에 이미지 설명을 입력하십시오

이 점들이 선형으로 분리 가능한 더 높은 차원의 공간을 찾을 수 있다면 다음을 수행 할 수 있습니다.

  • 원래 기능을 더 높은 변압기 공간에 맵핑하십시오 (기능 맵핑)
  • 이 더 높은 공간에서 선형 SVM 수행
  • 결정 경계 초평면에 해당하는 가중치 세트를 얻습니다.
  • 이 초평면을 원래 2D 공간으로 다시 매핑하여 비선형 결정 경계를 얻습니다.

이 점들이 선형으로 분리 가능한 더 높은 차원 공간이 있습니다. 여기에 하나의 예가 있습니다

x1,x2:→z1,z2,z3
z1=2x1x2  z2=x12  z3=x22

커널 트릭이 시작됩니다. 위의 위대한 답변을 인용

우리는 매핑이 있다고 가정 우리의 벡터를 제공합니다 일부 기능 공간에 . 이 공간에서 와 의 내적 은 입니다. 커널은 이 내적에 해당 하는 함수 입니다. 즉φ:RnRmRnRmxyφ(x)Tφ(y)kk(x,y)=φ(x)Tφ(y)

위의 기능 맵과 동등한 커널 기능을 찾을 수 있다면 선형 SVM에 커널 기능을 연결하고 계산을 매우 효율적으로 수행 할 수 있습니다.

다항식 커널

위의 기능 맵은 잘 알려진 다항식 커널에 해당합니다 . . 하자 와 우리가 얻을를K(x,x)=(xTx)dd=2x=(x1,x2)T

k((x1x2),(x1x2))=(x1x2+x2x2)2=2x1x1x2x2+(x1x1)2+(x2x2)2=(2x1x2 x12 x22) (2x1x2x12x22)

k((x1x2),(x1x2))=ϕ(x)Tϕ(x)

ϕ((x1x2))=(2x1x2x12x22)

기능 맵 및 결과 경계선 시각화

  • 왼쪽 그림은 SVM 선형 경계 하이퍼 평면과 함께 변환 된 공간에 표시된 점을 보여줍니다.
  • 오른쪽 그림은 원래 2 차원 공간의 결과를 보여줍니다.

여기에 이미지 설명을 입력하십시오


출처


4

아주 간단하지만 정확하게 커널은 두 데이터 시퀀스 사이 의 계량 요소 입니다. 이 무게 요소는 하나 "에 더 무게 할당 할 수있는 데이터 포인트를 하나의"에서 " 시점 다른"보다는 " 데이터 포인트 ", 또는 동일한 가중치를 할당하거나 다른 "에 더 많은 가중치를 부여 데이터 포인트 등"와.

이러한 방식으로 상관 ( 내적 )은 다른 점보다 일부 지점에서 더 많은 "중요도"를 할당 할 수 있으므로 비선형 성 (예 : 평평하지 않은 공간 ), 추가 정보, 데이터 스무딩 등을 처리 할 수 ​​있습니다.

또 다른 방법으로, 커널은 위에서 언급 한 것들에 대처하기 위해 두 데이터 시퀀스 의 상대적인 차원 (또는 차원 단위 ) 을 변경하는 방법 입니다.

세 번째 방법 (이전 두 가지 관련)에서, 커널은 주어진 정보 또는 기준 (예 : 곡선 공간, 누락 된 데이터, 데이터)을 고려 하여 하나의 데이터 시퀀스를 다른 데이터 시퀀스에 일대일 매핑 하거나 투영 하는 방법입니다. 재주문 등). 예를 들어, 주어진 커널은 하나의 데이터 시퀀스를 다른 하나에 맞추거나 매핑하기 위해 하나의 데이터 시퀀스를 늘리 거나 줄이거자르 거나 구부릴 수 있습니다.

커널은 " 최적 "을 맞추기 위해 Procrustes 처럼 행동 할 수 있습니다


SVM 및 관련 방법에 사용되는 양의 반음계 Mercer 커널이 아니라 커널 밀도 추정의 관점에서 커널에 대해 이야기하고 있다고 생각합니다.
Dougal

@Dougal,이 답변의 의미에서 커널은 데이터를 특정 방식으로 상관 시키거나 특정 데이터 기능을 활용하는 데 사용되는 계량 기능 또는 측정치이므로 SVM 커널 방법도 다루고 있습니다.
Nikos M.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.