窝牛号

人工智能NLP自然语言处理的分词任务:什么是NLP分词任务

分词是自然语言理解 – NLP 的重要步骤,分词是自然语言理解 – NLP 的基础任务,将句子,段落分解为字词单位,方便后续的处理与分析,之所以要处理分词任务主要是这样可以把复杂的问题转化为数学问题

机器学习之所以可以解决很多复杂的问题,是因为机器学习把这些复杂的问题都转化为了数学问题,然后进行数学方面的理解与分析

而 NLP 自然语言处理也是相同的思路,文本都是一些非结构化的数据,我们需要先将这些数据转化为结构化的数据,结构化的数据就可以转化为数学问题了,而分词就是转化的第一步。

而且词是一个比较合适的粒度,可以表达完整含义的最小单位。

然而一个字的粒度太小,无法表达完整含义,比如&34;可以是&34;,也可以是&34;。

而句子的粒度太大,承载的信息量多,很难复用。进行整个句子的分词任务就成为了当务之急

中文为使用人数最多的语言,主要得益于中国13亿人的人口总数,然而英语是全球使用最广泛的语言,分词任务自然而然的形成了对这2种语言的分词

中英文分词的3个典型区别

区别1:分词方式不同,中文更难

英文有天然的空格作为分隔符,但是中文没有。所以如何切分是一个难点,再加上中文里一词多意的情况非常多,导致很容易出现歧义。

区别2:英文单词有多种形态

英文单词存在丰富的变形变换。为了应对这些复杂的变换,英文NLP相比中文存在一些独特的处理步骤,我们称为词形还原(Lemmatization)和词干提取(Stemming)。中文则不需要

词性还原:does,done,doing,did 需要通过词性还原恢复成 do。

词干提取:had,wanna,teeth 这些词,需要转换为 have,want to,tooth"这些基本形态

区别3:中文分词需要考虑粒度问题

例如 青岛启示科技大学就有很多种分法:

· 青岛启示科技大学

· 青岛 启示科技 大学

· 青岛 启示 科技 大学

粒度越大,表达的意思就越准确,但是也会导致召回比较少。所以中文需要不同的场景和要求选择不同的粒度。这个在英文中是没有的。

中文分词的3大难点

难点 1:没有统一的标准

目前中文分词没有统一的标准,也没有公认的规范。不同的公司和组织各有各的方法和规则。

难点 2:歧义词如何切分

例如「天留我不留」就有2种分词方式表达了2种不同的含义:

· 天留 我不留

· 天留我不 留

难点 3:新词的识别

互联网时代,特别是网红的时代,如何快速的识别出一些流行在互联网上的热门词语。比「奥利给,么么哒」,就需要快速识别。

3种典型的分词方法

分词的方法大致分为 3 类:

1. 基于词典匹配

2. 基于统计

3. 基于深度学习

给予词典匹配的分词方式

优点:速度快、成本低

缺点:适应性不强,不同领域效果差异大

基本思想是基于词典匹配,将待分词的中文文本根据一定规则切分和调整,然后跟词典中的词语进行匹配,匹配成功则按照词典的词分词,匹配失败通过调整或者重新选择,如此反复循环即可。代表方法有基于正向最大匹配和基于逆向最大匹配及双向匹配法。

基于统计的分词方法

优点:适应性较强

缺点:成本较高,速度较慢

这类目前常用的算法是HMM、CRF、SVM、深度学习等算法,比如stanford、Hanlp分词工具是基于CRF算法。以CRF为例,基本思路是对汉字进行标注训练,不仅考虑了词语出现的频率,还考虑上下文,具备较好的学习能力,因此其对歧义词和未登录词的识别都具有良好的效果。

基于深度学习

优点:准确率高、适应性强

缺点:成本高,速度慢

有研究人员尝试使用双向+CRF实现分词器,其本质上是序列标注,所以有通用性,命名实体识别等都可以使用该模型,号称其分词器字符准确率可高达97.5%。

常见的分词器都是使用机器学习算法和词典相结合,一方面能够提高分词准确率,另一方面能够改善领域适应性。

中文分词工具

1. Hanlp

2. Stanford 分词

3. ansj 分词器

4. 哈工大 LTP

5. KCWS分词器

6. jieba

7. IK

8. 清华大学THULAC

9. ICTCLAS

英文分词工具

1. Keras

2. Spacy

3. Gensim

4. NLTK

有了以上的基础知识,我们下期分享如何使用hanlp与jieba进行分词

本站所发布的文字与图片素材为非商业目的改编或整理,版权归原作者所有,如侵权或涉及违法,请联系我们删除

窝牛号 wwww.93ysy.com   沪ICP备2021036305号-1