一种基于人工智能的智能设备唤醒方法和装置与流程

文档序号:19422383发布日期:2019-12-14 01:41阅读:289来源:国知局
一种基于人工智能的智能设备唤醒方法和装置与流程

本申请涉及数据处理领域,特别是涉及一种基于人工智能的智能设备唤醒方法和装置。



背景技术:

目前智能设备越来越普及,广泛的应用在人们的工作、生活之中。

一些智能设备在不提供服务时处于休眠状态,用户在需要使用这类智能设备时,可以通过语音的方式说出唤醒词对智能设备进行唤醒。

然而目前的相关技术会有较高的误唤醒率,即将一些噪声或非唤醒词的语音错误识别为唤醒词的语音,而错误的唤醒智能设备,使得智能设备在用户不需要的情况下突然启动,对用户造成不良影响。



技术实现要素:

为了解决上述技术问题,本申请提供了一种基于人工智能的智能设备唤醒方法和装置,可以有效的阻止唤醒,降低了误唤醒的出现频率,提高了用户体验。

本申请实施例公开了如下技术方案:

第一方面,本申请实施例提供一种智能设备唤醒方法,所述方法包括:

根据待识别音频中音频帧的音频特征数据,确定是否满足所述智能设备的唤醒条件;

若根据目标音频帧的音频特征数据确定满足所述唤醒条件,获取音频帧序列的多个音频特征数据;所述音频帧序列包括所述目标音频帧和所述目标音频帧在所述待识别音频中的相邻音频帧,所述音频帧序列的长度是根据所述智能设备的唤醒词确定的;

通过目标声学模型确定所述多个音频特征数据分别对应的后验概率,其中任一个音频特征数据的后验概率用于标识根据这个音频特征数据指示唤醒的概率;

根据所述多个音频特征数据分别对应的后验概率,通过所述目标声学模型确定是否唤醒所述智能设备。

第二方面,本申请实施例提供一种智能设备唤醒装置,其特征在于,所述装置包括第一确定单元、获取单元、第二确定单元和第三确定单元:

所述第一确定单元,用于根据待识别音频中音频帧的音频特征数据,确定是否满足所述智能设备的唤醒条件;

所述获取单元,用于若所述第一确定单元根据目标音频帧的音频特征数据确定满足所述唤醒条件,获取音频帧序列的多个音频特征数据;所述音频帧序列包括所述目标音频帧和所述目标音频帧在所述待识别音频中的相邻音频帧,所述音频帧序列的长度是根据所述智能设备的唤醒词确定的;

所述第二确定单元,用于通过目标声学模型确定所述多个音频特征数据分别对应的后验概率,其中任一个音频特征数据的后验概率用于标识根据这个音频特征数据指示唤醒的概率;

所述第三确定单元,用于根据所述多个音频特征数据分别对应的后验概率,通过所述目标声学模型确定是否唤醒所述智能设备。

第三方面,本申请实施例提供一种设备,所述设备包括处理器以及存储器:

所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;

所述处理器用于根据所述程序代码中的指令执行第一方面所述的方法。

第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行第一方面所述的方法。

由上述技术方案可以看出,针对获取的待识别音频,可以通过分析其中音频帧的音频特征数据来确定是否满足智能设备的唤醒条件。若根据其中的目标音频帧确定满足唤醒条件,暂不唤醒智能设备,而是通过目标声学模型进行二次确认。为目标声学模型获取音频帧序列的多个音频特征数据,该音频帧序列包括目标音频帧和目标音频帧在待识别音频中的相邻音频帧,通过目标声学模型确定该多个音频特征数据分别对应的后验概率,每一个音频帧的后验概率可以用于标识根据这个音频特征数据指示唤醒的概率。由于前述音频帧序列的长度是根据智能设备的唤醒词确定的,故音频帧序列可以携带与实际唤醒词相当的音频信息,而且,目标声学模型需要根据音频帧序列所确定的全部后验概率来整体确定是否唤醒,故当音频帧序列中没有携带完整唤醒词对应的音频信息时,目标声学模型可以有效的阻止唤醒,降低了误唤醒的出现频率,提高了用户体验。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的智能设备唤醒方法的应用场景示意图;

图2为本申请实施例提供的一种智能设备唤醒方法的流程图;

图3为本申请实施例提供的一种实现智能设备唤醒方法的系统结构图;

图4为本申请实施例提供的一种目标声学模型的结构图;

图5a为本申请实施例提供的一种智能设备唤醒装置的结构图;

图5b为本申请实施例提供的一种智能设备唤醒装置的结构图;

图5c为本申请实施例提供的一种智能设备唤醒装置的结构图;

图6为本申请实施例提供的一种设备的结构图;

图7为本申请实施例提供的一种服务器的结构图。

具体实施方式

下面结合附图,对本申请的实施例进行描述。

一些用于唤醒的相关技术中,采用在智能设备中配置的声学模型和后验处理模块实现语音唤醒功能,通过声学模型确定语音帧的后验概率,后验处理模块根据单个语音帧的后验概率确定置信度,并在置信度满足阈值时确定接收到包括唤醒词的语音,从而唤醒智能设备。

然而,这种方法可能将一些噪声或非唤醒词的语音错误识别为唤醒词的语音,而错误的唤醒智能设备,使得智能设备在用户不需要的情况下突然启动,对用户造成不良影响。

例如,智能设备的实际唤醒词为“芝麻开门”,用户在与其他人聊天发出语音,智能设备可以通过声学模型和后验处理模块确定置信度,假如用户实际所要说的是“芝麻酱真好吃”,但当用户说到“麻”时,智能设备确定置出的置信度可能已经非常高了,甚至达到了唤醒智能设备的阈值,从而唤醒智能设备。但实际上,用户并非想唤醒智能设备,说出的语音也不是实际唤醒词“芝麻开门”,从而在用户不需要的情况下突然启动智能设备。

为此,本申请实施例提供一种智能设备唤醒方法,该方法通过二次确认的方式,根据音频帧序列所确定的全部后验概率来整体确定是否唤醒,由于音频帧序列携带与实际唤醒词相当的音频信息,故当音频帧序列中没有携带完整唤醒词对应的音频信息时,可以识别出导致误唤醒的不完整唤醒词,降低了误唤醒的出现频率。

