Lucene(八)拓展1-結巴分詞(java版) jieba-analysis

GitHub地址:https://github.com/huaban/jieba-analysis

結巴分詞(java版) jieba-analysis

首先感謝jieba分詞原作者fxsjy,沒有他的無私貢獻,我們也不會結識到結巴 分詞. 同時也感謝jieba分詞java版本的實現團隊huaban,他們的努力使得Java也能直接做出效果很棒的分詞。

不過由於huaban已經沒有再對java版進行維護,所以我自己對項目進行了開發。除了結巴分詞(java版)所保留的原項目針對搜索引擎分詞的功能(cutforindex、cutforsearch),我加入了tfidf的關鍵詞提取功能,並且實現的效果和python的jieba版本的效果一模一樣!

(以下內容在基於jieba-java版本README.md的基礎上,加入了對我新加入的tfidf關鍵詞提取模塊的相關說明)

1.項目引入

    <dependency>
        <groupId>com.huaban</groupId>
        <artifactId>jieba-analysis</artifactId>
        <version>1.0.2</version>
    </dependency>

2.demo

import com.huaban.analysis.jieba.JiebaSegmenter;
import com.huaban.analysis.jieba.SegToken;
import org.junit.Test;

import java.util.List;

public class TestJieBa {
    //聲明一個分詞對象
    private static JiebaSegmenter jiebaSegmenter=new JiebaSegmenter();

   @Test
    public void testJieBa(){
       String content="首先感謝jieba分詞原作者fxsjy,沒有他的無私貢獻,我們也不會結識到結巴 分詞. 同時也感謝jieba分詞java版本的實現團隊huaban,他們的努力使得Java也能直接做出效果很棒的分詞";
       /**
        * @Description:
        * 參數1  要分詞的內容
        * 參數2:分詞模式
        */
       List<SegToken> tokens = jiebaSegmenter.process(content, JiebaSegmenter.SegMode.SEARCH);

       for (SegToken token : tokens) {
           System.out.println(token.word);
       }
       System.out.println("分詞完成!"+"\n"+tokens.size());
   }
}

搜索速度的提升

之前:是需要把數據庫做一個全表的掃描

現在:直接通過計算hash值定位 值,在非常理想的情況下。他的速度,只計算一次

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章