结巴(jieba)分词的使用-Java实现

结巴分词Java版

结巴分词的使用比较方便,效果也不错,也无需连接网络即可使用。在项目中使用到了结巴分词,故在此做个小笔记。

本项目中所想实现的是如下的较精准模式。

支持三种分词模式:

1、较精确模式:试图将句子最较精确地切开,适合文本分析;         

          【我/ 来到/ 北京/ 清华大学】

2、全模式:把句子中所有的可以成词的词语都扫描出来, 速度较快,但是不能解决歧义;

          【我/ 来到/ 北京/ 清华/ 清华大学/ 华大/ 大学】

3、搜索引擎模式:在较精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。

          【小明, 硕士, 毕业, 于, 中国, 科学, 学院, 科学院, 中国科学院, 计算, 计算所】

创建工程

工程目录:

                          

conf:conf目录是添加词库的,希望组合的词或者不被拆分的词都可以添加在该目录下的文件中。

这里的词库可以使用搜狗词库和自定义词库。

自定义词库的格式:

一个词占一行;每一行分三部分:词语、词频(可省略)、词性(可省略),用空格隔开,顺序不可颠倒。

              

sougou.dict词库包:(共有94640个)

下载链接:sougou.dict

              

本人创建的是maven项目,需要导入jieba-analysis的jar包:

<!-- https://mvnrepository.com/artifact/com.huaban/jieba-analysis -->
<dependency>
    <groupId>com.huaban</groupId>
    <artifactId>jieba-analysis</artifactId>
    <version>1.0.2</version>
</dependency>

测试代码:

package com.test.Jieba;

import java.nio.file.Paths;
import org.junit.Test;
import com.huaban.analysis.jieba.JiebaSegmenter;
import com.huaban.analysis.jieba.WordDictionary;
import junit.framework.TestCase;

public class JiebaTest extends TestCase {
	
    private JiebaSegmenter segmenter = new JiebaSegmenter();
    String sentences = "北京京天威科技发展有限公司大庆车务段的装车数量";

    /**
     * 读取conf目录下所有的自定义词库**.dict文件。
     */
    @Override
    protected void setUp() throws Exception {
        WordDictionary.getInstance().init(Paths.get("conf"));
    }

    @Test
    public void testCutForSearch() {
        System.out.println(segmenter.sentenceProcess(sentences));
    }
}

代码很简单,主要就是创建对象,加载配置文件,文本分词。

效果展示:

1、在不适用自定义词库的情况下的分词效果:

      [北京, 京, 天威, 科技, 发展, 有限公司, 大庆, 车务段, 的, 装车, 数量]

2、在使用自定义词库的情况下的分词效果:

      [北京, 京天威科技发展有限公司, 大庆车务段, 的, 装车数量]

  • 9
    点赞
  • 74
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值