Word2vec
将分好词的训练语料进行训练,假定我语料名称为test.txt且在word2vec目录中。输入命令:
./word2vec -train text8 -output vectors.bin -cbow 0 -size 48 -window 5 -negative 0 -hs 1 -sample 1e-4 -threads 20 -binary 1 -iter 100
- -train text8 表示的是输入文件是text8
- -output vectors.bin 输出文件是vectors.bin
- -cbow 0表示不使用cbow模型,默认为Skip-Gram模型
- -size 48 每个单词的向量维度是48
- -window 5 训练的窗口大小为5就是考虑一个词前五个和后五个词语(实际代码中还有一个随机选窗口的过程,窗口大小小于等于5)
- -negative 0 -hs 1。不使用NEG方法,使用HS方法。
- -sampe指的是采样的阈值,如果一个词语在训练样本中出现的频率越大,那么就越会被采样。
- -binary为1指的是结果二进制存储,为0是普通存储(普通存储的时候是可以打开看到词语和对应的向量的)
- -alpha设置学习速率,默认的为0.025
- min-count设置最低频率,默认是5,如果一个词语在文档中出现的次数小于5,那么就会丢弃。
- classes设置聚类个数,看了一下源码用的是k-means聚类的方法