论坛首页 Java企业应用论坛

Lucene中文分词“庖丁解牛”

浏览 129970 次
该帖已经被评为精华帖
作者 正文
   发表时间:2007-02-03  
谢谢楼上,如果有java版的就更好了
0 请登录后投票
   发表时间:2007-02-03  
请问楼主,为什么“老爸”这个词,我建立索引之后,搜“爸”就搜不出来呢
0 请登录后投票
   发表时间:2007-02-03  
billgmh 写道
butterfly 写道
楼主有哪些开源具有分词性的中文分词的编程接口可介绍一下啊?


中科院的分词系统就是具有分词性的中文分词接口哦,有一个dotNet下的C++版本


下载了。它的词典放在debug/data下,以dct结尾。文本编辑器打开词典文件,不是能清楚看明他的词典结构,隐隐约约感觉词典对每个词都有特别的标注,那进行词性标注的可能性是很大的 (没有直接证据,所以使用可能性的判断)。

要做到词性理解,关键还是词典+句型模板。 利用词典标注词性,识别出词语的同时识别出词语词性(可能不只一个词性),在通过句型模板,判断最后到底该词语是什么词性。

不过偶认为对一般搜索来说做到这个地步费力不讨好,没有必要做。

题外:
>>>如果能够使机器真真正正识别人的语言,那不知道天会怎么样!!!

有一阵子我在想,能不能对语言进行标准化,然后进行“建模”!解析具体语言时,将句子的意思对应到该标准语言,从而做到各种语言搜索的统一:使用的不再是基于文本的搜索,而是基于语义的搜索!

这样词性的问题也就自然而然解决了。

BUT, 可行吗?呵呵,先放弃吧!想那么多,那么完美,那事情永远也解决不了。。。。。


>>>附件中的代码看起来粗看一下,感觉不好阅读。。。
0 请登录后投票
   发表时间:2007-02-03  
foreverqihe 写道
请问楼主,为什么“老爸”这个词,我建立索引之后,搜“爸”就搜不出来呢


全文检索与like不一样,路人皆知。

paoding对词建立索引,对未能识别的词也采用良好的识别和切词。一段连续的中文是否是个词主要由预存的词典定义。

“老爸”在词典中已经定义,但没有单独“爸”这个词,所以不会再建立索引。(我特地重新查看了字典)

所以,如果搜索结果在现实生活中确实令人不满意,那就有必要更加合理的组织字典。--

paoding的字典是可编辑的,你可以往里面添加或删除词语(但需要保持按照汉字编码升序-目的是:方便建立词典以及加速查找)。甚至可以另外寻找一个符合要求的词典替换base.dic。

--各行各业都有自己的词典,建立索引时,最好能把特有的词建立一个新的字典(以.dic结尾命名,保持词语按汉字编码升序),放置CJK字典目录下,这样paoding会自动读入
0 请登录后投票
   发表时间:2007-02-13  
谢谢你的讲解,总算明白点了。请问 我要是用  '*爸'来搜呢?能得到更好的结果么?
0 请登录后投票
   发表时间:2007-02-23  
同志,大问题:有基于jdk1.4的不?
0 请登录后投票
   发表时间:2007-02-28  
southgate 写道
同志,大问题:有基于jdk1.4的不?


要1.4滴,毛遂自荐一下IKAnalyzer1.4 ,http://download.csdn.net/source/160753 .
还有JEAnalyzer1.5.1 http://www.jesoft.cn/posts/list/5.page

qieqie兄是个技术冲浪者,总在新技术的浪尖呀,他的分词器基于jdk1.5滴。

不过1.5的annotaion和自解包/封包功能真不错,运行效率也高不少,要不是考虑兼容性,偶也想更新换代咯,jdk都出6咯
0 请登录后投票
   发表时间:2007-03-02  
收到~~
0 请登录后投票
   发表时间:2007-03-02  
hghdo 写道
Qieqie:
汉语的字典文件在linux的环境下,字典文件名都变成乱码了。请问有什么方法把文件名变成utf-8编码的?


可以在windows平台下,用jdk自带的native2ascii.exe将词典转化一下,再打包到linux下,试试!
0 请登录后投票
   发表时间:2007-03-07  
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics