地址信息抽取方法、装置、设备及存储介质与流程

文档序号:24824434发布日期:2021-04-27 15:35阅读:191来源:国知局
地址信息抽取方法、装置、设备及存储介质与流程

1.本发明涉及人工智能领域,尤其涉及一种地址信息抽取方法、装置、设备及存储介质。


背景技术:

2.相比人工客服,永远不知疲倦的“ai”智能电话营销机器人近些年深得中小微企业老板们的青睐。在营销场景中,对话机器人可能需要抽取客户话语中的地址信息,比如在信用卡核验身份的通话场景,会询问客户的地址并抽取出来与客户之前填写的地址比对。由于地址信息过长,客户口语化表达中经常出现夹杂语气词、中断、反复的现象。
3.市面上现有机器人使用到的技术不针对这种情况做优化,直接要求从整句话中抽取一个连续的文本片段作为地址,导致抽取结果不准确。由于一般模型要求标注的地址为连续文本片段,因此标注人员提供的训练数据标注存在只标注部分地址的错误,使得模型训练效果已经不好;即使使用容错性好的模型,可能准确抽取出地址中的某个片段,作为最终的地址输出,但仍然存在地址抽取不完整的问题。


技术实现要素:

4.本发明的主要目的在于解决现有的在业务过程中对用户口语中的地址信息抽取不完整的技术问题。
5.本发明第一方面提供了一种地址信息抽取方法,包括:
6.获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;
7.将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;
8.将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
9.若所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;
10.若所述备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
11.若是,则将相邻的备用地址片段进行连接,得到标准地址片段;
12.若否,则将所有所述备用地址片段提取出来,作为标准地址片段。
13.可选的,在本发明第一方面的第一种实现方式中,在所述获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本之前,还包括:
14.利用网页爬虫工具从预设的数据源中爬取原始地址数据;
15.从所述原始地址数据中筛选出字符长度为预设长度区间内的地址表述数据,并对
所述地址表述数据进行标注,得到模型训练数据;
16.根据所述模型训练数据和预设的神经网络,训练得到地址抽取模型。
17.可选的,在本发明第一方面的第二种实现方式中,所述根据所述模型训练数据和预设的神经网络,训练得到地址抽取模型包括:
18.将所述模型训练数据输入至所述神经网络中的嵌入层中,将所述模型训练数据中的每个字符转化为字向量;
19.将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入,得到所述模型训练数据的隐输出序列;
20.将所述隐输出序列输入至所述神经网络中的条件随机场层,预测所述模型训练数据中个字符的标注,并与所述模型训练数据原有的标注进行比对和迭代,得到最终预训练的地址抽取模型。
21.可选的,在本发明第一方面的第三种实现方式中,所述将所述模型训练数据输入至所述神经网络中的嵌入层中,将所述模型训练数据中的每个字符转化为字向量包括:
22.将所述模型训练数据中的每个字符转化独热码向量;
23.将所述模型训练数据的独热码向量通过预训练好的向量矩阵转化为低维稠密的字向量。
24.可选的,在本发明第一方面的第四种实现方式中,所述将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入,得到所述模型训练数据的隐输出序列包括:
25.将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入得到正向循环神经网络输出的隐状态序列和反向循环神经网络输出的隐状态序列;
26.将所述正向循环神经网络输出的隐状态序列和所述反向循环神经网络输出的隐状态序列进行拼接,得到完整的隐输出序列。
27.可选的,在本发明第一方面的第五种实现方式中,所述将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段包括:
28.建立初始为空的字符缓存区,按照所述口语文本的字符顺序处理所述口语文本中的每个字符;
29.将所述口语文本的第一字符存入所述字符缓存区,并确定所述第一字符的标注类型;
30.判断所述第一字符的标注类型与第二字符的标注类型是否相同;
31.若相同,则将所述第二字符存入所述字符缓存区;
32.若不相同,则将所述第一字符输出,并清空所述字符缓存区,并进行下一字符的处理;
33.将所述字符缓存区输出的相同且标注类型为地址标注的字符拼接,得到备用地址片段。
34.可选的,在本发明第一方面的第六种实现方式中,其特征在于,在所述获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本之后,还包括:
35.对所述口语文本进行分词处理,得到所述口语文本的每个字符;
36.将所述口语文本的每个字符中符合预设停用词库的字符删除。
37.本发明第二方面提供了一种地址信息抽取装置,包括:
38.语音获取模块,获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;
39.模型输入模块,用于将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;
40.字符拼接模块,用于将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
41.输出模块,用于当所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;
42.判断模块,用于当所述备用地址片段的数量大于一时,判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
43.片段连接模块,用于当相邻的备用地址片段之间的字符距离小于预设字符阈值,则将相邻的备用地址片段进行连接,得到标准地址片段;
44.片段提取模块,用于当相邻的备用地址片段之间的字符距离不小于预设字符阈值则将所有所述备用地址片段提取出来,作为标准地址片段。
45.可选的,在本发明第二方面的第一种实现方式中,所述地址抽取装置还包括模型训练模块,所述模型训练模块包括:
46.数据爬取单元,用于利用网页爬虫工具从预设的数据源中爬取原始地址数据;
47.标注单元,用于从所述原始地址数据中筛选出字符长度为预设长度区间内的地址表述数据,并对所述地址表述数据进行标注,得到模型训练数据;
48.训练单元,用于根据所述模型训练数据和预设的神经网络,训练得到地址抽取模型。
49.可选的,在本发明第二方面的第二种实现方式中,所述训练单元包括:
50.字向量子单元,用于将所述模型训练数据输入至所述神经网络中的嵌入层中,将所述模型训练数据中的每个字符转化为字向量;
51.输出序列子单元,用于将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入,得到所述模型训练数据的隐输出序列;
52.迭代子单元,用于将所述隐输出序列输入至所述神经网络中的条件随机场层,预测所述模型训练数据中个字符的标注,并与所述模型训练数据原有的标注进行比对和迭代,得到最终预训练的地址抽取模型。
53.可选的,在本发明第二方面的第三种实现方式中,所述字向量子单元具体用于:
54.将所述模型训练数据中的每个字符转化独热码向量;
55.将所述模型训练数据的独热码向量通过预训练好的向量矩阵转化为低维稠密的字向量。
56.可选的,在本发明第二方面的第四种实现方式中,所述输出序列子单元具体用于:
57.将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入得到正向循环神经网络输出的隐状态序列和反向循环神经网络输出的隐状态序列;
58.将所述正向循环神经网络输出的隐状态序列和所述反向循环神经网络输出的隐
状态序列进行拼接,得到完整的隐输出序列。
59.可选的,在本发明第二方面的第五种实现方式中,所述字符拼接模块具体用于:
60.建立初始为空的字符缓存区,按照所述口语文本的字符顺序处理所述口语文本中的每个字符;
61.将所述口语文本的第一字符存入所述字符缓存区,并确定所述第一字符的标注类型;
62.判断所述第一字符的标注类型与第二字符的标注类型是否相同;
63.若相同,则将所述第二字符存入所述字符缓存区;
64.若不相同,则将所述第一字符输出,并清空所述字符缓存区,并进行下一字符的处理;
65.将所述字符缓存区输出的相同且标注类型为地址标注的字符拼接,得到备用地址片段。
66.可选的,在本发明第二方面的第六种实现方式中,所述地址信息抽取模块还包括删词模块,所述删词模块具体用于:
67.对所述口语文本进行分词处理,得到所述口语文本的每个字符;
68.将所述口语文本的每个字符中符合预设停用词库的字符删除。
69.本发明第三方面提供了一种地址信息抽取设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述地址信息抽取设备执行上述的地址信息抽取方法的步骤。
70.本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的地址信息抽取方法的步骤。
71.本发明的技术方案中,获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;若所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;若所述备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;若是,则将相邻的备用地址片段进行连接,得到标准地址片段;若否,则将所有所述备用地址片段提取出来,作为标准地址片段。本发明使用rnn

