一种地址字符串的分词方法及装置与流程

文档序号:23717830发布日期:2021-01-24 06:20阅读:156来源:国知局
一种地址字符串的分词方法及装置与流程

[0001]
本申请属于字符串处理技术领域,设计一种地址字符串的分词方法及装置。


背景技术:

[0002]
在智能客服系统中,经常遇到需要获取用户地址的场景,此时需要快速准确地获取到用户的地址字符串中的有效信息,从而转换成真实定位和具体地址信息。通常的地址字符串包含了国家、省、市、区(县),街道、道路名称、建筑物名称、单元楼、门牌号等信息。
[0003]
但是,由于地址字符串没有固定的格式,使用传统的分词工具不能快速准确地进行分词,尤其是在处理长地址字符串时,往往需要耗费大量时间与人力成本进行人工填写,效率很低。


技术实现要素:

[0004]
针对上述问题,本发明提供一种地址字符串的分词方法及装置,来对地址字符串进行分词处理,以快速准确地获取地址字符串中的有效信息。
[0005]
基于上述目的,本申请提供的技术方案如下:一种地址字符串的分词方法,包括以下步骤:根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测;使用平滑优化算法提升所述状态预测的准确率;将概率最大的所述状态预测的结果转换为具体的地址信息。
[0006]
优选地,所述根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测,包括:将所述基础地址库的数据作为训练数据,对所述地址字符串,使用所述隐马尔可夫模型hmm统计隐状态到隐状态的转移概率,得出状态转移矩阵,并统计隐状态到观测状态的概率,得出状态发射矩阵。
[0007]
优选地,所述使用平滑优化算法提升所述状态预测的准确率,包括:使用绝对平滑算法对所述状态转移矩阵进行平滑优化,为概率为0的状态转移事件赋值。
[0008]
优选地,所述将概率最大的所述状态预测的结果转换为具体的地址信息,包括:使用维特比算法计算概率最大的状态路径,得出所述地址字符串的最终预测状态序列,作为所述状态预测的结果;将所述最终预测状态序列转换为具体地址信息。一种地址字符串的分词装置,包括:预测模块,用于根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测;优化模块,用于使用平滑优化算法提升所述状态预测的准确率;转换模块,用于将概率最大的所述状态预测的结果转换为具体的地址信息。
[0009]
优选地,所述预测模块,具体用于:将所述基础地址库的数据作为训练数据,对所述地址字符串,使用所述隐马尔可夫模型hmm统计隐状态到隐状态的转移概率,得出状态转移矩阵,并统计隐状态到观测状态的概率,得出状态发射矩阵。
[0010]
优选地,所述优化模块,具体用于:使用绝对平滑算法对所述状态转移矩阵进行平滑优化,为概率为0的状态转移事件赋值。
[0011]
优选地,所述转换模块,具体用于:使用维特比算法计算概率最大的状态路径,得出所述地址字符串的最终预测状态序列,作为所述状态预测的结果;将所述最终预测状态序列转换为具体地址信息。
[0012]
应用上述本申请提供的一种地址字符串的分词方法及装置,根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测;使用平滑优化算法提升所述状态预测的准确率;将概率最大的所述状态预测的结果转换为具体的地址信息。本申请以hmm模型作为基础,将长地址字符串视为一个观测序列,通过学习基础地址库中的状态转移规律,得出一个适用于中文地址分词标注的模型,并采用了平滑优化算法提升预测的准确率,计算结果可以得出该地址的状态序列,将概率最大的结果作为最终的地址分词方案。解决了在面对长地址字符串的场景下,存在的传统人工识别,录入地址的低效问题,降低了人力时间成本,提升了效率。该方法不仅适用于电信领域的智能客服系统,还适用于其他具有地址分词相似场景的垂直领域。
附图说明
[0013]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0014]
图1为本申请提供的一种地址字符串的分词方法的流程示意图;图2为本申请提供的隐马尔可夫模型hmm的示意图;图3为本申请提供的一种地址字符串的分词方法的具体计算流程图;图4为本申请提供的维特比算法的示意图;图5为本申请提供的一种地址字符串的分词装置的结构示意图。
具体实施方式
[0015]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0016]
下面,将通过具体实施例对本申请的方案做具体阐述:图1为本申请提供的一种地址字符串的分词方法的流程示意图。
[0017]
请参照图1所示,本申请实施例提供的一种地址字符串的分词方法,包括:s100:根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测;图2为本申请提供的隐马尔可夫模型hmm的示意图;隐马尔可夫模型(hidden markov model,后文简称hmm)是基于统计学的模型,用来描述一个含有隐含未知参数的马尔科夫过程,其目的是从可观察的序列结果来推断隐含的参数,然后根据这些隐含参数确定的模型对数据进一步分析。使用马尔可夫模型一般需要满足一点假设,即马尔科夫过程的条件概率仅取决于系统的当前状态和上一个状态,而与它的历史或未来的状态是相互独立的,该假设可以被描述为:使用hmm模型可以有效解决从可观测序列推断隐含状态的问题。
[0018]
本申请实施例中,所述根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测,具体可以包括:将所述基础地址库的数据作为训练数据,对所述地址字符串,使用所述隐马尔可夫模型hmm统计隐状态到隐状态的转移概率,得出状态转移矩阵transition matrix,并统计隐状态到观测状态的概率,得出状态发射矩阵emission matrix。
[0019]
图3为本申请提供的一种地址字符串的分词方法的具体计算流程图;在数据处理时,本申请可以使用基础地址库的地址数据作为训练数据,统计状态转移概率,生成一个m
×
m的状态转移矩阵,如表1所示,其中代表状态的下一个状态是的概率,除了包括国家、省市名称之外还包括[start]、[end]、[unk]等特殊标志符。同时生成一个m x n的状态发射概率矩阵,如表2所示,其中代表状态的观测值是的概率。
[0020]
对于输入地址字符串,需要做预分词,例如:输入:“中国江苏省南京市雨花台区尤家凹08号(软件大道西)1号楼5楼”分词后:[“<start>”,“中国”,“江苏”,
ꢀ“
省”,“南京”,“市”,“雨花台”,“区”,
ꢀ“
尤家凹”,“08”,“号”,“(”,“软件”,“大道”,“西”,“)”,“1”,“号”,“楼”,“5”,
ꢀ“
楼”,“<end>”]转换为向量:[0,28543,19295,4338,15784,4843,10532,15647,15528,27364,8349,23762,5553, 20741,13727,12201,31391,13304,25485,27535,10962,1]分词后的列表中的元素可计为symbol,每一个symbol都应有一个下标,该下标与矩阵中的下标对应,因此可用向量来表达输入语句。
[0021]
表1 transition矩阵示意
表2 emission矩阵示意s200:使用平滑优化算法提升所述状态预测的准确率;在本申请实施例中,使用绝对平滑算法替代传统的add-1平滑算法可以改善矩阵的稀疏性。
[0022]
所述使用平滑优化算法提升所述状态预测的准确率,具体可以包括:使用绝对平滑算法absolute discounting对所述状态转移矩阵进行平滑优化,为概率为0的状态转移事件赋值。
[0023]
计算出转移矩阵和发射矩阵后,需要进一步对数据进行平滑优化,其原因是该矩阵存在大量的事件概率为0,而当使用概率模型进行累乘运算时,一个概率为0的事件会使整个事件的概率变为零。
[0024]
在进行数据平滑时,本方法中采用了绝对平滑算法将矩阵中概率为0的事件赋于一个极小的概率。用数学语言可以描述为:一个极小的概率。用数学语言可以描述为:是状态发射的概率。
[0025]
是该状态下发射数量大于0的观测值的个数。
[0026]
,其中ts是该状态下发射的观测值的总数。
[0027]
s300:将概率最大的所述状态预测的结果转换为具体的地址信息。
[0028]
图4为本申请提供的维特比算法的示意图;在本申请实施例中,所述将概率最大的所述状态预测的结果转换为具体的地址信息,具体可以包括:使用维特比算法viterbi algorithm计算概率最大的状态路径,得出所述地址字符串的最终预测状态序列,作为所述状态预测的结果;
将所述最终预测状态序列转换为具体地址信息。
[0029]
数据准备完成后,在计算时,可以将地址分词问题定义为当观测序列为
ꢀꢀ
时,求隐含状态序列最有可能的情况,即:根据贝叶斯公式,可以将公式进行化简:根据贝叶斯公式,可以将公式进行化简:根据贝叶斯公式,可以将公式进行化简:因为因为化简可得:其中是发射概率,是状态转移概率,为了减少计算的时间复杂度,可以使用回溯法来做计算。此外,由于概率都是小于1的小数,累乘往往会导致计算结果非常趋近于0,因此,在实际计算中,采用了对数做累加的方法:算结果非常趋近于0,因此,在实际计算中,采用了对数做累加的方法:如表3所示,在每一个状态累计概率中都记录上一个状态累计概率的最大值以及路径,在最后一步中回溯找回最大概率的隐藏状态路径。输出的最大概率状态路径是一个一维向量,如:[1,7,21,22,2,21,22,22,15,14,13,22,11,20,24,12,3,7,11,17],通过查找隐藏状态字典可以得出最终的隐藏状态序列。
[0030]
表3 viterbi计算最佳路径示意
当输入序列为“中国江苏省南京市雨花台区尤家凹08号(软件大道西)1号楼5楼”,相应的输出序列为:[“<start>”,“na”,“prn”,
ꢀ“
pr”,“ctn”,“ct”,“disn”,“dis”,“rdn”,
ꢀ“
rdnum”,“rd”,“br”,“rdn”,“rdn”,“dir”,“br”,“bunum”,“bu”,
ꢀ“
bu”,“flnum”,“fl”,“<end>”],由此可以准确得出地址字符串的具体信息,例如,[“道路名称”:“尤家凹”,“道路号码”:“08”,

],从而实现高准确率、高效地识别地址并定位。
[0031]
本申请实施例以hmm模型作为基础,可以将长地址字符串视为一个观测序列,通过学习标准地址库中的状态转移规律,得出一个适用于中文地址分词标注的模型,并采用了平滑优化算法提升预测的准确率,计算结果可以得出该地址的状态序列,将概率最大的即得分最高的结果作为最终的地址分词方案。
[0032]
本申请实施例可以针对电信智能客服系统中存在遇到长地址字符串的场景,其特点在于根据基础地址库或者地址词典的数据,通过使用hmm模型做状态推测,从而对长地址字符串进行分词标注,根据用户输入的地址,可以准确获取到地址字符串中各个词语的标注信息,从而实现从长地址字符串中精确得出具体的地址信息。解决了在面对长地址字符串的场景下,存在传统人工识别,录入地址的低效问题,节省了人工识别录入的时间成本,降低了人力时间成本,提高了生产效率。该方法不仅适用于电信领域的智能客服系统,还适用于其他具有地址分词相似场景的垂直领域。
[0033]
图5为本申请提供的一种地址字符串的分词装置的结构示意图。
[0034]
请参照图5所示,本申请实施例提供的一种地址字符串的分词装置,包括:预测模块1,用于根据基础地址库的数据,使用隐马尔可夫模型hmm对地址字符串进行状态预测;优选地,所述预测模块1,具体用于:将所述基础地址库的数据作为训练数据,对所述地址字符串,使用所述隐马尔可夫模型hmm统计隐状态到隐状态的转移概率,得出状态转移矩阵,并统计隐状态到观测状态的概率,得出状态发射矩阵。
[0035]
优化模块2,用于使用平滑优化算法提升所述状态预测的准确率;优选地,所述优化模块2,具体用于:使用绝对平滑算法对所述状态转移矩阵进行平滑优化,为概率为0的状态转移事件赋值。
[0036]
转换模块3,用于将概率最大的所述状态预测的结果转换为具体的地址信息。
[0037]
优选地,所述转换模块3,具体用于:
使用维特比算法计算概率最大的状态路径,得出所述地址字符串的最终预测状态序列,作为所述状态预测的结果;将所述最终预测状态序列转换为具体地址信息。
[0038]
本申请实施例提供的地址字符串的分词装置与上文方法实施例中的地址字符串的分词方法相对应,可以彼此参照,此处不再详细阐述。
[0039]
本申请实施例以hmm模型作为基础,可以将长地址字符串视为一个观测序列,通过学习标准地址库中的状态转移规律,得出一个适用于中文地址分词标注的模型,并采用了平滑优化算法提升预测的准确率,计算结果可以得出该地址的状态序列,将概率最大的即得分最高的结果作为最终的地址分词方案。
[0040]
本申请实施例可以针对电信智能客服系统中存在遇到长地址字符串的场景,其特点在于根据基础地址库或者地址词典的数据,通过使用hmm模型做状态推测,从而对长地址字符串进行分词标注,根据用户输入的地址,可以准确获取到地址字符串中各个词语的标注信息,从而实现从长地址字符串中精确得出具体的地址信息。解决了在面对长地址字符串的场景下,存在传统人工识别,录入地址的低效问题,节省了人工识别录入的时间成本,降低了人力时间成本,提高了生产效率。该方法不仅适用于电信领域的智能客服系统,还适用于其他具有地址分词相似场景的垂直领域。
[0041]
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0042]
最后,还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0043]
以上对本发明所提供的一种地址字符串的分词方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1