word2vec

Word2vec网站:https://code.google.com/p/word2vec/


编译:
直接在linxu下编译。
make
直接编译发现有问题,显示编译参数-Ofast有问题。去掉fast,就可以。
CFLAGS = -lm -pthread -Ofast -march=native -Wall -funroll-loops -Wno-unused-result
CFLAGS = -lm -pthread -O -march=native -Wall -funroll-loops -Wno-unused-result

没有详细研究,应该与不同版本gcc有关?

编译后,产生文件:

compute-accuracy
word2vec
word-analogy
distance
word2phrase

3.测试

性能和参数有关
在多核CPU上(使用开关‘-threads N’),通过使用并行训练可以显著提高训练速度,超参数选择对性能也至关重要(包括速度和准确率),主要选择有:
架构:skip-gram(慢、对罕见字有利)vs CBOW(快)

a.

./word2vec -train resultbig.txt -output vectors.bin -cbow 0 -size 200 -window 5 -negative 0 -hs 1 -sample 1e-3 -threads 12 -binary 1 
参数解释:
word2vec命令(理解为工具)
-train参数,训练,以得到vectors
corpus.txt做为被训练的语料库
-output命令
vectors.bin指定输出(txt格式和binary格式两种)
cbow架构
0
size 向量大小
200
window文本大小:文本(window)大小:skip-gram通常在10附近,CBOW通常在5附近negative 训练算法
5
-hs
1
-sample 采样频繁词
1e-3
-threads 线程个数
12
-binary 转换为二进制
1 boolean类型


训练算法:分层softmax(对罕见字有利)vs 负采样(对常见词和低纬向量有利)
欠采样频繁词:可以提高结果的准确性和速度(适用范围1e-3到1e-5)
维度词向量:通常情况下表现都很好
  


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值