@[使用Python实践哈工大LTP-Pyltp的安装及使用]
Pyltp安装及使用
1.VS配置不正确导致错误
解决办法: 直接安装.whl文件(不需要编译环境)
2.安装.whl文件出现not support问题
pyltp对应的whl文件下载地址
windows下python下载地址
检查python版本支持 :下载上面的文件,解压。链接里的whl文件适用于64位的python。(如果自己的python为32位的版本,通过pip安装上面的whl文件将会提示whl文件not support)
下载安装64位的python:如果python版本不支持,可以到官网下载支持的python版本。(建议下载executable的版本,因为该版本安装的时候可以将需要的setuptools和pip一起安装)
3.通过pip安装
命令: pip install +(whl文件位置)
pip install D:\Software\pyltp_wheel\pyltp\pyltp-0.2.1-cp36-cp36m-win_amd64.whl
4.安装成功下载ltp的模型
ltp模型下载地址
下载解压到相应的位置
5.ltp的应用-以句法分析为例(先进行分词和词性标注)
# -*- coding: utf-8 -*-
from pyltp import Segmentor
from pyltp import Postagger
from pyltp import Parser
def word_splitter(sentence):
"""
分词
:param sentence:
:return:
"""
segmentor = Segmentor() # 初始化实例
segmentor.load('D:\Software\pyltp_wheel\LTPModel\ltp_data_v3.4.0\cws.model') # 加载模型
words = segmentor.segment(sentence) # 分词
words_list = list(words)
print("分词结果:")
print(words)
for word in words_list:
print(word)
segmentor.release() # 释放模型
return words_list
def word_tag(words):
"""
词性标注
:param words: 已切分好的词
:return:
"""
postagger = Postagger() # 初始化实例
postagger.load('D:\Software\pyltp_wheel\LTPModel\ltp_data_v3.4.0\pos.model') # 加载模型
postags = postagger.postag(words) # 词性标注
print("词性标注结果:")
for word, tag in zip(words, postags):
print(word+':'+tag)
postagger.release() # 释放模型
return postags
def parse(words, postags):
"""
依存句法分析
:param words:
:param postags:
:return:
"""
parser = Parser() # 初始化实例
parser.load('D:\Software\pyltp_wheel\LTPModel\ltp_data_v3.4.0\parser.model') # 加载模型
arcs = parser.parse(words, postags) # 句法分析
print("句法分析结果:")
print("\t".join("%d:%s" % (arc.head, arc.relation) for arc in arcs))
parser.release() # 释放模型
# 测试句法分析
words = word_splitter('我研究的方向是自然语言处理,所以想试试这个模型。')
tags = word_tag(words)
parse(words, tags)