将 word2vec GoogleNews-vectors-negative300.bin.gz 导入并使用到 R

Importing and working with word2vec GoogleNews-vectors-negative300.bin.gz into R

我是 word2vec 算法的忠实粉丝。我获得了 google 研究团队制作的矢量二进制文件,我想对此进行一些分析(我之前在比 google 制作的数据集小得多的数据集上进行了分析)。

我无法将文件 GoogleNews-vectors-negative300.bin.gz 导入 R。

我已经提取了它,并使用 rword2vec(在 github 上找到)从 bin 转换为 txt 文件。 包里面有个搜索功能,但是太懒了

这就是为什么我现在尝试将文件导入 R 并将其转换为 dataframe ,如果可能的话,结构为:

name | vec1 | ... | vec300

我曾尝试内置 readBin(无法获取名称),也尝试使用 txt 的 readLines(未完成)或 readr 包和 read_lines(仅制作 12Mb 大向量)

你能给我指明正确的方向吗?

终于找到方法了

使用包 rword2vec,可以使用包中提供的函数 bin_to_txt 或框架。有关详细信息,请参阅提供的插图。

library(rword2vec)
dist=distance(file_name = "GoogleNews-vectors-negative300.bin",search_word = "king",num = 10)
dist
           word              dist
1         kings 0.713804960250854
2         queen 0.651095926761627
3       monarch 0.641319692134857
4  crown_prince 0.620422065258026
5        prince 0.615999639034271
6        sultan 0.586482524871826
7         ruler 0.579756796360016
8       princes 0.564655303955078
9  Prince_Paras 0.543294668197632
10       throne 0.542210519313812