文档章节

NLP常用python模块工具

hc321
 hc321
发布于 08/11 00:12
字数 1106
阅读 12
收藏 0
前言:做NLP工程时少不了利用各种现成的工具包来对文字进行处理,学习工作这么久,接触使用了不少nlp工具包,NLP中大多是以Python语言为主,因此大部分工具是Python的,少部分的是Java的以及C++的,主要功能无非实现校正,分词,词性标注,句法分析,句法依存等主流功能,具体使用方法见各官网以及博客,简单列举如下:

博主用过的:

    NLTK:Python的,安装方便,处理英文功能强大,中文也可,处于领先地位,语料库丰富,下载方便,可以实现统计,分词,词性标注,句法分析(这块好像有点弱),做NLP不知道nltk?你是火星的nlp?
    jieba:python的,是最常用的中文分词工具,支持多精度分词,安装使用十分方便。
    ltp:哈工大的,业界很出名的一套处理中文系统,好像是python的,忘记了,反正python可以使用,不过安装可能报一个缺少微软的一个vc++东西错,忘记怎么解决的了,有机会再补充,可以实现分词,词性标注,命名实体识别,句法分析,依存关系等功能。
    stanford NLP:这个是java的,不过Python可以安装使用,稍微麻烦一点,需要安装jdk,下载一些jar文件在本地,然后Python调用给jdk解析,有很多博客讲解安装的,就不细说了,可以实现分词,标准,识别,句法分析树等,可以处理中文
    spaCy:这个功能比较强大,实现英语分词,词性还原,标注,识别,句法分析等,Python的,安装简单实用方便。
	hanlp:用过这个的分词,其他功能没用过
	bonsonlp:这个是一个专门做NLP的公司开发的收费平台,可以去官网体验一下,也有多个精度的分词,体验感觉还不错。

以上是nlp工具平台,下面是具有针对性的工具(都是python的):

	 word2vec:某大公司(我有些混淆了)开发的,利用已有语料库和深度学习进行训练,得到可以带有语意含义的词向量,效果不错,网络上有利用搜狗语料训练的博客,语料搜狗免费提供。得到词向量用处就大了,关键得训练的好。
     gloven:好像是另一大公司针对上面公司的word2vec开发的,效果也相差不大,可以自己训练,亦可以下载该公司提供训练好的词向量,好像叫gloven100d什么的。
     Gensim:是一个大型的python库,博主用它实现word2vec训练,其他功能没试过,好像功能挺强大的。
     fasttext:脱胎于word2vec的算法的一个文本快速分类包,速度快,使用简单。
     infersent:训练后,可以实现提取文本的关键词,但是博主多次怀疑是不是通过统计词频来识别的,哈哈。
     grammer check:这个是用来检测英语语法错误的,这么说,检测出来的一定是有错的,检测不出来的不一定没错,可以用来过滤一部分数据。

听过没用过的:

ICTCLAS:中科院的,也挺好
FudanNLP:复旦大学的
OpenNLP
庖丁解牛中文分词
盘古分词中文分词

下面几个博主也没用过,就放着了,大家可以自己去查查。

NaNLTK
Apache OpenNLP
Gate NLP library
language tool
Pattern
TextBlob
PyNLPI
Polyglot
MontyLingua
BLLIP Parser
Quepy
MBSP
SnowNLP
thulac
pynlpir

注:不管用什么工具进行分词,标注,识别,都会有误差,并且领域性越强,数据集越小,误差越明显,一方面可以多个工具结合使用,不同工具算法或语料不同,分词标注结果也不同,结合使用会有一定效果,再者自己添加自己领域内的词表补充完善,人工智能即先人工再智能。

© 著作权归作者所有

共有 人打赏支持
hc321
粉丝 1
博文 67
码字总数 32581
作品 0
海淀
程序员
私信 提问
6个最高效的语言处理Python库,你用过几个?

最近一段时间Python已经成为数据科学行业中大火的编程语言,今天技术学派收集了一些较为高效的语言处理Python库。下面分享给大家。 1.NLTK NLTK是构建Python程序以处理人类语言数据的领先平台...

Python燕大侠
06/05
0
0
教程 | 比Python快100倍,利用spaCy和Cython实现高速NLP项目

  选自Medium   作者:Thomas Wolf   机器之心编译   参与:乾树、刘晓坤      Cython 是一个工具包,可以使你在 Python 中编译 C 语言,这就是为什么 numpy 和 pandas 很快的原...

机器之心
07/15
0
0
比Python快100倍,利用Cython实现高速NLP项目

选自Medium,作者:Thomas Wolf,机器之心编译。 相关 Jupyter Notebook 地址:github.com/huggingface… 去年我们发布 Python 包 coreference resolution package 后,我们收到了来自社区的...

07/16
0
0
国外程序员整理的机器学习资源大全

 英文原文:awesome-machine-learning   本文汇编了一些机器学习领域的框架、库以及软件(按编程语言排序)。   C++   计算机视觉 CCV —基于C语言/提供缓存/核心的机器视觉库,新颖的...

chworld
2015/08/07
0
0
入门 | 6大最流行、最有用的自然语言处理库对比

  选自KDnuggets   作者:ActiveWizards   机器之心编译   参与:路、王淑婷      本文概述和比较了最流行、最有用的自然语言处理库,包含 NLTK、spaCy、scikit-learn、gensim、...

机器之心
08/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

babel6升级到7,jest-babel报错:Requires Babel "^7.0.0-0", but was loaded with "6.26.3".

自从将前端环境更新到babel7,jest-babel之前是基于babel6的,执行时候就会报:Requires Babel "^7.0.0-0", but was loaded with "6.26.3". 很烦,因为连续帮好几台电脑修复这个问题,所以记...

曾建凯
57分钟前
1
0
探索802.11ax

802.11ax承诺在真实条件下改善峰值性能和最差情况。 如何改善今天的Wi-Fi? 在决定如何改进当前版本以外的Wi-Fi时,802.11ac,IEEE和Wi-Fi联盟调查了Wi-Fi部署和行为,以确定更广泛使用的障碍...

linuxprobe16
今天
2
0
使用linux将64G的SDCARD格式化为FAT32

一、命令如下: sudo fdisk -lsudo mkfs.vfat /dev/sda -Isudo fdisk /dev/sda Welcome to fdisk (util-linux 2.29.2). Changes will remain in memory only, until you decide to wri......

mbzhong
今天
4
0
深入理解Plasma(四):Plasma Cash

这一系列文章将围绕以太坊的二层扩容框架,介绍其基本运行原理,具体操作细节,安全性讨论以及未来研究方向等。本篇文章主要介绍在 Plasma 框架下的项目 Plasma Cash。 深入理解Plasma(1):...

HiBlock
昨天
1
0
命令参数的三大风格:Posix、BSD、GNU

今天读到命令行中参数的风格有三大类,即Unix/Posix、BSD、GNU。分别有以下特征: Unix/Posix风格,即命令后的参数,可以分组,便必须以连字符开头,如ps -aux。 BSD风格,即命令后的参数,可...

大别阿郎
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部