SCWS是个不错的中文分词解决方案,词库也是hightman个人制作,总不免有些不尽如人意的地方。有些词语可能不会及时被收入词库中。
  幸好SCWS提供了词库XDB导出导入词库的工具(phptool_for_scws_xdb.zip),下载后解压至任意文件夹,我解压至“E:/www/tools/scws_xdb/”目录下。在命令行下进入PHP的安装目录,我的目录是”E:/xampp/php“。

 步骤1:执行命令行,将词库先导出来,生成一个文本文件(dict.txt):

   
  命令格式为:php dump_xdb_file.php  <要导出的.xdb文件>  [要存入的文本文件]
  几秒后在E:/scws目录下我就获得了导出的纯文本文件dict.txt。
  用文本编辑器打开dict.txt文件,我建议用EditPlus,用windows的记事薄的话不能正常显示换行符。dict.txt中文本格式为:

  # WORD    TF    IDF    ATTR
  当机立断    14.01    8.10    i

  #开头的行是注释。每行是一个词。每个词分为四部分,WORD列是词本身,TF和IDF列是词权重,ATTR列是词性。
  在这里要解释下TF和IDF的意思,它们合起来称作TF-IDF(term frequency– inverse document frequency),是一种用于资讯检索与资讯探勘的常用加权技术,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。TFIDF的主要思想是:如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用分类。说起来很不好理解,其实也不需要理解,SCWS也提供了新词生词的TF/IDF计算器,可以自动获得词语的权重值。
  ATTR是词性,也就是标示词语是名字、动词、形容词等等词性的。详细的词性标示方法请看SCWS的说明:词典词性标注详解
  我要添加的词语是”芽菜“,是名词,用n标示。得到的IF、IDF值分别是13.82和7.48,那么在dict.txt结尾我追加了如下一行:
  芽菜    13.82    7.48    n
  

  步骤2:再执行如下命令,将修改好的dict.txt重新生成xdb文件。

  
  命令格式为:php make_xdb_file.php  <要生成的.xdb>  [导入的文本文件]
  
  生成xdb文件的过程需要比较长的时间,请耐心等待,如下图:
    
   
  就这么简单,补充了新词的词库制作完成!
  

SCWS中文分词,向xdb词库添加新词的更多相关文章

  1. ThinkPHP3.2添加scws中文分词

    前言 前一段时间,公司网站做站内搜索,只简单针对输入的文字进行搜索,作全匹配检索,搜索出来的内容很少.如何达到模糊搜索,匹配到更多的内容成了需要解决的问题.于是,今天想到可以做分词检索,如何对输入的一 ...

  2. SCWS 中文分词

    SCWS 中文分词v1.2.3 开源免费的中文分词系统,PHP分词的上乘之选! 首页 下载 演示 文档 关于 服务&支持 API/HTTP 论坛 捐赠 源码@github 文档目录 SCWS- ...

  3. SCWS中文分词,功能函数实例应用

    结合前文的demo演示,现写一个实用的功能函数,使用方法:header('Content-Type:text/html;charset=UTF-8');$text        = '我是一个中国人, ...

  4. SCWS中文分词,安装说明(以:Win32环境、utf8字符集为例)

    SCWS官方网站:http://www.xunsearch.com/scws/ 1. 根据您当前用的 PHP 版本,下载相应已编译好的 php_scws.dll 扩展库.    目前支持 PHP-5. ...

  5. SCWS中文分词,词典词性标注详解

    SCWS中文分词词典条目多达26万条之巨,在整理的时候已经把很多明显不对的标注或词条清理了 ---- 附北大词性标注版本 ----Ag 形语素 形容词性语素.形容词代码为a,语素代码g前面置以A. a ...

  6. Thinkphp3.2使用scws中文分词 提取关键词

    SCWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统).1.下载scws官方提供的类(这里使用的是pscws第四版的)http://www ...

  7. SCWS中文分词,demo演示

    上文已经讲了关于SCSW中文分词的安装配置,本节进入demo演示: <?php header('Content-Type:text/html;charset=UTF-8'); echo '< ...

  8. (转载)Rime输入法—鼠须管(Squirrel)词库添加及配置

    为什么用Rime 13年底的时候,日本爆出百度的日本版本输入法的问题,要求政府人员停用,没当回事,反正我没用,当然了,有关搜狗和用户隐私有关的问题就一直没有中断过,也没太在意.但,前几天McAfee爆 ...

  9. scws中文分词安装和使用

    一.下载源码 wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2 tar xvjf scws-1.2.3.tar.bz2 二.执行配置 ...

随机推荐

  1. Python接口测试实战2 - 使用Python发送请求

    如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...

  2. 微信小程序和微信H5测试中易出Bug的点和注意事项

    一.微信小程序 易出Bug的点: 小程序的分享转发功能 背景:小程序项目开发基本完毕也都已经测过几轮,功能上基本没有什么问题,但是上线后却被客户发现通过分享转发小程序给别人,别人无法正常打开的情况 原 ...

  3. Oracle和MySQL在使用上的区别

    1.  Oracle是大型数据库而MySQL是中小型数据库,MySQL是开源的而Oracle的价格非常高. 2.  Oracle支持大并发,大访问量. 3.  安装所用的空间差别也是很大,MySQL安 ...

  4. leetcode26_C++删除排序数组中的重复项

    给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成. 示例 1 ...

  5. mysql系列学习

    # 帮助help create user;# 查看当前用户select user();# 创建用户create user 'egon'@'localhost' identified by '123'; ...

  6. rhel6 mysql skip-grant-tables 添加用户报错 ERROR 1290

    不小心把数据库密码忘掉了, 这个时候我们只需要在数据库的配置文件里面添加 skip-grant-tables 然后重新启动服务,再登录数据库就不要我们输入密码了 这个时候我成功登录数据,可是不小心又把 ...

  7. Python 招聘信息爬取及可视化

    自学python的大四狗发现校招招python的屈指可数,全是C++.Java.PHP,但看了下社招岗位还是有的.于是为了更加确定有多少可能找到工作,就用python写了个爬虫爬取招聘信息,数据处理, ...

  8. PIGCMS 关闭聊天机器人(小黄鸡)

    无脑操作举例 1.找到 WeixinAction.class.php 文件,路径: 你的版本\PigCms\Lib\Action\Home 2.查询 function chat ,在 chat() 函 ...

  9. CentOS 6.7下创建桌面快捷方式

    CentOS 6.7下创建桌面快捷方式如下: 1 在桌面右键,选择“创建启动器" 2 在弹出菜单中,填写名称(显示在桌面上的名字),命令(可执行程序的路径) 3 点击弹出菜单左边的图标,选择 ...

  10. ubuntu安装和查看已安装软件

    说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...