显示Word嵌入强度的常见示例是显示某些单词之间的语义关系,例如 king:queen = male:female . 如何发现这种关系?这是通过基于几何聚类的某种可视化吗?任何指针将不胜感激 .
king:queen = male:female
如果通过"discovered"表示 supervised 学习,则datasets包含许多已提取的关系,例如"city-in-state","capital-world","superlative"等 .
该数据集是完成单词矢量类比的单词向量内在评估的流行选择 . 另见this question .
提取这些关系可能会非常棘手 . 一个朴素的算法需要O(n2)时间和内存,其中n是词汇表中的单词数量,这是巨大的 . 一般来说,这个问题归结为有效的指数构建 .
但是如果你只想自己训练并使用文字嵌入,你可以简单地使用gensim:
model = gensim.models.word2vec.Word2Vec(sentences=sentences, size=100, window=4, workers=5, sg=1, min_count=20, iter=10) word_vectors = model.wv similar = word_vectors.most_similar(positive=['woman', 'king'], negative=['man']) # [(u'queen', 0.7188869714736938), (u'empress', 0.6739267110824585), ...
请注意,您需要一个大的语料库,例如text8 .
1 回答
如果通过"discovered"表示 supervised 学习,则datasets包含许多已提取的关系,例如"city-in-state","capital-world","superlative"等 .
该数据集是完成单词矢量类比的单词向量内在评估的流行选择 . 另见this question .
提取这些关系可能会非常棘手 . 一个朴素的算法需要O(n2)时间和内存,其中n是词汇表中的单词数量,这是巨大的 . 一般来说,这个问题归结为有效的指数构建 .
但是如果你只想自己训练并使用文字嵌入,你可以简单地使用gensim:
请注意,您需要一个大的语料库,例如text8 .