tensorflow实例:实现word2vec语言模型

时间:2022-05-08 01:43:44

本文算是对上一篇博文大白话讲解word2vec到底在做些什么基于tensorflow的技术实现吧。

版本说明

———-这次我不会忘记要写版本了分割线~

python:python3.5
tensorflow:tensorflow-0.12.1
numpy+mkl:numpy-1.11.3+mkl
matplotlib:matplotlib-2.0.0
sklearn:scikit_learn-0.18.1
scipy:scipy-0.19.0
注:虽然代码里没有直接使用scipy和mkl,但是是sklearn的依赖,也是要下载安装好的。

导入的包

tensorflow实例:实现word2vec语言模型

数据源

本次实验用到的数据源是网上下载的哈利波特1-7,经过去符号处理,只留下了单词序列

代码

已经上传到Github上了。
word2vec_harrypotter

结果

嗯哼,做了word2vec有什么效果呢?
效果在这里
tensorflow实例:实现word2vec语言模型

实验取了单词频数top150成图,这里截取了一部分。
可以看到,黄色圈出来的back,out,behind,into,up距离比较近,himself,her,him,them,us聚在一起,还有for,though,than,but,and这些聚在一起。
当然,迭代次数多一些,效果可能会更棒。

说明

代码参考了Tensorflow实战 黄文坚 唐源著