需要强调的是,本申请实施例所提供的智能设备唤醒方法是基于人工智能实现的,人工智能(artificialintelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

在本申请实施例中,主要涉及的人工智能软件技术包括上述语音处理技术和机器学习等方向。

例如可以涉及语音技术(speechtechnology)中的语音识别技术(automaticspeechrecognition,asr),其中包括语音信号预处理(speechsignalpreprocessing)、语音信号频域分析(speechsignalfrequencyanalyzing)、语音信号特征提取(speechsignalfeatureextraction)、语音信号特征匹配/识别(speechsignalfeaturematching/recognition)、语音的训练(speechtraining)等。

例如可以涉及机器学习(machinelearning,ml),机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习通常包括深度学习(deeplearning)等技术,深度学习包括人工神经网络(artificialneuralnetwork),例如卷积神经网络(convolutionalneuralnetwork,cnn)、循环神经网络(recurrentneuralnetwork,rnn)、深度神经网络(deepneuralnetwork,dnn)等。

本申请实施例提供的智能设备唤醒方法可以应用于具有语音唤醒功能的智能设备上,该智能设备可以是终端设备,例如,智能手机、计算机、个人数字助理(personaldigitalassistant,简称pda)、平板电脑、音箱、电视盒子等。

该智能设备可以具有实施语音技术中自动语音识别技术让智能设备能听、能看、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。

在本申请实施例中,智能设备通过实施上述语音技术,可以对获取的待识别音频以及音频帧序列进行音频特征数据提取,进而确定后验概率等功能;通过机器学习技术训练目标声学模型,该目标声学模型用于确定后验概率。

为了便于理解本申请的技术方案,下面结合实际应用场景对本申请实施例提供的智能设备唤醒方法进行介绍。

参见图1,图1为本申请实施例提供的智能设备唤醒方法的应用场景示意图。该应用场景以智能设备为智能手机为例进行介绍。该应用场景中包括智能设备101,智能设备101可以获取待识别音频,由于待识别音频为智能设备101所能采集到的所有音频,可以是唤醒词、噪声或非唤醒词的音频,只有当待识别音频为唤醒词时才可以正确唤醒智能设备101。

为此,智能设备101需要对待识别音频进行识别,例如可以通过分析其中音频帧的音频特征数据来确定是否满足智能设备的唤醒条件。其中,音频特征数据表示待识别音频的发音特点,根据音频特征数据可以判断待识别音频是唤醒词的可能性,从而确定是否满足唤醒条件。

由于采用的是逐帧计算,当计算到目标音频帧时,若根据目标音频帧确定满足唤醒条件,为了避免噪声或非唤醒词造成的误唤醒,可以暂不唤醒智能设备,而是通过目标声学模型进行二次确认,以抑制误唤醒。

故,智能设备101可以为目标声学模型获取音频帧序列的多个音频特征数据。其中,音频帧序列包括目标音频帧和目标音频帧在待识别音频中的相邻音频帧,音频帧序列的长度是根据智能设备的唤醒词确定的,故音频帧序列可以携带与实际唤醒词相当的音频信息。另外,目标声学模型是在得到音频帧序列中所有音频帧的后验概率后,才根据全部后验概率来整体确定是否唤醒,故当音频帧序列中没有携带完整唤醒词对应的音频信息时,目标声学模型可以有效的阻止唤醒,降低了误唤醒的出现频率,提高了用户体验。

接下来,将结合附图对本申请实施例提供的智能设备唤醒方法进行介绍。

参见图2,图2示出了一种智能设备唤醒方法的流程图,所述方法包括:

s201、根据待识别音频中音频帧的音频特征数据,确定是否满足智能设备的唤醒条件。

智能设备在获取到待识别音频后,可以提取音频特征数据。该音频特征数据可以是任一种表示声音特点的特征,例如梅尔频率倒谱系数(melfrequencycepstrumcoefficient,mfcc)、滤波器组(filterbank,fbank)特征等。从而根据音频特征数据确定待识别音频是否满足智能设备的唤醒条件。其中,fbank特征是以类似于人耳对其听到的声音进行处理的方式来提取得到的,具体通过对已分帧的待识别音频进行傅里叶变换、能量谱计算和mel等操作,获取的能够表征每一帧音频数据的数组(也被称为fbank特征向量),该数组即为fbank特征。

在本申请实施例中,智能设备可以通过串联的两级模型(包括一级模型和二级模型)实现智能设备的唤醒方法。其中,智能设备通过一级模型执行s201的步骤。

通过一级模型确定是否满足智能设备的唤醒条件时,一级模型可以是初始声学模型,此时,s201的一种可能的实现方式为,将待识别音频中音频帧的音频特征数据输入到初始声学模型,根据该音频特征数据,通过初始声学模型确定音频特征数据对应的后验向量,再通过初始声学模型确定后验向量对应的置信度,从而根据置信度确定是否满足智能设备的唤醒条件。

其中,初始声学模型可以是dnn模型、cnn模型、长短期记忆网络(longshort-termmemory,lstm)模型等各种神经网络模型,本实施例对此不做限定。后验向量用于标识音频特征数据属于不同声学特征的概率,声学特征可以包括发音单元,例如音素、音节等。例如,声学特征包括100种,则得到的后验向量为100维向量,每一维向量表示音频特征属于所对应声学特征的概率。

在一种可能的实现方式中,确定后验向量对应的置信度的方式可以是确定一个平滑窗及一个置信度计算窗,平滑窗用于对后验向量做平滑处理,置信度计算窗用来确定计算置信度所需的音频帧,从而输出置信度。置信度计算公式如下:

其中,n表示模型的输出单元(声学特征)个数,p′ik表示平滑后的第i个输出单元第k帧的后验向量,hmax=max{1,j-ωmax+1}表示置信度计算窗ωmax中的第一帧的位置,j表示置信度计算窗ωmax中的最后一帧的位置。

在一种可能的实现方式中,确定是否满足智能设备的唤醒条件的方式可以是,判断置信度是否达到第一预设阈值,若达到,则确定满足智能设备的唤醒条件。其中,可以通过调整第一预设阈值,来平衡最终唤醒性能。

需要说明的是,由于二次确认时目标声学模型所针对的是音频帧序列的多个音频特征数据,故,提取的待识别音频中音频帧的音频特征数据可以缓存在缓存中,以便将这些音频特征数据用于后续二次确认。其中,缓存的大小是根据智能设备的唤醒词确定的,以便缓存的音频特征数据可以与实际完整唤醒词相当。

参见图3所示,图3以音频特征数据是fbank特征、初始声学模型是lstm模型为例,智能设备根据待识别音频提取音频特征数据,该音频特征数据可以缓存在缓存中,以便用于二次确认。另外,智能设备通过lstm模型可以确定音频特征数据对应的后验向量,再通过初始声学模型确定后验向量对应的置信度,若置信度达到第一预设阈值,则确定满足智能设备的唤醒条件,此时,可以触发一级模型将缓存中的音频特征数据送入二级模型。其中,后验向量还可以用于丰富二级模型输入数据的有效内容。

s202、若根据目标音频帧的音频特征数据确定满足唤醒条件,获取音频帧序列的多个音频特征数据。

由于一级模型中采用的是逐帧计算,当计算到目标音频帧时,若根据目标音频帧确定满足唤醒条件,为了避免噪声或非唤醒词造成的误唤醒,可以暂不唤醒智能设备,而是触发一级模型,将音频特征数据送入二级模型,使得二级模型获取音频帧序列的多个音频特征数据。

其中,音频帧序列包括目标音频帧和目标音频帧在待识别音频中的相邻音频帧,音频帧序列的长度是根据智能设备的唤醒词确定的,故音频帧序列可以携带与实际唤醒词相当的音频信息。另外,由于缓存的大小也可以是根据唤醒词确定的,缓存中可以缓存音频帧序列的多个音频特征数据,故,可以从一级模型的缓存中获取音频帧序列的多个音频特征数据(例如图3中的fbank特征)。

例如,待识别音频为“芝麻酱真好吃”,其包括30个音频帧,“芝麻”两个字占用第1-10个音频帧,若计算到第10个音频帧时,第10个音频帧的音频特征数据确定满足唤醒条件,则可以将第10个音频帧作为目标音频帧,那么,音频帧序列包括第10个音频帧和第10个音频帧在待识别音频“芝麻酱真好吃”中的相邻音频帧。若唤醒词“芝麻开门”包括20个音频帧,则音频帧序列的长度为20个音频帧。

需要说明的是,若智能设备通过一级模型执行s201的步骤时计算得到音频特征数据对应的后验向量,则也可以将音频特征数据对应的后验向量缓存在缓存中,在一级模型被触发时,与音频特征数据一起被送入二级模型。此时,获取音频帧序列中音频帧分别对应的多个音频特征数据的实现方式可以是,将音频帧序列中任一个音频帧的音频特征数据拼接上对应的后验向量,将拼接结果作为这个音频帧的音频特征数据,从而获取音频帧序列的音频特征数据。该音频特征数据是音频帧的音频特征数据与后验向量的拼接结果,丰富了二级模型输入数据的有效内容,有利于提高二次确认的准确性。

参见图3所示,在这种情况下,二级模型获取的是fbank特征+后验向量。

s203、通过目标声学模型确定多个音频特征数据分别对应的后验概率。

将音频帧序列中每个音频帧的音频特征数据输入到目标声学模型,从而得到每个音频特征数据对应的后验概率。其中,任一个音频特征数据的后验概率用于标识根据这个音频特征数据指示唤醒的概率。目标声学模型可以包括lstm模型,也可以包括其他模型,本实施例对此不做限定。

在本实施例中,二级模型可以是目标声学模型,目标声学模型与一级模型可以在不同设备中,也可以在同一设备中。本实施例主要以目标声学模型与一级模型在同一设备为例进行介绍,此时,无需不同设备之间进行数据交互,避免了响应延迟的问题,提高了响应速度。

二级模型是一个二分类模型,若利用类别0代表不唤醒,类别1代表唤醒,音频特征数据按帧输入二级模型后,得到的后验概率即表示该音频特征数据指示唤醒(为类别1和/或为类别0)的概率,得到的每一个后验概率可以是一个二维向量,分别标识该音频特征数据对应类别0或类别1的概率。

例如,后验概率通过二维向量[a,b]表示,其中,a表示该音频特征数据为类别0的概率,b表示该音频特征数据为类别1的概率。

s204、根据多个音频特征数据分别对应的后验概率,通过目标声学模型确定是否唤醒智能设备。

例如,音频特征数据的个数是5个,通过s203得到5个二维向量,假设分别是[0.8,0.3]、[0.7,0.4]、[0.6,0.5]、[0.3,0.7]、[0.2,0.9],则可以根据这5个后验概率通过声学模型确定是否唤醒智能设备。

由上述技术方案可以看出,针对获取的待识别音频,可以通过分析其中音频帧的音频特征数据来确定是否满足智能设备的唤醒条件。若根据其中的目标音频帧确定满足唤醒条件,暂不唤醒智能设备,而是通过目标声学模型进行二次确认。为目标声学模型获取音频帧序列的多个音频特征数据,该音频帧序列包括目标音频帧和目标音频帧在待识别音频中的相邻音频帧,通过目标声学模型确定该多个音频特征数据分别对应的后验概率,每一个音频帧的后验概率可以用于标识根据这个音频特征数据指示唤醒的概率。由于前述音频帧序列的长度是根据智能设备的唤醒词确定的,故音频帧序列可以携带与实际唤醒词相当的音频信息,而且,目标声学模型需要根据音频帧序列所确定的全部后验概率来整体确定是否唤醒,故当音频帧序列中没有携带完整唤醒词对应的音频信息时,目标声学模型可以有效的阻止唤醒,降低了误唤醒的出现频率,提高了用户体验。

可以理解的是,目标声学模型是通过训练得到的。由于s201中在确定满足智能设备的唤醒条件时,可能是正确唤醒智能设备,也有可能出现错误唤醒智能设备的情况,而目标声学模型的作用是从所有确定满足智能设备的唤醒条件的音频特征数据中区分出哪些是正确唤醒,哪些是错误唤醒,从而抑制错误唤醒智能设备问题的出现。

为此,在训练目标声学模型时,可以确定目标音频片段的音频特征数据和对应的唤醒标签。其中,目标音频片段是可以唤醒智能设备的音频,携带与完整唤醒词相当的音频信息,目标音频片段中包括可正确唤醒智能设备的第一类音频和可错误唤醒智能设备的第二类音频。已知哪些是可正确唤醒智能设备的第一类音频,哪些是可错误唤醒智能设备的第二类音频,故,可以人为标注唤醒标签,由于第一类音频可正确唤醒智能设备,故第一类音频对应的唤醒标签为指示唤醒,第二类音频可错误唤醒智能设备,故第二类音频对应的唤醒标签为指示不唤醒。然后,根据目标音频片段的音频特征数据和对应的唤醒标签训练目标声学模型,这样,训练得到的目标声学模型可以识别出可错误唤醒智能设备的音频,从而抑制误唤醒的出现概率。

由于初始声学模型可以初步确定出是否满足智能设备的唤醒条件,并且在满足智能设备的唤醒条件时,可以将音频帧序列的音频特征数据输入到目标声学模型,而音频帧序列是根据初始声学模型确定的(根据初始声学模型确定出的目标音频帧确定的),即目标声学模型的输入是根据初始声学模型确定的,那么,作为训练数据的目标音频片段也可以是根据初始声学模型确定的。例如,该音频帧序列所表示的音频为可唤醒智能设备的音频,故,可以将该音频帧序列所表示的音频作为目标音频片段。

在一些情况下,在根据目标音频片段的音频特征数据和对应的唤醒标签训练目标声学模型之前,需要确定目标音频片段的音频特征数据。在确定目标音频片段的音频特征数据时,可能需要针对目标音频片段逐帧计算,而目标音频片段中可以包括很多音频帧,为了减少计算量,提高确定目标音频片段的音频特征数据的速度,在一种可能的实现方式中,可以采用跳帧机制,即从目标音频片段中间隔提取音频帧,以所提取音频帧的音频特征数据作为目标音频片段的音频特征数据,用于目标声学模型的训练。

相应的,在使用目标声学模型时,输入目标声学模型的多个音频特征数据也应该采用跳帧机制,即s202中获取多个音频特征数据的方式可以是从音频帧序列中间隔提取音频帧,以所提取音频帧的音频特征数据作为多个音频特征数据,以用于后续使用目标声学模型进行二次确认。

可见,通过采用跳帧机制,在利用目标声学模型确定音频特征数据分别对应得后验概率时,可以减少计算量,减少资源的占用,提高计算速度。例如,每隔n帧取1帧进行音频特征数据的提取,获取的音频特征数据的数量减少为原来的1/n,相应的,计算量减小为原来的1/n,减小资源占用。

需要说明的是,由于目标声学模型是根据完整的目标音频片段得到的,且目标音频片段中包括可错误唤醒智能设备的第二类音频,故,若音频帧序列中没有携带完整唤醒词对应的音频信息时,由于第二类音频可能与该音频帧序列所表示的音频相同,从而通过该目标声学模型可以抑制没有携带完整唤醒词对应的音频信息的音频帧序列导致的误唤醒,此时,通过目标声学模型确定的音频特征数据对应的后验概率一般小,而当音频帧序列中携带完整唤醒词对应的音频信息时,通过目标声学模型确定的音频特征数据对应的后验概率一般最大。

例如,智能设备的实际唤醒词为“芝麻开门”,而目标音频片段中包括“芝麻开门”、“芝麻”、“芝麻开”等,其中,“芝麻”、“芝麻开”为可错误唤醒智能设备的第二类音频。在训练目标声学模型时,为了抑制错误唤醒,“芝麻”、“芝麻开”等第二类音频的多个音频特征数据对应的后验概率应该较小,从而使得在音频完整体现“芝麻开门”时,表示“门”的音频特征数据对应的后验概率最大。这样,当音频帧序列中没有携带完整唤醒词对应的音频信息时,训练得到的目标声学模型可以有效的阻止唤醒。

在这种情况下,目标声学模型还可以包括时域最大池化(maxover-timepooling)层(例如图3所示),maxover-timepooling层的作用是在时间维度上确定多个音频特征数据分别对应的后验概率的最大值。此时,s204的实现方式可以是通过目标声学模型,从多个音频特征数据分别对应的后验概率中确定出最大的后验概率,最大的后验概率一般是音频帧序列帧中最后一个音频帧的音频特征数据的后验概率,其所对应的音频特征数据指示唤醒的概率最大,此时音频帧序列携带完整唤醒词对应的音频信息,故,可以根据最大的后验概率确定是否唤醒智能设备。若最大的后验概率指示唤醒智能设备,则可以认为待识别音频为唤醒词,用户希望通过待识别音频唤醒智能设备。

其中,根据最大的后验概率确定是否唤醒智能设备的方式可以是确定最大的后验概率是否达到第二预设阈值,若达到,则确定唤醒智能设备(例如图3所示的阈值判决)。

此时,目标声学模型的结构图可以参见图4所示。其中包括模块一和模块二,模块一包括多层lstm和一层节点为2的全连接层及归一化指数(softmax)层,输入为多个音频特征数据x1、x2、……、xt,输出为多个音频特征数据分别对应的后验概率。模块二包括maxover-timepooling层,从而多个音频特征数据分别对应的后验概率中确定出最大的后验概率p(y)。

可以理解的是,后验概率可以通过二维向量表示,其中,后验概率的两个维度分别表示该音频特征数据为类别0和类别1的概率。通常情况下,在时间维度上,多个音频特征数据为类别0的概率依次减小,多个音频特征数据为类别1的概率依次增大。由于一个音频特征数据的后验概率标识了根据这个音频特征数据指示唤醒的概率,可以通过类别1和类别0这两个维度表示,在类别1这个维度,数值越大表示这个音频特征数据指示唤醒的概率越大,而在类别0这个维度,数值越小表示这个音频特征数据指示唤醒的概率越大。

因此,从多个音频特征数据分别对应的后验概率中确定出最大的后验概率的方式可以包括两种,第一种方式是针对类别1这个维度进行取最大值操作,确定出类别1这个维度上数值最大的音频特征数据对应的后验概率作为最大的后验概率。例如,多个音频特征数据分别对应的后验概率分别是[0.8,0.3]、[0.7,0.4]、[0.6,0.5]、[0.3,0.7]、[0.2,0.9],其中,每个二维向量中第二维表示音频特征数据为类别1的概率,五个后验概率在类别1这个维度上的数值分别是0.3、0.4、0.5、0.7、0.9,0.9为最大值,则将[0.2,0.9]作为最大的后验概率。

第二种方式是针对类别0这个维度进行取最小值操作,确定出类别0这个维度上数值最小的音频特征数据对应的后验概率作为最大的后验概率。例如,多个音频特征数据分别对应的后验概率分别是[0.8,0.3]、[0.7,0.4]、[0.6,0.5]、[0.3,0.7]、[0.2,0.9],其中,每个二维向量中第一维表示音频特征数据为类别0的概率,五个后验概率在类别0这个维度上的数值分别是0.8、0.7、0.6、0.3、0.2,0.2为最小值,则将[0.2,0.9]作为最大的后验概率。

接下来,将结合实际应用场景对本申请实施例提供的智能设备唤醒方法进行介绍。在该应用场景中智能设备为智能音箱,其唤醒词为“芝麻开门”,用户与朋友在聊天,并且用户与朋友聊天过程中发出的语音可以被智能音箱采集到。假设用户发出语音“芝麻好吃”,智能音箱可以采集到该语音,语音“芝麻好吃”可以作为待识别音频,以判断此时智能音箱是否应该唤醒。

智能音箱可以根据待识别音频中音频帧的音频特征数据,确定是否满足智能设备的唤醒条件。若智能音箱确定用户说出“麻”所对应的音频帧(目标音频帧)的音频特征数据满足唤醒条件,则将目标音频帧和其相邻音频帧作为音频帧序列,使得音频帧序列携带与实际唤醒词“芝麻开门”相当的音频信息,获取音频帧序列的多个音频特征数据。然后,计算多个音频特征数据分别对应的后验概率,若多个音频特征数据分别对应的后验概率中最大的后验概率不满足第二预设阈值,则说明“芝麻好吃”不是唤醒词,用户说出“芝麻好吃”的目的也不是为了唤醒智能音箱,此时,不会唤醒智能音箱。

基于前述实施例提供的智能设备唤醒方法,本申请实施例还提供一种智能设备唤醒装置,参见图5a,所述装置包括第一确定单元501、获取单元502、第二确定单元503和第三确定单元504:

所述第一确定单元501,用于根据待识别音频中音频帧的音频特征数据,确定是否满足所述智能设备的唤醒条件;

所述获取单元502,用于若所述第一确定单元根据目标音频帧的音频特征数据确定满足所述唤醒条件,获取音频帧序列的多个音频特征数据;所述音频帧序列包括所述目标音频帧和所述目标音频帧在所述待识别音频中的相邻音频帧,所述音频帧序列的长度是根据所述智能设备的唤醒词确定的;

所述第二确定单元503,用于通过目标声学模型确定所述多个音频特征数据分别对应的后验概率,其中任一个音频特征数据的后验概率用于标识根据这个音频特征数据指示唤醒的概率;

所述第三确定单元504,用于根据所述多个音频特征数据分别对应的后验概率,通过所述目标声学模型确定是否唤醒所述智能设备。

在一种可能的实现方式中,所述第三确定单元504,用于:

通过所述目标声学模型,从所述多个音频特征数据分别对应的后验概率中确定出最大的后验概率;

根据所述最大的后验概率确定是否唤醒所述智能设备。

在一种可能的实现方式中,参见图5b,所述装置还包括第四确定单元505和训练单元506:

所述第四确定单元505,用于确定目标音频片段的音频特征数据和对应的唤醒标签;所述目标音频片段包括可正确唤醒所述智能设备的第一类音频和可错误唤醒所述智能设备的第二类音频;所述第一类音频对应的唤醒标签为指示唤醒,所述第二类音频对应的唤醒标签为指示不唤醒;

所述训练单元506,用于根据所述目标音频片段的音频特征数据和对应的唤醒标签训练所述目标声学模型。

在一种可能的实现方式中,参见图5c,所述装置还包括提取单元507:

所述提取单元507,用于从所述目标音频片段中间隔提取音频帧,以所提取音频帧的音频特征数据作为所述目标音频片段的音频特征数据;

相应的,所述提取单元507,还用于:

从所述音频帧序列中间隔提取音频帧,以所提取音频帧的音频特征数据作为所述多个音频特征数据。

在一种可能的实现方式中,所述第一确定单元501,用于:

根据所述待识别音频中音频帧的音频特征数据,通过初始声学模型确定所述音频特征数据对应的后验向量,所述后验向量用于标识所述音频特征数据属于不同声学特征的概率;

通过所述初始声学模型确定所述后验向量对应的置信度;

根据所述置信度确定是否满足所述智能设备的唤醒条件;

所述获取单元502,用于:

将所述音频帧序列中任一个音频帧的音频特征数据拼接上对应的后验向量;

将拼接结果作为这个音频帧的音频特征数据。

在一种可能的实现方式中,若对所述目标声学模型进行训练,所述目标音频片段是根据所述初始声学模型确定的。

本申请实施例还提供了一种设备,该设备可以基于人工智能实现智能设备唤醒。下面结合附图对该设备进行介绍。请参见图6所示,本申请实施例提供了一种的设备600,该设备600还可以是终端设备,该终端设备可以为包括手机、平板电脑、个人数字助理(personaldigitalassistant,简称pda)、销售终端(pointofsales,简称pos)、车载电脑等任意智能设备,以终端设备为手机为例:

图6示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图6,手机包括:射频(radiofrequency,简称rf)电路610、存储器620、输入单元630、显示单元640、传感器650、音频电路660、无线保真(wirelessfidelity,简称wifi)模块670、处理器680、以及电源690等部件。本领域技术人员可以理解,图6中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图6对手机的各个构成部件进行具体的介绍:

rf电路610可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器680处理;另外,将设计上行的数据发送给基站。通常,rf电路610包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,简称lna)、双工器等。此外,rf电路610还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,简称gsm)、通用分组无线服务(generalpacketradioservice,简称gprs)、码分多址(codedivisionmultipleaccess,简称cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,简称wcdma)、长期演进(longtermevolution,简称lte)、电子邮件、短消息服务(shortmessagingservice,简称sms)等。

