盘古分词-中文人名识别

 

盘古分词-中文人名识别

作者: eaglet

     eaglet 曾经在KTDictSeg 中分别尝试使用规则和统计方式来识别中文(汉族)人名,但效果都不理想。在盘古分词 中eaglet另辟它径,采用一种新的算法来识别中文人名,效果相比规则和统计方式要好很多。下面eaglet就来介绍这种中文人名的识别方法。

     要很好的识别中文人名,我们需要对要分解的句子按预处理和消除歧义两个步骤进行处理。

     预处理

     识别中文人名的第一步是进行预处理,预处理的过程是找出要识别的句子中所有可能的中文人名。查找的方式是首先根据姓氏来匹配,找到姓氏后再根据常见的单字 中文名和双字中文名来匹配。盘古分词字典目录下有三个文件分别是 ChsSingleName.txt, ChsDoubleName1.txt, ChsDoubleName2.txt,它们分别表示单字人名,双字人名的首字和双字人名的尾字,根据这三个文件中指定的常用中文名,我们可以完成预处理 的过程。

     比如 张三丰李世民

     其中 “张”、“李”是姓,“三”是常用单字名和常用双字名首字,“世”是常用双字名首字,“民”和“丰”是常用双字名尾字

     这样预处理的结果就是

     张三

     张三丰

     李世民

 

     消除歧义

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1、 修改字典格式,提高字典加载速度 2、 增加对英文专业名词的支持 如C++,C#等只要加入字典就可以被分出来 3、 增加词频判断功能,在无法取舍时根据词频取舍 4、 增加优先优先词频选项,通过这个选项动态决定分词粒度 需打开 FreqFirst 5、 增加中文人名前后缀统计和根据该统计定位人名的功能 6、 增加中文人名和未登录词出现频率统计功能 7、 增加自动更新字典功能,对超过阈值的人名和未登录词自动插入字典 需打开 AutoInsertUnknownWords 开关 并设置 UnknownWordsThreshold,(不推荐自动插入,推荐手工插入) 8、 增加定期保存字典和统计结果功能 需设置 AutoSaveInterval 9、 增加KTDictSeg.xml配置文件来配置分词参数 10、增加对Lucene.net 的支持,提供 KTDictSegAnalyzer 分析器给Lucene.net 11、增加字典管理功能,可以添加删除修改字典 12、字典管理中提供从未登录词中批量插入字典功能,可帮助使用者手工选择合适的未登录词插入字典(推荐) 13、提供一个新闻搜索的简单例子,采用Lucene.net+KTDictSegAnalyzer+KTDictSeg,项目名为Demo.KTDictSegAnalyzer 14、将所有ArrayList 改为List 其中 src_V1.3.01是源码 rel_V1.3.01 包含所有的可执行文件,配置文件;Data目录下是词库,停用词表,以及我目前统计的人名前后缀词表;News 目录下是Lucene.net为 新闻搜索的例子建的索引。 News.zip 是上图中批量插入时要输入的XML文件,它包含3万条从新浪和中华网抓下来的过时的新闻,大约2000万字左右,可供各位朋友学习使用。 注意:如果要导入news.xml,这个文件必须要和Demo.KTDictSegAnalyzer.exe放在同一个目录下!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值