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

应网友需求发布IKAnalyzer3.1.1GA2

阅读更多
3.1.1GA2版本变更:
1.修订了大文本处理时,缓冲区边界指针位置不正确的异常
2.添加“正向最大切分算法”
新增API更新如下:

 类org.wltea.analyzer.lucene.IKAnalyzer
 public IKAnalyzer(boolean isMaxWordLength)
说明:新构造函数,从版本V3.1.1起
参数1 :boolean isMaxWordLength , 当为true时,分词器进行最大词长切分  ;当为false时,分词器进行最细粒度切分。


 类org.wltea.analyzer.IKSegmentation
 public IKSegmentation(Reader input , boolean isMaxWordLength)
说明:IK主分词器新构造函数,从版本V3.1.1起
参数1:Reader input , 字符输入读取
参数2:boolean isMaxWordLength , 当为true时,分词器进行最大词长切分  ;当为false时,分词器进行最细粒度切分。


下载 :IKAnalyzer3.1.1稳定版完整包.rar

更多详细请参看《IKAnalyzer中文分词器V3.1.1使用手册.pdf》


分享到:
评论
26 楼 linliangyi2007 2009-08-12  
tangfl 写道
compareAnalyzers: (skey) : A236Kitty
paoding: (0 ms)
236 | kitty | 236kitty | a236kitty |
-imdict: (0 ms)
a | 236 | kitti |
-ik-max: (1 ms)
a236kitty | 236 |
-ikmost: (0 ms)
a236kitty | 236 |
-mmseg4j: (0 ms)
a | 236 | kitty |

在字母和数字混排的时候(品牌,型号等等,比较常见),ik 的处理逻辑是怎样的?我觉得 paoding 的结果似乎更接近搜索引擎的需求一些


IK的处理分为两个部分;
1.对英文的处理,这部分完成是采用了Lucene的 StandardAnalyzer 的分词策略,将数字和字母连接一起。
2.对数词的处理,则是会将数词单独切分。
因此就出现了 a236kitty | 236 |
25 楼 tangfl 2009-08-12  
compareAnalyzers: (skey) : A236Kitty
paoding: (0 ms)
236 | kitty | 236kitty | a236kitty |
-imdict: (0 ms)
a | 236 | kitti |
-ik-max: (1 ms)
a236kitty | 236 |
-ikmost: (0 ms)
a236kitty | 236 |
-mmseg4j: (0 ms)
a | 236 | kitty |

在字母和数字混排的时候(品牌,型号等等,比较常见),ik 的处理逻辑是怎样的?我觉得 paoding 的结果似乎更接近搜索引擎的需求一些
24 楼 andylau8250 2009-08-12  
你好! 想請問個問題!
在自訂的辭典中,
是不是英文部份會沒有效果!
因為我在自己的英文辭典中,加入了 "absolute expression"
但是斷詞器還是把它拆成 "absolute" 、 "expression" 兩個了!

想請問,是否斷詞系統沒有特別對英文作匹配處理!
還是你有提供什麼api輔助?



23 楼 linliangyi2007 2009-08-11  
tangfl 写道
linliangyi2007 写道
tangfl 写道
http://blog.fulin.org/2009/07/about_analyzer_of_sitesearch.html

稍微作了一个对比,最后选择了你的 ik ,感谢你的辛苦工作和无私分享!

提一个小问题:
compareAnalyzers: (skey) : 等等等等
paoding: (0 ms)
等等 | 等等 | 等等 |
-imdict: (0 ms)
等等 | 等等 |
-----ik: (0 ms)
等等等等 | 等等 | 等等 | 等等 |
-mmseg4j: (0 ms)
等等 | 等等 |

后面三个词是否应该排除一下重复结果呢?


另外,paoding 有自动检测词库更新的功能,ik 是否有这方面的打算?如果没有,我可能就需要自己动手 hack 了


1.关于你上面提到的例子中的3个等等,是不同位置上的,分别是0-2 ; 1-3 ;2-4的,因此不能进行重复排除。IK的算法是采用迭代式搜索,因此,它会检查出从任何位置上开始的词语。

2.IK对词库的管理,个人感觉应该更适合动态更新。因为它提供了词典API,你可以将数据库中的词典表通过API方式,添加到词典中,而不是去修改词典文本,当然你可以使用自己的词典文本,通过自己的动态加载程序读入后,再通过API向IK添加,这样的设计是不是比直接修改IK来的耦合度更低?!