存储器620可用于存储软件程序以及模块,处理器680通过运行存储在存储器620的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元630可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元630可包括触控面板631以及其他输入设备632。触控面板631,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板631上或在触控面板631附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板631可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器680,并能接收处理器680发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板631。除了触控面板631,输入单元630还可以包括其他输入设备632。具体地,其他输入设备632可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元640可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元640可包括显示面板641,可选的,可以采用液晶显示器(liquidcrystaldisplay,简称lcd)、有机发光二极管(organiclight-emittingdiode,简称oled)等形式来配置显示面板641。进一步的,触控面板631可覆盖显示面板641,当触控面板631检测到在其上或附近的触摸操作后,传送给处理器680以确定触摸事件的类型,随后处理器680根据触摸事件的类型在显示面板641上提供相应的视觉输出。虽然在图6中,触控面板631与显示面板641是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板631与显示面板641集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器650,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板641的亮度,接近传感器可在手机移动到耳边时,关闭显示面板641和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路660、扬声器661,传声器662可提供用户与手机之间的音频接口。音频电路660可将接收到的音频数据转换后的电信号,传输到扬声器661,由扬声器661转换为声音信号输出;另一方面,传声器662将收集的声音信号转换为电信号,由音频电路660接收后转换为音频数据,再将音频数据输出处理器680处理后,经rf电路610以发送给比如另一手机,或者将音频数据输出至存储器620以便进一步处理。

