NLPIR(ICTCLAS2016)分词系统添加用户词典功能
来源:互联网 发布:软件测试的过程 编辑:程序博客网 时间:2024/05/12 22:35
本文为博主 http://blog.csdn.net/churximi 原创文章
备注:win7 64位系统,netbeans编程
基本代码框架参见我的另一篇文章:NLPIR分词功能
代码实现:
添加用户词汇的函数说明:
用户词汇将优先用于分词。
1.
功能:少量词汇逐个添加参数:sWord表示要添加的词汇,格式为:"自定义词汇+空格+词汇词性",空格可以是多个,也可以用Tab制表符代替;
注意事项:该函数添加的用户自定义词汇具有临时性,即只在本程序的本次运行中有效。因为从Data数据角度来看,该函数并不会修改Data文件夹的词库数据。
2.
功能:少量词汇逐个删除参数:sWord表示要删除的词汇,格式为:"自定义词汇"。这里没有词性。
注意事项:个人不太明白该函数存在的意义,因为如果想要删除用户词汇的话,只需要将增加临时词汇的NLPIR_AddUserWord()语句注释掉或者删掉即可。该函数既不能删除下面将要提到的NLPIR_SaveTheUsrDic()函数保存的用户词汇,也不能删除NLPIR_ImportUserDict()函数批量导入的词汇。因为该函数不会对Data文件夹里的文件进行修改。
3.
功能:将用户词汇保存到系统词典参数:没有参数,如果保存成功,返回值为1,否则返回值为0。
注意事项:
(1)会将前面添加的所有用户词汇(不包括又删除掉的)保存到用户词典;
(2)通过该函数保存的用户词汇是永久性的,因为会修改Data文件夹里的UserDict.pdat文件,以后的分词程序都会使用已保存的用户词汇;
(3)只能保存NLPIR_AddUserWord()添加的词汇,不能保存NLPIR_ImportUserDict()导入的词汇。
停用方法:由于永久性效果,可用以下方法停用——
方法(1):打开Data文件夹里的Configure.xml文件,将UserDict参数由on改为off;
方法(2):用原始的UserDict.pdat文件替换掉现在的。
4.
功能:从词典文本批量导入用户词汇,返回值是添加词汇的个数。
参数:
sFilename为词典文本路径;例如:D:\\NetBeansProjects\\CWordSeg\\file\\adduserdict.txt
bOverwrite=true表示新导入的数据将会覆盖原来的用户自定义词典;
bOverwrite=false表示新导入的数据将会添加到原来用户自定义词典的后面(追加)。
文本词典格式:每行一个,词汇+空格+词性注意事项:(1)通过该函数导入用户词汇会修改Data文件夹里的FieldDict.pdat、FieldDict.pos文件,并会新建一个UserDefinedDict.lst文件,但是不会修改UserDict.pdat文件。所以通过这种方式导入的用户词汇,可以通过导入新的用户词典进行覆盖(bOverwrite=true),或是补充添加新词汇(bOverwrite=false)。
(2)UserDefinedDict.lst文件中记录了已经添加的用户词汇。
(3)如果设置NLPIR_ImportUserDict的参数bOverwrite=false,即新导入的数据不覆盖原有数据,则可以修改UserDefinedDict.lst里的内容(原有词汇),并同时增加新的词汇;
(4)如果设置NLPIR_ImportUserDict的参数bOverwrite=true,新导入的数据将会覆盖原有数据,此时即使修改UserDefinedDict.lst里的内容也会被新数据覆盖掉,最终只保留新导入的词汇。
(5)这种方式导入的用户词汇也是永久性的,分词效果将一直存在。
停用方法:
方法1:打开Data文件夹里的Configure.xml文件,将FieldDict参数由on改为off;
方法2:导入一个空的文本词典;(导入词典可以为空)
方法3:用原始FieldDict.pdat、FieldDict.pos文件替换掉现在的,UserDefinedDict.lst可删可不删。
- NLPIR(ICTCLAS2016)分词系统添加用户词典功能
- NLPIR(ICTCLAS2016)分词系统添加用户词典功能
- java调用NLPIR(ICTCLAS2016)实现分词功能
- java调用NLPIR(ICTCLAS2016)实现分词功能
- java调用NLPIR(ICTCLAS2016)实现分词功能
- NLPIR/ICTCLAS2016分词系统的文件结构
- NLPIR/ICTCLAS2016分词系统 使用心得
- NLPIR(ICTCLAS2016)对文本进行分词
- NLPIR(ICTCLAS2016)提取关键词功能
- NLPIR(ICTCLAS2016)对词频统计功能
- 中科院NLPIR/ICTCLAS2016分词系统找不到Configure.xml
- (转)NLPIR(ICTCLAS2016)分词系…
- nlpir分词系统
- NLPIR Java 加入用户词典
- C++ NLPIR+FRISO 项目的中文分词功能添加
- Eclipse+Java调用中科院分词系统ICTCLAS2016
- 使用NLPIR-ICTCLAS2014分词系统
- 关于 NLPIR 用户词典无效问题
- 防火墙关闭对应端口
- AppBarLayout之悬浮视图效果、嵌套SpringView冲突处理 menglong0329
- CSDN - markdown规则(留
- 4.PHP正则表达式与数组
- 针对浏览器 JavaScript 缓存的一种解决办法
- NLPIR(ICTCLAS2016)分词系统添加用户词典功能
- 在输入的字符串中查找是否存在要查找的字符。
- 19:Gray Code
- 互联网运营 6 年,我想说的一些话
- java调用NLPIR(ICTCLAS2016)实现分词功能
- eclipse中maven构建web项目后更改web.xml版本问题
- 四、五星级酒店的点评在点评总量中的占比高达79.6%
- 2017年原生广告程序化购买将成为新趋势
- ctrl+z 与ctrl+c