crf神经网络对文本的所有字符做分类,判断每个字符是否为地址表达,可有效删除地址表述中夹杂的无关词;通过地址片段间的距离来判断是否连接两个地址片段,可处理同一个地址表述中断的情况;这些解决方案保证了地址抽取模块结果的准确与完整,解决了ai电话营销场景中长地址抽取模块的一大难题,使得ai电话机器人在保持工作热情、成本低的同时,地址抽取结果明显提升,减少人工复核的需求,以降低企业营销成本。此外,本发明还涉及区块链技术,语音数据可存储于区块链中。
附图说明
72.图1为本发明实施例中地址信息抽取方法的第一个实施例示意图;
73.图2为本发明实施例中地址信息抽取方法的第二个实施例示意图;
74.图3为本发明实施例中地址信息抽取方法的第三个实施例示意图;
75.图4为本发明实施例中地址信息抽取方法的第四个实施例示意图;
76.图5为本发明实施例中地址信息抽取装置的一个实施例示意图;
77.图6为本发明实施例中地址信息抽取装置的另一个实施例示意图;
78.图7为本发明实施例中地址信息抽取设备的一个实施例示意图。
具体实施方式
79.本发明的技术方案中,获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;若所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;若所述备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;若是,则将相邻的备用地址片段进行连接,得到标准地址片段;若否,则将所有所述备用地址片段提取出来,作为标准地址片段。本发明使用rnn

