2010-12-27 5 views
7

libsvm의 svm_predict() 메서드에 대한 질문이 있습니다.libsvm 예측 메서드 혼동

>>> y, x = [1,-1], [{1:1, 3:1}, {1:-1,3:-1}] 
>>> prob = svm_problem(y, x) 
>>> param = svm_parameter('-c 4 -b 1') 
>>> m = svm_train(prob, param) 

>>> p_label, p_acc, p_val = svm_predict(y, x, m) 

가 지금은 Y가 X에있는 사전과 관련된 카테고리의 목록입니다 이해 :

추가 정보는이 퀵 스타트 예제 코드가 있습니다. 나는 또한 svm_train 부분을 이해한다.

의미가없는 부분은 svm_predict에서 x의 테스트 데이터와 함께 y에서 'true values'를 제공해야한다는 것입니다. 나는 그 아이디어가 내가 테스트 데이터의 분류를 미리 알지 못한다고 생각했다.

y = [1, 2, 3] 
x = [{1:1}, {1:10}, {1:20}] 

하지만 내 테스트 데이터는 다음과 같습니다 : 내 훈련 데이터는

경우

z = [{1:4}, {1:12}, {1:19}] 

그리고 내가 좋아하는 svm_predict()에 Z의 진정한 가치를 전달하는 데 필요한있는 이유 :

a, b, c = svm_predict(y, z, m) 

저는 z의 참값을 알지 못합니다. 예측 값입니다. 예측을 수행 할 때 y에 대한 임의의 분류 값을 입력해야합니까, 아니면 완전히 누락 된 것입니까?

감사 그것은 당신에게 당신이 아웃 - 오브 - 샘플 테스트를하고있는 경우 정확한 통계를 제공하는 진정한 라벨을 사용하는 모든

답변

5

.

당신은, "온라인"을 실행하는 경우가 실제로 진정한 라벨이없는 즉, 그럼 그냥 y

+0

, 감사합니다. – apexdodge