`
单眼皮大娘
  • 浏览: 113018 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

mmseg4j的字典数据结构(版本1.8.5)

阅读更多
    最近在做分词,在网上发现了MMSEG,论文简单入理。在code.google.com上搜到了java的实现版本,非常感谢chenlb开源自己的代码。
    在学习mmseg4j对字典的结构比较困惑,做了些调研,写下自己的感受。

    mmseg4j采用 key-tree的形式存储字典数据结构,这有点类似中科院的ictclas4j的字典结构,ictclas4j的字典结构含有6768个字块(好像是这么多,可能有误),每一个子块是由含有以该字开头的词组成。结构图如下所示:


    mmseg4j原始字典有两个,一个是chars.dct,另一个是words.dct。mmseg4j先加载chars.dct,这个比较简单,直接就是字 和 在语料库中的频率。频率是在CharNode这个类中。在加载words.dct的时候,实际上是对第一步加载chars.dct的填充,填充 CharNode 的 KeyTree字段。
    KeyTree类中含有一个 TreeNode 字段,该字段也是一个类,其总定义了
                     char key;
		Map<Character, TreeNode> subNodes;
		boolean alsoLeaf;

该定义是一个递归的数据结构结构。

程序首先是通过下面的语句
CharNode cn = dic.get(line.charAt(0));

找到dic 中的 CharNode,dic即为加载chars.dct后的dct。 其后开始逐渐的对CharNode填充,最后填充成这样的一种形式:所有同一个字开始的词语被放入到同一个CharNode中,而该规则是递归的,所有第二个词一样的也被列在同一个hashmap中,之后是第三个...依次类推下去。

这样构成了一个Character-CharNode的树状词典结构,在进行最大模式匹配时提升很大的效率。

以上的叙述有些粗浅。
  • 大小: 31.7 KB
分享到:
评论

相关推荐

    mmseg4j-all-1.8.5

    mmseg4j-all-1.8.5中文分词器

    mmseg4j\mmseg4j-1.8.5.zip

    如果需要预装词典,可以选择`mmseg4j-all-1.8.5-with-dic.jar`,它包含了完整的词典数据,能够更好地支持分词任务。`build.xml`是Ant构建工具的配置文件,用于编译、打包和测试项目。`dist`目录通常存放的是打包后的...

    mmseg4j-1.8.5.chm帮助文档API

    mmseg4j-1.8.5中文分词器API

    mmseg4j-1.8.5

    在**mmseg4j-1.8.5** 版本中,开发者可以期待以下特性: 1. **高性能**:经过优化的分词引擎,能快速处理大量文本数据,适合大规模文档索引和搜索。 2. **高准确率**:通过结合多种分词策略,如最长匹配、前后文...

    mmseg4j-solr全版本及配置

    《mmseg4j-solr全版本与配置详解》 在大数据时代,搜索引擎技术成为信息检索的关键工具。其中,Solr作为一款强大的开源全文搜索引擎,广泛应用于各类信息系统的搜索功能。而mmseg4j则是Solr中常用的中文分词组件,...

    mmseg4j-all-1.8.5.jar

    mmseg4j-all-1.8.5.jar

    mmseg4j-solr-2.4.0.jar

    而mmseg4j-solr-2.4.0.jar是mmseg4j分词库的Solr插件版本,专为Solr设计,使得开发者可以方便地将mmseg4j的分词功能集成到Solr中,以提升搜索性能和精确度。 在Solr 6.3版本下,要使用mmseg4j-solr-2.4.0.jar,首先...

    mmseg4j-1.8.5.zip

    本文将深入探讨mmseg4j-1.8.5版本的特性、功能以及在Lucene中的应用。 mmseg4j是由陈学燕开发的开源项目,其全称为“Maxent Segmentation for Java”,基于最大熵模型进行中文分词。最大熵模型是一种统计学习方法,...

    mmseg4j-solr-2.1.0-with-mmseg4j-core.zip

    前者是mmseg4j分词器的核心库,包含了所有必要的分词算法和数据结构。后者则是mmseg4j为Solr定制的插件,它使得Solr能够无缝集成mmseg4j的分词功能,为Solr的索引和查询提供强大的中文处理能力。 为了在Solr4.8中...

    mmseg4j-solr-2.2.0.jar mmseg4j-analysis-1.9.1.jar mmseg4j-solr-2.2.0.jar

    本人用的solr是4.10的,经过本人亲测可用,放心下载,包含以下3个jar包: mmseg4j-analysis-1.9.1.jar, mmseg4j-core-1.9.1.jar, mmseg4j-solr-2.2.0.jar

    mmseg4j-solr-mmseg4j-solr-2.2.0.zip

    《mmseg4j-solr在搜索引擎优化中的应用与实现》 ...对于需要处理大量中文数据的系统,mmseg4j-solr是一个值得信赖的选择。开发者可以通过深入研究和实践,充分发挥其潜力,以满足不断增长的中文搜索需求。

    mmseg4j.jar

    - **日志分析**:对于服务器日志分析,mmseg4j可以快速处理大量文本数据,帮助找出其中的模式和异常。 总的来说,mmseg4j作为一款强大的中文分词工具,无论是在传统的信息检索还是现代的大数据分析中,都有着广泛的...

    mmseg4j-all-1.8.5-with-dic

    lucene中文分词工具包,自己用ant编译成功的。可以进行定制的分词器,同义词开发。作为工具包使用。官网没有提供,组要自己编译,方便用传上来

    solr6配置mmseg4j

    1. **下载和准备mmseg4j的依赖**:这通常包括mmseg4j的jar包,以及对应的字典文件(dic文件)。这些文件可以从mmseg4j的官方网站或者通过GitHub等渠道获取。字典文件是mmseg4j进行分词的基础,包含了常见的词汇和...

    mmseg4j 2.3 jar包

    - `mmseg4j-core-1.10.0.jar`:mmseg4j的核心库,包含了分词算法和基本数据结构。 - `mmseg4j-solr-2.3.0.jar`:针对Solr的扩展库,方便在Solr中使用mmseg4j。 - `README.md`:通常包含项目的基本介绍、使用说明和...

    兼容solr4.10.3的mmseg4j-1.9.1分词器

    1. `mmseg4j-core-1.9.1.jar`:这是mmseg4j的核心库文件,包含了mmseg4j的主要分词算法和数据结构。该版本号1.9.1与标题中的版本相匹配,用于实现基本的中文分词功能。 2. `mmseg4j-analysis-1.9.2-SNAPSHOT.jar`:...

    mmseg4j最新jar完美整合solr-5.3.0

    在上述配置中,`&lt;updateRequestProcessorChain&gt;`定义了一个名为“mmseg4j-analysis”的处理链,其中`Mmseg4jTokenizerFactory`是mmseg4j的分词处理器,需要指定字典路径(`dictPath`)以供分词器使用。 完成配置后...

    mmseg4j-1.9.1

    本文将深入探讨mmseg4j-1.9.1版本的特点、功能以及如何在实际项目中应用。 首先,我们来了解mmseg4j的核心原理。mmseg4j基于“最大匹配”算法,即MaxMatch(MM)算法,同时结合了动态规划思想,旨在提高分词的准确...

    mmseg4j-1.9.1 分词器 包含修复bug的mmseg4j-analysis-1.9.1.jar

    1. **高效性**:mmseg4j设计时考虑了性能,采用优化的数据结构和算法,使得分词速度较快,适合大规模文本处理。 2. **灵活性**:支持自定义词典,用户可以根据需求添加或修改词汇,以适应不同的领域和应用场景。 3. ...

    mmseg4j-all-with-dic-1.8.6-sources.jar和mmseg4j-all-with-dic-1.8.6.jar

    本文将围绕"mmseg4j-all-with-dic-1.8.6-sources.jar"和"mmseg4j-all-with-dic-1.8.6.jar"这两个核心文件,详细解析mmseg4j的使用方法及其在Lucene中的应用。 首先,我们来看"mmseg4j-all-with-dic-1.8.6.jar"。这...

Global site tag (gtag.js) - Google Analytics