Если classA
был одним из тегов документа, который вы указали во время обучения, то model.docvecs['classA']
вернет единственный вектор документа, который был извлечен для этого тега из обучения.
Если у вас есть другой новый вектор - например, один выведенный на новый текст через model.infer_vector(words)
, то вы можете получить список, из которых изученные векторы документа в модели наиболее близки через model.docvecs.most_similar(positive=[new_vector])
.
Если ваша истинная цель - классифицировать новые документы в один (или несколько) из этих классов, то взятие наивысшего результата most_similar()
является одним грубым способом сделать это.
Но если свести все классы к одному итоговому вектору (одному вектору, запомненному для этого тега), а затем взять только одного ближайшего соседа нового документа, это может не сработать. Это несколько заставляет предположить, что классы - это очень простые формы в n-мерном пространстве.
Для классификации вы можете разрешить всем документам получать отдельные векторы (не основанные на их известных классах или в дополнение к их известным классам), а затем обучить отдельный классификатор для этого набора (doc-vector, label) с меткой -данные. Это могло бы обнаружить более мелкозернистые и странные границы между классами.