我已经实现了在一个检测线程中调用 api
public static void loadExtendWords(List<String> extWords)
但是我不确定这个 api 是线程安全的。
当更新 ik 的词典的时候,对 IKAnalyzer 实例的调用是否需要额外的锁?

IK词典API中的更新是线程安全的
22 楼 tangfl 2009-08-11  
linliangyi2007 写道
tangfl 写道
http://blog.fulin.org/2009/07/about_analyzer_of_sitesearch.html

稍微作了一个对比,最后选择了你的 ik ,感谢你的辛苦工作和无私分享!

提一个小问题:
compareAnalyzers: (skey) : 等等等等
paoding: (0 ms)
等等 | 等等 | 等等 |
-imdict: (0 ms)
等等 | 等等 |
-----ik: (0 ms)
等等等等 | 等等 | 等等 | 等等 |
-mmseg4j: (0 ms)
等等 | 等等 |

后面三个词是否应该排除一下重复结果呢?


另外,paoding 有自动检测词库更新的功能,ik 是否有这方面的打算?如果没有,我可能就需要自己动手 hack 了


1.关于你上面提到的例子中的3个等等,是不同位置上的,分别是0-2 ; 1-3 ;2-4的,因此不能进行重复排除。IK的算法是采用迭代式搜索,因此,它会检查出从任何位置上开始的词语。

2.IK对词库的管理,个人感觉应该更适合动态更新。因为它提供了词典API,你可以将数据库中的词典表通过API方式,添加到词典中,而不是去修改词典文本,当然你可以使用自己的词典文本,通过自己的动态加载程序读入后,再通过API向IK添加,这样的设计是不是比直接修改IK来的耦合度更低?!



我已经实现了在一个检测线程中调用 api
public static void loadExtendWords(List<String> extWords)
但是我不确定这个 api 是线程安全的。
当更新 ik 的词典的时候,对 IKAnalyzer 实例的调用是否需要额外的锁?
21 楼 linliangyi2007 2009-08-11  
tangfl 写道
http://blog.fulin.org/2009/07/about_analyzer_of_sitesearch.html

稍微作了一个对比,最后选择了你的 ik ,感谢你的辛苦工作和无私分享!

提一个小问题:
compareAnalyzers: (skey) : 等等等等
paoding: (0 ms)
等等 | 等等 | 等等 |
-imdict: (0 ms)
等等 | 等等 |
-----ik: (0 ms)
等等等等 | 等等 | 等等 | 等等 |
-mmseg4j: (0 ms)
等等 | 等等 |

后面三个词是否应该排除一下重复结果呢?


另外,paoding 有自动检测词库更新的功能,ik 是否有这方面的打算?如果没有,我可能就需要自己动手 hack 了


1.关于你上面提到的例子中的3个等等,是不同位置上的,分别是0-2 ; 1-3 ;2-4的,因此不能进行重复排除。IK的算法是采用迭代式搜索,因此,它会检查出从任何位置上开始的词语。

2.IK对词库的管理,个人感觉应该更适合动态更新。因为它提供了词典API,你可以将数据库中的词典表通过API方式,添加到词典中,而不是去修改词典文本,当然你可以使用自己的词典文本,通过自己的动态加载程序读入后,再通过API向IK添加,这样的设计是不是比直接修改IK来的耦合度更低?!

20 楼 tangfl 2009-08-11  
http://blog.fulin.org/2009/07/about_analyzer_of_sitesearch.html

稍微作了一个对比,最后选择了你的 ik ,感谢你的辛苦工作和无私分享!

提一个小问题:
compareAnalyzers: (skey) : 等等等等
paoding: (0 ms)
等等 | 等等 | 等等 |
-imdict: (0 ms)
等等 | 等等 |
-----ik: (0 ms)
等等等等 | 等等 | 等等 | 等等 |
-mmseg4j: (0 ms)
等等 | 等等 |

后面三个词是否应该排除一下重复结果呢?


另外,paoding 有自动检测词库更新的功能,ik 是否有这方面的打算?如果没有,我可能就需要自己动手 hack 了
19 楼 linliangyi2007 2009-08-11  
poppk 写道
目前带词性分析标注的只有中科院ictclas衍生出来的几个开源版本,java的只有ictclas4j,ictclas4j还是半拉子工程,bug很多,貌似作者也小一年不更新了。
楼主可以考虑把这个加入进来,就可以在目前几个主流的开源中文分词包中脱颖而出了。


