SVM을 장착 할 때 이중 문제가 발생하는 이유는 무엇입니까?


50

데이터 포인트 및 레이블 지면 하드 마진 SVM 초기 문제는 다음과 같습니다.x1,,xnRdy1,,yn{1,1}

minimizew,w012wTw
s.t.i:yi(wTxi+w0)1

이것은 최적화 될 변수와 제약 조건 을 가진 이차 프로그램입니다 . 듀얼d+1i

maximizeαi=1nαi12i=1nj=1nyiyjαiαjxiTxj
s.t.i:αi0i=1nyiαi=0
은 변수와 부등식 및 항등 제약 조건을 최적화 하는 2 차 프로그램입니다 .n+1nn

하드 마진 SVM을 구현할 때 왜 초기 문제 대신 이중 문제를 해결해야합니까? 원초적 문제는 나에게 더 '직관적'인 것처럼 보이며, 이중성 격차, Kuhn-Tucker 상태 등에 대해 걱정할 필요가 없습니다.

인 경우 이중 문제를 해결하는 것이 합리적 이지만 더 나은 이유가 있다고 생각합니다. 이 경우입니까?dn


26
짧은 대답은 커널입니다. 긴 답변은 keeerneeels입니다 (-;

이중 문제의 가장 중요한 것은 원래 데이터를 더 높은 차원의 공간에 매핑하는 것을 목표로 커널 트릭을 도입하는 것입니다.
BigeyeDestroyer 2018 년

답변:


40

@ user765195의 답변 (감사합니다!)에서 언급 한 강의 노트를 기반으로 가장 명백한 이유는 다음과 같습니다.

원시 문제를 해결하여 최적의 를 얻지 만 에 대해서는 아무것도 . 쿼리 포인트 를 분류 하려면 스칼라 곱 를 명시 적으로 계산해야합니다 . 이는 가 클 경우 비쌀 수 있습니다 .wαiT x dxwTxd

이중 문제를 해결하여 얻 (여기서 은 몇 점을 제외하고-지원 벡터) 질의 지점을 분류하기 위해 , 우리는 계산α i = 0 xαiαi=0x

wTx+w0=(i=1nαiyixi)Tx+w0=i=1nαiyixi,x+w0

이 항은 지원 벡터가 거의없는 경우 매우 효율적으로 계산 됩니다. 또한 데이터 벡터 만 포함하는 스칼라 곱이 있으므로 커널 트릭을 적용 할 수 있습니다 .


5
잠깐만 두 개의 지원 벡터 x1과 x2가 있다고 가정 해 봅시다. 둘 이상 가질 수 없습니다. <x1, x> 및 <x2, x> 계산이 <w, x>보다 빠르다는 말입니까?
Leo

1
@Leo : 내가 사용하는 것에주의 <x1, x>하고 wTx. 전자는 커널 평가 K (x1, x)의 상징으로 사용되는데, x (x1)과 x (x)를 매우 높은 차원의 공간으로 투영하고 암시 적으로 투영 된 값의 스칼라 곱을 계산합니다. 후자는 일반 내적이므로 wx명시 돌출되도록 한 후, 내적 명시 적으로 계산된다. 커널의 선택에 따라 단일 명시 적 계산은 많은 커널 평가보다 훨씬 많은 계산을 수행 할 수 있습니다.
blubb

1
원초 문제를 이해하면서 는 Lagrange multipliers입니다. 왜 를 찾기 위해 원초 문제를 해결할 수 없습니까? 를 찾기 위해 이중 문제에 의지하지 않아도 될 것입니다. α αααα
아보카도

2
또한, 이제 데이터 벡터 만 포함하는 스칼라 제품이 있으므로 커널 트릭을 적용 할 수 있습니다. " -그것은 최초의 조제에서도 마찬가지입니다.
Firebug

2
사람들이 @Firebug에서 주석에 대한 자세한 내용을 원한다면 ... 10-12 방정식을 확인 lib.kobe-u.ac.jp/repository/90001050.pdf (시원의 구속 버전이다).
MrDrFenner


3

수치 적 최적화 관점에서 이중 제제가 매력적인 이유는 다음과 같습니다. 자세한 내용은 다음 용지를 참조하십시오 .

Hsieh, C.-J., Chang, K.-W., Lin, C.-J., Keerthi, SS 및 Sundararajan, S.,“대규모 선형 SVM을위한 이중 좌표 하강 법”, 헬싱키, 제 25 회 기계 학습 국제 회의.

이중 포 뮬레이션에는 단일 아핀 항등 구속 조건과 n 바운드 구속 조건이 포함됩니다.

아핀 평등 제약은 이중 제형으로부터 "제거"될 수있다.

R ^ (d + 1)에 R ^ d를 삽입하여 각 데이터 포인트에 단일 "1"좌표를 추가하여 R ^ (d + 1)의 데이터를 간단히 살펴볼 수 있습니다 (예 : R ^ d ----> R ^ (d + 1) : (a1, ..., ad) | ---> (a1, ..., ad, 1).

훈련 세트의 모든 점에 대해 이것을 수행하면 R ^ (d + 1)의 선형 분리 문제가 다시 발생하고 분류기에서 상수 항 w0이 제거되어 이중에서 아핀 평등 제약 조건이 제거됩니다.

포인트 1에 의해, 듀얼은 구속 조건 만이 구속 구속 조건 인 볼록 2 차 최적화 문제로 쉽게 캐스트 될 수있다.

3. 이중 문제는 이제 효율적으로, 즉 O (log (1 / epsilon))에서 엡실론-최적 솔루션을 제공하는 이중 좌표 하강 알고리즘을 통해 해결 될 수 있습니다.

하나를 제외한 모든 알파를 고정하면 닫힌 형태의 솔루션이 생성됩니다. 그런 다음 모든 알파를 하나씩 차례로 순환 할 수 있습니다 (예 : 무작위로 하나 선택, 다른 모든 알파 수정, 닫힌 양식 솔루션 계산). 따라서 "가장 빨리"거의 최적의 솔루션을 얻을 수 있음을 보여줄 수 있습니다 (앞서 언급 한 정리 1 참조).

이중 문제가 최적화 관점에서 매력적인 이유는 여러 가지가 있는데, 그 중 일부는 하나의 아핀 평등 제약 조건 (남은 제약 조건이 모두 바운드 제약 조건 임) 만 있다는 사실을 악용하는 반면 다른 솔루션은 솔루션에서 관찰 한 내용을 악용합니다. 이중 문제 중 "대부분의 알파"는 0 (지원 벡터에 해당하는 0이 아닌 알파)입니다.

Computational Learning Workshop (2009) 에서 Stephen Wright의 프레젠테이션 을 통해 SVM에 대한 수치 최적화 고려 사항에 대한 좋은 개요를 얻을 수 있습니다 .

추신 : 나는 여기에 처음입니다. 이 웹 사이트에서 수학 표기법을 잘 사용하지 못해서 죄송합니다.


1
math typsetting 사용 방법에 대한 정보는 다음과 같습니다. math.meta.stackexchange.com/questions/5020/…
복원 Monica Monica

-5

Andrew ng의 강의 노트에서 필자의 의견으로는 1 / || w ||의 초기 문제는 볼록하지 않은 문제라는 것이 분명하게 언급되었습니다. 이중은 볼록한 문제이며 볼록 함수의 최적을 찾기가 항상 쉽습니다.


1
위에서 언급 한 SVM 프리 멀은 볼록합니다.
Dougal
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.