哈工大LTP本地安装及python调用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yangfengling1023/article/details/84559848

LTP即哈工大语言技术平台云,是基于云计算技术的中文自然语言处理服务平台

在线使用的网址:https://www.ltp-cloud.com/

github网址:https://github.com/HIT-SCIR/ltp

模型下载网址:http://ltp.ai/download.html

1、安装

我主要完成了python安装pyltp,但是在安装的过程中,需要安装VS,不同版本的python会对应不同的VS

python3.6 对应的VS2005  可以从下面的网盘进行下载:

链接:https://pan.baidu.com/s/19DwbVfe3JQYWA3oPCZQoPw 
提取码:u5lm 
python2.7.13 对应的VS可以从下面的网盘中进行下载:

链接:https://pan.baidu.com/s/1rd_9i4wy45FKeF2oYSPCbA 
提取码:qf38 

(1)python3.6安装过程

执行下面的安装步骤则完成了安装

$ git clone https://github.com/HIT-SCIR/pyltp
$ git submodule init 
$ git submodule update
$ python setup.py install

但此时安装的pyltp版本是0.2.1

(2)python2.7.13安装过程

按照上面的步骤,会出现下面的问题(本地的python版本默认的是python2.7.14):

visual c++ for python\9.0\VC\Bin\amd64\cl.exe failed with exit status 2

解决方法:

把python2.7.14换成python2.7.13版本即可,且改成pip安装,具体的安装命令如下所示:
set STATICBUILD=true && pip install pyltp==0.1.9.1

此时安装的pyltp版本为0.1.9.1
 

2、使用

LTP提供的模型包括:(在ltp_data文件夹http://ltp.ai/download.html
    cws.model         分句模型,单文件
    pos.model         词性标注模型,单文件
    ner.model 命名实体识别模型,单文件
    parser.model 依存句法分析模型,单文件
    srl_data/ 语义角色标注模型,多文件(文件夹srl)

主要使用pyltp中的命名实体识别的功能,具体的代码如下所示:

# -*- coding: utf-8 -*-
from pyltp import SentenceSplitter
from pyltp import Segmentor
from pyltp import Postagger
from pyltp import NamedEntityRecognizer


paragraph1 = "张三来自中国"
# 分词
sengentor = Segmentor()
sengentor.load("model/ltp_data_v3.4.0/cws.model")
words = sengentor.segment(paragraph1)

sengentor.release() # 释放模型

# 词性标注
postagger = Postagger()
postagger.load("model/ltp_data_v3.4.0/pos.model")
postags = postagger.postag(words)
postagger.release() # 释放模型

# 命名实体识别
recognizer = NamedEntityRecognizer()
recognizer.load("model/ltp_data_v3.4.0/ner.model")
netags = recognizer.recognize(words, postags)
result = "|".join(netags).split('|')
for i in range(len(words)):
    print words[i],postags[i],result[i]
recognizer.release() # 释放模型

运行的结果如下图所示:

猜你喜欢

转载自blog.csdn.net/yangfengling1023/article/details/84559848