crf神经网络对文本的所有字符做分类,判断每个字符是否为地址表达,可有效删除地址表述中夹杂的无关词;通过地址片段间的距离来判断是否连接两个地址片段,可处理同一个地址表述中断的情况;这些解决方案保证了地址抽取模块结果的准确与完整,解决了ai电话营销场景中长地址抽取模块的一大难题,使得ai电话机器人在保持工作热情、成本低的同时,地址抽取结果明显提升,减少人工复核的需求,以降低企业营销成本。此外,本发明还涉及区块链技术,语音数据可存储于区块链中。
80.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
81.为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中地址信息抽取方法的第一个实施例包括:
82.101、获取业务过程中的用户的语音数据,并对语音数据进行语音识别,得到口语文本;
83.可以理解的是,本发明的执行主体可以为地址信息抽取装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
84.需要强调的是,为保证数据的私密和安全性,上述语音数据可以存储于一区块链的节点中。
85.在本实施例中,所述业务过程为电话营销过程,此外,所述业务过程也可以是企业在经营过程中需要获取通过用户的语言信息获取到用户地址的其他业务过程,本发明不做
限定。在本实施例中,电话营销的过程中,对话机器人可能需要抽取客户话语中的地址信息,比如在信用卡核验身份的通话场景,会询问客户的地址并抽取出来与客户之前填写的地址比对,首先需要将用户在电话营销过程中交流得语言转换成文字,并从这些文字中提取出需要的用户地址。
86.在本实施例中,对用户的语言进行语言识别使用到的主要是语言转文字技术,本实施例中语音转文字技术采用主要是asr技术。其中,asr(automatic speech recognition,自动语音识别技术)是一种将人的语音转换为文本的技术。具体地,在获取有效语音后,机器人对应的服务器采用asr技术,将有效语音转换为口语文本。其中,原口语文本指通过asr技术将有效语音转换成对应的文字形式的文本。由于口语语音是以语音的形式表达的,若业务人员直接通过听取的语音内容,进行地址的输入,不方便操作和保存,且处理速度慢。将用户语音转换为口语文本,以文本的形式表达出来,通过口语文本的方式对文本的内容直接进行提取,效率高。
87.102、将口语文本输入至预设的地址抽取模型中,通过地址抽取模型对口语文本中的每个字符进行标注,得到口语文本中的每个字符的标注类型,其中标注类型包括地址标注和非地址标注;
88.在本实施例中预设的地址抽取模型包括三层神经网络,分别为embedding层、basic rnn层和crf层,其中embedding层为嵌入层,通过embedding层能够将输入的模型训练数据中的每个字符映射成语义空间上的向量,字向量是对文本中各个字符的分布式表示,通过空间中的向量向计算机传达语义。basic rnn神经网络适用于序列标注任务,它针对输入序列中的每个字向量执行相同的运算,每步运算依赖于前一步的计算结果。因此rnn层会删除字向量中无用的特征,同时编码进上下文的特征,作为每个字符抽取的所有特征输出。充分理解整句话语义后,根据此层抽取出的语义特征,模型可判断哪些字属于语气词,哪些字属于关于地址的表述。条件随机场(conditional random fields)是一种判别式概率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列。条件随机场为具有无向的图模型,图中的顶点代表随机变量,顶点间的连线代表随机变量间的相依关系,在条件随机场中,随机变量y的分布为条件概率,给定的观察值则为随机变量x。原则上,条件随机场的图模型布局是可以任意给定的,一般常用的布局是链接式的架构,链接式架构不论在训练(training)、推论(inference)、或是解码(decoding)上,都存在效率较高的算法可供演算。rnn层输出的特征没有考虑前一步标签对当前步标签的影响,比如若前一个字为“地址”,则当前字也为地址的概率更高一些。因此在rnn的输出层拼接crf层(条件随机场),这样rnn的输出序列就变成了crf层的观测序列,然后crf计算整个序列在概率上的最优解,考虑到了序列标签之间的相互影响。
89.在本实施例中,所述地址抽取模型会对输入其中的口语文本中的每个字符进行标注,标注类型主要分为地址标注和非地址标注,其中地址标注代表该字符为地址表达,一般的,可以设定对字符标注为1为地址标注,对字符标注为0为非地址标注。例如对于文本“我家地址是,在太仓市上海,海东路一百六十八号”模型对该文本中的每个字符标注后,得到该文本的标注序列为“0 0 0 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1”。
90.103、将口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
91.在本实施例中,由于客户的语言存在语气词、标点符号和其他与地址无关的字符,使得地址与地址之间存在间隔,可以将这些与地址无关的字符进行删除,例如在文本“我家地址是,在太仓市上海,海东路一百六十八号”中“太仓市上海”的标注序列为“1 1 1 1 1”并且中间间隔着“,”的标注为“0”与后面的“海东路一百六十八号”不是连续的,故将“太仓市上海”作为一个备用地址片段,将“海东路一百六十八号”作为一个备用地址片段。
92.104、若备用地址片段的数量等于一,则将备用地址片段作为标准地址片段输出;
93.在本实施例中,备用地址片段的数量若等于一,说明用户在进行业务交流的过程中只说出了一段地址,并不存在由于语气词或者标点符号等间隔导致口语说出的地址模糊的情况,则直接将该该备用地址片段作为需要后续处理的标准地址片段输出即可。
94.105、若备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
95.106、若是,则将相邻的备用地址片段进行连接,得到标准地址片段;
96.107、若否,则将所有备用地址片段提取出来,作为标准地址片段。
97.在本实施例中,需要将各备用地址片段拼接成一个标注地址片段,例如,对于口语文本“嗯我家地址的话,我家地址是,在太仓市上海,海东路一百六十八号,呃对一百六十八号”一共抽取出三个备用地址片段,分别为“太仓市上海”“海东路一百六十八号”“一百六十八号”,对此例抽出的三个片段,片段“太仓市上海”的结束位置与片段“海东路一百六十八号”的开始位置只相距1个字符“,”,故判断为同一个地址的表述,因此连接两个地址片段;片段“海东路一百六十八号”的结束位置与片段“一百六十八号”的开始位置只相距3个字符,应为同一个地址的表述,因此应连接两个地址片段。若两个地址片段间相距较远,则视作是两个地址的表述,不做连接。通过对数据的统计分析,一般的,认为应连接距离不超过4个字符的地址片段为佳,根据不同的情况,字符阈值可以设置为不同的字符数值,本发明不做限定。
98.在本实施例中,对同一个地址的表述存在重复的情况,先删除重复段再连接两个文本片段。例如,在连接“太仓市上海”与“海东路一百六十八号”时,片段1的结尾“海”与片段2的开头“海”字重复,则删除重复的“海”字,再拼接“太仓市上”与“海东路一百六十八号”,得到“太仓市上海东路一百六十八号”。注意,对文本片段内不做重复检查,只在连接两个文本片段时执行此操作。另外,对相距较远的两个文本片段不会做连接操作,因此应视作两个地址的文本片段不会做重复检查与删除操作,不会误删不同地址的完整表达。
99.在本实施例中,通过获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;若所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;若所述备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;若是,则将相邻的备用地址片段进行连接,得到标准地址片段;若否,则将所有所述备用地址片段提取出来,作为标准地址片段。本发明使用rnn

