Как найти количество токенов в модели gensim - PullRequest
0 голосов
/ 27 января 2020

Это код для моей модели, использующий Gensim.i , запустите его и он вернет кортеж. Я хочу знать, что это число токенов?

model = gensim.models.Word2Vec(mylist5,size=100, sg=0, window=5, alpha=0.05, min_count=5, workers=12, iter=20, cbow_mean=1, hs=0, negative=15)

model.train(mylist5, total_examples=len(mylist5), epochs=10)

Значение, которое вернула моя модель: Мне нужно знать, что это такое?

 (167131589, 208757070)

Я хочу знаете, какое количество токенов?

Ответы [ 2 ]

2 голосов
/ 27 января 2020

Поскольку вы уже передали свой mylist5 корпус при создании экземпляра модели, он автоматически сделает все шаги для обучения модели с этими данными.

(Вам не нужно, и почти наверняка не стоит, снова вызывать .train(). Как правило, .train() следует вызывать только в том случае, если вы не предоставили корпус при инстанции. И в таком случае вы должны затем вызвать и .build_vocab(), и .train() .)

Как отметили другие авторы, числа, сообщенные .train(), представляют собой два подсчета общих жетонов, которые можно увидеть в процессе обучения. (Большинству пользователей эта информация на самом деле не нужна.)

Если вы хотите узнать количество уникальных токенов , для которых модель выучила слова-слова, len(model.wv.vocab) - это один из способов.

1 голос
/ 27 января 2020

Gensim Code

Gensim Github Line573 Показывает, что model.train возвращает два значения train_word_count, raw_word_count.

«raw_word_count» - это количество слов, использованных в обучении .

"training_word_count" - количество необработанных слов после игнорирования неизвестных слов и обрезания длины предложения.

...