imdict-chinese-analyzer
http://code.google.com/p/imdict-chinese-analyzer/
SmartChineseAnalyzer 是一个智能中文分词模块, 与 ChineseAnalyzer (切分每个汉字)和 CJKAnalyzer (组合每两个汉字)不同, 它能够利用概率对汉语句子进行最优切分, 并内嵌英文tokenizer,能有效处理中英文混合的文本内容。目前SmartChineseAnalyzer的
词典库只支持简体中文。
它的原理基于自然语言处理领域的隐马尔科夫模型(HMM), 利用大量语料库的训练来统计汉语词汇的词频和跳转概率,从而根据这些统计结果对整个汉语句子计算最似然(likelihood)的切分。
三种分词模块的分词结果比较, 由此可以看出智能分词更符合句子的原本语义, 从而提高搜索的准确率。
语句: 我是中国人
1. SmartChineseAnalyzer: 我-是-中国-人
2. ChineseAnalyzer: 我-是-中-国-人
3. CJKAnalyzer: 我是-是中-中国-国人
分词词典的设置
因为智能分词需要词典来保存词汇的统计值,默认情况下,SmartChineseAnalyzer使用内置的词典库,当需要指定的词典库时,需要指定词典位置,如何指定词典位置请参考 org.apache.lucene.analysis.cn.smart.AnalyzerProfile
词库的下载地址为:http://code.google.com/p/imdict-chinese-analyzer/downloads/list 下载文件analysis-data.zip保存到本地,解压即可使用。
最简单的指定词典库的办法就是运行时加上参数-Danalysis.data.dir
如: java -Danalysis.data.dir=/path/to/analysis-data com.example.YourApplication
版本要求
SmartChineseAnalyzer的JVM要求java 1.4及以上版本;Lucene 要求2.4.0及以上版本,Lucene 2.3.X版应该也可以使用,但未经测试,有需要的用户可自行测试。
源文件和文本编码
除特定的二进制码文件外,SmartChineseAnalyzer的所有文本和Java源码都采用UTF-8编码,因此在读取文本和编译Java源码是请注意采用正确的方式,以避免产生乱码错误。
SmartChineseAnalyzer的授权
SmartChineseAnalyzer的算法和语料库词典来自于ictclas1.0项目(http://www.ictclas.org),其中词典已经著作权人www.ictclas.org允许,以apache license v2(APLv2)协议发布。在遵循APLv2的条件下,欢迎用户使用。在此感谢www.ictclas.org以及ictclas分词软件的工作人员的辛勤工作和无私奉献!
分享到:
相关推荐
在本篇文章中,我们将围绕“baidu.rar_baidu_dictionary_中文分词_中文分词_词典_分词词典”这一主题,深入探讨百度曾经使用的中文分词词典及其在实际应用中的价值。 首先,让我们了解中文分词词典的重要性。词典是...
中文分词是自然语言处理中的一个基础任务,它是指将连续的汉字序列切分成具有语义意义的词汇序列的过程。与英文等其他语言相比,中文没有明显的单词界限,因此中文分词是进行后续自然语言处理任务(如文本分类、情感...
标题中的"C# 中文分词 LUCENE IKAnalyzer"是指使用C#语言实现的一个中文分词工具,它基于开源全文检索引擎Lucene,并且采用了IKAnalyzer(智能汉字分词系统)的Java版本进行移植。Lucene是一个强大的、高性能的信息...
中文分词是将连续的汉字序列切分成具有语义的词语的过程,是自然语言处理(NLP)中的基础步骤。在Lucene.NET中,为了支持中文分词,通常需要结合第三方分词器,如IK Analyzer、HanLP、jieba.NET等。这些分词器具备...
"百度中文分词词库"是一个专门用于分词的资源,它包含了大量的词汇及其组合方式,为精确地将连续的汉字序列分割成具有语义意义的词语提供了基础。 首先,我们要理解什么是中文分词。由于中文句子没有明显的空格来...
中文分词是自然语言处理(NLP)领域中的基础任务,它是将连续的汉字序列切分成具有语义意义的词语序列。在这个“中文分词数据集.zip”压缩包中,包含了一个专门用于训练中文分词模型的数据集。下面将详细讨论中文...
中文分词是自然语言处理(NLP)领域中的基础任务,它是将连续的汉字序列切分成具有语义意义的词语序列。在这个“中文分词词库整理.7z”压缩包中,包含的可能是一个精心整理的中文词汇集合,用于支持各种中文分词算法...
### 中文分词词库大全词库解析 #### 标题与描述概述 标题:“中文分词词库大全词库” 描述重复强调了一个词典的来源及其格式(TXT)。这表明该词库是为了中文自然语言处理(NLP)任务中的分词而准备的资源。中文...
基于 Java 的中文分词器分词效果评估对比项目。它主要实现了以下功能: 分词效果评估:用户可以通过程序对比不同分词器的分词结果,以及计算分词速度、行数完美率、行数错误率、字数完美率、字数错误率等指标。 ...
中文分词是中文文本处理的基石,因为中文没有像英文那样的空格来自然地划分单词,所以需要通过分词算法将连续的汉字序列切分成有意义的词汇单元。这一过程对于后续的文本分析、信息检索、机器翻译等任务至关重要。 ...
标签 "中文分词" 是关键点,中文分词是将连续的汉字序列切分成有意义的词语,这是处理中文文本的基础步骤,对于信息检索、情感分析、机器翻译等任务至关重要。常见的中文分词算法有基于词典的匹配方法、统计模型如隐...
《深入理解Lucene 6.6:拼音与IK中文分词技术详解》 在信息检索领域,Lucene作为一款强大的全文搜索引擎库,被广泛应用。在处理中文文本时,分词是至关重要的一步,它决定了搜索的精度和效果。本文将详细讲解如何在...
在IT领域,汉字分词是自然语言处理(NLP)中的关键步骤,它涉及到将连续的汉字序列分割成有意义的词汇单元,以便计算机能够理解和分析文本。本项目名为"C#汉字分词程序",它实现了两种常见的分词算法:正向最大匹配...
在IT领域,中文分词是自然语言处理(NLP)中的关键步骤,它涉及到将连续的汉字序列分割成有意义的词语单元,以便计算机能够理解和分析文本。本项目以"matlab中文分词——最大正向匹配法.rar"为主题,重点讨论了如何...
CSW中文分词组件,是一套可自动将一段文本按常规汉语词组进行拆分,并以指定方式进行分隔的COM组件。本组件采用独有的高效的分词引擎及拆分算法,具有准确、高速、资源占用率小等特点。为了满足客户对文本语义进行...
中文分词是将连续的汉字序列切分成具有语义意义的词语的过程。与英文单词间的空格作为天然分隔符不同,中文没有明确的分词标志,因此需要借助特定算法来完成。常见的分词方法有基于词典的匹配法、统计模型如隐...
分词是自然语言处理中的基础步骤,它将连续的汉字序列切分成有意义的词语,这对于搜索引擎、信息检索、文本分析等多个领域至关重要。这类类库能够帮助开发者高效地实现对中文文本的预处理,提升系统的性能和准确性。...
中文不同于英文,单词之间没有明显的分隔符,因此在处理中文文本时,我们需要先进行分词,即将连续的汉字序列切分成有意义的词汇单元。Sanford中文分词库是一种常用的分词工具,它基于统计模型,能够根据语料库学习...
Ansj中文分词是一款纯Java、主要用于自然语言处理、高精度的中文分词工具,目标是“准确、高效、自由地进行中文分词”。 内容简介:http://www.iteye.com/magazines/102#234 此分词具有自己学习的功能,所以拜托大家...
分词技术在中文文本处理领域内占据着举足轻重的地位,因为它能将一连串的汉字拆分成有明确语义的单元,从而为后续的文本分析和应用提供便利。 用户在使用"庖丁解牛"时,可以通过运行位于软件包中名为`analyzer.bat`...