- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中文发音查询技术的研究与实现.pdf
中文发音查询技术的研究与实现
1 2
王小兵 ,于思江
1.西安电子科技大学计算机学院,陕西西安(710071 )
2.西安邮电学院教务处,陕西西安(710061 )
摘 要:针对根据发音进行检索的需求,分析了中文发音查询的原理,并以MySQL 数据库
为例,对应用范围较广的全音模糊查询提出了高效率的元级实现方案,最后给出了发音查询
的应用实例。
关键词:发音查询;模糊查询;MySQL
1. 前言
早在1918 年和1922 年,Margaret K.Odell 和Robert C.Russell 提出了Soundex 方法,用
来对姓氏进行编码,为所有美国人口做索引。Soundex 是一种语音算法,根据英文单词的读
音计算得到一个字符串值,形式为一个字母加三个数字[1],例如Smith 和Smyth 的Soundex
值都是 S530。在一定程度上,这种算法能够为发音相近的单词产生相同的返回值,可用于
基于英文发音的模糊匹配,在当今主流的数据库管理系统中都已经被实现。
在中文的管理信息系统中,也存在大量根据发音查询数据的需求。例如,查询与“黎明”
发音相同的人名字,则结果应包含“李明”、“李鸣”等,若只要求发音近似,则结果还应该包
含“李民”、“李敏”等。基于中文发音的查询技术是非常重要的,用户使用它能够大大提高检
索的效率,尤其对于特定行业,如户籍管理、酒店预定管理系统、电话查号服务系统、药品
管理系统[2]等。
2. 中文发音查询原理
在汉字系统中,每个汉字都有一个或多个发音,发音包含声母、韵母和声调。中文发音
查询是对数据库中的中文信息进行与发音有关的检索,而不仅仅是比较字面是否相同。按照
不同的分类标准,中文发音查询存在多种实现技术。
根据比较内容可分为声母查询和全音查询。前者一般用于快速查询,仅仅根据中文发音
的声母来检索数据,如根据药品简称“amxl”就可以得到“阿莫西林” 。由于该检索只以声母为
依据,对返回的大量结果用户需要进一步筛选。全音查询则同时比较声母和韵母,一般不比
较声调,结果较为精确,但是如果发音不准确就容易造成结果的丢失。例如在酒店预定管理
系统中,如果全音查询要求发音完全相同,则使用“limin”只能查询到“李敏”,而无法检索到
“李明”的预定信息。
根据精确度进行分类有精确查询和模糊查询。精确查询要求发音(声母或全音)完全相
同,结果集合较小,如使用“amxn”就无法查询到“阿莫西林” 。模糊查询则按照一定的规则(如
表1)进行检索,可得到发音近似的结果集合,从而方便用户的使用。例如,在酒店预定管
理系统中,使用“limin”可以查询到“李明” 。
-1-
表 1 模糊发音规则表
声母 韵母
z = zh an = ang
s = sh en = eng
c = ch in = ing
l = n ian = iang
uan = uang
根据实现级别的不同可分为宿主级查询、函数级查询和元级查询。宿主级查询指获取中
文发音的功能主要在SQL的宿主语言中完成,首先由SQL从数据库中检索出汉字,宿主语言
调用相应的方法得到其发音,再判断其是否满足发音条件[3] 。函数级查询一般需要更改数据
库结构用于保存发音信息,通过在数据库中自定义函数获得发音来实现查询[2, 4, 5] 。
原创力文档


文档评论(0)