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

发布IKAnalyzer中文分词器V3.1.6GA

阅读更多

IKAnalyzer3.2.0稳定版已经发布,支持Lucene3.0和solr1.4
链接:http://www.iteye.com/topic/542987

V3.1.1GA -- V3.1.5GA 版本变更一览
  • 1.添加“正向最大切分算法”。
  • 2.完善IK Analyzer对solr1.3版本的集成支持
  • 3.改进对文件名、邮件地址、英文数字混合字串的切分算法
  • 4.新增对停止词(stopword)的自定义扩展
  • 5.支持对JDK1.5的版本的集成



V3.1.6GA版本变更:
新增IK Analyzer对solr1.4版本的集成支持

1.新增org.wltea.analyzer.solr.IKTokenizerFactory14,支持solr1.4的TokenizerFactory接口配置

 类org.wltea.analyzer.solr.IKTokenizerFactory14
说明:该类继承与solr1.4的BaseTokenizerFactory,是IK分词器对solr1.4项目TokenizerFactory接口的扩展实现。从版本V3.1.6起。
属性:isMaxWordLength。该属性决定分词器是否采用最大词语切分。

solr1.4配置样例
使用IKAnalyzer的配置
<schema name="example" version="1.1">
……
<fieldType name="text" class="solr.TextField">
      <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
……
</schema>


使用IKTokenizerFactory14的配置
<fieldType name="text" class="solr.TextField" >
	<analyzer type="index">
		<tokenizer class="org.wltea.analyzer.solr.IKTokenizerFactory14" isMaxWordLength="false"/>
……

	</analyzer>
	<analyzer type="query">
		<tokenizer class="org.wltea.analyzer.solr.IKTokenizerFactory14" isMaxWordLength="true"/>
	……
	</analyzer>
</fieldType>


下载 :IKAnalyzer3.1.6GA完整包

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




分享到:
评论
13 楼 piziwang 2009-11-24  
linliangyi,

如何在tomcat启动的时候,就加载 IKAnalyzer的词典?

而不是在第一次调用IKAnalyzer时加载词典。

因为如果在第一次调用IKAnalyzer时加载词典,用户感觉会比较慢,我想在tomcat容器启动的时候,加载词典,这样,用户第一次使用时就不会感觉到慢了。
12 楼 gogobu 2009-11-24  
linliangyi2007 写道
gogobu 写道
有个 Compass 相关的问题想请教。

IKAnalyzer 和 IKSimilarity 目前都是直接继承了 Lucene,所以直接接入 Compass 没有问题。但 IKQueryParser 好象不是,无法直接替代 lucene 的 QueryParser。

请问有什么方法可以把 IKQueryParser 集成到 Compass 里面?谢谢!


IKQueryParser 与 lucene QueryParser并不是接口实现关系。IKQueryParser是为了实现分词歧义的组合优化而设计的,并不像 lucene QueryParser那样可以解析lucene的查询表达式。只是命名的时候,不知道叫啥最合适,最后还是选择了QueryParser。

而 lucene QueryParser 本身也不像 Analyzer和 Similarity那样以接口设计的,它本身就是一个具体实现类。


明白了,谢谢。如果我还是想用上 IKQueryParser,是不是可以自己实现一个类重载 lucene QueryParser,然后在里面调用 IKQueryParser? 还是说这两者基本上就不兼容?
11 楼 linliangyi2007 2009-11-24  
gogobu 写道
有个 Compass 相关的问题想请教。

IKAnalyzer 和 IKSimilarity 目前都是直接继承了 Lucene,所以直接接入 Compass 没有问题。但 IKQueryParser 好象不是,无法直接替代 lucene 的 QueryParser。

请问有什么方法可以把 IKQueryParser 集成到 Compass 里面?谢谢!


IKQueryParser 与 lucene QueryParser并不是接口实现关系。IKQueryParser是为了实现分词歧义的组合优化而设计的,并不像 lucene QueryParser那样可以解析lucene的查询表达式。只是命名的时候,不知道叫啥最合适,最后还是选择了QueryParser。

而 lucene QueryParser 本身也不像 Analyzer和 Similarity那样以接口设计的,它本身就是一个具体实现类。
10 楼 gogobu 2009-11-24  
有个 Compass 相关的问题想请教。

IKAnalyzer 和 IKSimilarity 目前都是直接继承了 Lucene,所以直接接入 Compass 没有问题。但 IKQueryParser 好象不是,无法直接替代 lucene 的 QueryParser。

请问有什么方法可以把 IKQueryParser 集成到 Compass 里面?谢谢!
9 楼 linliangyi2007 2009-11-13  
shijiyu1984 写道
70W条应该还算不是很大 因为这个要根据用户来决定的 server配置已经 -Xms512M -Xmx1536M了 但是还是不行


我不知道你的词条是什么概念,还有到底是什么造成你的内存溢出,IK的词典结构会自动排除重复,平均每1万条词汇占用约1M空间。我严重怀疑你自己使用List加载词元的时候,内存就溢出了,因为使用String占用的内存要大很多。

17万条的汉语词汇已经涵盖了很多偏门的词语,甚至是一堆不是词的短语了。
如果你自己要定制使用的话,估计你要从源码看起,然后做一些修改了。
8 楼 shijiyu1984 2009-11-13  
70W条应该还算不是很大 因为这个要根据用户来决定的 server配置已经 -Xms512M -Xmx1536M了 但是还是不行
7 楼 linliangyi2007 2009-11-10  
shijiyu1984 写道
linliangyi2007 写道
dowsam 写道
IK分词是不是很耗内存?用JProfiler测试了一下,占内存蛮多的!有没有办法改进?


因为要加载近27w条的内存词库,这个没法省啊。就目前而言,相对于普通台式机都有2G的内存,服务器上的内存更多。IK的服务对象是企业应用,个人认为30M左右的内存开销不是问题。


上次测试将词条将近70w条的时候 IK加载词条时出现内存溢出的问题 不知你有什么好的解决方案?


70W条!!比辞海还大啊,有这么多吗,只能扩大你的Xms和Xmx配置了,70w条估计要吃掉80M的内存,不过一般的server配置都是 -Xms256 -Xmx1024的应该不是问题啊
6 楼 shijiyu1984 2009-11-10  
linliangyi2007 写道
dowsam 写道
IK分词是不是很耗内存?用JProfiler测试了一下,占内存蛮多的!有没有办法改进?


因为要加载近27w条的内存词库,这个没法省啊。就目前而言,相对于普通台式机都有2G的内存,服务器上的内存更多。IK的服务对象是企业应用,个人认为30M左右的内存开销不是问题。


上次测试将词条将近70w条的时候 IK加载词条时出现内存溢出的问题 不知你有什么好的解决方案?
5 楼 linliangyi2007 2009-11-09  
dowsam 写道
IK支持自动检测词库变化吗??


不支持,只支持通过配置或者动态API调用添加新词。
4 楼 dowsam 2009-11-09  
IK支持自动检测词库变化吗??
3 楼 linliangyi2007 2009-11-09  
dowsam 写道
IK分词是不是很耗内存?用JProfiler测试了一下,占内存蛮多的!有没有办法改进?


因为要加载近27w条的内存词库,这个没法省啊。就目前而言,相对于普通台式机都有2G的内存,服务器上的内存更多。IK的服务对象是企业应用,个人认为30M左右的内存开销不是问题。
2 楼 dowsam 2009-11-09  
IK分词是不是很耗内存?用JProfiler测试了一下,占内存蛮多的!有没有办法改进?
1 楼 lianj_lee 2009-11-08  
  

相关推荐

Global site tag (gtag.js) - Google Analytics