crf神经网络对文本的所有字符做分类,判断每个字符是否为地址表达,可有效删除地址表述中夹杂的无关词;通过地址片段间的距离来判断是
否连接两个地址片段,可处理同一个地址表述中断的情况;这些解决方案保证了地址抽取模块结果的准确与完整,解决了ai电话营销场景中长地址抽取模块的一大难题,使得ai电话机器人在保持工作热情、成本低的同时,地址抽取结果明显提升,减少人工复核的需求,以降低企业营销成本。此外,本发明还涉及区块链技术,语音数据可存储于区块链中。
100.请参阅图2,本发明实施例中地址信息抽取方法的第二个实施例包括:
101.201、利用网页爬虫工具从预设的数据源中爬取原始地址数据;
102.202、从原始地址数据中筛选出字符长度为预设长度区间内的地址表述数据,并对地址表述数据进行标注,得到模型训练数据;
103.203、将模型训练数据中的每个字符转化独热码向量;
104.204、将模型训练数据的独热码向量通过预训练好的向量矩阵转化为低维稠密的字向量;
105.在本实施例中,所述独热码为one

hot,在将模型训练数据中的每个字符转化字向量的过程中需要先将模型训练数据中的每个字符转化one

hot向量,这是因为embedding层是以one

hot为输入、中间层节点数为词向量维数的全连接层,独热码向量通过预训练好的向量矩阵的向量矩阵转化为低维稠密的字向量,解决了词汇鸿沟和维度灾难的问题。
106.205、将字向量输入作为神经网络中的循环神经网络层各个时间步的输入得到正向循环神经网络输出的隐状态序列和反向循环神经网络输出的隐状态序列;
107.206、将正向循环神经网络输出的隐状态序列和反向循环神经网络输出的隐状态序列进行拼接,得到完整的隐输出序列;
108.在本实施例中,所述经过basic rnn层进行编码处理包括:basic rnn层自动提取句子特征,将一个句子的各个字的char embedding序列(x1,x2,x3,

,xn)作为basic rnn各个时间步的输入,再将正向rnn输出的隐状态序列与反向rnn的在各个位置输出的隐状态进行按位置拼接得到完整的隐输出序列:basic rnn层的输出为字的每一个标签分值,最后通过挑选标签分值最高的作为该字的标签。
109.207、将隐输出序列输入至神经网络中的条件随机场层,预测模型训练数据中个字符的标注,并与模型训练数据原有的标注进行比对和迭代,得到最终预训练的地址抽取模型;
110.在本实施例中需要先将所述模型训练数据中每个字符转化为one

hot向量,再将one

hot向量转换成字向量的形式,字向量是对文本中各个字符的分布式表示,通过空间中的低维向量向计算机传达语义。将模型训练数据输入至神经网络的embedding层的到字向量形式的输出后,将字向量输入至basic rnn层,basic rnn神经网络适用于序列标注任务,它针对输入序列中的每个字向量执行相同的运算,此处的运算是矩阵相乘,将高维矩阵线性映射为低维矩阵,矩阵的每一维表示一个特征,因此运算可删除无用特征。每步运算依赖于前一步的计算结果,同时编码进上下文的特征,此次的编码的具体实现是前一步的运算结果(此处为特征)作为下一步的输入。例如前一步对“上”字抽取出特征h_{t

1},下一步对“海”字抽取特征的运算为f(x_t,h_{t

1})=h_t,其中x_t为“海”字本身特征,f为运算使用的函数,h_t为“海”字最终抽取的特征。因此抽取当前步特征时,前一步的特征也参与运算,即所谓的“编码上文特征”。对下文特征进行类似操作。将编码进上下文的特征作为每个字
符抽取的所有特征输出。将basic rnn层的输入作为crf层的输入,basic rnn层输出的特征没有考虑前一步标签对当前步标签的影响,比如当前字为“一”,前面3个字“海东路”为地址标注,则“一百六十八号”大概率应为地址标注。因此在basic rnn的输出层拼接crf层(条件随机场),这样basic rnn的输出序列就变成了crf层的观测序列,然后crf计算整个序列在概率上的最优解,考虑到了序列标签之间的相互影响。crf的输出标签序列分别与输入地址的每个字符对应。
111.208、获取业务过程中的用户的语音数据,并对语音数据进行语音识别,得到口语文本;
112.209、将口语文本输入至预设的地址抽取模型中,通过地址抽取模型对口语文本中的每个字符进行标注,得到口语文本中的每个字符的标注类型,其中标注类型包括地址标注和非地址标注;
113.210、将口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
114.211、若备用地址片段的数量等于一,则将备用地址片段作为标准地址片段输出;
115.212、若备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
116.213、若是,则将相邻的备用地址片段进行连接,得到标准地址片段;
117.214、若否,则将所有备用地址片段提取出来,作为标准地址片段。
118.本实施例中的步骤208

214与第一实施例中的步骤101

107相似,此处不再赘述。
119.本实施例在上一实施例的基础上,增加了模型训练获得地址抽取模型的过程,通过利用网页爬虫工具从预设的数据源中爬取原始地址数据;从原始地址数据中筛选出字符长度为预设长度区间内的地址表述数据,并对地址表述数据进行标注,得到模型训练数据;根据模型训练数据和预设的神经网络,训练得到地址抽取模型,其中根据模型训练数据和预设的神经网络,训练得到地址抽取模型主要是通过将模型训练数据输入至神经网络中的嵌入层中,将模型训练数据中的每个字符转化为字向量;将字向量输入作为神经网络中的循环神经网络层各个时间步的输入,得到模型训练数据的隐输出序列;将隐输出序列输入至神经网络中的条件随机场层,预测模型训练数据中个字符的标注,并与模型训练数据原有的标注进行比对和迭代,得到最终预训练的地址抽取模型。本方法通过将文本中的字符转换为低维稠密的字向量,解决了词汇鸿沟和维度灾难的问题,同时通过rnn

crf神经网络训练得到的地址抽取模型能够对整句话的所有字符做分类,判断每个字符是否为地址表达,可有效删除地址表述中夹杂的无关词。
120.请参阅图3,本发明实施例中地址信息抽取方法的第三个实施例包括:
121.301、获取业务过程中的用户的语音数据,并对语音数据进行语音识别,得到口语文本;
122.302、将口语文本输入至预设的地址抽取模型中,通过地址抽取模型对口语文本中的每个字符进行标注,得到口语文本中的每个字符的标注类型,其中标注类型包括地址标注和非地址标注;
123.本实施例中的步骤301

302与第一实施例中的步骤101

102相似,此处不再赘述。
124.303、建立初始为空的字符缓存区,按照口语文本的字符顺序处理口语文本中的每
个字符;
125.304、将口语文本的第一字符存入字符缓存区,并确定第一字符的标注类型;
126.305、判断第一字符的标注类型与第二字符的标注类型是否相同;
127.306、若相同,则将第二字符存入字符缓存区;
128.307、若不相同,则将第一字符输出,并清空字符缓存区,并进行下一字符的处理;
129.308、将字符缓存区输出的相同且标注类型为地址标注的字符拼接,得到备用地址片段;
130.在本实施例中,设置有初始为空的字符缓存区,将进行标注后的口语文本中的字符按照文本本身的顺序存入字符缓存区中,例如对口语文本中“在太仓市上海,海东路一百六十八号,呃对一百六十八号”,首先将“在”置入字符缓存区中,并判断“在”与“太”是否为相同的标注类型,由于“在”与“太”的标注类型不同,所以将字符缓存区清空,并将“太”存入字符缓存区,并判断“太”与“仓”是否为相同的标注类型,由于“太”与“仓”的标注类型不相同,所以将字符缓存区中的“仓”置入字符缓存区,通过上诉步骤,将口语文本“在太仓市上海,海东路一百六十八号,呃对一百六十八号”划分为“太仓市上海”“海东路一百六十八号”“一百六十八号”三段备用地址片段。
131.309、若备用地址片段的数量等于一,则将备用地址片段作为标准地址片段输出;
132.310、若备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
133.311、若是,则将相邻的备用地址片段进行连接,得到标准地址片段;
134.312、若否,则将所有备用地址片段提取出来,作为标准地址片段。
135.本实施例在前实施例的基础上,详细将口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段的过程,通过建立初始为空的字符缓存区,按照口语文本的字符顺序处理口语文本中的每个字符;将口语文本的第一字符存入字符缓存区,并确定第一字符的标注类型;判断第一字符的标注类型与第二字符的标注类型是否相同;若相同,则将第二字符存入字符缓存区;若不相同,则将第一字符输出,并清空字符缓存区,并进行下一字符的处理;将字符缓存区输出的相同且标注类型为地址标注的字符拼接,得到备用地址片段。通过本方法,能够将连续相同的标注类型为地址标注的字符进行拼接,快速的得到至少一段备用地址片段。
136.请参阅图4,本发明实施例中地址信息抽取方法的第四个实施例包括:
137.401、获取业务过程中的用户的语音数据,并对语音数据进行语音识别,得到口语文本;
138.402、对口语文本进行分词处理,得到口语文本的每个字符;
139.403、将口语文本的每个字符中符合预设停用词库的字符删除;
140.在获得聊天语料后,需要对所述口语文本进行预处理,所述预处理主要包括分词处理以及基于预设的停用词库将分词处理后得到的分词组中的停用词进行删除,剩下的为有效字符,后续处理过程只需对有效字符进行处理即可,这样做的目的是为了减少后续模型处理的运算量。
141.在本实施例中,主要是通过结巴分词法对所述口语文本进行分词处理,结巴分词法为python的结巴分词模块,该方法支持精确模式、全模式和搜索引擎模式三种分词模式。
本发明采用具有词性标注功能的精确分词模式,方便后续进行停用词的删除,通过分词处理以及词性标注,对其中的形容词、副词、介词和动词进行删除。
142.本发明所述的停用词库可以是根据词性构建,例如数词、量词、代词、副词、介词、连词、助词、拟声词和标点的数据,在前面进行分词的过程中,通过结巴分词法的精确模式,可以对所述口语文本进行词性标注,在使用停用词库在所述口语文本中的停用词进行清除时可直接基于前面的词性标注进行上述词性的清除,同时根据不同需求可以增加停用词库的停用词数量,本发明用于地址抽取,所以某些动词也可以加入到停用词库中。
143.404、将口语文本输入至预设的地址抽取模型中,通过地址抽取模型对口语文本中的每个字符进行标注,得到口语文本中的每个字符的标注类型,其中标注类型包括地址标注和非地址标注;
144.405、将口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
145.406、若备用地址片段的数量等于一,则将备用地址片段作为标准地址片段输出;
146.407、若备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
147.408、若是,则将相邻的备用地址片段进行连接,得到标准地址片段;
148.409、若否,则将所有备用地址片段提取出来,作为标准地址片段。
149.本实施例在前实施例的基础上,增加了对口语文本中的部分停用词的字符进行删除的过程,通过对所述口语文本进行分词处理,得到所述口语文本的每个字符;将所述口语文本的每个字符中符合预设停用词库的字符删除。通过本方法,能够将口语文本中的部分停用词去除,例如用户的口语中的部分语气词,能够减少后续模型处理的运算量。
150.上面对本发明实施例中地址信息抽取方法进行了描述,下面对本发明实施例中地址信息抽取装置进行描述,请参阅图5,本发明实施例中地址信息抽取装置一个实施例包括:
151.语音获取模块501,获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;
152.模型输入模块502,用于将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;
153.字符拼接模块503,用于将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
154.输出模块504,用于当所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;
155.判断模块505,用于当所述备用地址片段的数量大于一时,判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
156.片段连接模块506,用于当相邻的备用地址片段之间的字符距离小于预设字符阈值,则将相邻的备用地址片段进行连接,得到标准地址片段;
157.片段提取模块507,用于当相邻的备用地址片段之间的字符距离不小于预设字符阈值则将所有所述备用地址片段提取出来,作为标准地址片段。
158.需要强调的是,为保证数据的私密和安全性,上述语音数据可以存储于一区块链的节点中。
159.本发明实施例中,所述地址信息抽取装置运行上述地址信息抽取方法,所述地址信息抽取方法包括:获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;若所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;若所述备用地址片段的数量大于一,则判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;若是,则将相邻的备用地址片段进行连接,得到标准地址片段;若否,则将所有所述备用地址片段提取出来,作为标准地址片段。本发明使用rnn

crf神经网络对文本的所有字符做分类,判断每个字符是否为地址表达,可有效删除地址表述中夹杂的无关词;通过地址片段间的距离来判断是否连接两个地址片段,可处理同一个地址表述中断的情况;这些解决方案保证了地址抽取模块结果的准确与完整,解决了ai电话营销场景中长地址抽取模块的一大难题,使得ai电话机器人在保持工作热情、成本低的同时,地址抽取结果明显提升,减少人工复核的需求,以降低企业营销成本。此外,本发明还涉及区块链技术,语音数据可存储于区块链中。
160.请参阅图6,本发明实施例中地址信息抽取装置的第二个实施例包括:
161.语音获取模块501,获取业务过程中的用户的语音数据,并对所述语音数据进行语音识别,得到口语文本;
162.模型输入模块502,用于将所述口语文本输入至预设的地址抽取模型中,通过所述地址抽取模型对所述口语文本中的每个字符进行标注,得到所述口语文本中的每个字符的标注类型,其中所述标注类型包括地址标注和非地址标注;
163.字符拼接模块503,用于将所述口语文本中连续相同的标注类型为地址标注的字符进行拼接,得到至少一段备用地址片段;
164.输出模块504,用于当所述备用地址片段的数量等于一,则将所述备用地址片段作为标准地址片段输出;
165.判断模块505,用于当所述备用地址片段的数量大于一时,判断相邻的备用地址片段之间的字符距离是否小于预设字符阈值;
166.片段连接模块506,用于当相邻的备用地址片段之间的字符距离小于预设字符阈值,则将相邻的备用地址片段进行连接,得到标准地址片段;
167.片段提取模块507,用于当相邻的备用地址片段之间的字符距离不小于预设字符阈值则将所有所述备用地址片段提取出来,作为标准地址片段。
168.其中,所述地址抽取装置还包括模型训练模块508,所述模型训练模块508包括:
169.数据爬取单元5081,用于利用网页爬虫工具从预设的数据源中爬取原始地址数据;
170.标注单元5082,用于从所述原始地址数据中筛选出字符长度为预设长度区间内的地址表述数据,并对所述地址表述数据进行标注,得到模型训练数据;
171.训练单元5083,用于根据所述模型训练数据和预设的神经网络,训练得到地址抽
取模型。
172.其中,所述训练单元5083包括:
173.字向量子单元50831,用于将所述模型训练数据输入至所述神经网络中的嵌入层中,将所述模型训练数据中的每个字符转化为字向量;
174.输出序列子单元50832,用于将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入,得到所述模型训练数据的隐输出序列;
175.迭代子单元50833,用于将所述隐输出序列输入至所述神经网络中的条件随机场层,预测所述模型训练数据中个字符的标注,并与所述模型训练数据原有的标注进行比对和迭代,得到最终预训练的地址抽取模型。
176.可选的,所述字向量子单元50831具体用于:
177.将所述模型训练数据中的每个字符转化独热码向量;
178.将所述模型训练数据的独热码向量通过预训练好的向量矩阵转化为低维稠密的字向量。
179.可选的,所述输出序列子单元50832具体用于:
180.将所述字向量输入作为所述神经网络中的循环神经网络层各个时间步的输入得到正向循环神经网络输出的隐状态序列和反向循环神经网络输出的隐状态序列;
181.将所述正向循环神经网络输出的隐状态序列和所述反向循环神经网络输出的隐状态序列进行拼接,得到完整的隐输出序列。
182.可选的,所述字符拼接模块503具体用于:
183.建立初始为空的字符缓存区,按照所述口语文本的字符顺序处理所述口语文本中的每个字符;
184.将所述口语文本的第一字符存入所述字符缓存区,并确定所述第一字符的标注类型;
185.判断所述第一字符的标注类型与第二字符的标注类型是否相同;
186.若相同,则将所述第二字符存入所述字符缓存区;
187.若不相同,则将所述第一字符输出,并清空所述字符缓存区,并进行下一字符的处理;
188.将所述字符缓存区输出的相同且标注类型为地址标注的字符拼接,得到备用地址片段。
189.其中,所述地址信息抽取模块还包括删词模块509,所述删词模块509具体用于:
190.对所述口语文本进行分词处理,得到所述口语文本的每个字符;
191.将所述口语文本的每个字符中符合预设停用词库的字符删除。
192.本实施例在上一实施例的基础上,详细描述了各个模块的具体功能以及部分模块的单元构成,通过本装置,使用rnn

crf神经网络对文本的所有字符做分类,判断每个字符是否为地址表达,可有效删除地址表述中夹杂的无关词;通过地址片段间的距离来判断是否连接两个地址片段,可处理同一个地址表述中断的情况;这些解决方案保证了地址抽取模块结果的准确与完整,解决了ai电话营销场景中长地址抽取模块的一大难题,使得ai电话机器人在保持工作热情、成本低的同时,地址抽取结果明显提升,减少人工复核的需求,以降低企业营销成本。
193.上面图5和图6从模块化功能实体的角度对本发明实施例中的中地址信息抽取装置进行详细描述,下面从硬件处理的角度对本发明实施例中地址信息抽取设备进行详细描述。
194.图7是本发明实施例提供的一种地址信息抽取设备的结构示意图,该地址信息抽取设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对地址信息抽取设备700中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在地址信息抽取设备700上执行存储介质730中的一系列指令操作,以实现上述地址信息抽取方法的步骤。
195.地址信息抽取设备700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口760,和/或,一个或一个以上操作系统731,例如windows serve,mac os x,unix,linux,freebsd等等。本领域技术人员可以理解,图7示出的地址信息抽取设备结构并不构成对本申请提供的地址信息抽取设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
196.本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
197.本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述地址信息抽取方法的步骤。
198.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统或装置、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
199.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
200.以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些
修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1