wifi属于短距离无线传输技术,手机通过wifi模块670可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了wifi模块670,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器680是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器620内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器680可包括一个或多个处理单元;优选的,处理器680可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器680中。

手机还包括给各个部件供电的电源690(比如电池),优选的,电源可以通过电源管理系统与处理器680逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本实施例中,该终端设备所包括的处理器680还具有以下功能:

根据待识别音频中音频帧的音频特征数据,确定是否满足所述智能设备的唤醒条件;

若根据目标音频帧的音频特征数据确定满足所述唤醒条件,获取音频帧序列的多个音频特征数据;所述音频帧序列包括所述目标音频帧和所述目标音频帧在所述待识别音频中的相邻音频帧,所述音频帧序列的长度是根据所述智能设备的唤醒词确定的;

通过目标声学模型确定所述多个音频特征数据分别对应的后验概率,其中任一个音频特征数据的后验概率用于标识根据这个音频特征数据指示唤醒的概率;

根据所述多个音频特征数据分别对应的后验概率,通过所述目标声学模型确定是否唤醒所述智能设备。

本申请实施例还提供服务器,请参见图7所示,图7为本申请实施例提供的服务器700的结构图,服务器700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,简称cpu)722(例如,一个或一个以上处理器)和存储器732,一个或一个以上存储应用程序742或数据744的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器732和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器722可以设置为与存储介质730通信,在服务器700上执行存储介质730中的一系列指令操作。

服务器700还可以包括一个或一个以上电源726,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口758,和/或,一个或一个以上操作系统741,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

上述实施例中由服务器所执行的步骤可以基于该图7所示的服务器结构。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行前述各个实施例所述的基于人工智能的智能设备唤醒方法。

本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的基于人工智能的智能设备唤醒方法。

本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1