2016-06-01 9 views
1

각 부분의 의미를 svmLight 데이터 형식으로 혼동합니다. 예 :svmLight 형식의 각 항목의 의미

(라벨/타겟 [(기능 값), ...], queryId에)는

라벨은 데이터 queryId에의 순위는 오브젝트의 ID 의미 하는가? 예를 들어

: 다음 항목 :

2 QID : 1 : 4.000000 2 : 2.772589 3 : 0.266667 4 : 0.258154 5 : 37.330565 6 : 11.431241 7 : 37.307017 8 : 1.213630 9 : 21.342267 10 : 10.842279 11 : 15.634736 12 : 2.749495 13 : -39.467448 14 : -37.791635 15 : -38.002289 16 : 14.000000 17 : 5.634790 18 : 0.063927 19 : 0.063290 20 : 28.303065 21 : 9.340024 22 : 24.809801 23 : 0.231553 24 : 52.396216 25 : 1.692954 26 : 16.619600 27 : 2.810583 28 : -45.733775 29 : -44.612550 30 : -44.823263 31 : 18.000000 32 : 6.579251 33 : 0.076923 34 : 0.076079 35 : 27.701632 36 : 9.139690 37 : 23.819476 38 : 0.277200 39 : 67.283604 40 : 1.847508 41 : 19.559974 42 : 2.973485 43 : -44.687666 44 : -43.467574 45 : -43.302044 #docid = 346319

2는 객체의 순위/목표 값을 의미합니까? 그렇다면 qid 또는 docid는 파일에 대해 무엇을 의미합니까?

감사합니다.

답변

0

주요 숫자는 실제로이 개체의 "대상"입니다. qid:1 부분은 이러한 객체 간의 쌍 차이를 제한하는 데 사용됩니다. 최종 #docid, 또는 오히려 모든

이 커널에 추가 정보를 전달하는 데 사용할 수 있다는 정보 문자열 (예를 들어, 비 기능 벡터 데이터)

(source)입니다.

각 개체에 대한 일반적인 형식은 제목 아래, 공식 소스에 제시되어있다

"사용 방법"

<line> .=. <target> <feature>:<value> <feature>:<value> ... <feature>:<value> # <info> 
<target> .=. +1 | -1 | 0 | <float> 
<feature> .=. <integer> | "qid" 
<value> .=. <float> 
<info> .=. <string> 

주를 포맷하면

(label/target, [(feature, value), ...], queryid) 

pysvmlight의 즉 지정하는 것이 , 이전에 인용 한 Thorsten Joachims가 만든 SVM-Light 지원 벡터 머신 라이브러리에 대한 Python 바인딩. pysvmlight가 사용하는 형식으로 svmlight에 고유 한 데이터 파일을 구문 분석하기위한 파서를 작성해야합니다. StackOverflow에 one example 이상이 있습니다. 비록 qid을 고려하지 않지만, 해당 파서의 코드를 읽을 때 추가하기가 너무 어려워서는 안됩니다.

+0

고마워요! 이것은 매우 도움이됩니다! – Chasinggoal