NLP --- 分词详解(分词的历史)

版权声明:转载请注明出处: https://blog.csdn.net/weixin_42398658/article/details/85233753

前面的内容我们以算法为主,主要讲解了HMM和CRF算法,为了解决HMM的问题,使用了EM算法,但是整个HMM算法是产生式模型的,计算量大和复杂,因此为了解决这个问题,我们引入了CRF算法,该算法是借鉴了最大熵模型的算法,然后在HMM的基础上加入了概率图模型和团的概念,使的最后模型称为判别式模型了,因此各方面的问题都得到而来解决,所以CRF得到了大量的应用,前面的就是总结了四个算法,下面我么就开始真正的自然语言处理的内容即分词问题

分词

现有的分词算法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。

基于字符串匹配的分词方法

基于字符串匹配的分词方法又被称为机械式分词方法或基于字典的分词方法,它是按照一定策略将待分析的汉字串与一个“充分大的
”机器词典中的词条进行匹配,若在词典中找到某个字符串,则匹配成功。根据扫描方向的不同,这种分词方法分为正向匹配、逆向匹配和双向匹配,常见的匹配原则有逐词匹配、最大匹配、最小匹配和最佳匹配。

(1)逐词匹配法
逐词遍历法将词典中的所有词按由长到短的顺序在文章中逐字搜索,直至文章结束。也就是说,不管文章有多短,词典有多大,都要将词典遍历一遍。这种方法效率比较低,大一点的系统一般都不使用。
(2)正向最大匹配法
最大正向匹配法(Maximum MatchingMethod)通常简称为 MM 法。其基本思想为:假定分词词典中的最长词有 i 个汉字字符,则用被处理文档的当前字串中的前 i 个字作为匹配字段,查找字典。若字典中存在这样的一个 i 字词,则匹配成功,匹配字段
被作为一个词切分出来。如果词典中找不到这样的一个 i 字词,则匹配失败,将匹配字段中的最后一个字去掉,对剩下的字串重新进行匹配处理……如此进行下去,直到匹配成功,即切分出一个词或剩余字串的长度为零为止。这样就完成了一轮匹配,然后取下一个 i 字字串进行匹配处理,直到文档被扫描完为止。
(3)逆向最大匹配法
逆向最大匹配法(Reverse Maximum Matching Method)通常简称为 RMM法。RMM法的基本原理与 M
M法相同,不同的是分词切分的方向与 MM法相反,而且使用的分词辞典也不同。逆向最大匹配法从被处理文档的末端开始匹配
扫描,每次取最末端的 2i 个字符(i 字字串)作为匹配字段,若匹配失败,则去掉匹配字段最前面的一个字,继续匹配。相应地,它使用的分词词典是逆序词典,其中的每个词条都将按逆序方式存放。在实际处理时,先将文档进行倒排处理,生成逆序文档。然后,根据逆序词典,对逆序文档用正向最大匹配法处理即可。由于汉语中偏正结构较多,若从后向前匹配,
可以适当提高精确度。所以,逆向最大匹配法比正向最大匹配法的误差要小。

(4)双向匹配法
双向匹配法将正向最大匹配法与逆向最大匹配法组合。先根据标点对文档进行粗切分,把文档分解成若干个句子,然后再这些句子用正向最大匹配法和逆向最大匹配法进行扫描切分。如果两种分词方法得到的匹配结果相同,则认为分词正确,否则,按最小集处理。总体来说基于字符串匹配的分词方法的优点是算法简单、易于实现,缺点是匹配速度慢、存在歧义切分问题、缺乏自学习的智能型

基于统计的分词方法

基于统计的分词方法的做法是基于人们对中文词语的直接感觉。在中文文章的上下文中,相邻的字搭配出现的频率越多就越有可能形成一个固定的词。实际的系统中通过对精心准备的中文语料中相邻共现的各个字的组合的频度进行统计计算不同字词的共现信息。根据两个字的统计信息计算两个汉字的相邻共现概率,体现中文环境下汉字之间结合紧密程度。当紧密程度高于某一个阈值时便可认为此字组可能构成一个词。基于词频统计的分词方法只需要对语料中的字组频度进行统计不需要切分词典因而又叫做无词典分词法或统计分词方法。基于统计的分词方法所应用的主要的统计模型有:N元文法模型、HMM模型和最大熵模型等。在实际应用中,一般是将其与基于字符串匹配的分词方法结合起来,既发挥匹配分词切分速度快、效率高的特点,又利用了统计分词结合上下文识别生词、自动消除歧义的优点。

这里的HMM方法和最大熵模型的方法我们在前面的例子中都讲过了,这里就不详细的讲了,但是统计方面方法,这也是我们下一节详细要讲的内容即N最短路径法、基于词的n元语法模型的分词方法、由字够词的汉语分词方法、基于词感知机算法的汉语分词方法、基于字的生成模型和区分式模型相结合的汉语分词方法。

基于理解的分词方法

基于理解的分词方法又被称为基于人工智能的分词方法,其基本思想是模拟人脑对语言和句子的理解,达到识别词汇单元的效果。其基本模式是基于句法、语法分析,并结合语义分析,通过对上下文内容所提供信息的分析对词进行定界,它通常包括三
个部分:分词子系统、句法语义子系统和调度系统。在调度系统的协调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断。这类方法试图让机器具有人类的理解能力,需要使用大量的语言知识和信息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式。主要有两种分词法:
(1)专家系统分词法
从专家系统角度把常识性分词知识与消除歧义切分的启发性知识从实现分词过程的推理机中独立出来,使知识库的维护与推理机的实现互不干扰,从而使知识库易于维护和管理,同时,它还具有发现交集歧义字段和多义组合歧义字段的能力,并具有和一定的自学习功能。

(2)神经网络分词法
神经网络分词法是通过模拟人脑并行,分布处理和建立数值计算模型来进行工作的。它将分词知识所分散隐式的方法存入神经网络内部,通过自学习和训练修改内部的权值,以达到正确的分词结果,最后给出神经网络自动分词结果。

中文分词算法的难点及评价标准

中文分词算法的难点主要是未登录词的识别问题和歧义问题。未登录词主要包括中外人名、中国地名、机构组织名、事件名、货币名、缩略语、派生词、各种专业术语,以及在不断发展和约定俗成的一些新词语。这是一个种类繁多、形态各异、规模宏大的领域,在这一领域进行词语自动辨识是件很困难的事。而对汉语句子进行歧义切分字段处理是指以连续字串的形式书写的由于可能存在的歧义。一个句子经常对应几个合法词序列,因此,汉语分词的一个重要问匙就是在所有这些可能的序列中选出一个正确的结果。歧义切分是自动分词中不可避免的现象,是一个比较棘手的问题。对歧义切分字段的处理能力严重影响到汉语自动分词系统的精度。在实际的中文分词系统的开发过程中,除了要注意未登录词的识别和歧义问题,还需要像大型传统软件的开发过程
一样在各个阶段不断地进行评价。自动分词系统主要评价标准包括:分词的正确率、切分速度、功能完备性、易扩充性、可维护性和可移植性。
本节很简单,就是简单的回顾了一下分词的历程,下一节我们讲比较好的分词五种分词方法即N最短路径法、基于词的n元语法模型的分词方法、由字够词的汉语分词方法、基于词感知机算法的汉语分词方法、基于字的生成模型和区分式模型相结合的汉语分词方法。

猜你喜欢

转载自blog.csdn.net/weixin_42398658/article/details/85233753
今日推荐