2017-10-24 23 views
0

SVM을 처음 사용하고 있으며 데이터를 테스트하고 테스트하기 위해 libsvm 3.21을 사용하고 있습니다. 내 인스턴스마다 클래스 레이블 1,2, .., 5가 있습니다 (10 개 있다고 가정 해 봅시다).libsvm 예측 클래스 레이블을 csv에 저장하는 방법은 무엇입니까?

예측 클래스 라벨 (예 : 3,5,1,2,3,4,2,1,1,4)을 csv 또는 txt 파일에 인쇄 할 수 있습니까? 여기 http://www.csie.ntu.edu.tw/~cjlin/libsvm/faq.html을 찾아 봤는데,하지만 libsvm 만합니다 (.MODEL, .range 및 .scale 파일과 함께)이 출력 것으로 보인다 :

optimization finished, #iter = 219 
nu = 0.431030 
obj = -100.877286, rho = 0.424632 
nSV = 132, nBSV = 107 
Total nSV = 132 

답변

0

libsvm의 README에 따르면, 당신은 기차가 있다고 당신이해야 할 일 .DATA, test.data는 예측하기 SVM을 그냥 사용 훈련 모델을 사용하여 test.data을 테스트 한 후 SVM-기차를

user:~$ ./svm-train train.data svm.model 
* 
optimization finished, #iter = 162 
nu = 0.431029 
obj = -100.877288, rho = 0.424462 
nSV = 132, nBSV = 107 
Total nSV = 132 

를 사용하여 데이터를 훈련하고있다

user:~$ ./svm-predict test.data svm.model svm.output 
Accuracy = 86.6667% (234/270) (classification) 

그리고 요 u는 svm.output에서 예측 한 레이블을 찾을 수 있습니다. 당신이 파일을 .csv로하는 변경하려는 경우 특히

user:~$ head -5 svm.output 
1 
-1 
-1 
1 
-1 

, 당신은 입력 할 수 있습니다

user:~$ tr -s '\n' ',' <svm.output> svm.csv