Да, можно указать несколько тегов для каждого документа, и поэтому свойство tags
TaggedDocument
должно быть списком, и почему ключ, используемый для ссылки на изученные векторы документов, называется «тегом», а не «идентификатором». (Хотя в исходной статье «Векторы абзацев», на которой основан gensim Doc2Vec
, использовался только один уникальный идентификатор для каждого документа, это естественное расширение.)
Чтобы получить любой вектор-документ, вы должны получить к нему доступ через свойство docvecs
модели, а не саму модель. (Сама модель, наследуя функциональность от Word2Vec
, будет содержать векторы-слова, а не векторы-документы, и эти векторы-слова будут иметь смысл только в некоторых Doc2Vec
режимах.)
Итак, после обучения вы получите doc-векторы ваших данных примера с помощью следующих операций:
model.docvecs['UID_1']
model.docvecs['action']
Имейте в виду, что когда вы тренируете больше векторов, вам, вероятно, понадобится больше данных. В грубом смысле, любые ценные обобщения, которые можно сделать из ваших данных, исходят от сжатия исходных данных в меньшее представление. Если вы тренируете более крупную модель - больше слов-векторов, документов-тегов-векторов в качестве внутренних настраиваемых параметров - на том же количестве данных, результаты могут быть более «разбавленными» или даже «переобученными». (То есть, это может отражать запомненные особенности обучающих данных, а не обобщающие идеи, полезные для последующих целей или новых текстов).
person
gojomo
schedule
07.09.2017