Enginius/Machine Learning

A Reduction of the Elastic Net to Support Vector Machines

해리s 2015. 10. 27. 15:37

교수님께서 한번 읽어보라고 주신 논문이 재밌어서 정리를 해 놓는다. 


아이디어는 아주 간단하다. Linear regression 문제를 푸는 방법 중 하나인 elastic net을 변형 시켜서 SVM으로 풀게 만든 것이다. 이 논문에서 주장하는 것은 기존에 SVM solver가 많이 있으니까 이걸 써서 더 쉽게 연산을 하자는 것이다. 자세한 내용은 아래 정리를 확인해보면 될 것 같다. 


Key insight가 무엇일까 생각을 좀 해봤는데, 다음 정도가 아닐까 싶다. 

1. SVM의 dual form에서 '$\hat{Z}$'는 '$(\hat{y}\hat{x_1} ... )$' 이다. 즉 입력과 출력을 곱해놔서 여기에 weight가 곱해졌을 때 합이 0보다 크게 하도록 weight를 찾게 된다. 

2. 변형된 Elastic net에서 '$\hat{Z}$'는 입력 데이터 '$X$'를 '$\frac{1}{t}y1^T$'로 더하거나 빼 준 것이다. 즉 일종의 위 아래 bound를 주는 form이고, 이를 '$\hat{\beta}$'와 곱해 minimize하니까 bound를 줄여주도록 하는 거랑 비슷하다. 

3. 그냥 그렇다. 잘 모르겠다. 


별개로 SVM와 Elastic net에 대한 개략적인 설명도 잘 되어있는 것 같다. 사실 이게 이 포스팅의 주 목적?