首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gensim的word2vec返回尴尬向量

Gensim的word2vec返回尴尬向量
EN

Stack Overflow用户
提问于 2019-09-11 20:04:04
回答 1查看 58关注 0票数 0

在格式中对输入进行了严格清理

代码语言:javascript
复制
model_input = [['TWO people admitted fraudulently using bank cards (...)'],
               ['All tyrants believe forever',
                'But history especially People Power (...) first Bulatlat']]

word2vec正在返回更明显的结果--超级特定的载体,例如

代码语言:javascript
复制
{'A pilot shot dogfight Pakistani aircraft returned India Friday freed Islamabad called peace gesture following biggest standoff two countries years':
     <gensim.models.keyedvectors.Vocab at 0x12a93572828>,
 'This story published content partnership POLITICO':
     <gensim.models.keyedvectors.Vocab at 0x12a93572a58>,
 'Facebook says none 200 people watched live video New Zealand mosque shooting flagged moderators underlining challenge tech companies face policing violent disturbing content real time': 
    <gensim.models.keyedvectors.Vocab at 0x12a93572ba8>}

这似乎发生在更多的文件中,我很难相信每个文件都出现了五次以上。

我使用以下代码来创建我的模型:

代码语言:javascript
复制
TRAIN_EPOCHS = 30
WINDOW = 5
MIN_COUNT = 5 
DIMS = 250

vocab_model = gensim.models.Word2Vec(model_input,
                                     size=DIMS,
                                     window=WINDOW,
                                     iter=TRAIN_EPOCHS,
                                     min_count=MIN_COUNT)

我得到这样无用的向量有什么不对的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-11 22:35:47

Word2Vec希望它的训练语料库--它的sentences参数--是一个可重复的Python序列,其中每个项目本身都是一个单词列表。

您的model_input列表似乎是一个列表,其中每个项目本身都是一个列表,但是这些列表中的每个项目都是一个字符串,包含了许多单词。因此,当它期望单个的字-标记(作为字符串)时,您将为它提供完整的未标记的句子(作为字符串)。

如果你把你的文本分解成单词列表,并将这些单词列表的序列作为训练数据提供给模型,那么你将得到单词标记的向量,而不是句子字符串。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57896070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档