参考如下
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
保留停用词:list
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,***为各种分词算法名称,这是分词结果和人工标注标准不一致的文本