2016-06-01 8 views
1

Я очень смущен тем, что каждая часть означает в формате данных svmLight. Например:Что означает каждый элемент в формате svmLight

(метка/мишень, [(функция, значение), ...], queryid)

означает ли метка ранг данных и queryid является идентификатором объекта?

Например: по следующему пункту:

2 QID: 1 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 , связывание Python с библиотекой векторных машин SVM-Light, созданной Thorsten Joachims, которую я цитировал ранее. Вам нужно будет написать синтаксический анализатор для анализа файлов данных, родных svmlight, в формате, который использует pysvmlight. В StackOverflow есть не менее one example, хотя он не принимает во внимание qid, но его не следует слишком сложно добавлять, когда вы читаете код этого парсера.

+0

Спасибо! Это очень полезно! – Chasinggoal

 Смежные вопросы

  • Нет связанных вопросов^_^