Freeboard

[자료] SVM light와 MultiClass SVM

페이지 정보

작성자 최고관리자 댓글 0건 조회 1,094회 작성일 20-02-06 15:45

본문

SVM light : 원래 태생이 이진 분류라 편법을 사용하는 방법 외에는 직접적으로 MultiClass 분류를 할 수 없다고 하네요.

그래서

MultiClass SVM을 링크를 걸어두겠습니다~
SVM light : http://svmlight.joachims.org/
MultiClass SVM : http://svmlight.joachims.org/svm_multiclass.html


블로그 포스팅 본문

▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▒ 1) example.txt 파일 구조는 어떻게

SVM을 이용하여 classification을 하려면 먼저 model을 만들어야 하는데요. 위의 예문에 나온 파일 구조는 모델 학습을 위한
데이터입니다.

그러니깐 train.dat

-1 1:2.0 2:3.0
+1 1:1.0 2:0.5

라고 저장이 되어 있고, 모델을 만들려면 다음과 같이 입력합니다.

svm_learn.exe train.dat model.dat

그러면 model.dat 라는 새로운 파일이 생성이 되는 거죠. 이제 실제 test data에 대한 classification을 하려면
다음과 같이 입력하세요.

svm_classify example.txt model.dat output.dat

그러면 최종적으로 example.txt 안에 들어 있는 data에 대한 분류 결과가 output.dat 에 저장되게 될것입니다.

질문하신 것처럼 example.txt 안에 저장되는 파일 구조도 train.dat 와 똑같고, 대신 해당 data가 어떤 class에 소속되어 있는지
모르기 때문에 -1, 1 대신에 숫자 0 을 입력하면 됩니다.


▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
▒ 2) SVM은 binary classification만 가능한가?

태생적으로 SVM은 two-class classification을 위해 만들어 졌습니다. 하지만 수학적 변형을 통해 2 class 이상의 문제도 풀 수
있습니다. 이때 SVM light 버전은 안되고, multi class 문제를 위한 프로그램이 따로 있습니다.

아래 홈페이지에서 프로그램을 다운 받아 사용하시면 될 것입니다.

http://svmlight.joachims.org/svm_multiclass.html

사용방법은 svm light와 비슷하고 class 분류를 이제 -1, 1 대신에 1,2,3 ... 이렇게 할 수 있을 것입니다.

댓글목록

등록된 댓글이 없습니다.

Copyright ⓒ 2020 Natural Language Processing Lab. All rights reserved.