Gensim Word2Vec实现中的时期数


14

Word2Vec实现中有一个iter参数gensim

gensim.models.word2vec.Word2Vec类(句子=无,大小= 100,alpha = 0.025,窗口= 5,min_count = 5,max_vocab_size =无,sample = 0,seed = 1,workers = 1,min_alpha = 0.0001,sg = 1,hs = 1,否定= 0,cbow_mean = 0,hashfxn =,iter = 1,null_word = 0,trim_rule = None,sorted_vocab = 1)

指定时期数,即:

iter =语料库上的迭代次数(时期)。

有谁知道这是否有助于改进语料库模型?

有什么理由将iter默认设置为1?增加No不会有太大影响。时代?

是否有关于如何设置否的科学/经验评估。时代?

与分类/回归任务不同,网格搜索方法不会真正起作用,因为矢量是以无监督方式生成的,而目标函数只是通过分层softmax或负采样进行。

是否有一个早期停止机制来缩短否。向量收敛后的历元数?分层softmax或负采样目标可以收敛吗?

Answers:


5

时代的增加通常有利于单词表示的质量。在实验中,我执行的目标是使用单词嵌入作为文本分类的功能,将历元设置为15而不是5,从而提高了性能。


2

在这里看了一下,发现默认值从1更改为5。显然,作者相信更多的时期会改善结果

我还不能从经验中分辨出来。


2

我在Google新闻300上训练了[2,10,100]个时代的w2v模型,最好的是在10个时代。经过所有的等待,我震惊了100个时代。

epoch   wall                    
------ ------                    
2       56 s                    
10      4m 44s (284s)           
100     47m 27s (2847 s)    

1

增加迭代次数(时期数)会大大增加训练时间。仅当您送入大量文档时,Word2Vec才能提供高质量的结果,因此即使在文档上循环两次也并不合理,尽管这实际上会使生成的单词嵌入更加准确。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.