SVM 용 커널을 선택하는 방법은 무엇입니까?


95

SVM을 사용할 때는 커널을 선택해야합니다.

커널을 선택하는 방법이 궁금합니다. 커널 선택에 대한 기준이 있습니까?


문제의 크기는 얼마입니까? (# 변수, 관찰)?
user603

방금 일반화 된 솔루션을 요구하고 있습니다. 특별한 문제는 없습니다
xiaohan2012

답변:


54

커널은 사실상 유사성 측정법이므로 Robin (+1)에서 제안한대로 불변에 대한 사전 지식에 따라 커널을 선택하는 것이 좋습니다.

전문가의 지식이 없으면 Radial Basis Function 커널은 기본 커널을 양호하게 만듭니다 (한 번 설정하면 비선형 모델이 필요한 문제임).

교차 검증 기반 모델 선택을 최적화하여 (또는 반경 여백 또는 스팬 경계를 사용하여) 커널 및 커널 / 정규화 매개 변수 선택을 자동화 할 수 있습니다. 가장 간단한 방법은 Nelder-Mead 심플 렉스 방법을 사용하여 연속 모델 선택 기준을 최소화하는 것입니다.이 방법은 기울기 계산이 필요하지 않으며 상당한 수의 하이퍼 파라미터에 적합합니다. 튜닝 할 하이퍼 파라미터가 몇 개 이상인 경우 모델 선택 기준의 변동으로 인해 자동화 된 모델 선택으로 인해 과도한 피팅이 발생할 수 있습니다. 그래디언트 기반 최적화를 사용할 수 있지만 성능 향상은 일반적으로 코딩 노력에 가치가 없습니다.

커널과 커널 / 정규화 매개 변수의 자동 선택은 까다로운 문제입니다 . 모델 선택 기준 (일반적으로 교차 유효성 검사 기반)을 과도하게 맞추는 것이 매우 쉽고 처음 시작한 것보다 더 나쁜 모델로 끝날 수 있습니다. 자동화 된 모델 선택은 또한 성능 평가를 편향시킬 수 있으므로 성능 평가가 모델을 맞추는 전체 프로세스 (훈련 및 모델 선택)를 평가하는지 확인하십시오.

GC Cawley 및 NLC Talbot, 하이퍼 파라미터의 베이지안 정규화를 통해 모델 선택에서 과적 합 방지, Journal of Machine Learning Research, 8 권, 841-861 페이지, 2007 년 4 월. (pdf)

GC Cawley 및 NLC Talbot, 성능 평가에서 모델 선택 및 후속 선택 바이어스에 과적 합, Journal of Machine Learning Research, vol. 11, pp. 2079-2107, 2010 년 7 월. (pdf)


서로 멀리 떨어진 벡터의 경우 거의 0이고 동일한 벡터의 최대 값에 도달하기 때문에 방사형 기준이 유사성 측정 방법을 알 수 있습니다. 그러나 그 아이디어가 선형 알고리즘에 적용되는 방법을 알지 못합니다 (점 제품을 커널로 사용). 내적을 유사성 측정으로 어떻게 해석 할 수 있습니까?
Bananin

@Bananin 내적은 두 벡터의 크기를 두 각도의 코사인에 곱한 값으로 쓸 수 있으므로 벡터 방향의 측면에서 유사성을 측정하는 것으로 생각할 수 있습니다. ) 자신의 크기에
Dikran 유대류

34

최선의 방법이 확실하지 않은 경우 자동 선택 기술 (예 : 교차 검증, ...)을 사용할 수 있습니다. 이 경우 다른 커널로 얻은 분류기 (문제가 분류 인 경우) 의 조합 을 사용할 수도 있습니다 .

그러나 커널 작업의 "이점"은 일반적인 "유클리드"지오메트리를 자신의 문제에 맞도록 변경하는 것입니다. 또한 문제에 대한 커널의 관심사가 무엇인지, 문제 의 기하학적 구조 가 무엇인지 이해하려고 노력해야합니다 . 여기에는 다음이 포함될 수 있습니다.

  • 불변성 : 근본적으로 문제를 바꾸지 않는 변형의 가족이 있다면, 커널은 그것을 반영해야합니다. 회전에 의한 불변은 가우시안 커널에 포함되어 있지만 번역, 동성애자, 그룹 표현 등 많은 다른 것들을 생각할 수 있습니다.
  • 좋은 분리기는 무엇입니까? 분류 문제에서 좋은 구분 기호 (예 : 좋은 분류 규칙)에 대한 아이디어가 있으면 커널 선택에 포함시켜야합니다. SVM은 다음과 같은 형식의 분류자를 제공합니다.

f^(x)=i=1nλiK(x,xi)

K(x,xi)=x,Axi+c


"커널 작업의"이점 "은 자신의 문제에 맞도록 일반적인"유클리드 "지오메트리를 변경하는 것입니다. 또한 커널의 관심사가 무엇인지 이해하려고 노력해야합니다. "문제의 구조에 특정한 것이 무엇인지" 시작하기 위해 몇 가지 참고 자료를 줄 수 있습니까? 감사.
Raihana

11

나는 항상 SVM에 대한 모든 하이퍼 파라미터 선택이 그리드 검색과 함께 교차 검증을 통해 수행된다는 느낌을 가지고 있습니다.


2
나는 같은 느낌을 가지고
xiaohan2012

2
그리드 검색은 나쁜 생각입니다. 성능이 좋지 않은 영역을 검색하는 데 많은 시간을 소비합니다. 실제로 훨씬 더 효율적인 Nelder-Mead 심플 렉스 방법 (예 : MATLAB의 fminsearch ())과 같은 그라디언트 프리 최적화 알고리즘을 사용하십시오.
Dikran Marsupial

아닙니다. 예상 정보와 함께 전역 최적화를 위해 그래픽 모델 또는 가우시안 프로세스를 사용하십시오. ( '
초기

2

일반적으로 RBF 커널은 합리적인 첫 번째 선택입니다. 또한 선형 커널은 RBF의 특별한 경우입니다. 특히 기능 수가 매우 많은 경우 선형 커널을 사용할 수 있습니다.


1
데이터가 얼마나 많은 차원이 아닌 선형으로 분리 가능한지 여부에 따라 다릅니다. 기능의 수가 매우 많으면 (데이터에 따라) PCA 또는 LDA (선형 또는 비선형 커널 변형)를 먼저 차원 축소를 적용합니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.