본문 바로가기
  • 데이터에 가치를 더하다, 서영석입니다.
공부하는 습관을 들이자/Machine Learning For Study

Hands-on ML : 5.3 SVM 회귀

by 꿀먹은데이터 2022. 6. 2.

앞서 포스팅에 이어 SVM 알고리즘은 다목적으로 사용할 수 있다.

 

SVM을 분류 뿐만 아니라 선형/비선형 회귀에도 사용할 수 있다.

SVM을 분류가 아니라 회귀에 적용하는 방법은 목표를 반대로 하는 것이다.

일정한 마진 오류 안에서 두 클래스 간의 도로 폭이 가능한 한 최대가 되도록 하는 대신 SVM 회귀는 제한된 마진 오류(즉, 도로 밖의 샘플) 안에서 도로 안에 가능한 한 많은 샘플이 들어가도록 학습한다.

도로의 폭은 하이퍼파라미터 E로 조절한다.

from sklearn.svm import LinearSVR

svm_reg=LinearSVR(epsilon=1.5)
svm_reg.fit(X,y)

비선형 회귀 작업을 처리하려면 커널 SVM 모델을 사용한다. 임의의 2차 방정식 형태의 훈련 세트에 2차 다항 커널을 사용한 SVM 회귀를 보여준다. 왼쪽은 규제가 거의 없고 ( 큰 C) , 오른쪽은 규제가 훨씬 많다. (작은 C)

from sklearn.svm import SVR

svm_poly_reg=SVR(kernel='poly',degree=2,C=100,epsilon=0.1)
svm_poly_reg.fit(X,y)

SVR은 SVC의 회귀 버전으로 LinearSVR은 필요한 시간이 훈련 세트의 크기에 비례해서 선형적으로 늘어난다. 하지만 SVR은 훈련 세트가 커지면 훨씬 느려진다.

 

자세한 코드는 저의 깃허브를 참고하시면 됩니다.

https://github.com/rootofdata/handson-ML

 

GitHub - rootofdata/handson-ML: handson ML

handson ML. Contribute to rootofdata/handson-ML development by creating an account on GitHub.

github.com

참고 문헌 :

https://book.naver.com/bookdb/book_detail.nhn?bid=16328592

 

핸즈온 머신러닝

머신러닝 전문가로 이끄는 최고의 실전 지침서 텐서플로 2.0을 반영한 풀컬러 개정판 『핸즈온 머신러닝』은 지능형 시스템을 구축하려면 반드시 알아야 할 머신러닝, 딥러닝 분야 핵심 개념과

book.naver.com