Skip to content

hit-computer/Phrase2Vec

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 

Repository files navigation

Phrase2Vec

本模型参考了Miklov的Word2Vec,依旧采用上下文预测当前词(短语)来训练词(短语)向量。我们同时训练词向量和短语向量,得到词和短语在同一个向量空间里的表示,模型的具体细节内容参见我的博客PHRASE2VEC——短语向量学习

模型参数

模型各个参数介绍如下:

  • size:词(短语)向量的维度
  • min-wf:最小词频,词频低于该值的词将被忽略
  • window:上下文窗口大小
  • lr:学习率
  • neg-sample:负采样词(短语)数目
  • (前面这五个参数和Word2Vec差不多,这里还有另外两个不一样的参数)
  • min-pf:短语频率,高于该频率的bi-gram将被认为是一个短语
  • margin:正负例的间距
  • (还有额外三个参数)
  • max-num-epochs:迭代次数
  • save-epochs:每迭代多少次保存一下模型
  • output:保存模型的文件名

模型训练,在命令行输入:

python Phrase2vec.py [训练语料]

若机器上有GPU,可以使用GPU进行训练,速度比CPU能快很多,输入命令改为:

THEANO_FLAGS='mode=FAST_RUN,device=gpu,floatX=float32' python Phrase2vec.py [训练语料]

训练语料可以选用word2vec的测试语料,text8.zip

实验结果

用word2vec提供的测试语料训练我们的phrase2vec模型(GPU配置:Tesla K40m,迭代一轮所需时间:大约30h),利用余弦相似度计算词(短语)之间的相似度,以下是与“hong kong”相似的词语:

singapore, beijing, taiwan, shanghai, south africa, of hong, antrim, new zealand, calcutta, in dublin, warwickshire, south korea, germany s, auckland adrift, el salvador, new jersey, ferdinando, in Sweden, woolwich, yangon

About

Learn the distributed representation of phrase and word

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages