" > corpus.txt
```
因为这些数据虽然去除了其他标签的数据,但是却把保留下来了,所以后来作者在分词程序中去除了这个标签
我在这个[网页](http://www.jb51.net/article/65497.htm)上找到了一个python去标签的简单代码。但是没有实验过,不知效果怎么样:
这段代码可以用于去除文本里的字符串标签,不包括标签里面的内容
```
import re
html='脚本之家,Python学习!'
dr = re.compile(r']+>',re.S)
dd = dr.sub('',html)
print(dd)
```
运行结果如下:
```
脚本之家,Python学习!
```
##实验
整理之后就可以在bin文件夹下运行程序了,图片和参数解释来自[这里](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 会在结果前输出实验用的时间,当然如果不需要的话,可以去掉
-train 训练数据
-output 结果输入文件,即每个词的向量,也可以output为txt文件,但是txt文件没有直接用./distance
-cbow 是否使用cbow模型,0表示使用skip-gram模型,1表示使用cbow模型,默认情况下是skip-gram模型,cbow模型快一些,skip-gram模型效果好一些(0的情况跑了2个小时,1的时候跑了50分钟)
-size 表示输出的词向量维数
-window 为训练的窗口大小,8表示每个词考虑前8个词与后8个词(实际代码中还有一个随机选窗口的过程,窗口大小<=5)
-negative 表示是否使用NEG方,0表示不使用,其它的值目前还不是很清楚
-hs 是否使用HS方法,0表示不使用,1表示使用
-sample 表示 采样的阈值,如果一个词在训练样本中出现的频率越大,那么就越会被采样
-binary 表示输出的结果文件是否采用二进制存储,0表示不使用(即普通的文本存储,可以打开查看),1表示使用,即vectors.bin的存储类型
-iter 迭代次数
除了上面所讲的参数,还有:
-alpha 表示 学习速率
-min-count 表示设置最低频率,默认为5,如果一个词语在文档中出现的次数小于该阈值,那么该词就会被舍弃
-classes 表示词聚类簇的个数,从相关源码中可以得出该聚类是采用k-means
跑完后,用下面的命令启动距离计算,然后输入文字
```
./distance vectors.bin
```
至于聚类,只需要另一个命令即可:
```
./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
```
##应用
[深度学习word2vec笔记之应用篇](https://www.52ml.net/16951.html)
这篇文章介绍了word2vec如何应用在广告推荐中
#2. Tensorflow中的word2vec
现在word2vec已经集成到了tensorflow中
使用tensorflow下的word2vec模型
[官网](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文件夹中也生成了几个文件,但是完全不知道怎么用。。。。。
#3. gensim的word2vec
请参考这篇教程
http://blog.csdn.net/Star_Bob/article/details/47808499
##参考
[Windows下使用Word2vec继续词向量训练](http://blog.csdn.net/heyongluoyao8/article/details/43488765)
[利用word2vec对关键词进行聚类](http://blog.csdn.net/zhaoxinfan/article/details/11069485)
https://github.com/tensorflow/tensorflow/tree/master/tensorflow/models/embedding
[深度学习word2vec笔记之应用篇](https://www.52ml.net/16951.html)