1

我需要训练一些手套模型来将它们与 word2vec 和 fasttext 输出进行比较。它是用 C 实现的,我看不懂 C 代码。github在这里

训练语料库需要格式化为单个文本文件。对我来说,这将是>>100G——对内存来说太大了。在我浪费时间构建这样的东西之前,如果有人能告诉我手套算法是否试图将它读入内存,或者它是否从磁盘流式传输,我将不胜感激。

如果是前者,那么 glove 当前的实现将与我的数据不兼容(我认为)。如果是后者,我愿意。

4

1 回答 1

0

Glove 首先构建一个单词共现矩阵,然后对其进行处理。在构造这个矩阵时,链接的实现在几个线程上流式传输输入文件。每个线程一次读取一行。

所需的内存主要取决于语料库中唯一单词的数量,只要行不太长。

于 2020-02-19T02:01:15.133 回答