Steven5538

word2vec 使用

Word count: 233Reading time: 1 min
2015/03/25 Share

因大數據期末作業需求,稍微看了一下這 model。
太複雜的數學我也不懂,所以這邊看到的只是這個 model 在 python 底下如何使用。

首先必須先安裝 gensim 和 cython。

1
pip install gensim cython
當然這是基本的,如果還要對文字做預處理的話還要再安裝其他套件。

首先先看一下如何 train 一個 model 出來。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from gensim.models import Word2Vec

# Set values for various parameters
num_features = 600 # Word vector dimensionality
min_word_count = 40 # Minimum word count
num_workers = 4 # Number of threads to run in parallel
context = 20 # Context window size
downsampling = 1e-3 # Downsample setting for frequent words

model = Word2Vec(sentences, workers=num_workers, size=num_features, min_count = min_word_count, window = context, sample = downsampling)

model.init_sims(replace=True)

model_name = "train_model"
model.save(model_name)

其中 sentences 的部份是句子的集合。
將處理的句子丟入即會開始 training。

接著將 train 好的 model 讀入。

1
model = Word2Vec.load("train_model")

之後就可以利用各項 syntactic/semantic NLP word tasks 了。

詳細可以閱讀 官方文件

CATALOG