`
com1com4
  • 浏览: 161591 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

分词算法分类

阅读更多

现有的分词算法可分为三大类:基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法。

 

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

  这种方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个“充分大的”机器词典中的词 条进行配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。按照扫描方向的不同,串匹配分词方法可以分为正向匹配和逆向匹配;按照不同长度优先匹 配的情况,可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。常用的 几种机械分词方法如下:

  1)正向最大匹配法(由左到右的方向);

  2)逆向最大匹配法(由右到左的方向);

  3)最少切分(使每一句中切出的词数最小);

  4)双向最大匹配法(进行由左到右、由右到左两次扫描)

  还可以将上述各种方法相互组合,例如,可以将正向最大匹配方法和逆向最大匹配方法结合起来构成 双向匹配法。由于汉语单字成词的特点,正向最小匹配和逆向最小匹配一般很少使用。一般说来,逆向匹配的切分精度略高于正向匹配,遇到的歧义现象也较少。统 计结果表明,单纯使用正向最大匹配的错误率为1/169,单纯使用逆向最大匹配的错误率为1/245。但这种精度还远远不能满足实际的需要。实际使用的分 词系统,都是把机械分词作为一种初分手段,还需通过利用各种其它的语言信息来进一步提高切分的准确率。

  一种方法是改进扫描方式,称为特征扫描或标志切分,优先在待分析字符串中识别和切分出一些带有 明显特征的词,以这些词作为断点,可将原字符串分为较小的串再来进机械分词,从而减少匹配的错误率。另一种方法是将分词和词类标注结合起来,利用丰富的词 类信息对分词决策提供帮助,并且在标注过程中又反过来对分词结果进行检验、调整,从而极大地提高切分的准确率。

  对于机械分词方法,可以建立一个一般的模型,在这方面有专业的学术论文,这里不做详细论述。

 

2、基于理解的分词方法

  这种分词方法是通过让计算机模拟人对句子的理解,达到识别词的效果。其基本思想就 是在分词的同时进行句法、语义分析,利用句法信息和语义信息来处理歧义现象。它通常包括三个部分:分词子系统、句法语义子系统、总控部分。在总控部分的协 调下,分词子系统可以获得有关词、句子等的句法和语义信息来对分词歧义进行判断,即它模拟了人对句子的理解过程。这种分词方法需要使用大量的语言知识和信 息。由于汉语语言知识的笼统、复杂性,难以将各种语言信息组织成机器可直接读取的形式,因此目前基于理解的分词系统还处在试验阶段。

 

3、基于统计的分词方法

  从形式上看,词是稳定的字的组合,因此在上下文中,相邻的字同时出现的次数越多,就 越有可能构成一个词。因此字与字相邻共现的频率或概率能够较好的反映成词的可信度。可以对语料中相邻共现的各个字的组合的频度进行统计,计算它们的互现信 息。定义两个字的互现信息,计算两个汉字X、Y的相邻共现概率。互现信息体现了汉字之间结合关系的紧密程度。当紧密程度高于某一个阈值时,便可认为此字组 可能构成了一个词。这种方法只需对语料中的字组频度进行统计,不需要切分词典,因而又叫做无词典分词法或统计取词方法。但这种方法也有一定的局限性,会经 常抽出一些共现频度高、但并不是词的常用字组,例如“这一”、“之一”、“有的”、“我的”、“许多的”等,并且对常用词的识别精度差,时空开销大。实际 应用的统计分词系统都要使用一部基本的分词词典(常用词词典)进行串匹配分词,同时使用统计方法识别一些新的词,即将串频统计和串匹配结合起来,既发挥匹 配分词切分速度快、效率高的特点,又利用了无词典分词结合上下文识别生词、自动消除歧义的优点。

 

 

  到底哪种分词算法的准确度更高,目前并无定论。对于任何一个成熟的分词系统来说,不可能单独依 靠某一种算法来实现,都需要综合不同的算法。

 

分享到:
评论

相关推荐

    c++的分词算法简单实用(详情看帮助文件CDevideSentence)

    这样的分词算法实例适用于各种NLP任务,如信息检索、机器翻译、情感分析、文本分类等。此外,它还可以作为教学材料,帮助初学者了解分词的基本概念和实现方式。 **7. 扩展与优化** 为了提高算法的性能和准确性,...

    C#文章分类程序(基于shootseg中文分词算法、词频分类)

    “分词算法ShootSeg”和“分类算法Match”两个文件夹可能分别包含了这两个核心算法的实现代码和相关文档,用户可以深入研究其工作原理。 总的来说,这个压缩包提供的是一套完整的C#文章分类解决方案,包括分词和...

    关于中文信息分类的分词算法(实现信息过滤中的分词分词)

    中文信息分类中的分词算法是自然语言处理领域的重要组成部分,主要应用于信息过滤、文本分类、情感分析等场景。本文将详细探讨分词算法及其在信息过滤分类中的应用。 首先,我们要理解什么是分词。分词,即词语切分...

    汉语文本自动分词算法

    ### 汉语文本自动分词算法的关键知识点 #### 一、引言 中文自动分词作为中文信息处理的基础技术之一,在多个领域如汉语语言理解、机器翻译、语音合成、自动分类、自动摘要、数据挖掘以及搜索引擎等方面发挥着至关...

    文本分类--分词算法

    在这个场景下,我们关注的是“分词算法”,这是文本处理的基石,尤其是在中文文本处理中。分词是将连续的文本序列切分成有意义的词汇单元,如单词或短语,这对于后续的文本分析至关重要。 在Java编程环境中实现的这...

    中文分词技术综述,近年来的分词算法

    中文分词技术综述,近年来的分词算法 中文分词技术是自然语言处理(NLP)中的一个重要任务,旨在将连续的中文文本切分成独立的词汇单元,以便于后续的语言处理任务。近年来,中文分词技术得到了长足的发展,涌现出...

    朴素贝叶斯实现分词算法

    总之,朴素贝叶斯实现分词算法涉及了自然语言处理、概率统计和机器学习等多个领域,通过有效的数据预处理、模型训练和预测,可以实现对网络帖子的有效分类。同时,实际应用中需注意模型的局限性,并探索优化策略以...

    基于K最短路径的中文分词算法

    例如,搜索引擎、自动翻译、语音识别、信息检索、自动分类、自动摘要、文本自动校对及数据挖掘等技术的发展都离不开高效的中文分词算法。中文分词不仅涉及到语言学的基础理论,还涉及到计算机科学中的算法设计与优化...

    不依赖第三方的java分词算法

    Java 分词算法是自然语言处理中的重要组成部分,主要用于将连续的文本序列分割成具有语义意义的单元,如单词或短语。在这个标题为“不依赖第三方的java分词算法”的项目中,开发者提供了一个独立的Java实现,旨在...

    双向匹配分词算法 Java

    6. **应用场景**:双向匹配分词算法广泛应用于搜索引擎、文本分类、情感分析、机器翻译等领域。例如,在搜索引擎中,准确的分词能够提高关键词匹配度,提升搜索结果的相关性;在文本分类中,分词结果直接影响特征...

    中文分词算法的研究与实现.pptx

    中文分词算法的研究与实现 中文分词算法是自然语言处理领域中的基础性问题之一,对于中文文本的处理具有重要意义。该算法的目的是将一个中文文本分割成一个个独立的词,为后续的自然语言处理任务提供基础数据。中文...

    中文分词算法介绍、分类详解

    本文将详细探讨几种常见的中文分词算法,包括最大匹配法及其变体。 最大匹配法(FMM法)是一种广泛应用的分词策略,其基本思想是从文本中选取一个最大长度的候选词,然后与词典进行匹配。如果匹配失败,则逐渐减少...

    正向最大匹配分词算法及KNN文本分类算法python实现.zip

    压缩包中的代码文件很可能是用Python编写的,实现了正向最大匹配分词算法和KNN文本分类算法的具体逻辑,同时也可能包含数据预处理、特征提取、模型训练和评估等相关功能。 在进行分词时,通常需要去除停用词,如...

    学术论文————一种改进的汉语分词算法

    ### 一种改进的汉语分词算法 #### 引言 随着信息技术的快速发展,人们面临着海量文本数据的处理挑战。为了高效地从这些文本中提取有用信息,自然语言处理技术变得至关重要。其中,汉语分词作为中文信息处理的基础...

    正向最大匹配分词算法及KNN文本分类算法python实现_knn中文文本分类算法python,文本自动分词1.给定一个分词词典;2.实现正向最大匹配算法对文本进

    这份代码是我们专业的一个实验,内容包含了文本分词和文本分类。分别使用了正向最大匹配算法和KNN算法。分词速度平均153295词/秒,189100字符/秒。文本分类使用tf-idf计算单词权重进行特征选择,我测试时选择前100个...

    tf-idf分词算法

    在C++中实现TF-IDF算法,首先需要进行预处理步骤,包括分词(Tokenization)、去除停用词(Stop Word Removal)、词干提取(Stemming)等。分词是将文本分割成单独的单词或术语,对于中文来说,可能需要用到诸如...

    C++编写中文分词最大匹配的分词源码

    5. **实践应用**:最大匹配分词算法广泛应用于搜索引擎、聊天机器人、文本分类、情感分析等多个领域。 通过对C++实现的中文最大匹配分词源码的学习,你可以了解分词的基本步骤、数据结构选择以及优化策略,这对于...

Global site tag (gtag.js) - Google Analytics