Есть ли способ удалить слово из словаря KeyedVectors? - PullRequest
0 голосов
/ 14 февраля 2019

Мне нужно удалить недопустимое слово из словаря «gensim.models.keyedvectors.Word2VecKeyedVectors».

Я пытался удалить его, используя del model.vocab[word], если я напечатал model.vocab, слово исчезло, но когда я запускаю model.most_similar, используя другие слова, слово, которое я удалил, все равно выглядит как похожее.Так как же я могу удалить слово из model.vocab таким образом, чтобы оно не влияло на model.most_similar?

Ответы [ 2 ]

0 голосов
/ 17 апреля 2019

Обратитесь к:

Как полностью удалить слово из модели Word2Vec в gensim?

  1. Возможный способ 1: я решаю это путем редактированияСам файл текстовой модели.
  2. Возможный способ 2: Обратитесь к ответу @ zsozso.(Хотя я не получил его на работу

).

0 голосов
/ 15 февраля 2019

Не существует метода, поддерживающего удаление отдельных слов.

Быстрый и грязный обходной путь может заключаться в том, чтобы одновременно с удалением записи vocab отметить index существующего вектора (в основном массиве больших векторов), а также изменитьстрока в списке kv_model.index2entity по этому индексу с некоторым значением плагина (как, скажем, '***DELETED***').

Затем после выполнения любого most_similar() отбросьте все записи, соответствующие '***DELETED***'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...