Word2Ve c Использование символов вместо слов - PullRequest
0 голосов
/ 06 мая 2020

Я токенизировал свои строки и сделал из них столбец Pandas, и если я напечатаю столбец df['word_splits'], он будет выглядеть так.

0    ['explanation', 'why', 'the', 'edits', 'made',...
1    ["d'aww", '!', 'he', 'matches', 'this', 'backg...
2    ['hey', 'man', ',', "i'm", 'really', 'not', 't...
3    ['more', 'i', "can't", 'make', 'any', 'real', ...
4    ['you', ',', 'sir', ',', 'are', 'my', 'hero', ...
Name: word_splits, dtype: object

Затем я запускаю Word2Ve c

model = gensim.models.Word2Vec(sentences=df["word_splits"])

Когда я распечатываю словарь, используя

words = list(model.wv.vocab)
print(words)

, я получаю символы вместо длинного списка слов (словарный запас).

['[', "'", 'e', 'x', 'p', 'l', 'a', 'n', 't', 'i', 'o', ',', ' ', 'w', 'h', 'y', 'd', 's', 'm', 'u', 'r', 'c', 'f', 'v', '?', '"', 'j', 'g', 'k', '.', ']', '!', 'b', '-', 'q', 'z']

Не уверен, что делаю не так.

1 Ответ

2 голосов
/ 06 мая 2020

Возможная проблема:
Предложения должны представлять собой список списков.

Возможное решение:

#Invoke library
from gensim.models import Word2Vec

#Change the sentences into a list of lists.
s = [['explanation', 'why', 'the', 'edits', 'made'], ['hey', 'man', ',', "i'm", 'really', 'not']]

#Build model
model = Word2Vec(s, size=10, window=5, min_count=1, workers=4)

#Inspect the vocabulary
list(model.wv.vocab)

#['made', 'explanation', 'hey', ',', 'why', 'edits', 'not', "i'm", 'man', 'the', 'really']
...