[分享]基于HMM算法的中文人名识别和外国人名识别[源码]

menuvb 2011-12-09 03:01:16
还记得4月份学习HMM和应用的过程是痛苦,每天上下班后就拿着那几张纸在想HMM。那时单纯是为了增强分词组件的功能而新增的人名识别。
姓名匹配的规则参考于中科院的一篇关于中文人名识别的论文(Chinese Word Segmentation and Named Entity
Recognition),训练的词库来自于网上人民日报1月份资料库(人名识别的成功率是基于训练的语料库的大小的,语料库越大,成功率也越高).

中文人名的规则:
BBCD:姓+姓+名1+名2
BBE:姓+姓+单名
BCD:姓+名1+名2
BE:姓+单名
BG:姓+后缀
BEE:姓+单名+单名
BT:姓+双名成词
CD:名1+名2
FB:前缀+姓,前缀+单名

外国人名的规则
BCD:姓+名1+名2
BCCD:姓+名1+名2+名2
BCCCD:
BCCCCD
BD,CD





注意,这个不是中文分词组件,只是对中文分词的功能一个补充,类似于可以利用HMM达到地名,街道等的识别。
所以测试的时候注意各个词之间用空格分开。
人名识别的代码是从自己的分词组件是提取出来的,因些你在测试中可能会碰到一些问题或性能问题,提供的代码仅仅是做为参考而已,你也可以基于代码自己重写。

下载地址http://files.cnblogs.com/cnzc/ChineseNameRecogzor.rar 感谢博客园,至少我还是找到了一个可以存放源码的地方。
...全文
517 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
楼主,怎么用你下的代码啊,对C#不太懂
q107770540 2011-12-09
  • 打赏
  • 举报
回复
路过。。。学习。。。帮顶。。蹭分。。。
HanLP是一系列模型与算法组成的NLP工具包,由大快搜索主导并完全开源,目标是普及自然语言处理在生产环境中的应用.HanLP具备功能完善,性能高效,架构清晰,语料时新,可自定义的特点。 HanLP提供下列功能: 中文分词 HMM-两字组(速度与精度最佳平衡;一百兆内存) 最短路分词,N-最短路分词 由字构词(侧重精度,全世界最大语料库,可识别新词;适合NLP任务) 感知机分词,CRF分词 词典分词(侧重速度,每秒数千万字符;省内存) 极速词典分词 所有分词器都支持: 索引全切分模式 用户自定义词典 兼容繁体中文 训练用户自己的领域模型 词性标注 HMM词性标注(速度快) 感知机词性标注,CRF词性标注(精度高) 命实体识别 基于HMM角色标注的命实体识别(速度快) 中国识别,音译识别,日本识别,地识别,实体机构识别 基于线性模型的命实体识别(精度高) 感知机命实体识别,CRF命实体识别 关键词提取 TextRank关键词提取 自动摘要 TextRank自动摘要 短语提取 基于互信息和左右信息熵的短语提取 拼音转换 多音字,声母,韵母,声调 简繁转换 简繁分歧词(简体,繁体,台湾正体,香港繁体) 文本推荐 语义推荐,拼音推荐,字词推荐 依存句法分析 基于神经网络的高性能依存句法分析器 基于ArcEager转移系统的柱搜索依存句法分析器 文本分类 情感分析 文本聚类 KMeans,Repeated Bisection,自动推断聚类数目k word2vec 词向量训练,加载,词语相似度计算,语义运算,查询,KMEANS聚类 文档语义相似度计算 语料库工具 部分默认模型训练自小型语料库,鼓励用户自行训练。模块所有提供训练接口,语料可参考98年人民日报语料库。 在提供丰富功能的同时,HanLP内部模块坚持低耦合,模型坚持惰性加载,服务坚持静态提供,词典坚持明文发布,使用非常方便。默认模型训练自全世界最大规模的中文语料库,同时自带一些语料处理工具,帮助用户训练自己的模型。

7,774

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