首页 > 乐器声学 专利正文
一种文本处理方法及装置与流程

时间:2022-02-18 阅读: 作者:专利查询

一种文本处理方法及装置与流程

1.本技术涉及计算机技术领域,特别是涉及一种文本处理方法及装置。


背景技术:

2.用户在享用网络上的一些服务时,有时候会遇到一些问题需要咨询,随着技术的飞速发展,越来越多的网络平台使用自动客服系统来解答用户的咨询。
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.所述统计机器学习模型包括:logistic回归分析模型、贝叶斯模型以及线性回归模型;
47.所述深度学习模型包括:卷积神经网络cnn,循环神经网络rnn以及深度信念网络dbn。
48.第二方面,本技术示出了一种文本处理装置,应用于电子设备,所述装置包括:
49.接收模块,用于接收用户输入的语音;
50.第一获取模块,用于获取所述语音的识别文本和引导文本;
51.第二获取模块,用于获取所述识别文本的第一拼音,以及,第三获取模块,用于获取所述引导文本的第二拼音;
52.纠错模块,用于基于所述第一拼音、所述第二拼音以及所述引导文本,对所述识别文本进行纠错。
53.在一个可选的实现方式中,所述第二获取模块包括:
54.第一拆分子模块,用于将所述识别文本拆分为多个识别文本块;
55.第一获取子模块,用于分别获取每一个识别文本块的识别拼音;
56.所述第三获取模块包括:
57.第二拆分子模块,用于将所述引导文本拆分为多个引导文本块;
58.第二获取子模块,用于分别获取每一个引导文本块的引导拼音。
59.在一个可选的实现方式中,所述纠错模块包括:
60.第三获取子模块,用于对于每一个识别文本块的识别拼音,获取所述识别文本块的识别拼音分别与各个引导文本块的引导拼音之间的差异程度;
61.第一选择子模块,用于在最小的差异程度大于预设阈值的情况下,依照差异程度由低至高的顺序选择预设数量个差异程度对应的引导文本块;
62.替换子模块,用于使用选择的引导文本块分别替换所述识别文本中的所述识别文本块,得到多个替换后的识别文本;
63.第四获取子模块,用于获取每一个替换后的识别文本的困惑度;
64.第二选择子模块,用于选择困惑度最小的替换后的识别文本作为识别文本的纠错版本。
65.在一个可选的实现方式中,所述第三获取子模块包括:
66.第一获取单元,用于对于每一个引导文本块的引导拼音,获取所述识别文本块的识别拼音的声母与所述引导文本块的引导拼音的声母之间的第一差异;
67.第二获取单元,用于获取所述识别文本块的识别拼音的韵母与所述引导文本块的引导拼音的韵母之间的第二差异;
68.第三获取单元,用于获取所述识别文本块的识别拼音的声调与所述引导文本块的
引导拼音的声调之间的第三差异;
69.第四获取单元,用于获取所述识别文本块的识别拼音与所述引导文本块的引导拼音之间的编辑距离;
70.第五获取单元,用于根据所述第一差异、所述第二差异、所述第三差异以及所述编辑距离获取所述差异程度。
71.在一个可选的实现方式中,所述第一获取单元包括:
72.第一获取子单元,用于获取所述识别文本块的识别拼音中的各个声母的第一向量以及所述引导文本块的引导拼音中的各个声母的第二向量;
73.第一计算子单元,用于计算所述第一向量与所述第二向量之间的余弦距离,并作为所述第一差异。
74.在一个可选的实现方式中,所述第一获取子单元具体用于:在语音差异确定模型的网络参数中提取所述第一向量和所述第二向量;其中,所述语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
75.在一个可选的实现方式中,所述第二获取单元包括:
76.第二获取子单元,用于获取所述识别文本块的识别拼音中的各个韵母的第三向量以及所述引导文本块的引导拼音中的各个韵母的第四向量;
77.第二计算子单元,用于计算所述第三向量与所述第四向量之间的余弦距离,并作为所述第二差异。
78.在一个可选的实现方式中,所述第二子单元具体用于:在语音差异确定模型的网络参数中提取所述第三向量和所述第四向量;其中,所述语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
79.在一个可选的实现方式中,所述第三获取单元包括:
80.第三获取子单元,用于获取所述识别文本块的识别拼音中的各个声调的第五向量以及所述引导文本块的引导拼音中的各个声调的第六向量;
81.第三计算子单元,用于计算所述第五向量与所述第六向量之间的余弦距离,并作为所述第三差异。
82.在一个可选的实现方式中,所述第三获取子单元具体用于:在语音差异确定模型的网络参数中提取所述第五向量和所述第六向量;其中,所述语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
83.在一个可选的实现方式中,所述待训练模型包括:统计机器学习模型以及深度学习模型;
84.所述统计机器学习模型包括:logistic回归分析模型、贝叶斯模型以及线性回归模型;
85.所述深度学习模型包括:卷积神经网络cnn,循环神经网络rnn以及深度信念网络dbn。
86.第三方面,本技术示出了一种电子设备,所述电子设备包括:
87.处理器;和
88.存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如第一方面所述的文本处理方法。
89.第四方面,本技术示出了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如第一方面所述的文本处理方法。
90.与现有技术相比,本技术实施例包括以下优点:
91.在本技术中,接收用户输入的语音;获取语音的识别文本和引导文本;获取识别文本的第一拼音以及获取引导文本的第二拼音;基于第一拼音、第二拼音以及引导文本,对识别文本进行纠错。
92.在本技术中,由于用户是基于电子设备输出的引导文本而向电子设备输入语音的,因此,电子设备输出的引导文本的内容与用户在电子设备上输入的语音的内容是有内在逻辑关联以及内在内容关联的,因此,可以基于第一拼音、第二拼音以及引导文本对识别文本进行纠错,以使纠错后的识别文本可以为用户所要表达内容对应的文本,之后可以基于纠错后的识别文本确定识别用户的意图,并根据该咨询意图给用户相应的回复,从而使得电子设备之后向用户输出的回复的内容与用户实际想要的对话内容相符合,进而就可以解决用户的问题,以提高用户体验。
附图说明
93.图1是本技术一示例性实施例示出的一种文本处理方法的流程示意图。
94.图2是本技术一示例性实施例示出的一种文本处理方法的流程示意图。
95.图3是本技术一示例性实施例示出的一种获取拼音之间的差异程度的方法的流程示意图。
96.图4是本技术一示例性实施例示出的一种文本处理装置的结构框图。
97.图5是本技术一实施例提供的装置的结构示意图。
具体实施方式
98.为使本技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本技术作进一步详细的说明。
99.参照图1,示出了本技术一种文本处理方法的流程示意图,该方法应用于电子设备中,该方法可以包括:
100.在步骤s101中,接收用户输入的语音;
101.在本技术中,在人机对话场景中,用户可以向电子设备输入语音,电子设备接收用户输入的语音。
102.在步骤s102中,获取语音的识别文本和引导文本;
103.其中,可以将用户输入的语音转换为识别文本,以实现获取语音的识别文本。
104.在本技术中,可以基于asr(automatic speech recognition,自动语音识别)技术对语音进行语音识别,得到识别文本,然后基于识别文本与用户继续对话。
105.然而,基于asr技术识别对语音识别,有时候可能会出现识别错误的情况,会导致基于asr技术识别出的识别文本并不是用户所要表达的文本。
106.例如,有时候,用户输入的语音可能并不全是基于普通话的标准输入的语音,而夹杂着一些方言,但是asr技术是基于普通话的标准来识别语音的,从而可能会导致基于asr技术识别出的文本并不是用户所要表达的文本。
107.例如,假设,在用户与电子设备在关于应用程序的对话场景中,电子设备需要询问用户是需要下载应用程序还是安装应用程序,则电子设备可以输出一段文本“需要下载还是安装应用程序”。假设用户想要下载应用程序,用户可以向电子设备输入语音“下载”,但是由于其说话的方言,用户的发音不是文本“下载”对应的拼音“xia zai”,而说成了“xie zai”。之后电子设备基于asr技术对“xie zai”对应的语音识别,得到的文本就可能是“卸载”,而不是“下载”,之后电子设备会基于“卸载”与用户继续对话,而不是基于“下载”与用户继续对话,从而导致电子设备之后向用户输出的对话内容与用户实际想要的对话内容不符,导致用户体验较低。
108.因此,为了提高用户体验,在本技术中,可以基于步骤s102至步骤s104的流程对识别文本进行纠错,具体可以参见之后的详细描述,在此不做详述。
109.其中,引导文本包括用户在输入该语音时所基于的文本等,引导文本可以是在用户输入语音之前电子设备向用户输出的;
110.在本技术中,在人机对话场景中,为了提高对话效率,电子设备可以对用户输出引导文本,引导文本包括在电子设备与用户对话的过程中,电子设备向用户输出的识别文本。
111.例如,在电子设备与用户对话的过程中,电子设备向用户输出对话1,用户在基于电子设备输出的对话1在电子设备上输入对话2,电子设备再基于用户输出的对话2继续向用户输出对话3,然后用户再基于电子设备输出的对话3继续在电子设备上输入对话4,以此类推,直至对话结束为止。
112.其中,用户在输入语音时所基于的引导文本也可以包括在用户在电子设备上输入语音之前电子设备最近一次向用户输出的识别文本等。
113.例如,在上述例子中电子设备输出的一段文本“需要下载还是安装应用程序”可以为引导文本,用户基于引导文本与电子设备对话,例如,基于引导文本在电子设备上输入语音,然后电子设备接收用户输入的语音。例如,在上述例子中,假设用户想要下载应用程序,用户可以向电子设备输入用于指示下载应用程序的语音。
114.其中,在本技术中,用户是基于电子设备输出的引导文本而向电子设备输入语音的,因此,电子设备输出的引导文本的内容与用户在电子设备上输入的语音的内容是有内在逻辑关联以及内在内容关联的。
115.所以,在本技术中,可以基于电子设备输出的引导文本来确定电子设备基于asr技术识别出的语音对应的识别文本是否有误,如果有误,则可以基于引导文本对识别文本纠错。因此,在步骤s102之后,电子设备可以获取用户在输入语音时所基于的引导文本,然后执行步骤s103。
116.在步骤s103中,获取识别文本的第一拼音以及获取引导文本的第二拼音;
117.在本技术中,识别文本中可以包括多个汉字,引导文本中也可以包括多个汉字。
118.在本技术一个实施例中,在获取识别文本的第一拼音时,可以将识别文本拆分为多个识别文本块,每一个识别文本块中包括至少一个汉字,然后分别获取每一个识别文本块的对话拼音。例如,对于任意一个识别文本块,获取该识别文本块中的每一个汉字的拼
音,然后组合为该识别文本块的对话拼音,对于其他每一个识别文本块,同样如此。
119.其中,在将识别文本拆分为多个识别文本块时,在一个方式中,可以按照语义将识别文本分词,得到多个词汇,并分别作为识别文本块。或者,在另一个方式中,可以按照包括的汉字的数量将识别文本拆分,得到多个识别文本块,例如,在识别文本中,将每n个汉字组成的文本分别作为一个识别文本块,n大于或等于1,n可以根据实际情况来确定,本技术对n的数值不做限定。
120.例如,在上述例子中,识别文本为“卸载”,将每2个汉字组成的文本分别作为一个识别文本块,如此得到一个识别文本块“卸载”,获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”。
121.在本技术另一个实施例中,在获取引导文本的第二拼音时,可以将引导文本拆分为多个引导文本块,每一个引导文本块中包括至少一个汉字,然后分别获取每一个引导文本块的引导拼音。
122.例如,对于任意一个引导文本块,获取该引导文本块中的每一个汉字的拼音,然后组合为该引导文本块的引导拼音,对于其他每一个引导文本块,同样如此。
123.其中,在将引导文本拆分为多个引导文本块时,在一个方式中,可以按照语义将引导文本分词,得到多个词汇,并分别作为引导文本块。或者,在另一个方式中,可以按照包括的汉字的数量将引导文本拆分,得到多个引导文本块,例如,在引导文本中,将每n个汉字组成的文本分别作为一个引导文本块,n大于或等于1,n可以根据实际情况来确定,本技术对n的数值不做限定。
124.例如,在上述例子中,引导文本为“需要下载还是安装应用程序”,将每2个汉字组成的文本分别作为一个引导文本块,得到的引导文本块,分别为:“需要”“下载”“还是”“安装”“应用”以及“程序”,获取引导文本块“需要”的引导拼音“x
ǖ
y
à
o”,获取引导文本块“下载”的引导拼音“xi
à
z
ǎ
i”,获取引导文本块“还是”的引导拼音“h
á
ish
ì”
,获取引导文本块“安装”的引导拼音“ā
nzhu
ā
ng”,获取引导文本块“应用”的引导拼音获取引导文本块“程序”的引导拼音“ch
ꢀéꢀ
ngx ǜ”。
125.在步骤s104中,基于第一拼音、第二拼音以及引导文本,对识别文本进行纠错。
126.在本技术一个实施例中,可以基于第一拼音、第二拼音以及引导文本对识别文本中的至少部分词汇纠错。
127.之后电子设备可以响应纠错后得到的识别文本,例如,基于纠错后的识别文本向用户输出文本,以实现与用户继续对话,例如,在一个实施例中,可以基于纠错后的识别文本确定识别用户的意图,并根据该咨询意图给用户相应的回复,以解决用户的问题等。
128.本步骤具体可以参见之后图2所示的实施例,在此不做详述。
129.在本技术中,接收用户输入的语音;获取语音的识别文本和引导文本;获取识别文本的第一拼音以及获取引导文本的第二拼音;基于第一拼音、第二拼音以及引导文本,对识别文本进行纠错。
130.在本技术中,由于用户是基于电子设备输出的引导文本而向电子设备输入语音的,因此,电子设备输出的引导文本的内容与用户在电子设备上输入的语音的内容是有内在逻辑关联以及内在内容关联的,因此,可以基于第一拼音、第二拼音以及引导文本对识别文本进行纠错,以使纠错后的识别文本可以为用户所要表达内容对应的文本,之后可以基
于纠错后的识别文本确定识别用户的意图,并根据该咨询意图给用户相应的回复,从而使得电子设备之后向用户输出的回复的内容与用户实际想要的对话内容相符合,进而就可以解决用户的问题,以提高用户体验。
131.在本技术另一实施例中,参见图2,步骤s104包括:
132.在步骤s201中,对于任意一个识别文本块的对话拼音,获取该识别文本块的对话拼音分别与各个引导文本块的引导拼音之间的差异程度;
133.对于其他每一个识别文本块的对话拼音,同样执行上述操作。
134.其中,本步骤可以参见之后图3所示的实施例,在此不做详述。
135.在上述例子中,可以获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”与引导文本块“需要”的引导拼音“x
ǖ
y
à
o”之间的差异程度1,获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”与引导文本块“下载”的引导拼音“xi
à
z
ǎ
i”之间的差异程度2,获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”与引导文本块“还是”的引导拼音“h
á
ish
ì”
之间的差异程度3,获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”与引导文本块“安装”的引导拼音“ā
nzhu
ā
ng”之间的差异程度4,获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”与引导文本块“应用”的引导拼音“y
ī
ngy
ò
ng”之间的差异程度5,获取识别文本块“卸载”的对话拼音“xi
è
z
ǎ
i”与引导文本块“程序”的引导拼音“ch
é
ngx
ǜ”之间的差异程度6。
136.在步骤s202中,在最小的差异程度大于预设阈值的情况下,依照差异程度由低至高的顺序选择预设数量个差异程度对应的引导文本块;
137.在本技术中,预设数量包括1、2或3等,当然,根据实际情况也可以设置为较高的数值,本技术对此不加以限定。预设数量也可以根据引导文本中包括的引导文本块的数量而定,例如,预设数量可以为引导文本中包括的引导文本块的数量的30%、40%或50%等,本技术对具体的百分数不做限定。
138.在上述例子中,假设6个差异程度的由低至高的顺序为:差异程度2、差异程度6、差异程度1、差异程度3、差异程度5、差异程度6。且假设预设数量为3,则可以差异程度2对应的引导文本块“卸载”,差异程度6对应的引导文本块“程序”,以及差异程度1对应的引导文本块“需要”。
139.在步骤s203中,使用每一个选择的引导文本块分别替换识别文本中的该识别文本块,得到多个替换后的识别文本;
140.在本技术中,对于选择的任意一个引导文本块,可以使用该引导文本块替换该识别文本中的该识别文本块,得到一个替换后的识别文本,对于选择的其他每一个引导文本块,同样执行上述操作,从而得到多个替换后的识别文本。
141.在步骤s204中,获取每一个替换后的识别文本的困惑度;
142.在本技术中,文本的困惑度与文本的语义通顺程度相关,文本的困惑度越小,则说明文本的语义通顺程度越高,文本的困惑度越大,则说明文本的语义通顺程度越低。
143.在本技术中,事先可以训练困惑度确定模型,例如,获取样本文本集,样本文本集中包括多个标注有困惑度的样本文本,然后基于样本文本集对模型训练,直至模型中的网络参数收敛,从而得到困惑度确定模型。其中,训练的该模型包括language model(语言模型)等。
144.如此,在本步骤中,对于任意一个替换后的识别文本,可以将该替换后的识别文本
输入困惑度确定模型中,得到困惑度确定模型输出的该替换后的识别文本的困惑度。对于其他每一个替换后的识别文本,同样执行上述操作。从而得到每一个替换后的识别文本的困惑度。
145.在步骤s205中,选择困惑度最小的替换后的识别文本作为识别文本的纠错版本。
146.在本技术中,电子设备可以选择困惑度最小的替换后的识别文本,并作为对识别出的识别文本纠错后得到的识别文本,然后响应纠错后得到的识别文本,例如,基于纠错后得到的识别文本向用户输出文本,以实现与用户继续对话,在一个实施例中,可以基于纠错后得到的识别文本确定识别用户的意图,并根据该咨询意图给用户相应的回复,以解决用户的问题。
147.对于任意一个引导文本块的引导拼音,可以按照如下图3的流程获取该识别文本块的对话拼音与该引导文本块的引导拼音之间的差异程度,对于其他每一个引导文本块的引导拼音,同样如此。
148.其中,参见图3,具体流程包括:
149.在步骤s301中,获取该识别文本块的对话拼音的声母与该引导文本块的引导拼音的声母之间的第一差异;
150.在本步骤中,可以获取该识别文本块的对话拼音中的各个声母的第一向量以及该引导文本块的引导拼音中的各个声母的第二向量;然后计算第一向量与第二向量之间的余弦距离,并作为第一差异。
151.其中,该识别文本块的对话拼音中包括至少一个声母,该引导文本块的引导拼音中包括至少一个声母。
152.可以计算该识别文本块的对话拼音中的第一声母的向量与该引导文本块的引导拼音中的第一个声母的向量之间的余弦距离,计算该识别文本块的对话拼音中的第二声母的向量与该引导文本块的引导拼音中的第二个声母的向量之间的余弦距离,以此类推。然后将计算得到的余弦距离求和,并作为第一向量与第二向量之间的余弦距离,或者,计算得到的余弦距离的平均值,并作为第一向量与第二向量之间的余弦距离。
153.在本技术一个实施例中,在拼音字母中的所有声母中,技术人员事先可以根据每一个声母之间的发音的区别在电子设备中人工设置各个声母的向量,发音差距越大的两个声母的向量之间的余弦距离越大,发音差距越小的两个声母的向量之间的余弦距离越小,如此,在本技术中,电子设备可以在技术人员事先设置各个声母的向量中,获取该识别文本块的对话拼音中的各个声母的第一向量,以及获取该引导文本块的引导拼音中的各个声母的第二向量。
154.在本技术另一个实施例中,也可以基于模型来获取第一向量以及第二向量。
155.例如,可以事先训练语音差异确定模型,语音差异确定模型可以是基于统计机器学习模型训练得到的模型或者基于深度学习模型训练得到的模型。语音差异确定模型中具有网络参数,网络参数中包括在拼音字母中的所有声母的第一向量。
156.例如,事先可以获取多个样本数据集,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异,每一个样本数据集中包括的两个样本词汇的拼音的发音很接近。然后可以基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛,从而得到语音差异确定模型。
157.如此,在本实施例中,可以在语音差异确定模型的网络参数中提取第一向量和第二向量;其中,语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
158.待训练模型包括统计机器学习模型以及基于深度学习模型;统计机器学习模型包括logistic回归分析模型、贝叶斯模型以及线性回归模型等。深度学习模型包括:cnn(convolutional neural networks,卷积神经网络),rnn(recurrent neural network,循环神经网络)以及dbn(deep belief network,深度信念网络)等。
159.其中,语音差异确定模型中包括多个层,其中一个层用于获取拼音字母的向量,这一层中的网络参数就包括字母中的各个声母的向量。
160.在训练待训练模型之前,待训练模型中的该层中的网络参数是初始化的网络参数,在基于多个样本数据集对待训练模型训练的过程中,不断地优化该层中的网络参数,例如,不断地优化该层中的网络参数就包括的字母中的各个声母的向量等,这些向量是基于样本词汇的拼音以及样本词汇的拼音之间的标注差异训练得到的,且由于模型结构以及模型的训练流程都很完善。如此,基于多个样本数据集训练出的模型中的各个声母的向量更加准确。
161.其中,人工设置各个声母的向量往往需要较多的经验,否则可能会导致设置的至少部分向量不合理,例如,假设某两个声母实际上的发音差距较小,但是技术人员由于经验问题导致设置的两个声母的向量之间的余弦距离较大,再假设某两个声母实际上的发音差距较大,但是技术人员由于经验问题导致设置的两个声母的向量之间的余弦距离较小。这就导致基于向量确定出的两个声母之间的距离不准确,或者说不符合实际情况。
162.然而,由于人的生理特征的原因,技术人员对整体的把握的准确度往往高于技术人员对细节的把握的准确度,例如,技术人员基于经验确定出的两个词汇的拼音之间的差异程度的准确度较高,而基于经验深入地根据拼音字母的发音差距设置拼音字母的向量的能力较低,因此,基于经验深入地根据拼音字母的发音差距设置拼音字母的向量的准确度就较低。
163.所以,本技术通过训练模型的方式来确定拼音字母中的各个声母的向量,训练模型需要基于技术人员标注的两个样本词汇的拼音之间的标注差异,由于技术人员基于经验确定出的两个词汇的拼音之间的差异程度的准确度较高,因此,技术人员标注的两个样本词汇的拼音之间的标注差异往往更准确,或者说往往更符合实际情况。
164.根据基于模型确定出的任意两个声母的向量计算任意两个声母之间的差异与两个声母之间的实际的发音差距相适应,从而可以提高确定出的任意两个声母之间的差异的准确度。
165.在步骤s302中,获取该识别文本块的对话拼音的韵母与该引导文本块的引导拼音的韵母之间的第二差异;
166.在本步骤中,可以获取该识别文本块的对话拼音中的各个韵母的第三向量以及该引导文本块的拼音中的各个韵母的第四向量;然后计算第三向量与第四向量之间的余弦距离,并作为第二差异。
167.其中,在获取对话拼音中的各个韵母的第三向量以及引导拼音中的各个韵母的第
四向量时,可以在语音差异确定模型的网络参数中提取第三向量和第四向量;其中,语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
168.本步骤的相关解释以及描述可以参见步骤s301,在此不做详述。
169.在步骤s303中,获取该识别文本块的对话拼音的声调与该引导文本块的引导拼音的声调之间的第三差异;
170.在本步骤中,可以获取该识别文本块的对话拼音中的各个声调的第五向量以及该引导文本块的引导拼音中的各个声调的第六向量;然后计算第五向量与第六向量之间的余弦距离,并作为第三差异。
171.其中,在获取对话拼音中的各个声调的第五向量以及引导拼音中的各个声调的第六向量时,可以在语音差异确定模型的网络参数中提取第五向量和第六向量;其中,语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
172.本步骤的相关解释以及描述可以参见步骤s301,在此不做详述。
173.在步骤s304中,获取该识别文本块的对话拼音与该引导文本块的引导拼音之间的编辑距离;
174.其中,在一个实施例中,该编辑距离用于表示将该引导拼音变换到该对话拼音需要对该引导拼音中的字母进行变换处理的次数等。
175.在步骤s305中,根据第一差异、第二差异、第三差异以及编辑距离获取该识别文本块的对话拼音与该引导文本块的引导拼音之间的差异程度。
176.在本技术中,可以对第一差异、第二差异、第三差异以及编辑距离进行加权运算,得到该识别文本块的对话拼音与该引导文本块的引导拼音之间的差异程度。
177.例如,技术人员事先可以根据经验分别设置第一差异、第二差异、第三差异以及编辑距离对应的权重值,例如,设置第一差异对应的权重值为第一权重值,设置第二差异对应的权重值为第二权重值,设置第三差异对应的权重值为第三权重值,设置编辑距离对应的权重值为第四权重值。
178.如此,可以计算第一差异与第一权重值之间的第一乘积,计算第二差异与第二权重值之间的第二乘积,计算第三差异与第一权重值之间的第三乘积,计算编辑距离与第四权重值之间的第四乘积,再将第一乘积、第二乘积、第三乘积与第四乘积清河,得到该差异程度。
179.随着互联网的发展,本技术的文本处理方法提及的人机对话服务可以在电商、电信、政务、金融、教育、文娱、健康以及旅游等很多行业都得到应用。
180.例如,在电商行业,用户可以通过与智能客服对话,实现开发票、催卖家发货、查询商品的物流信息、修改商品的收货地址以及收取快递包裹等功能;
181.又如,在电信行业或者整个运营商的行业,用户可以通过与智能客服对话,实现查询话费、查询流量、购买套餐、上报故障以及修改密码等功能。
182.又如,在政务行业,用户可以通过与智能客服对话,实现查询税收、补缴税、退税、
办理证件、查询证件办理进度、投诉以及缴纳罚款等。
183.又如,在金融行业,用户可以通过与智能客服对话,实现开通金融账户、查询金融产品的当前价格、查询金融产品的购买条件、购买金融产品以及出售金融产品等。
184.又如,在教育行业,用户可以通过与智能客服对话,实现预约课程、取消预约课程、查询课程所在教室、查询教授课程的老师、查询开课时间、购买课程、报名考试以及查询考试成绩等。
185.又如,在文娱行业,用户可以通过与智能客服对话,实现查询直播间、对视频评论、分享短视频、对视频发弹幕、预订景点门票、查询到景点的路线等。
186.又如,在健康行业,用户可以通过与智能客服对话,实现预约体检时间、预约体检项目、购买体检套餐、查询体检注意事项以及查询体检项目所在的房间的位置等。
187.又如,在旅游行业,用户可以通过与智能客服对话,实现查询旅游套餐、购买旅游套餐、查询旅游的注意事项、查询旅游所需携带的物品、购买机票、购买火车票、租车、预订酒店以及预订接送机等功能。
188.参照图4,示出了本技术一种文本处理装置的实施例的结构框图,具体可以包括如下模块:
189.接收模块11,用于接收用户输入的语音;
190.第一获取模块12,用于获取所述语音的识别文本和引导文本;
191.第二获取模块13,用于获取所述识别文本的第一拼音,以及,第三获取模块,用于获取所述引导文本的第二拼音;
192.纠错模块14,用于基于所述第一拼音、所述第二拼音以及所述引导文本,对所述识别文本进行纠错。
193.在一个可选的实现方式中,所述第二获取模块包括:
194.第一拆分子模块,用于将所述识别文本拆分为多个识别文本块;
195.第一获取子模块,用于分别获取每一个识别文本块的识别拼音;
196.所述第三获取模块包括:
197.第二拆分子模块,用于将所述引导文本拆分为多个引导文本块;
198.第二获取子模块,用于分别获取每一个引导文本块的引导拼音。
199.在一个可选的实现方式中,所述纠错模块包括:
200.第三获取子模块,用于对于每一个识别文本块的识别拼音,获取所述识别文本块的识别拼音分别与各个引导文本块的引导拼音之间的差异程度;
201.第一选择子模块,用于在最小的差异程度大于预设阈值的情况下,依照差异程度由低至高的顺序选择预设数量个差异程度对应的引导文本块;
202.替换子模块,用于使用选择的引导文本块分别替换所述识别文本中的所述识别文本块,得到多个替换后的识别文本;
203.第四获取子模块,用于获取每一个替换后的识别文本的困惑度;
204.第二选择子模块,用于选择困惑度最小的替换后的识别文本作为识别文本的纠错版本。
205.在一个可选的实现方式中,所述第三获取子模块包括:
206.第一获取单元,用于对于每一个引导文本块的引导拼音,获取所述识别文本块的
识别拼音的声母与所述引导文本块的引导拼音的声母之间的第一差异;
207.第二获取单元,用于获取所述识别文本块的识别拼音的韵母与所述引导文本块的引导拼音的韵母之间的第二差异;
208.第三获取单元,用于获取所述识别文本块的识别拼音的声调与所述引导文本块的引导拼音的声调之间的第三差异;
209.第四获取单元,用于获取所述识别文本块的识别拼音与所述引导文本块的引导拼音之间的编辑距离;
210.第五获取单元,用于根据所述第一差异、所述第二差异、所述第三差异以及所述编辑距离获取所述差异程度。
211.在一个可选的实现方式中,所述第一获取单元包括:
212.第一获取子单元,用于获取所述识别文本块的识别拼音中的各个声母的第一向量以及所述引导文本块的引导拼音中的各个声母的第二向量;
213.第一计算子单元,用于计算所述第一向量与所述第二向量之间的余弦距离,并作为所述第一差异。
214.在一个可选的实现方式中,所述第一获取子单元具体用于:在语音差异确定模型的网络参数中提取所述第一向量和所述第二向量;其中,所述语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
215.在一个可选的实现方式中,所述第二获取单元包括:
216.第二获取子单元,用于获取所述识别文本块的识别拼音中的各个韵母的第三向量以及所述引导文本块的引导拼音中的各个韵母的第四向量;
217.第二计算子单元,用于计算所述第三向量与所述第四向量之间的余弦距离,并作为所述第二差异。
218.在一个可选的实现方式中,所述第二子单元具体用于:在语音差异确定模型的网络参数中提取所述第三向量和所述第四向量;其中,所述语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
219.在一个可选的实现方式中,所述第三获取单元包括:
220.第三获取子单元,用于获取所述识别文本块的识别拼音中的各个声调的第五向量以及所述引导文本块的引导拼音中的各个声调的第六向量;
221.第三计算子单元,用于计算所述第五向量与所述第六向量之间的余弦距离,并作为所述第三差异。
222.在一个可选的实现方式中,所述第三获取子单元具体用于:在语音差异确定模型的网络参数中提取所述第五向量和所述第六向量;其中,所述语音差异确定模型是基于多个样本数据集对待训练模型训练,直至待训练模型中的网络参数收敛后得到的,每一个样本数据集中包括两个样本词汇各自的拼音以及包括两个样本词汇的拼音之间的标注差异。
223.在一个可选的实现方式中,所述待训练模型包括:统计机器学习模型以及深度学习模型;
224.所述统计机器学习模型包括:logistic回归分析模型、贝叶斯模型以及线性回归
模型;
225.所述深度学习模型包括:卷积神经网络cnn,循环神经网络rnn以及深度信念网络dbn。
226.在本技术中,接收用户输入的语音;获取语音的识别文本和引导文本;获取识别文本的第一拼音以及获取引导文本的第二拼音;基于第一拼音、第二拼音以及引导文本,对识别文本进行纠错。
227.在本技术中,由于用户是基于电子设备输出的引导文本而向电子设备输入语音的,因此,电子设备输出的引导文本的内容与用户在电子设备上输入的语音的内容是有内在逻辑关联以及内在内容关联的,因此,可以基于第一拼音、第二拼音以及引导文本对识别文本进行纠错,以使纠错后的识别文本可以为用户所要表达内容对应的文本,之后可以基于纠错后的识别文本确定识别用户的意图,并根据该咨询意图给用户相应的回复,从而使得电子设备之后向用户输出的回复的内容与用户实际想要的对话内容相符合,进而就可以解决用户的问题,以提高用户体验。
228.本技术实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本技术实施例中各方法步骤的指令(instructions)。
229.本技术实施例提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。本技术实施例中,所述电子设备包括服务器、网关、子设备等,子设备为物联网设备等设备。
230.本公开的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括服务器(集群)、终端设备如iot设备等电子设备。
231.图5示意性地示出了可被用于实现本技术中所述的各个实施例的示例性装置1300。
232.对于一个实施例,图5示出了示例性装置1300,该装置具有一个或多个处理器1302、被耦合到(一个或多个)处理器1302中的至少一个的控制模块(芯片组)1304、被耦合到控制模块1304的存储器1306、被耦合到控制模块1304的非易失性存储器(nvm)/存储设备1308、被耦合到控制模块1304的一个或多个输入/输出设备1310,以及被耦合到控制模块1306的网络接口1312。
233.处理器1302可包括一个或多个单核或多核处理器,处理器1302可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置1300能够作为本技术实施例中所述网关等服务器设备。
234.在一些实施例中,装置1300可包括具有指令1314的一个或多个计算机可读介质(例如,存储器1306或nvm/存储设备1308)以及与该一个或多个计算机可读介质相合并被配置为执行指令1314以实现模块从而执行本公开中所述的动作的一个或多个处理器1302。
235.对于一个实施例,控制模块1304可包括任意适当的接口控制器,以向(一个或多个)处理器1302中的至少一个和/或与控制模块1304通信的任意适当的设备或组件提供任意适当的接口。
236.控制模块1304可包括存储器控制器模块,以向存储器1306提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。
237.存储器1306可被用于例如为装置1300加载和存储数据和/或指令1314。对于一个实施例,存储器1306可包括任意适当的易失性存储器,例如,适当的dram。在一些实施例中,存储器1306可包括双倍数据速率类型四同步动态随机存取存储器(ddr4sdram)。
238.对于一个实施例,控制模块1304可包括一个或多个输入/输出控制器,以向nvm/存储设备1308及(一个或多个)输入/输出设备1310提供接口。
239.例如,nvm/存储设备1308可被用于存储数据和/或指令1314。nvm/存储设备1308可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(hdd)、一个或多个光盘(cd)驱动器和/或一个或多个数字通用光盘(dvd)驱动器)。
240.nvm/存储设备1308可包括在物理上作为装置1300被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如,nvm/存储设备1308可通过网络经由(一个或多个)输入/输出设备1310进行访问。
241.(一个或多个)输入/输出设备1310可为装置1300提供接口以与任意其他适当的设备通信,输入/输出设备1310可以包括通信组件、拼音组件、传感器组件等。网络接口1312可为装置1300提供接口以通过一个或多个网络通信,装置1300可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如wifi、2g、3g、4g、5g等,或它们的组合进行无线通信。
242.对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器(例如,存储器控制器模块)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑封装在一起以形成系统级封装(sip)。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(soc)。
243.在各个实施例中,装置1300可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置1300可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置1300包括一个或多个摄像机、键盘、液晶显示器(lcd)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(asic)和扬声器。
244.本技术实施例提供了一种电子设备,包括:一个或多个处理器;和,其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如本技术中一个或多个所述的文本处理方法。
245.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
246.本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
247.本技术实施例是参照根据本技术实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些
计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
248.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
249.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
250.尽管已描述了本技术实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术实施例范围的所有变更和修改。
251.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
252.以上对本技术所提供的一种文本处理方法及装置,进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。