老兄看了一直很关心分词啊,居然被你发现有一年没更新了,呵呵
18 楼 poppk 2009-08-11  
目前带词性分析标注的只有中科院ictclas衍生出来的几个开源版本,java的只有ictclas4j,ictclas4j还是半拉子工程,bug很多,貌似作者也小一年不更新了。
楼主可以考虑把这个加入进来,就可以在目前几个主流的开源中文分词包中脱颖而出了。
17 楼 linliangyi2007 2009-08-07  
smilerain 写道
一直用的2.0 其实也没你说的这么不好用。
2.0的我改了一下接口。自己封装了一下,一直感觉还是很好用的。

3.0 还没好好用,过几天下来用。先不评价了


如果你使用Lucene的话,3.0的IKQueryParser,应该会让你觉得好用的
16 楼 linliangyi2007 2009-08-07  
smilerain 写道
一直用的2.0 其实也没你说的这么不好用。
2.0的我改了一下接口。自己封装了一下,一直感觉还是很好用的。

3.0 还没好好用,过几天下来用。先不评价了


哈哈,任何一个版本,能对你有用就好了。根据自己的需要自由选择啊。
15 楼 smilerain 2009-08-07  
一直用的2.0 其实也没你说的这么不好用。
2.0的我改了一下接口。自己封装了一下,一直感觉还是很好用的。

3.0 还没好好用,过几天下来用。先不评价了
14 楼 caiceclb 2009-08-07  
一直没用到,不过还是要下了保存以便不时之需,希望lz有新版就更新啊
13 楼 ansjsun 2009-08-06  
呵呵我来看你了..这么快啊..没听你说哈..加油哦...
我决定把我那个也发出来啦...
12 楼 linliangyi2007 2009-08-06  
smilerain 写道
先赞一个,不过看了上边的分词,还是先用2.0的.

程序规划的是好了,数度是快了.
但是运行得到的结果.也很重要.

优化上希望能在一个好的分词结果上优化. 不然还是比较遗憾.


3.0是针对搜索优化的,2.0是好看不好用的,呵呵。
11 楼 01404421 2009-08-06  
半年多了一直在学习和使用,感谢LZ这种精神,我们都该向你学习
10 楼 smilerain 2009-08-06  
先赞一个,不过看了上边的分词,还是先用2.0的.

程序规划的是好了,数度是快了.
但是运行得到的结果.也很重要.

优化上希望能在一个好的分词结果上优化. 不然还是比较遗憾.
9 楼 linliangyi2007 2009-08-05  
whaosoft 写道
你更新的比我学的还快了 我忙的很 在看看你这更新的那么快我那儿还是老版本的


有了svn和junit,可以自己做简单的每日构建了,而且项目不大,因此更新会简单些。
8 楼 whaosoft 2009-08-05  
你更新的比我学的还快了 我忙的很 在看看你这更新的那么快我那儿还是老版本的
7 楼 andylau8250 2009-08-05  
瞭解了!
謝謝樓主的回覆!

