Эти реализации алгоритма не имеют реального понимания или зависимости от реальных предложений. Они просто берут тексты - наборы слов-токенов.
Часто тексты, предоставляемые для Word2Vec
, состоят из нескольких предложений. Иногда знаки пунктуации, такие как периоды окончания предложения, даже сохраняются как псевдо-слова. (И когда предложения были действительно последовательными друг с другом в исходных данных, перекрывающийся контекст слова windows между предложениями может даже принести пользу.)
Так что вам не нужно беспокоиться о «поддержание границ предложения». Любые тексты, которые вы предоставляете, которые являются разумными единицами слов, которые действительно встречаются, также будут работать. (Особенно в Word2Vec
и FastText
, даже изменение ваших разрывов между текстами на предложения, или абзацы, или разделы, или документы вряд ли сильно повлияет на конечные векторы слов - это просто изменение подмножества учебные контексты, и, вероятно, не каким-либо образом существенно изменяет, какие слова влияют на какие другие слова.)
Однако в gensim
есть еще один предел реализации, на который следует обратить внимание: каждый обучающий текст может только длиной 10 000 токенов, и если вы предоставите более крупные тексты, дополнительные токены будут игнорироваться.
Итак, обязательно используйте тексты с токенами 10 КБ или короче - даже если вам нужно произвольно разделить более длинные. (Как указано выше, любой такой произвольный дополнительный разрыв в группировке токенов вряд ли окажет заметное влияние на результаты.)
Однако это представляет особую проблему при использовании Doc2Vec
в режиме corpus_file
, поскольку в этом случае режим, вы не можете указать предпочитаемый tags
для текста. (Текстовый тег в этом режиме, по сути, представляет собой просто номер строки.)
В исходном режиме последовательности последовательности обходной путь для этого предела токена в 10k состоял в том, чтобы просто разбить большие документы на несколько документов - но используйте то же самое повторное tags
для всех поддокументов из исходного документа. (Это очень близко соответствует влиянию do c любого размера на обучение.)
Если у вас есть документы с токенами более 10k, я бы порекомендовал либо не использовать режим corpus_file
, либо изобразить некоторые из них. способ использовать логические поддокументы с токенами менее 10 тыс., затем, возможно, моделировать ваши большие документы как набор их поддокументов или иным образом настраивать последующие задачи для работы с теми же единицами поддокументов.