Word2Vec: 编码与实践-自然语言处理与深度学习2

Word2Vec是Google推出的一种实现单词的向量化表示的重要方法。本节课主要介绍如何用编码来使用Word2Vec,包括Google版本的Word2Vec。

讲师:   李嫣然

Word2Vec是Google推出的一种实现单词的向量化表示的重要方法。本节课主要介绍如何用编码来使用Word2Vec,包括Google版本的Word2Vec。


主要内容包括:


  • Google版本Word2Vec使用方法,包括程序中各个参数的含义

  • Gensim版本的Word2Vec的使用,包括代码、数据集、在线资源、可视化方法等。


更多相关课程:

有关Word2Vec原理的讲解:

11ecfaaed3014775afd57111615e8475.png

李嫣然:Word2Vec: 词向量技术的基础与模型 - 深度学习与自然语言处理1


WechatIMG32.jpg

李嫣然:词嵌入的相关问题-深度学习与自然语言处理3


g3.png

谷伟伟:浅谈Word2Vec:自然语言处理的基石




Word2Vec代码实战笔记


一、如何运行Word2Vec


Word2Vec的代码下载:


基本的系统配置:

  • Windows Original: cygwin

  • C++11: VS2013 Linux/Mac OS

  • Any version you like


下面我们将讲解你该如何将Google的Word2Vec源代码跑起来。首先,在你下载完了源代码之后就会看到如下文件列表:

blob.png

然后,你可以运行“make”来编译,然后就可以运行一些demo脚本:./demo-word.sh, ./demo-phrases.sh。

其中,demo-word.sh是来做单词的嵌入,而demo-phrases.sh是来做短语的嵌入。关于短语的嵌入,大家可以此案看Mikolov2013那篇论文。


下面,让我们来看demo-word.sh的运行。执行make后会自动解压缩形成text8这个默认的语料库。其他的语料可以从wiki corpus以及datatang来找到。其中wiki的语料都是有关wiki的一些相关语料,datatang的语料比较小。


二、参数设置


那么,demo-word.sh的脚本命令是怎么写的呢?这是一条命令:

blob.png


其中所有的-都是参数,word2vec才是真正的命令。这些代码是:


time ./word2vec -train text8 -output vectors.bin

  • cbow 1

  • size 200

  • window 8

  • negative 25

  • hs 0

  • sample 1e-4

  • threads 20

  • binary 1

  • iter 15


讲师介绍
李嫣然

香港理工大学在读博士生,集智科学家,著名公众号:程序媛的日常 的运营者之一,人称小S。研究方向为自然语言处理中的语义表达和语言生成,致力于利用深度学习、认知科学等相关领域的方法和成果探究人类语言习得和语言表达的奥秘。