詞向量教學

下載課程所需檔案,指令為

wget http://140.112.41.98:7000/word_emb_tutorial.tar.gz
tar zxvf word_emb_tutorial.tar.gz

cd word_emb_tutorial

訓練詞向量

語料前處理

公視語料在pre_subtitle資料, 指令為

pre_subtitle/

語料前處理要做的事是把不是中文的詞者去掉,再

用結巴分詞,做成word2vec函數能輸入的格式。

指令為

python3 –m pip install jieba --user

python3 preprocess.py .

執行後產生出corpus.txt

word2vec訓練

cd word2vec/trunk
ls
make
cd ../../
./word2vec/trunk/word2vec –train corpus.txt –output my.cbow.200d.txt –size
200 –window 5 –sample 1e-4 –negative 10 –hs 0 –cbow 1 –iter 15 –threads 8
–min-count 5

上圖呈現訓練詞向量過程。

使用詞向量

以下代碼可以看到詞向量結果

vim my.cbow.200d.txt

若要離開文件按esc鍵,再打

:q

上圖呈現詞向量結果。

如果沒有安裝numpy會報錯指令

python3 –m pip install numpy

此指令可以遇到錯誤再安裝numpy

找出句子下一句要接的話

vim sample_test_data.txt

把句子分詞後,用詞向量的平均值來表示句子

假設前一句跟後一句的內容有關聯

用詞向量平均值的相似度,來找出哪一回覆可能是答句

輸入以下代碼:

./find_with_word_sim.py my.cbow.200d.txt.

[0]

https://drive.google.com/file/d/0B7GHhzIVHBJGc2J0SXJxeFRNVE0/view

results matching ""

    No results matching ""