溜溜问答 > 日常办公 > Word > java中文分词组件Word怎么使用?
赵玉乔
赵玉乔
邀请你来回答
100人阅读 2021-01-25

java中文分词组件Word怎么使用?

我要回答
1个回答

参考如下
1、快速体验
运行项目根目录下的脚本demo-Word.bat可以快速体验分词效果
用法: command [text] [input] [output]
命令command的可选值为:demo、text、file
demo
text 杨尚川是apdplat应用级产品开发平台的作者
file d:/text.txt d:/Word.txt
exit

2、对文本进行分词
移除停用词:list Words = Wordsegmenter.seg("杨尚川是apdplat应用级产品开发平台的作者");
保留停用词:list Words = Wordsegmenter.segwithstopWords("杨尚川是apdplat应用级产品开发平台的作者");
system.out.PRintln(Words);

输出:
移除停用词:[杨尚川, apdplat, 应用级, 产品, 开发平台, 作者]
保留停用词:[杨尚川, 是, apdplat, 应用级, 产品, 开发平台, 的, 作者]

3、对文件进行分词
string input = "d:/text.txt";
string output = "d:/Word.txt";
移除停用词:Wordsegmenter.seg(new file(input), new file(output));
保留停用词:Wordsegmenter.segwithstopWords(new file(input), new file(output));

4、自定义配置文件
默认配置文件为类路径下的Word.conf,打包在Word-x.x.jar中
自定义配置文件为类路径下的Word.local.conf,需要用户自己提供
如果自定义配置和默认配置相同,自定义配置会覆盖默认配置
配置文件编码为utf-8

5、自定义用户词库
自定义用户词库为一个或多个文件夹或文件,可以使用绝对路径或相对路径
用户词库由多个词典文件组成,文件编码为utf-8
词典文件的格式为文本文件,一行代表一个词
可以通过系统属性或配置文件的方式来指定路径,多个路径之间用逗号分隔开
类路径下的词典文件,需要在相对路径前加入前缀classpath:

指定方式有三种:
指定方式一,编程指定(高优先级):
Wordconftools.set("dic.path", "classpath:dic.txt,d:/custom_dic");
dictionaryfactory.reload();//更改词典路径之后,重新加载词典
指定方式二,JAVA虚拟机启动参数(中优先级):
JAVA -ddic.path=classpath:dic.txt,d:/custom_dic
指定方式三,配置文件指定(低优先级):
使用类路径下的文件Word.local.conf来指定配置信息
dic.path=classpath:dic.txt,d:/custom_dic

如未指定,则默认使用类路径下的dic.txt词典文件

6、自定义停用词词库
使用方式和自定义用户词库类似,配置项为:
stopWords.path=classpath:stopWords.txt,d:/custom_stopWords_dic

7、自动检测词库变化
可以自动检测自定义用户词库和自定义停用词词库的变化
包含类路径下的文件和文件夹、非类路径下的绝对路径和相对路径
如:
classpath:dic.txt,classpath:custom_dic_dir,
d:/dic_more.txt,d:/dic_dir,d:/dic2_dir,my_dic_dir,my_dic_file.txt

classpath:stopWords.txt,classpath:custom_stopWords_dic_dir,
d:/stopWords_more.txt,d:/stopWords_dir,d:/stopWords2_dir,stopWords_dir,remove.txt

8、显式指定分词算法
对文本进行分词时,可显式指定特定的分词算法,如:
Wordsegmenter.seg("apdplat应用级产品开发平台", segmentationalgorithm.bIDirectionalMaximummatching);

segmentationalgorithm的可选类型为:
正向最大匹配算法:Maximummatching
逆向最大匹配算法:reverseMaximummatching
正向最小匹配算法:minimummatching
逆向最小匹配算法:reverseminimummatching
双向最大匹配算法:bIDirectionalMaximummatching
双向最小匹配算法:bIDirectionalminimummatching
双向最大最小匹配算法:bIDirectionalMaximumminimummatching
全切分算法:fullsegmentation
最少分词算法:minimalWordcount
最大ngram分值算法:Maxngramscore

9、分词效果评估
运行项目根目录下的脚本evaluation.bat可以对分词效果进行评估
评估采用的测试文本有253 3709行,共2837 4490个字符
评估结果位于target/evaluation目录下:
corpus-text.txt为分好词的人工标注文本,词之间以空格分隔
test-text.txt为测试文本,是把corpus-text.txt以标点符号分隔为多行的结果
standard-text.txt为测试文本对应的人工标注文本,作为分词是否正确的标准
reSUlt-text-***.txt,***为各种分词算法名称,这是Word分词结果
perfect-reSUlt-***.txt,***为各种分词算法名称,这是分词结果和人工标注标准完全一致的文本
wrong-reSUlt-***.txt,***为各种分词算法名称,这是分词结果和人工标注标准不一致的文本

查看全部
2021-01-25
回复 采纳

相关问题

怎么使用java中文分词组件Word?
共1条回答 >
黄三: 参考如下1、快速体验运行项目根目录下的脚本demo-Word.bat可以快速体验分词效果用法:command[text][input][output]命令command的可选值为:demo、text、filedemotext杨尚川是apdplat应用级产品开发平台的作者filed:/text.txtd:/Word.txtexit2、对文本进行分词移除停用词:listWords=Wordsegmenter.seg("杨尚川是apdplat应用级产品开发平台的作者");保留停用词:listWords....
回复
java Word分词器怎样安装在java中?
共1条回答 >
👥: Word分词是一个JAVA实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义。如果需要安装Word分词器可以参考下面的步骤:1、确保电脑上已经安装了jdk软件和eclispe工具,没有安装的可以到对应的官网下载安装:jdk官网:http://www.oracle.com/technetwork/JAVA/JAVAse/downloads/index.htmlecliPSe官网:http://www.ecliPSe.org2、下载Word分词器的相关jar包:....
回复
java操作Word的组件有哪些
共1条回答 >
东海不在东: 可以考虑apachepoi,apachepoi提供api给JAVA程式对MicrosoftOffice格式档案读和写的功能。1、importJAVA.io.file;importJAVA.io.fileinputstream;importJAVA.io.inputstream;2、importorg.apache.poi.hwpf.extractor.Wordextractor;/**读取Word文本信息*/publicclassWorddemo{publicstaticvoIDmAIn(str....
回复
使用java代码下载Word文件
共1条回答 >
冰点: 我同事在做项目的时候也遇到这个问题,应该是插件本身生成的docx文件是xml格式的,有些版本的Word打开是会有提示,如果没有必要最好生成doc格式的Word
回复
怎样使用Excel分词?
共1条回答 >
ME: 点击数据-分列,根据实际情况选择按固定宽度或者分隔符进行分词。
(1) 回复
发表成功!
感谢您的分享!
好的
25年12周年庆活动
25年12周年庆活动
官方微信群

(微信添加“妙妙”或“笑笑”,邀您进群)