自然语言处理基本概念及基础工具

基本概念

1.分词

中文分词(Chinese Word Segmentation) 指的是将一个汉字序列切分成 一个一个单独的词。分词就是将连续的字序列按照一定的规范重新组合成词序列的过程。

2.词性标注

词性标注(Part-of-Speech tagging 戒POS tagging),又称词类标注或者简称标注,是指为分词结果中的每个单词标注一个正确的词性的程 序,也即确定每个词是名词、动词、形容词戒其他词性的过程。在汉语 中,词性标注比较简单,因为汉语词汇词性多变的情况比较少见,大多词语只有一个词性,戒者出现频次最高的词性远远高于第二位的词性。

3.命名实体识别

命名实体识别(Named Entity Recognition,简称NER),又称作“专名识别”,是指识别文本中具有特定意义的实体,主要包括人名、地名、 机构名、专有名词等。一般来说,命名实体识别的任务就是识别出待处理文本中三大类(实体类、时间类和数字类)、七小类(人名、机构名、 地名、时间、日期、货币和百分比)命名实体。在不同的顷目中,命名实体类别具有不同的定义

基础工具

1.NumPy

NumPy是Python的一个开源数值计算包。 主要包括:1、一个强大的N维数组对象Array;2、比较成熟的(广播)函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、 傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便

2.NLTK

NLTK全称Natural Language Toolkit,即自然语言处理工具包,在NLP领域中最常使用的一个Python库

3.Gensim

Gensim是一个占内存低,接口简单,免费的Python库,它可以用 来从文档中自动提取语义主题。它包含了很多非监督学习算法如: TF/IDF,潜在语义分析(Latent Semantic Analysis,LSA)、隐含狄利克雷分配(Latent Dirichlet Allocation,LDA),层次狄利克雷过程 ( Hierarchical Dirichlet Processes ,HDP )等。

4.Tensorflow

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统。 TensorFlow可被用于语音识别戒图像识别等多顷机器学习和深度学习领域。 TensorFlow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。 TensorFlow最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用 性使其也可广泛用于其他计算领域。

4.jieba

jieba即中文“结巴”的拼音,是广泛使用的中文分词工具,具有以下特点:

  1. 有三种分词模式可供选择:精确模式,全模式和搜索引擎模式
  2. 词性标注和返回词语在原文的起止位置( Tokenize)
  3. 可加入自定义字典
  4. 代码对 Python 2/3 均兼容
  5. 支持多种语言,支持简体繁体

5.Stanford NLP

Stanford NLP提供了一系列自然语言分析工具。它能够给出基本的词形,词性,不管是公司名还是人名等,格式化的日期,时间,量词, 并且能够标记句子的结构,语法形式和字词依赖,指明那些名字指向同样的实体,指明情绪,提取发言中的开放关系等。

6.Hanlp

HanLP是由一系列模型与算法组成的Java工具包,目标是普及自然 语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。主要用于中文分词,词性标注,命名实体识别,依存句法分析,关键词提取,新词发现,短语提取,自动摘要,文本分类

你可能感兴趣的:(NLP自然语言处理)