一种用于智能客服机器人的语音信号智能处理方法及系统
技术领域
本发明涉及数据处理技术领域,具体涉及一种用于智能客服机器人的语音信号智能处理方法及系统。
背景技术
语音信号处理是实现语音识别、语音合成以及语音交互等智能技术的基础,智能客服机器人通过语音交互能够更高效地与用户沟通,为企业提供更好的客户服务。为了保证智能客服机器人的工作效率,通常会使用滤波器对语音信号进行去噪滤波。
现有方法通常利用LMS(Least Mean Squares)最小均方差算法调整滤波器权重,对语音信号进行去噪,但由于语音信号会因周围环境的变化会含有不同程度的噪声,传统的LMS最小均方差算法的步长通常进行人为设置,导致调整的滤波器权重过大或过小,使语音信号存在滤波过度或者滤波不足的情况,降低了滤波器对语音信号的滤波效率。
发明内容
本发明提供一种用于智能客服机器人的语音信号智能处理方法及系统,以解决现有的问题:传统的LMS最小均方差算法的步长通常进行人为设置,导致调整的滤波器权重过大或过小,使语音信号存在滤波过度或者滤波不足的情况,降低了滤波器对语音信号的滤波效率。
本发明的一种用于智能客服机器人的语音信号智能处理方法及系统采用如下技术方案:
一方面,本发明实施例提供一种用于智能客服机器人的语音信号智能处理方法,包括以下步骤:
采集智能客服机器人的语音数据序列,所述语音数据序列中包含多帧语音数据,每帧语音数据对应一个语音幅值;
根据不同语音数据之间的语音幅值的变化差异,从语音数据序列中划分出客服未回复语音段;将除客服未回复语音段以外的每帧语音数据记为对照语音数据,根据对照语音数据与客服未回复语音段之间所含信息内容量的差异,得到每个对照语音数据的信息丢失率,所述信息丢失率用于描述对照语音数据中丢失的客服语音交流有效内容量;
根据客服未回复语音段与对照语音数据之间能量信息的分布情况以及信息丢失率,得到每个对照语音数据的最佳步长,根据最佳步长对每个对照语音数据进行滤波。
优选的,所述根据不同语音数据之间的语音幅值的变化差异,从语音数据序列中划分出客服未回复语音段,包括的具体方法为:
在语音数据序列中,将所有语音数据的语音幅值的最大值记为语音最大值;预设一个数量参数/>以及一个语音数据数量/>,将/>记为初筛标准语音值;将第一个语音幅值大于初筛标准语音值记为初筛语音数据;将初筛语音数据前/>个语音数据构成的数据段记为客服未回复语音段。
优选的,所述根据对照语音数据与客服未回复语音段之间所含信息内容量的差异,得到每个对照语音数据的信息丢失率,包括的具体方法为:
对客服未回复语音段进行快速傅里叶变换得到客服未回复语音段的频谱图;对每个对照语音数据进行快速傅里叶变换得到每个对照语音数据的频谱图;
对于任意一个对照语音数据,根据对照语音数据的频谱图与客服未回复语音段的频谱图之间每个频率的能量差异,得到对照语音数据与客服未回复语音段之间每个频谱频率的能量差异因子;
根据对照语音数据与客服未回复语音段之间每个频谱频率的能量差异因子,得到每个对照语音数据的初始信息丢失率;
对所有初始信息丢失率进行线性归一化,将归一化后的每个初始信息丢失率记为信息丢失率。
优选的,所述根据对照语音数据的频谱图与客服未回复语音段的频谱图之间每个频率的能量差异,得到对照语音数据与客服未回复语音段之间每个频谱频率的能量差异因子,包括的具体方法为:
;
式中,表示对照语音数据与客服未回复语音段之间频谱频率为/>的能量差异因子;/>表示对照语音数据的频谱图中频率为/>的功率;/>表示客服未回复语音段的频谱图中频率为/>的功率;/>表示取绝对值。
优选的,所述根据对照语音数据与客服未回复语音段之间每个频谱频率的能量差异因子,得到每个对照语音数据的初始信息丢失率,包括的具体方法为:
;
式中,表示对照语音数据的初始信息丢失率;/>表示对照语音数据的频谱图中所有频率的最大值;/>表示对照语音数据的频谱图中频率数值为/>的频率;/>表示预设的低通滤波器的截止频率;/>表示对照语音数据与客服未回复语音段之间频谱频率为/>的能量差异因子;/>表示预设的超参数;/>表示对照语音数据与客服未回复语音段之间频谱频率为/>的能量差异因子;/>表示以自然常数为底的指数函数。
优选的,所述根据客服未回复语音段与对照语音数据之间能量信息的分布情况以及信息丢失率,得到每个对照语音数据的最佳步长,根据最佳步长对每个对照语音数据进行滤波,包括的具体方法为:
获取客服未回复语音段的噪声程度;
对于任意一个对照语音数据,根据客服未回复语音段的噪声程度以及信息丢失率得到对照语音数据在若干迭代次数下的迭代步长因子;
对于任意一个迭代次数,根据对照语音数据在迭代次数下的迭代步长因子得到对照语音数据在迭代次数下的参考步长;
将对照语音数据在迭代次数下的参考步长作为LMS最小均方差算法的步长,根据步长利用LMS最小均方差算法获取对照语音数据的一个稳态误差,获取对照语音数据的所有稳态误差;预设一个步长选取差异值阈值,对于任意两个相邻的稳态误差,将第二个稳态误差与第一个稳态误差的差值的绝对值记为第二个稳态误差的步长选取差异值,获取所有稳态误差的步长选取差异值;在所有稳态误差的步长选取差异值中,将步长选取差异值第一次大于/>的稳态误差对应的参考步长作为对照语音数据的最佳步长;
将每个对照语音数据的最佳步长作为LMS最小均方差算法的步长,根据LMS最小均方差算法的步长获取每个对照语音数据对应滤波器的权重,根据每个对照语音数据对应滤波器的权重进行滤波得到每个滤波后的对照语音数据,将每个滤波后的对照语音数据存储在数据库中。
优选的,所述获取客服未回复语音段的噪声程度,包括的具体方法为:
获取客服未回复语音段的信息熵;
;
式中,表示客服未回复语音段的噪声程度;/>表示客服未回复语音段的信息熵;表示以自然常数为底的指数函数。
优选的,根据客服未回复语音段的噪声程度以及信息丢失率得到对照语音数据在若干迭代次数下的迭代步长因子,包括的具体方法为:
;
式中,表示对照语音数据在任意一个迭代次数下的迭代步长因子;/>表示客服未回复语音段的噪声程度;/>表示预设的超参数;/>表示对照语音数据的信息丢失率;/>表示迭代步长因子对应的迭代次数;/>表示以2为底的对数函数。
优选的,根据对照语音数据在迭代次数下的迭代步长因子得到对照语音数据在迭代次数下的参考步长,包括的具体方法为:
;
式中,表示对照语音数据在迭代次数下的参考步长;/>表示预设的超参数;/>表示对照语音数据在迭代次数下的迭代步长因子;/>表示向上取整。
另一方面,本发明实施例提供一种用于智能客服机器人的语音信号智能处理系统,该系统包括存储器和处理器,所述处理器执行所述存储器存储的计算机程序,以实现上述一种用于智能客服机器人的语音信号智能处理方法的步骤。
本发明的技术方案的有益效果是:根据不同语音数据之间的语音幅值的变化差异,从语音数据序列中划分出客服未回复语音段;根据对照语音数据与客服未回复语音段之间所含信息内容量的差异,得到对照语音数据的信息丢失率;根据客服未回复语音段与对照语音数据之间能量信息的分布情况以及信息丢失率,得到对照语音数据的最佳步长;根据最佳步长对对照语音数据进行滤波;其中信息丢失率反映了对照语音数据中丢失的客服语音交流有效内容量;本发明使LMS最小均方差算法的步长获取更加智能,提高了滤波器权重的合理性,提高了滤波器对语音信号的去噪效果,提高了智能客服机器人处理语音信号的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种用于智能客服机器人的语音信号智能处理方法的步骤流程图。
具体实施方式
为了更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种用于智能客服机器人的语音信号智能处理方法及系统,其具体实施方式、结构、特征及其功效,详细说明如下。在下述说明中,不同的“一个实施例”或“另一个实施例”指的不一定是同一实施例。此外,一或多个实施例中的特定特征、结构或特点可由任何合适形式组合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。
下面结合附图具体的说明本发明所提供的一种用于智能客服机器人的语音信号智能处理方法及系统的具体方案。
请参阅图1,其示出了本发明一个实施例提供的一种用于智能客服机器人的语音信号智能处理方法的步骤流程图,该方法包括以下步骤:
步骤S001:采集智能客服机器人的语音数据序列。
需要说明的是,现有方法通常利用LMS(Least Mean Squares)最小均方差算法调整滤波器权重,对语音信号进行去噪,但由于语音信号会因周围环境的变化会含有不同程度的噪声,传统的LMS最小均方差算法的步长通常进行人为设置,导致调整的滤波器权重过大或过小,使语音信号存在滤波过度或者滤波不足的情况,降低了滤波器对语音信号的滤波效率。
具体的,首先需要采集语音数据序列,具体过程为:从智能客服机器人的语音识别数据库中获取智能客服机器人与客户一次交互过程中的音频信号;利用截止频率为300Hz的低通滤波器对音频信号进行滤波得到滤波后的音频信号,并将滤波后的音频信号记为语音信号。在语音信号中,每50ms的语音信号段作为一帧语音数据,获取所有帧语音数据;将所有帧语音数据按照记录时间从小到大顺序进行排列,将排列后的序列记为语音数据序列。另外需要说明的是,本实施例不对一帧语音数据的选取以及低通滤波器的截止频率进行具体限定,其中一帧语音数据的选取以及低通滤波器的截止频率可根据具体实施情况而定。
进一步的,以语音数据序列中任意一帧语音数据为例,将该语音数据对应的语音信号段上第一个幅值与最后一个幅值的均值记为该语音数据的语音幅值,获取所有帧语音数据的语音幅值。其中音频信号是一段横坐标为毫秒,纵坐标为帕斯卡的连续波形信号。
至此,通过上述方法得到语音数据序列。
步骤S002:根据不同语音数据之间的语音幅值的变化差异,从语音数据序列中划分出客服未回复语音段;根据对照语音数据与客服未回复语音段之间所含信息内容量的差异,得到每个对照语音数据的信息丢失率。
需要说明的是,智能客服机器人中采集的音频信息中,核心内容为客户人员与智能客服机器人之间的语音交流内容;在实际情况中,客户人员与智能客服机器人之间的语音交流信息大部分分布在低频信号中,但还是存在小部分语音交流信息分布在高频信号中;但传统的LMS最小均方差算法通过人为调整其步长,从而根据步长调整滤波器的权重,会存在调整的滤波器权重过大或过小的情况,使在对音频信息进行降噪的过程中存在降噪不足、降噪过度以及部分有效语音交流信息的高频信号被过滤掉的情况;为了提高滤波器对音频信息的滤波效率,本实施例通过分析不同频率的音频信息进行信息对比得到信息丢失率,以便后续分析处理。
进一步需要说明的是,通常情况下,在客户人员与智能客服机器人语音交流最开始的一部分信息中会出现一段时间的语音空白阶段,这段语音空白阶段是由机器本身数据的传输延迟造成,无法避免;为了提高滤波器对音频信息的滤波效率,需要分析这段语音空白阶段与其他语音信息之间的关联影响。
具体的,在语音数据序列中,将所有语音数据的语音幅值的最大值记为语音最大值;预设一个数量参数/>以及一个语音数据数量/>,其中本实施例以/>、为例进行叙述,本实施例不进行具体限定,其中/>可根据具体实施情况而定;将/>记为初筛标准语音值;将第一个语音幅值大于初筛标准语音值的语音数据记为初筛语音数据;将初筛语音数据前/>个语音数据构成的数据段记为客服未回复语音段。另外需要说明的是,若初筛语音数据前实际存在的语音数据数量不满足/>时,将初筛语音数据前实际存在的所有语音数据构成的数据段记为客服未回复语音段。
进一步的,对该客服未回复语音段进行快速傅里叶变换得到该客服未回复语音段的频谱图;在语音数据序列中,将除该客服未回复语音段以外的每帧语音数据记为对照语音数据,对每个对照语音数据进行快速傅里叶变换得到每个对照语音数据的频谱图。其中快速傅里叶变换是公知技术,本实施例不再赘述。需要说明的是,本实施例中频谱图中横坐标表示频率,纵坐标表示频率对应的功率;频谱图的频率范围以为例进行叙述,其中频率范围可根据具体实施情况而定。
进一步的,以任意一个对照语音数据为例,根据该对照语音数据的频谱图与该客服未回复语音段的频谱图之间第个频率的能量差异,得到该对照语音数据与该客服未回复语音段之间频谱频率为/>的能量差异因子。作为一种示例,可通过如下公式计算该对照语音数据与该客服未回复语音段之间频谱频率为/>的能量差异因子:
;
式中,表示该对照语音数据与该客服未回复语音段之间频谱频率为/>的能量差异因子;/>表示该对照语音数据的频谱图中频率为/>的功率;/>表示该客服未回复语音段的频谱图中频率为/>的功率;/>表示取绝对值。其中若该对照语音数据与该客服未回复语音段之间频率为/>的能量差异因子越大,说明该对照语音数据的频谱图与该客服未回复语音段的频谱图之间频率为/>所含能量差异越大,反映该对照语音数据的频谱图与该客服未回复语音段的频谱图之间频率为/>中信息的差异量越大。获取该对照语音数据与该客服未回复语音段之间所有频谱频率的能量差异因子。
进一步的,根据该对照语音数据与该客服未回复语音段之间所有频谱频率的能量差异因子,得到该对照语音数据的初始信息丢失率。作为一种示例,可通过如下公式计算该对照语音数据的初始信息丢失率:
;
式中,表示该对照语音数据的初始信息丢失率;/>表示该对照语音数据的频谱图中所有频率的最大值;/>表示该对照语音数据的频谱图中频率数值为/>的频率;/>表示预设的低通滤波器的截止频率,本实施例以/>为例进行叙述,可根据具体实际情况而定;/>表示该对照语音数据与该客服未回复语音段之间频谱频率为/>的能量差异因子;表示预设的超参数,本实施例预设/>,用于防止分母为0;/>表示该对照语音数据与该客服未回复语音段之间频谱频率为/>的能量差异因子;/>表示以自然常数为底的指数函数,实施例采用/>函数来呈现反比例关系及归一化处理,实施者可根据实际情况选择反比例函数及归一化函数;/>表示该对照语音数据中低频信号所包含的有效信息量;/>表示该对照语音数据中高频信号所包含的有效信息量。其中若该对照语音数据的初始信息丢失率越大,说明该对照语音数据丢失的客服语音交流有效内容越多。获取所有对照语音数据的初始信息丢失率,对所有初始信息丢失率进行线性归一化,将归一化后的每个初始信息丢失率记为信息丢失率。
至此,通过上述方法得到每个对照语音数据的信息丢失率。
步骤S003:根据客服未回复语音段与对照语音数据之间能量信息的分布情况以及信息丢失率,得到每个对照语音数据的最佳步长;根据最佳步长对每个对照语音数据进行滤波。
具体的,获取该客服未回复语音段的信息熵,根据该客服未回复语音段的信息熵得到该客服未回复语音段的噪声程度。其中信息熵的获取是公知技术,本实施例不再赘述。作为一种示例,可通过如下公式计算该客服未回复语音段的噪声程度:
;
式中,表示该客服未回复语音段的噪声程度;/>表示该客服未回复语音段的信息熵;/>表示以自然常数为底的指数函数,实施例采用/>函数来呈现反比例关系及归一化处理,实施者可根据实际情况选择反比例函数及归一化函数。其中若该客服未回复语音段的噪声程度越大,说明该客服未回复语音段中所含信息量越大,与外界环境的关联越紧密,反映该客服未回复语音段中所含噪声的强度相对越大。
进一步的,以任意一个对照语音数据为例,根据该客服未回复语音段的噪声程度以及该对照语音数据的信息丢失率,得到该对照语音数据在若干迭代次数下的迭代步长因子。以任意一个迭代次数为例,作为一种示例,可通过如下公式计算该对照语音数据在该迭代次数下的迭代步长因子:
;
式中,表示该对照语音数据在该迭代次数下的迭代步长因子;/>表示该客服未回复语音段的噪声程度;/>表示预设的超参数,本实施例预设/>,用于防止分母为0;/>表示该对照语音数据的信息丢失率;/>表示该迭代步长因子对应的迭代次数;/>表示以2为底的对数函数;其中若该迭代次数的迭代步长因子越大,说明该迭代次数下的LMS最小均方差算法的稳态误差越稳定。
进一步的,根据该对照语音数据在该迭代次数下的迭代步长因子得到该对照语音数据在该迭代次数下的参考步长。作为一种示例,可通过如下公式计算该对照语音数据在该迭代次数下的参考步长:
;
式中,表示该对照语音数据在该迭代次数下的参考步长;/>表示预设的超参数,本实施例预设/>,用于表示LMS最小均方差算法的初始步长;/>表示对照语音数据在迭代次数下的迭代步长因子;/>表示向上取整。
进一步的,将该对照语音数据在该迭代次数下的参考步长作为LMS最小均方差算法的步长,根据该步长获取该对照语音数据的一个稳态误差,获取该对照语音数据的所有稳态误差;预设一个步长选取差异值阈值,其中本实施例以/>为例进行叙述,本实施例不进行具体限定,其中/>根据具体实施情况而定;以任意两个相邻的稳态误差为例,将第二个稳态误差与第一个稳态误差的差值的绝对值记为第二个稳态误差的步长选取差异值,获取所有稳态误差的步长选取差异值。在所有稳态误差的步长选取差异值中,将步长选取差异值第一次大于/>的稳态误差对应的参考步长作为该对照语音数据的最佳步长,获取所有对照语音数据的最佳步长。其中每个稳态误差对应一个参考步长,本实施例不考虑第一个稳态误差的步长选取差异值;根据步长获取稳态误差的过程是LMS最小均方差算法的公知内容,本实施例不再赘述。
进一步的,将每个对照语音数据的最佳步长作为LMS最小均方差算法的步长,根据LMS最小均方差算法的步长获取每个对照语音数据对应滤波器的权重,根据每个对照语音数据对应滤波器的权重进行滤波得到每个滤波后的对照语音数据,将每个滤波后的对照语音数据存储在数据库中。其中根据LMS最小均方差算法的步长调整滤波器的权重,根据权重对数据进行滤波的过程为公知内容,本实施例不再赘述。需要说明的是,滤波后的对照语音数据为智能处理后的智能客服机器人的语音信号。
本实施例提供一种用于智能客服机器人的语音信号智能处理系统,该系统包括存储器和处理器,所述处理器执行所述存储器存储的计算机程序,以实现上述步骤S001至步骤S003。
至此,本实施例完成。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。