По сути, все, что делает алгоритм «Вектор абзаца» за gensim Doc2Vec
, - это найти вектор, который (вместе с нейронной сетью) хорош для предсказания слов, которые появляются в тексте. Так что да, тексты с почти одинаковыми словами будут иметь очень близкие векторы. (Нет синтаксического понимания, что определенные слова в определенных местах имеют большой обратный эффект.)
Тем не менее, даже такие векторы могут быть в порядке (хотя и не современными) при анализе настроений. Один из способов, которым оригинальная статья «Векторы параграфа» оценивала удобство использования векторов, была оценка настроения коротких обзоров фильмов. (Они были длиннее одного предложения - до сотен слов.) При обучении классификатора на векторах документов классификатор проделал довольно хорошую работу и лучше других базовых методов при оценке негативности / позитивности обзоров.
Ваши одиночные, крошечные, придуманные предложения могут быть сложнее - они короткие, с разницей всего в пару слов, поэтому векторы будут очень близки. Но эти разные слова (особенно 'not'
) часто очень показательны для настроения - поэтому крошечной разницы может быть достаточно, чтобы сместить вектор из «положительных» областей в «отрицательные».
Так что вам придется попробовать это с реальным обучающим корпусом из десятков тысяч различных текстовых примеров (потому что этот метод не очень хорошо работает с наборами данных размером с игрушку) и шагом классификатора после векторизации.
Обратите также внимание, что в чистом Doc2Vec
добавление известных меток (например, «положительный» или «отрицательный») во время обучения (рядом или вместо любых уникальных тегов на основе идентификатора документа) иногда может помочь результирующему векторному пространству быть более чувствительны к различию, которое вы хотите. И другие варианты техники, такие как «FastText» или «StarSpace», более непосредственно интегрируют известные метки в векторизацию таким образом, чтобы это могло помочь.
Однако лучшие результаты для коротких предложений, вероятно, будут учитывать относительный порядок слов и грамматический разбор. Вы можете увидеть демонстрацию такого более продвинутого метода на странице исследовательской группы НЛП Стэнфорда:
http://nlp.stanford.edu:8080/sentiment/rntnDemo.html
Хотя посмотрите в комментариях различные примеры сложных случаев, с которыми он все еще борется.