赞
踩
实验环境:Ubuntu + eclipse + python3.5
首先(1)下载最新中文wiki语料库:
wget https://dumps.wikimedia.org/zhwiki/latest/zhwiki-latest-pages-articles.xml.bz2
(2)由于下载之后,语料库上的编码格式会有不同,因此需要进行处理一下:借鉴了这篇文章。
这样处理后打开wiki.cn.text看有大部分的繁体字和少量英文,所以还需进一步处理
(3) 然后将繁体改为简体,本次实验采用了opencc工具。安装:
sudo apt-get install opencc
安装完后执行opencc -i wiki.cn.text -o wiki.cns.text -czht2zhs.ini即实现了繁体转简体并保存在wiki.cns.text中。
(4)接下来对文本分词处理,这里使用的是jieba分词,安装用命令sudo pip3 install jieba
然后运行:
python3 separate_words.py wiki.cns.textwiki.cns.text.sep
(5)接下来去除文本中的一些英文和其他非中文。对remove_words.py做类似的修改。其实为了方便该代码和运行,可以直接使用eclipse软件,使用Run as ->Run configurations , 然后再(x)=Arguments一栏里输入参数,也可以运行。
运行后打开发现还是有许多多余的空格,虽然对后面实验没影响,但是我觉得有必要把多余空格去掉,于是,改写原正则表达式 为:'[\u4e00-\u9fa5]+\s+?|\n'意即匹配所有汉字及后面的一个空格(非贪心匹配)以及所有换行符’\n。得到的分词结果大致如下:
其次,进入正式的训练,训练的结果如下:
最后,测试模型:
使用ipython notebook
Sudo pip3 install ipython
Sudo pip3 isntall notebook
终端输入Ipython notebook打开notebook。新建notebook并测试,结果如下:
可以看到效果还是不错的。当然最经典的国王-男人=女王-女人肯定也在情理之中。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。