相关推荐

    IKAnalyzer3.1.1中文分词器

    IKAnalyzer3.1.1中文分词器是针对中文文本处理的一款强大工具,主要用于中文文本的分词。在自然语言处理、搜索引擎构建、信息检索等领域,分词是基础且关键的一步,因为中文没有明显的空格来区分单词,所以需要通过...

    IKAnalyzer3.1.1Stable_AllInOne

    IKAnalyzer3.1.1Stable_AllInOne是一款流行的中文分词工具,广泛应用于信息检索、文本挖掘等领域。它是基于Java开发的,旨在提供高效、灵活的中文分词解决方案。这款分词器以其稳定性、准确性和易用性而受到开发者们...

    IKAnalyzer3.1.6GA完整包

    IK Analyzer 是一个开源的,基于java 语言开发的轻量级的中文分词工具包。从2006 年12 月推出1.0 版开始, IKAnalyzer 已经推出了3 个大版本。最初,它是以开源项目 Luence 为应用主体的,结合词典分词和文法分析...

    IKAnalyzer3.2.5Stable.jar

    IKAnalyzer的设计理念是易于扩展和配置,可以根据实际需求定制词典,支持热更新,使得在运行时可以动态添加或修改词典内容。它的核心特点是支持多种分词模式,包括精确模式、全模式、快速模式以及智能模糊模式,能...

    IKAnalyzer3.1.2GA_AllInOne

    IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。从2006年12月推出1.0版开始,IKAnalyzer已经推出了3个大版本。最初,它是以开源项目Luence为应用主体的,结合词典分词和文法分析算法的中文分词...

    IKAnalyzer3.1.6GA.jar下载

    IKAnalyzer3.1.6GA.jar IKAnalyzer3.1.6GA.jar

    IKAnalyzer2012完整分发包

    2. IKAnalyzer2012.jar(主jar包) 3. IKAnalyzer.cfg.xml(分词器扩展配置文件) 4. stopword.dic(停止词典) 5. LICENSE.TXT ; NOTICE.TXT (apache版权申明) 它的安装部署十分简单,将 IKAnalyzer2012.jar ...

    IKAnalyzer6.5.0.jar

    IK Analyzer的名字来源于“Intelligent Keyword”(智能关键词),它的设计理念是通过灵活的配置来满足不同场景下的分词需求。 IK Analyzer的6.5.0版本是其发展过程中的一个重要里程碑,它在前一版本的基础上进行了...

    IKAnalyzer 支持高版本最新Lucene 5.x、6.x、7.x

    - 使用IKAnalyzer配合Solr,可以构建企业级的搜索应用,满足大规模数据的高效检索需求。 5. **安装和使用IKAnalyzer**: - 将IKAnalyzer的jar包添加到项目的类路径中,然后在配置文件中指定使用IKAnalyzer作为...

    IKAnalyzer配置文件、扩展词典和停用词词典.zip

    IKAnalyzer是一款广泛应用于Java环境中的中文分词器,它的全称是"Intelligent Chinese Analyzer for Java"。这个压缩包文件包含的是IKAnalyzer的配置文件、扩展词典和停用词词典,这些组件对于优化IKAnalyzer的性能...

    IKAnalyzer2012FF_hf1.zip

    标题中的"IKAnalyzer2012FF_hf1.zip"指的是IK Analyzer的2012年最终版(Final)的高频率更新1(Hot Fix 1)。IK Analyzer是一款开源的、基于Java语言开发的轻量级中文分词器,主要用于Java环境下对中文文本的分词...

    ikanalyzer-solr8.4.0_solr8_solr_ikanalyzer_中文分词_

    2. **添加依赖**:将解压后的 ikanalyzer 相关 jar 文件添加到 Solr 的 lib 目录下。这使得 Solr 在启动时能够自动加载 ikanalyzer 类库。 3. **配置Schema.xml**:在 Solr 的 schema.xml 文件中,我们需要定义字段...

    IKAnalyzer-5.0.jar及solr-analyzer-extra-5.3.jar

    标题中的"IKAnalyzer-5.0.jar"和"solr-analyzer-extra-5.3.jar"是两个在中文搜索引擎系统Solr中常见的组件,主要用于处理中文分词问题。这两个组件在构建高性能的中文搜索解决方案中扮演着至关重要的角色。 首先,...

    IK Analyzer 2012FF_hf1.7z

    "2012FF_hf1.7z" 是IK Analyzer的一个特定版本,可能包含了优化和改进,适应了2012年及之后的技术需求。 在Solr中,分词器扮演着至关重要的角色。它们负责将输入的中文文本分解成一系列的词汇单元,这些单元通常被...

    Lucene的IK Analyzer 3.0 中文分词器 全解

    - 安装过程简单,只需将IKAnalyzer3.0GA.jar添加到项目的lib目录,配置文件IKAnalyzer.cfg.xml则应放在代码根目录或WEB-INF/classes目录下。 - 对于Lucene用户,可以快速入门通过Java代码示例进行索引和查询操作,...

    IKAnalyzer2012FF_u1.jar下载

    IK Analyzer就是为此目的设计的,它采用了基于词典的分词方法,同时结合了动态词典和智能词组策略,能够适应不同场景下的分词需求。 IK Analyzer的核心特性包括: 1. **灵活的词典管理**:IK提供了丰富的词典管理...

    IKAnalyzer中文分词计算句子相似度

    1. **灵活的词典管理**:IKAnalyzer支持动态词典加载,用户可以根据实际需求自定义词典,增加或删除词汇。 2. **智能的词语识别**:采用了正向最大匹配(MaxMatch)和逆向最大匹配(Reverse MaxMatch)两种策略,...

    IKAnalyzer2012_u6中文分词器以及手册正式版.zip

    IKAnalyzer2012_u6中文分词器以及手册正式版 Mode LastWriteTime Length Name ---- ------------- ------ ---- d----- 2017/10/29 1:41 doc -a---- 2017/10/29 1:41 414 IKAnalyzer.cfg.xml -a---- 2017/10/29 1...

Global site tag (gtag.js) - Google Analytics