在研究中发现,哈工大的LTP在分词、实体识别等方面的效果甚至要优于中科院ICTCLAS,而且LTP还具备了目前在中文信息处理领域较为罕见的语义角色标注(SRL)功能。以前我都是直接以get方式通过LTP-Cloud去使用的,但是由于受限于网速,当语料较大时 执行速度较慢。于是近期考虑在自己的机子上安装,由于个人比较喜欢用ython编程,所以就安装了官方发布的pyltp。在安装过程中遇到了不少问题,我联系了哈工大的刘一佳博士和徐梓翔同学,在他们的耐心帮助下,终于安装成功。向他们表示感谢!现将我的安装过程做下总结,使你也少走弯路。
1 准备工作
1.1 系统环境
我的环境是 windows server 2008,Python3.2(32位版),开发工具为HBuilder【你可能也知道HBuilder适合做Web开发,但是为HBuilder安装pydev插件后,也可编写Python程序,由于我平时还喜欢写些php网页,刚好一个软件都能满足我】
1.2 安装CMAKE
LTP是用c++写的,pyltp也是基于它封装而成的,所以需要安装camke. 我安装的是二进制版的 cmake-3.2.2-win32-x86.exe 安装后不用配置环境变量。
1.3 安装VS2008
在pyltp的安装过程中 需要调用 cl.exe 完成源码的编译。安装的是微软官方的vs2008 express 版。这个安装好后,需要将cl.exe 的路径添加到环境变量PATH中去(如我的是C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\cl.exe)
2 pyltp安装步骤
2.1 下载pyltp并解压到任意位置
下载页面:https://github.com/hit-scir/pyltp
2.2 下载ltp并解压到任意位置
下载页面:https://github.com/hit-scir/ltp
2.3 将解压后的ltp文件夹命名为ltp,整体复制到pyltp中。
也就是将ltp所有内容作为一个文件夹放到pyltp中。解压pyltp后所得到的文件夹中已经有一个名为ltp的空文件夹,把它替换或覆盖即可。
2.4 安装pyltp
我是在cmd中通过 python setup.py install 命令实现安装的,过程较慢,耐心等待,后期会出现大量的warning信息,不要在意。安装程序执行完毕后,在Python中执行import pyltp 不报错,说明安装成功了。
到这里 核心程序的部署已经完成,而且官方的样例已经可以顺利执行了。我把这个文件夹部署到自己的Python项目中,在运行例子程序时 发现它的效果奇差。经进一步咨询上述两位同学后得知,pyltp自带的这些模型文件(在ltp_data文件夹中)仅为测试之用,正式的model文件还需要从网上下载。见2.4步
2.4 下载并部署模型文件
完整的模型文件下载地址: http://pan.baidu.com/share/link?shareid=1988562907&uk=2738088569,我选择的是目前最新的3.2.0版本(ltp-data-v3.2.0.zip),解压后得到一个大于1G的文件夹,确保此文件夹名称为ltp_data。至于这个文件夹要放到哪里,经过分析官方例子,发现它的位置任意,但在Python程序中一定要指明这个路径。于是我把它放到我的项目的根目录下,并确保与存放Python源程序的src目录并列,这样官方的例子不用做修改就可加载这个文件夹了。
注意,官方的例子是基于Python2的,如果你和我一样也是Python3系列的,那么需要把print后面的语句 加上括号
完成后,即可发现pyltp终于可以运行了。
在执行第二个功能时,即词性标注,控制台会出现警告:[WARNING] 2015/04/27 18:50:10 No constraints is loaded. 经询问这是提示没有加载自定义的词性标注词典。官方解释说,这是由于目前的pyltp版尚不支持用户加入本地的各类词典。
————————————————
转载声明:本文为CSDN博主「捂汗县长」的原创文章。
原文链接:https://blog.csdn.net/laoyaotask/article/details/45312905