word2vec应用场景_word2vec的使用参数解释和应用场景
" > corpus.txt
```
因?yàn)檫@些數(shù)據(jù)雖然去除了其他標(biāo)簽的數(shù)據(jù),但是卻把保留下來了,所以后來作者在分詞程序中去除了這個(gè)標(biāo)簽
我在這個(gè)[網(wǎng)頁](http://www.jb51.net/article/65497.htm)上找到了一個(gè)python去標(biāo)簽的簡單代碼。但是沒有實(shí)驗(yàn)過,不知效果怎么樣:
這段代碼可以用于去除文本里的字符串標(biāo)簽,不包括標(biāo)簽里面的內(nèi)容
```
import re
html='腳本之家,Python學(xué)習(xí)!'
dr = re.compile(r']+>',re.S)
dd = dr.sub('',html)
print(dd)
```
運(yùn)行結(jié)果如下:
```
腳本之家,Python學(xué)習(xí)!
```
##實(shí)驗(yàn)
整理之后就可以在bin文件夾下運(yùn)行程序了,圖片和參數(shù)解釋來自[這里](http://blog.csdn.net/heyongluoyao8/article/details/43488765),代碼如下:
```
time ./word2vec -train text8 -output vectors.bin -cbow 1 -size 200 -window 8 -negative 25 -hs 0 -sample 1e-4 -threads 20 -binary 0 -iter 15
```

-time 會(huì)在結(jié)果前輸出實(shí)驗(yàn)用的時(shí)間,當(dāng)然如果不需要的話,可以去掉
-train 訓(xùn)練數(shù)據(jù)
-output 結(jié)果輸入文件,即每個(gè)詞的向量,也可以output為txt文件,但是txt文件沒有直接用./distance
-cbow 是否使用cbow模型,0表示使用skip-gram模型,1表示使用cbow模型,默認(rèn)情況下是skip-gram模型,cbow模型快一些,skip-gram模型效果好一些(0的情況跑了2個(gè)小時(shí),1的時(shí)候跑了50分鐘)
-size 表示輸出的詞向量維數(shù)
-window 為訓(xùn)練的窗口大小,8表示每個(gè)詞考慮前8個(gè)詞與后8個(gè)詞(實(shí)際代碼中還有一個(gè)隨機(jī)選窗口的過程,窗口大小<=5)
-negative 表示是否使用NEG方,0表示不使用,其它的值目前還不是很清楚
-hs 是否使用HS方法,0表示不使用,1表示使用
-sample 表示 采樣的閾值,如果一個(gè)詞在訓(xùn)練樣本中出現(xiàn)的頻率越大,那么就越會(huì)被采樣
-binary 表示輸出的結(jié)果文件是否采用二進(jìn)制存儲(chǔ),0表示不使用(即普通的文本存儲(chǔ),可以打開查看),1表示使用,即vectors.bin的存儲(chǔ)類型
-iter 迭代次數(shù)
除了上面所講的參數(shù),還有:
-alpha 表示 學(xué)習(xí)速率
-min-count 表示設(shè)置最低頻率,默認(rèn)為5,如果一個(gè)詞語在文檔中出現(xiàn)的次數(shù)小于該閾值,那么該詞就會(huì)被舍棄
-classes 表示詞聚類簇的個(gè)數(shù),從相關(guān)源碼中可以得出該聚類是采用k-means
跑完后,用下面的命令啟動(dòng)距離計(jì)算,然后輸入文字
```
./distance vectors.bin
```
至于聚類,只需要另一個(gè)命令即可:
```
./word2vec -train resultbig.txt -output classes.txt -cbow 0 -size 200 -window 5 -negative 0 -hs 1 -sample 1e-3 -threads 12 -classes 500
```
按類別排序:
```
sort classes.txt -k 2 -n > classes.sorted.txt
```
##應(yīng)用
[深度學(xué)習(xí)word2vec筆記之應(yīng)用篇](https://www.52ml.net/16951.html)
這篇文章介紹了word2vec如何應(yīng)用在廣告推薦中
#2. Tensorflow中的word2vec
現(xiàn)在word2vec已經(jīng)集成到了tensorflow中
使用tensorflow下的word2vec模型
[官網(wǎng)](https://github.com/tensorflow/tensorflow/tree/master/tensorflow/models/embedding)中給的例子:
**Word2Vec Tutorial**
To download the example text and evaluation data:
```
wget http://mattmahoney.net/dc/text8.zip -O text8.zip
unzip text8.zip
wget https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/word2vec/source-archive.zip
unzip -p source-archive.zip word2vec/trunk/questions-words.txt > questions-words.txt
rm source-archive.zip
```
Assuming you are using the pip package install and have cloned the git repository, navigate into this directory and run using:
```
cd tensorflow/models/embedding
python word2vec_optimized.py \
--train_data=text8 \
--eval_data=questions-words.txt \
--save_path=/tmp/
```
To run the code from sources using bazel:
```
bazel run -c opt tensorflow/models/embedding/word2vec_optimized -- \
--train_data=text8 \
--eval_data=questions-words.txt \
--save_path=/tmp/
```
我雖然跑通了程序,在tmp文件夾中也生成了幾個(gè)文件,但是完全不知道怎么用。。。。。
#3. gensim的word2vec
請(qǐng)參考這篇教程
http://blog.csdn.net/Star_Bob/article/details/47808499
##參考
[Windows下使用Word2vec繼續(xù)詞向量訓(xùn)練](http://blog.csdn.net/heyongluoyao8/article/details/43488765)
[利用word2vec對(duì)關(guān)鍵詞進(jìn)行聚類](http://blog.csdn.net/zhaoxinfan/article/details/11069485)
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/models/embedding
[深度學(xué)習(xí)word2vec筆記之應(yīng)用篇](https://www.52ml.net/16951.html)
總結(jié)
以上是生活随笔為你收集整理的word2vec应用场景_word2vec的使用参数解释和应用场景的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【CASS精品教程】CASS 9.2绘制
- 下一篇: nc65右键生成菜单_DbSchema生