常用的自然语言处理工具
目录
Jieba
描述:“结巴”中文分词:做最好的 Python 中文分词组件
Official
功能:分词(支持自定义词典),词性标注,关键词提取,模型可手动加载(默认延迟加载机制)
online: pip install jieba offline: https://pypi.python.org/pypi/jieba/ # 解压运行 python setup.py install
pyhanlp
描述:HanLP是由一系列模型与算法组成的工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点;HanLP的Python接口,支持自动下载与升级HanLP,兼容py2、py3,模型可延迟加载。
功能:词法分析(中文分词(支持自定义词典)、词性标注、命名实体识别)、关键词提取,自动摘要,拼音转换,简繁转换,文本推荐,文本分类,句法分析、文本分类和情感分析。
HanLP pyhanlp pip install pyhanlp
Python接口下提供的功能有限:分词,关键词提取,自动摘要,依存句法分析;如果要使用java版本的全部功能,需要python调用java环境下的接口,方法如下:
from pyhanlp import *
PerceptronLexicalAnalyzer = JClass('com.hankcs.hanlp.model.perceptron.PerceptronLexicalAnalyzer') analyzer = PerceptronLexicalAnalyzer() print(analyzer.analyze("上海华安工业(集团)公司董事长谭旭光和秘书胡花蕊来到美国纽约现代艺术博物馆参观"))
StanfordCoreNLP
描述:Stanfordcorenlp is a Python wrapper for Stanford CoreNLP. It provides a simple API for text processing tasks.
功能:Tokenization, Part of Speech Tagging, Named Entity Reconigtion, Constituency Parsing, Dependency Parsing, and more.
Github Official Python Wrapper pip install stanfordcorenlp # 需要下载对应语言版本的模型,或者all in one
NLTK
描述:NLTK是构建Python程序以使用人类语言数据的领先平台。
功能:分词,分句,实体识别,词干化,标记,解析和语义推理的文本处理库
Doc Online pip install nltk
import nltk nltk.download() # 下载需要的库
Spacy
描述:一个工业级别的自然语言处理工具目前不支持中文
功能:分词,词性标注,句法分析,命名实体识别,词向量,词干化,词形还原
Official 1.pip install spacy 2.下载模型 en_core_web_sm 2.1 在线安装 python -m spacy download en_core_web_sm 2.2 离线安装
下载模型到本地,解压
python setup.py install 3.使用模型 spacy.load("en_core_web_sm")
PyLTP
描述:pyltp 是 LTP 的 Python 封装,提供了分词,词性标注,命名实体识别,依存句法分析,语义角色标注的功能。
功能:分词,词性标注,命名实体识别,依存句法分析,语义角色标注
LTP Official LTP Doc PyLTP Official PyLTP Doc DJH-pyltp(pyltp基本使用及关系三元组抽取的应用)
基于LTP的在线开放式关系三元组抽取平台
pip install pyltp # 使用需要下载模型到本地 <<<<<<< HEAD
ChineseWordSegmentation
描述:Chinese word segmentation algorithm without corpus
功能:中文分词
from wordseg import WordSegment doc = u'十四是十四四十是四十,十四不是四十,四十不是十四' ws = WordSegment(doc, max_word_len=2, min_aggregation=1, min_entropy=0.5) ws.segSentence(doc)
Jiagu
作者:yener
描述:Jiagu深度学习自然语言处理工具--Tensorflow==1.14.0 < 2.0
功能:知识图谱关系抽取 中文分词 词性标注 命名实体识别 情感分析 新词发现 关键词 文本摘要 文本聚类
pip install jiagu --- git clone https://github.com/ownthink/Jiagu cd Jiagu python setup.py install
xmnlp
描述:小明NLP, 轻量级中文自然语言处理工具
功能:中文分词, 词性标注, 拼写检查,文本转拼音,情感分析,文本摘要,偏旁部首
pip install xmnlp --- git clone https://github.com/SeanLee97/xmnlp.git cd /path/to/xmnlp pip install -r requirements.txt python setup.py install
mynlp
描述:一个高性能、模块化、可扩展的中文NLP工具包--Java
功能:中文分词 词性标注 命名实体识别 新词发现 文本分类 拼音简繁转换
lightNLP
描述:基于Pytorch和torchtext的自然语言处理深度学习框架
功能:命名实体识别、中文分词、词性标注、语义角色标注、情感分析、关系抽取、语言模型、文本相似度、文本蕴含、依存句法分析、词向量训练、聊天机器人、机器翻译、文本摘要等功能
PKUSeg-python
描述:北大开源的分词工具,pkuseg多领域中文分词工具
功能:多领域分词(目前支持了新闻领域,网络领域,医药领域,旅游领域,以及混合领域),词性标注
目前仅支持python3
pip install pkuseg -i https://pypi.tuna.tsinghua.edu.cn/simple