Пытаетесь использовать word2Vec для файла, но не работает? - PullRequest
0 голосов
/ 02 декабря 2018

Здравствуйте, я новичок в word2vec, поэтому я пробовал простую программу для чтения файла и получения vec каждого слова, но что-то не так с процессом токенизации, так как word2vec учитывает каждую букву, а не слово!

например, мой файл содержит «привет, это мое первое испытание»

from gensim.models import Word2Vec
from nltk.tokenize import word_tokenize


F = open('testfile')
f=F.read()
doc= word_tokenize(f)
print(f)

print(doc)

model = Word2Vec(doc,min_count=1)

# summarize the loaded model
print(model)

words = list(model.wv.vocab)
print(model['hello'])

Я получаю сообщение об ошибке, что привет не находится в vocab, но когда я использую букву 'h', это работает

1 Ответ

0 голосов
/ 02 декабря 2018

Word2Vec работает с последовательностями текстов, где каждый текст представляет собой список строк-токенов.Вы предоставляете один документ, поэтому он будет видеть текст ['h', 'e', 'l', 'l', 'o'], текст ['t', 'h', 'i', 's'] и т. Д.

. В результате единственные слова, которые он выучит,отдельные буквы.(Посмотрите на model.wv.index2entities, чтобы увидеть это.)

Поместите ваш сингл doc в список документов, это было бы быстрым решением.Например:

docs = [doc]
model = Word2Vec(doc, min_count=1)

Однако обратите внимание, что Word2Vec плохо работает на примерах размером с игрушку.Для создания полезных векторов требуются большие, разнообразные учебные тексты.Например, чтобы просто поддерживать векторы 100-мерного размера по умолчанию для Word2Vec, принадлежащего Генсиму, у вас должен быть учебный материал с 10 000+ уникальных слов и более 5 различных вариантов использования каждого слова.

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

Взгляните на учебную тетрадь, входящую в каталог gensim docs/notebooks, для примера обучения чуть более реалистичного размера.Он также доступен для просмотра онлайн по адресу:

https://github.com/RaRe-Technologies/gensim/blob/develop/docs/notebooks/word2vec.ipynb

...