Модель gensim Word2Vec
не хранит весь текст или статистику совпадений.Акт обучения, по сути, заставляет модель слишком маленькую, чтобы помнить все такие совместные события, чтобы все еще выполнять настолько хорошо, насколько это возможно при выполнении предсказаний соседних текстов.
Итак, нет прямого способа спросить его «учитывая N близких слов, какое слово наиболее распространено в контексте».Кроме того, целью обучения является создание векторов слов, которые оказываются полезными для других целей, а не для создания лучшего предиктора слов поблизости.Таким образом, внутренние предсказания модели Word2Vec
редко доступны через интерфейсный метод - например, оригинальный код word2vec.c от Google не предоставил интерфейс для этого.
Существует новый экспериментальный метод predict_output_word()
в gensim
, который в некоторой степени имитирует предсказание модели по некоторому количеству контекстных слов.Однако он не совсем взвешивает контекстные слова так же, как во время обучения, и не работает во всех модельных режимах.Тем не менее, он может иметь полезные результаты, аналогичные вашей первоначальной цели, поэтому проверьте это:
https://radimrehurek.com/gensim/models/word2vec.html#gensim.models.word2vec.Word2Vec.predict_output_word
(Если вам действительно нужен точный отчет о том, какие слова чаще всего встречаются в Wместа для N других слов в вашем корпусе, вам придется использовать другой код, отличный от Word2Vec, для создания необходимых таблиц поиска совпадений или повторно сканировать корпус для каждого запроса.)