CN113178193A - 一种基于智能语音芯片的中文自定义唤醒与物联交互方法 - Google Patents
一种基于智能语音芯片的中文自定义唤醒与物联交互方法 Download PDFInfo
- Publication number
- CN113178193A CN113178193A CN202110302440.2A CN202110302440A CN113178193A CN 113178193 A CN113178193 A CN 113178193A CN 202110302440 A CN202110302440 A CN 202110302440A CN 113178193 A CN113178193 A CN 113178193A
- Authority
- CN
- China
- Prior art keywords
- model
- voice
- input
- text
- transformer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000003993 interaction Effects 0.000 title claims abstract description 11
- 230000006870 function Effects 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 29
- 230000007246 mechanism Effects 0.000 claims description 9
- 238000002474 experimental method Methods 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 6
- 230000002457 bidirectional effect Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000009432 framing Methods 0.000 claims description 4
- 238000011176 pooling Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 230000002618 waking effect Effects 0.000 claims description 3
- 238000007476 Maximum Likelihood Methods 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 claims description 2
- 230000009466 transformation Effects 0.000 claims description 2
- 238000000605 extraction Methods 0.000 abstract description 2
- 210000005036 nerve Anatomy 0.000 abstract 1
- 238000003058 natural language processing Methods 0.000 description 10
- 238000012360 testing method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 102100033814 Alanine aminotransferase 2 Human genes 0.000 description 1
- 101710096000 Alanine aminotransferase 2 Proteins 0.000 description 1
- 235000011034 Rubus glaucus Nutrition 0.000 description 1
- 244000235659 Rubus idaeus Species 0.000 description 1
- 235000009122 Rubus idaeus Nutrition 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000037433 frameshift Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1822—Parsing for meaning understanding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0631—Creating reference templates; Clustering
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/081—Search algorithms, e.g. Baum-Welch or Viterbi
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Machine Translation (AREA)
Abstract
一种基于智能语音芯片的中文自定义唤醒与物联交互方法,包括:步骤1:唤醒语音,具体包括:步骤1‑1:提取语音特征;从麦克风获取语音信号,把语音信号进行特征提取得到二维的特征序列;步骤1‑2:检测唤醒词;把步骤1‑1中得到的语音特征输入CNN‑CTC声学模型神经;步骤2:识别离线语音;包括:步骤2‑1:运用CNN‑CTC声学模型,将输入的语音转换为拼音;步骤2‑2:把CNN‑CTC声学模型得到的拼音输入Transformer语言模型,输出拼音转化成的文字;步骤3:意图识别和槽填充;把2‑2步骤中得到的文字输入BERT模型,输出是文字所代表的意图;通过识别出的意图,进行天气查询和音乐播放;步骤4:生成对话文本;把2‑2步骤中得到的文字输入GPT模型,输出是对话的文本,提供闲聊的功能。
Description
技术领域
本发明涉及中文自定义唤醒与物联交互方法,特别是其中的语音识别算法、意图识别算法和自然语言生成模型。该方法可以脱离云服务平台,保证隐私安全。使用一个浅层神经网络声学模型,实现few-shot甚至zero-shot的本地自定义语音唤醒方案。使用最新的Transformer特征提取器代替传统的语言模型+解码器,借助自注意力机制实现拼音转文字的功能。使用NLP流行的预训练模型GPT和BERT,分别利用其单向和双向的特点实现自然语言生成和自然语言理解。
背景技术
随着深度学习、自然语言处理的发展,我们现在随处可见一些智能语音助手。这些语音助手被安装在了我们的手机、智能音箱等设备中,成为了用户与其他智能设备或服务的智能代理(Intelligent Agent),这种模式如今已经成为智能家居或其他物联交互中的主流方式。但这种通过智能代理传话、云端处理的方式也存在很多问题。目前各大科技公司提供的智能云服务平台都是闭源的,对于开发者来说过于依赖平台提供的接口,限制了产品功能的多样性,缺乏开发的灵活性;而对于使用者来说,其数据都发送至平台云端处理,用户的隐私得不到保障,特别是譬如智能家居这些偏向私密的场景下,数据的保密性和安全性问题尤显严重。因此,为了提高开发的灵活性和使用的安全性,迫切需要一个智能物联交互方法解决方案。
发明内容
本发明要克服现有技术的上述缺点,提供一种基于智能语音芯片的中文自定义唤醒与物联交互方法。
本发明基本内容定位于语音与自然语言处理的实现上,整体的解决方案基于一个pipeline的对话,即语言识别-意图识别-对话管理-自然语言生成-语音合成。对话的每一部分都是本课题所要研究的对象。
本发明的具体内容包括:
(1)自定义中文语音唤醒
目前亚马逊Alexa和百度DuerOS都采用了本地语音唤醒引擎Snowboy。Snowboy通过用户上传的语音数据训练特定词的识别模型。模型分为personal模型与universal模型,前者只用了极少的训练数据,只能识别特定人的语音(person dependent),后者是收集了大量语音数据后训练出的通用模型(person independent)。然而,Snowboy作为一个闭源的商业平台,对外只暴露了personal dependent模型训练的RESTful API接口。本发明将致力于找到更佳的唤醒词解决方案,第一是保证数据安全性,第二是提升模型的通用性。
(2)识别离线语音
几乎所有的智能语音开放平台都提供了“免费”的在线语音识别接口,用户的语音数据被各大平台收集,在大数据时代下这何尝不是一种隐性的收费模式?不仅如此,如今频繁曝出的大公司泄露用户隐私数据也向我们敲响了警钟,识别离线语音势在必行。如今有许多开源的离线中文语音识别方案,如PocketsPhinx。本发明将致力于将识别语音本地化,并解决因此带来的硬件计算速度无法达到要求的问题。
(3)自然语言处理
这是智能语音服务的核心,也是本课题所有研究内容的核心。自然语言处理(Natural Language Processing)在这里包括了意图识别(Intention Recognition),槽位填充(Slot Filling),对话管理(Dialogue Management),自然语言生成(NaturalLanguage Generation)。自然语言处理的目的是从用户千变万化的表达中,提取出最关键的意图信息和与意图相关的关键字信息,并生成相应的回馈信息。同样的,本发明致力于找到一个本地的自然语言处理解决方案。
本发明的基于智能语音芯片的中文自定义唤醒与物联交互方法,包括:
步骤1:唤醒语音,包括:
步骤1-1:提取语音特征;从麦克风获取语音信号,把语音信号进行分帧、加窗、傅里叶变换;经过傅里叶变换后再取绝对值或平方值得到的是二维的声谱图(Spectrogram)。Spectrogram再经过Mel滤波器和log运算后后得到Log Mel Spectrogram,也就是FilterBank特征;
步骤1-2:检测唤醒词
选用CNN-CTC声学模型,神经网络的输入X是步骤1-1中得到的二维的特征序列,其中T为时间维度,输出Y是未经对齐的标签,如"xiao3 du4 xiao3 du4"(这里假设用拼音建模,数字代表音调),由于时间维度大于输出标签数,因此输出可以存在多条路径对应标签,如"xiao3 xiao3 du4 du4 xiao3 du4 du4 du4"、"xiao3 xiao3 xiao3 du4 du4 xiao3xiao3 du4 du4"等;CTC使用极大似然的思想,对应标签Y,其关于输入X的后验概率可以表示为所有映射为Y的路径之和,CTC的目标就是最大化后验概率,即
路径数量与时间长度T呈指数型关系,CTC使用动态规划思想对查找路径剪枝;预测过程和训练过程相似,计算上述后验概率P(Y=唤醒词|X=特征序列),根据这个概率判断是否唤醒;
步骤2:识别离线语音;包括:
步骤2-1:运用CNN-CTC声学模型,将输入的语音转换为拼音;声学模型与步骤1-2中的模型类似,但因为没有功耗、运行速度上的限制,网络更加复杂,因此能达到更高的准确率;具体模型如图2所示;对比语音唤醒的声学模型,使用拼音作为建模单位,且使用二维卷积和二维池化层取代一维卷积核一维池化层,提高网络的特征提取能力;网络的输出的shape为200x1424;不同于语音唤醒的声学模型预测时使用动态规划法计算损失值,语音识别的声学模型预测时使用解码算法(贪婪搜索、集束搜索)得到最有可能的拼音序列;本实验使用集束宽度为10的集束搜索算法,集束搜索不同于贪婪算法只找最高概率的,而是找最高的若干个概率作为下一次的输入,依次迭代;
步骤2-2:运用Transformer语言模型;
Transformer语言模型的输入是CNN-CTC声学模型得到的拼音,输出是拼音转化成的文字;Transformer作为近年来新提出的特征提取器,在自然语言处理和语音方面的许多领域都取得了优于RNN和CNN的表现;Transformer的结构如图4所示,包含左边一个encoder和右边一个decoder,这里作为一个序列解码模型,只需要用到左边的encoder部分;Transformer encoder由若干个Transformer block堆叠而成,每一个block由两个sublayers构成,第一个sub layer是Multi-head Attention多头自注意力结构,另一个sublayer是一个Position-wise Feed Forward网络,两个sub layer都使用了残差结构和Layer Normalization;自注意力机制学习到了输入序列内部的依赖关系,而不受限于距离,使输入序列学习到上下文相关的特征;如图3所示,自注意力机制仅仅是输入的线性组合,而使用非线性前馈全连接神经网络提高了模型的非线性表征能力;残差结构的加入有效地缓解了网络退化,Layer Normalization可以加速模型收敛;由于Transformer的自注意力机制不考虑输入序列的顺序,但事实上语言的顺序也是一个重要的特征因素,因此除了对输入的内容进行embedding外,额外对输入加入了positional encoding位置编码,使模型能学到输入之间的相对位置信息;
基于Transformer的拼音解码模型在Transformer encoder的最后连接一个全连接层,并使用Softmax进行多分类;
步骤3:意图识别和槽填充,使用基于BERT的联合意图识别和槽填充;
BERT模型的输入是上一步骤中得到的文字,输出是文字所代表的意图;通过识别出的意图,可以进行天气查询和音乐播放的功能;
BERT(Bidirectional Encoder Representations from Transformer)是Google在2018年提出的一种新的预训练自然语言处理模型。如图5所示,模型的主要结构是多个Transformer encoders的堆叠;模型分为Pre-train和Fine-tuning两个阶段;Pre-train的目标之一是训练一个双向语言模型,挖掘词的上下文信息;Transformer encoder的自注意力机制将上下文的词编码到当前模型中,可以作为双向语言模型的特征提取器;但也正由于自注意力机制,多个Transformer encoders堆叠来做词预测任务时存在标签泄露问题;因此使用Masked Language Model,即将预测的词变为<MASK>标签,但Fine-tuning阶段输入不会出现<MASK>标签,为了防止模型过分依赖于<MASK>标签,只会将预测词的80%变为<MASK>标签,10%变为随机token,10%不变;Pre-train阶段的另外一个任务是NextSentence Prediction,目的是让模型理解两个句子之间的联系;Fine-tuning阶段面向下游任务,根据不同的任务进行监督训练;
BERT的自注意力机制在面对语义理解相关问题时具有天然优势,许多自然语言处理的下游任务都开始采用BERT作为预训练模型,再在自己的Task上进行Fine-tuning;基于BERT的联合意图识别和槽填充模型,如图6所示,[CLS]标签经由BERT后输出文本语义特征,特征经过一个DNN分类器后输出意图类别;Token经由BERT后输出上下文相关词义特征,特征经过DNN分类器后输出标签类别;假设意图类别和N个时间步上的标签在给定输入序列下互相条件独立,则联合模型可以由下式表示:
Fine-tuning的目标函数是最大化上述概率,等价于最小化交叉熵损失;实际计算中分别计算意图识别和槽位填充的交叉熵损失值,他们之和就是联合模型的总体损失值;
步骤4:生成对话文本,使用基于GPT模型的对话文本生成;
GPT模型的输入是步骤2中得到的文字,输出是文字代表对话的文本,提供闲聊功能;
GPT模型是一种预训练+微调模型;如图7所示,GPT模型使用Transformer的decoder部分作为特征提取器(没有与encoder Attention的部分),面对下游任务时在GPT基础上扩展模型结构进行Fine Tune;
使用最大化互信息(Maximum Mutual Information)作为训练目标,即使用
训练两个模型,一个正向的从输入到输出文本的Dialogue Model,对应于公式的log P(T|S)部分,一个逆向的从输出到输入文本的MMI Model,对应于公式的log P(S|T)部分;对话预处理时,将每一组对话数据(包含若干轮对话文本)合并成一句文本,使用[SEP]标识符分割,最后在文本头添加[CLS]标识符,尾部添加[SEP]标识符,比如某个训练数据是:[CLS]唉支持他的决定吧[SEP]支持他是我对他的态度,接不接受是我个人的问题[SEP]是这样的[SEP]尽力吧[SEP];这样,根据GPT-2的思想,只要数据量足够,模型是可以学到[SEP]标识符左右的文本是一问一答的特征;训练时,借助语言模型根据前文预测下一个字的特点,将n个token文本的前n-1个token输入GPT,对应的label为后n-1个token,使用交叉熵作为损失函数,最大化公式的后验概率,逆向模型同理;预测时,Dialogue Model输入为历史对话数据和当前文本,然后逐个预测下一个字直到遇到[SEP]标识符,正向模型可以生成多个候选回复,然后输入到MMI Model中,计算loss,选取loss最小的作为最终的回复文本。
优选地,时间维度T的取值是8。
与现有技术相比,本发明的优点在于:
1.CNN-CTC声学模型可以自定义唤醒词;
2.Transformer语言模型对比使用HMM建模的声学符号转文本的生成模型,预测阶段不用进行非常耗时的解码运算。并且HMM假设观测变量(声学符号)之间条件独立于隐变量(文本序列),具有一定的不合理性,Transformer结构恰恰捕捉到了输入之间的依赖关系,因此具有更好的表现;
3.对比BERT模型使用双向语言模型作为预训练任务,GPT使用传统的自回归单向语言模型,即最大化下一个词出现的概率。单向语言模型具有只能看到前文信息、无法提取上下文特征的局限性,但也因此能够胜任自然语言生成的任务,因为自然语言生成就是仅需要前文信息,这一点BERT模型不占优势。
附图说明
图1为本发明的整体流程示意图;
图2为本发明的语音识别声学模型图;
图3为多头自注意力结构图;
图4为本发明的Transformer encoder-decoder模型图;
图5为本发明的BERT两个阶段的模型图;
图6为本发明的基于BERT的联合意图识别和槽填充模型图;
图7为本发明的GPT模型结构以及下游任务图。
具体实施方式
为了能够更容易理解本发明的流程,结合图1的流程图进行以下的具体介绍:
具体而言包括以下步骤:
本发明的基于智能语音芯片的中文自定义唤醒与物联交互方法的流程图如图1所示,包括:
步骤1:唤醒语音,包括:
步骤1-1:提取语音特征;
以16000Hz的采样率获取语音数据,用25ms的分帧窗口大小和12.5ms的帧移进行分帧,即相邻两帧间有50%的重叠部分,加窗使用汉明窗;再做短时傅里叶变换之后取绝对值获得特征数据;
步骤1-2:检测唤醒词;
如图2所示,以音素建模,如“浙江工业大学”可以表示为“zh e4 j iang1 g ong1ii ie4 da4 x ve2”网络的输入为624x200的Log Spectrogram,使用CNN深度神经网络提取声学特征,网络的输出shape为78x202,表示长度为78序列的202类分类问题。由于深度神经网络带来的计算时间、功耗问题,实验中加入VAD语音活动检测算法,只会在检测到达到一定声音强度阈值时进行模型预测;预测阶段,计算后验概率P(Y=唤醒词|X=特征序列),实际上等价于计算CTC Loss,比如唤醒词为“g ong1 d a4 g ong1 d a4”,则只需要计算标签为“g ong1 d a4g ong1 d a4”的CTC Loss,得到的损失值是负对数概率,即-log(P(Y=“gong1 d a4 g ong1 d a4”|X=特征序列)),只需要设定一个阈值,当负对数概率小于阈值时设备被唤醒。实验中为了提高模型的鲁棒性,设置了3个标签以及对应的权重作为唤醒词模型,每轮预测需要计算三次损失;
步骤2:识别语音;
步骤2-1:运用CNN-CTC声学模型;
训练集使用ST-CMDS语音数据集,包含10W多条不同人的语音数据和标签,由于训练设备资源受限,实验只取其中2W条语音数据,其中1.6W用于训练,0.4W条用于验证集。语音识别声学模型使用二维卷积模型,如图2所示;
CNN-CTC声学模型实验结果如表1所示:
表1语音识别声学模型性能及准确率测试表(在树莓派4上测试)
步骤2-2:运用Transformer语言模型;
拼音转文字的序列分类模型在AISHELL-1训练集(只提取文本部分,使用pypinyin自动标注拼音)共12W条左右数据上训练,模型设置num_heads=8,num_blocks=4,hidden_units=512,batch_size=128,使用Adam作为优化器,初始学习率0.001,训练时Dropout率设为0.3。训练80个epochs在验证集上达到94.16%的准确率。表2展示了一些拼音转文本的测试,标红的表示转化错误;
表2 Transformer序列分类模型测试
步骤3:意图识别和槽填充,使用基于BERT的联合意图识别和槽填充;
由于中文意图识别和槽位填充标准数据集较少,因此实验使用的数据集主要从不同来源的数据集拼凑而成,其中也有本人自己构造的部分,包括前文提到的共三种意图和多个槽位标签。数据划分为两部分,80%的训练集和20%的验证集;
使用BERT+Softmax模型进行联合意图识别和槽位填充测试,训练时设置batchsize为32,使用Adam作为优化器,初始学习率为0.00005;针对样本标签数量不均衡问题,如“B-scene”标签在训练集中只出现20次,而“O”标签出现了50000多次,对样本数量少的标签增大loss权重以缓解问题;在训练集上训练8000个steps,从表3中可以看出在训练完成后,模型已经在验证集上达到了较高的准确率;
表3 BERT+Softmax意图识别与槽填充测试
步骤4:生成对话文本,使用基于GPT模型的对话文本生成;
DialoGPT的正向和逆向模型各自在NLPCC 2018Multi-Turn Human-ComputerConversations的50万轮对话数据上训练40轮,batch_size=16,使用Adam作为优化器,初始学习率设置为0.00015;最终在训练集上达到0.5左右的准确率,在验证集上达到0.35左右的准确率;下表4测试了几组对话数据,由正向模型产生5个候选回复输入逆向模型中,最终回复取逆向模型损失值最小的一个;注意,由于使用的是采样解码,因此相同输入生成的回复是一个随机变量。
表4 DialoGPT对话生成测试
本发明已经通过上述实例进行了说明,但应当注意的是实例只是解释说明的目的,而非将本发明局限于该实例范围内。尽管参照前述实例本发明进行了详尽的说明,本领域研究人员应当能够理解:其依然可以随前述各实例所记载的技术方案进行修改,或者对其部分技术特征进行同等替换;二这些修改或替换,并不使相应的技术方案脱离本发明的保护范围。本发明的保护范围由附属的权力要求书机器等效范围。
Claims (2)
1.一种基于智能语音芯片的中文自定义唤醒与物联交互方法,包括以下步骤:
步骤1:唤醒语音,包括:
步骤1-1:提取语音特征;从麦克风获取语音信号,把语音信号进行分帧、加窗、傅里叶变换;经过傅里叶变换后再取绝对值或平方值得到的是二维的声谱图(Spectrogram)。Spectrogram再经过Mel滤波器和log运算后后得到Log Mel Spectrogram,也就是FilterBank特征;
步骤1-2:检测唤醒词
选用CNN-CTC声学模型,神经网络的输入X是步骤1-1中得到的二维的特征序列,其中T为时间维度,输出Y是未经对齐的标签,由于时间维度大于输出标签数,因此输出可以存在多条路径对应标签;CTC使用极大似然的思想,对应标签Y,其关于输入X的后验概率可以表示为所有映射为Y的路径之和,CTC的目标就是最大化后验概率,即
路径数量与时间长度T呈指数型关系,CTC使用动态规划思想对查找路径剪枝;预测过程和训练过程相似,计算上述后验概率P(Y=唤醒词|X=特征序列),根据这个概率判断是否唤醒;
步骤2:识别离线语音;包括:
步骤2-1:运用CNN-CTC声学模型,将输入的语音转换为拼音;声学模型与步骤1-2中的模型类似;对比语音唤醒的声学模型,使用拼音作为建模单位,且使用二维卷积和二维池化层取代一维卷积核一维池化层;网络的输出的shape为200x1424;本实验使用集束宽度为10的集束搜索算法,找最高的若干个概率作为下一次的输入,依次迭代;
步骤2-2:运用Transformer语言模型;
Transformer语言模型的输入是CNN-CTC声学模型得到的拼音,输出是拼音转化成的文字;Transformer的结构包含左边一个encoder和右边一个decoder,这里作为一个序列解码模型,只需要用到左边的encoder部分;Transformer encoder由若干个Transformer block堆叠而成,每一个block由两个sub layers构成,第一个sub layer是Multi-headAttention多头自注意力结构,另一个sub layer是一个Position-wise Feed Forward网络,两个sub layer都使用了残差结构和Layer Normalization;
基于Transformer的拼音解码模型在Transformer encoder的最后连接一个全连接层,并使用Softmax进行多分类;
步骤3:意图识别和槽填充,使用基于BERT的联合意图识别和槽填充;
BERT模型的输入是上一步骤中得到的文字,输出是文字所代表的意图;通过识别出的意图,可以进行天气查询和音乐播放的功能;
模型的主要结构是多个Transformer encoders的堆叠;模型分为Pre-train和Fine-tuning两个阶段;Pre-train的目标之一是训练一个双向语言模型,挖掘词的上下文信息;Transformer encoder的自注意力机制将上下文的词编码到当前模型中,作为双向语言模型的特征提取器;但也正由于自注意力机制,多个Transformer encoders堆叠来做词预测任务时存在标签泄露问题;因此使用Masked Language Model,即将预测的词变为<MASK>标签,但Fine-tuning阶段输入不会出现<MASK>标签,为了防止模型过分依赖于<MASK>标签,只会将预测词的80%变为<MASK>标签,10%变为随机token,10%不变;Pre-train阶段的另外一个任务是Next Sentence Prediction,目的是让模型理解两个句子之间的联系;Fine-tuning阶段面向下游任务,根据不同的任务进行监督训练;
基于BERT的联合意图识别和槽填充模型,[CLS]标签经由BERT后输出文本语义特征,特征经过一个DNN分类器后输出意图类别;Token经由BERT后输出上下文相关词义特征,特征经过DNN分类器后输出标签类别;假设意图类别和N个时间步上的标签在给定输入序列下互相条件独立,则联合模型可以由下式表示:
Fine-tuning的目标函数是最大化上述概率,等价于最小化交叉熵损失;实际计算中分别计算意图识别和槽位填充的交叉熵损失值,他们之和就是联合模型的总体损失值;
步骤4:生成对话文本,使用基于GPT模型的对话文本生成;
GPT模型的输入是步骤2中得到的文字,输出是文字代表对话的文本,提供闲聊功能;
GPT模型是一种预训练+微调模型,使用Transformer的decoder部分作为特征提取器(没有与encoder Attention的部分),面对下游任务时在GPT基础上扩展模型结构进行FineTune;
使用最大化互信息(Maximum Mutual Information)作为训练目标,即使用
训练两个模型,一个正向的从输入到输出文本的Dialogue Model,对应于公式的log P(T|S)部分,一个逆向的从输出到输入文本的MMIModel,对应于公式的log P(S|T)部分;对话预处理时,将每一组对话数据(包含若干轮对话文本)合并成一句文本,使用[SEP]标识符分割,最后在文本头添加[CLS]标识符,尾部添加[SEP]标识符;训练时,借助语言模型根据前文预测下一个字的特点,将n个token文本的前n-1个token输入GPT,对应的label为后n-1个token,使用交叉熵作为损失函数,最大化公式的后验概率,逆向模型同理;预测时,Dialogue Model输入为历史对话数据和当前文本,然后逐个预测下一个字直到遇到[SEP]标识符,正向模型可以生成多个候选回复,然后输入到MMI Model中,计算loss,选取loss最小的作为最终的回复文本。
2.如权利要求1所述的一种基于智能语音芯片的中文自定义唤醒与物联交互方法,其特征在于:步骤1-2所述的时间维度T的取值是8。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110302440.2A CN113178193A (zh) | 2021-03-22 | 2021-03-22 | 一种基于智能语音芯片的中文自定义唤醒与物联交互方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110302440.2A CN113178193A (zh) | 2021-03-22 | 2021-03-22 | 一种基于智能语音芯片的中文自定义唤醒与物联交互方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113178193A true CN113178193A (zh) | 2021-07-27 |
Family
ID=76922136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110302440.2A Pending CN113178193A (zh) | 2021-03-22 | 2021-03-22 | 一种基于智能语音芯片的中文自定义唤醒与物联交互方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113178193A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113488057A (zh) * | 2021-08-18 | 2021-10-08 | 山东新一代信息产业技术研究院有限公司 | 面向康养的对话实现方法及系统 |
CN113838462A (zh) * | 2021-09-09 | 2021-12-24 | 北京捷通华声科技股份有限公司 | 语音唤醒方法、装置、电子设备及计算机可读存储介质 |
CN114051154A (zh) * | 2021-11-05 | 2022-02-15 | 新华智云科技有限公司 | 一种新闻视频拆条方法和系统 |
WO2023030105A1 (zh) * | 2021-08-30 | 2023-03-09 | 京东方科技集团股份有限公司 | 训练自然语言处理模型和自然语言处理的方法、电子设备 |
CN116229955A (zh) * | 2023-05-09 | 2023-06-06 | 海尔优家智能科技(北京)有限公司 | 基于生成式预训练gpt模型的交互意图信息确定方法 |
CN117912027A (zh) * | 2024-03-18 | 2024-04-19 | 山东大学 | 一种适用于rpa流程自动化的智能识别方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107221326A (zh) * | 2017-05-16 | 2017-09-29 | 百度在线网络技术(北京)有限公司 | 基于人工智能的语音唤醒方法、装置和计算机设备 |
US20200135174A1 (en) * | 2018-10-24 | 2020-04-30 | Tencent America LLC | Multi-task training architecture and strategy for attention-based speech recognition system |
-
2021
- 2021-03-22 CN CN202110302440.2A patent/CN113178193A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107221326A (zh) * | 2017-05-16 | 2017-09-29 | 百度在线网络技术(北京)有限公司 | 基于人工智能的语音唤醒方法、装置和计算机设备 |
US20180336886A1 (en) * | 2017-05-16 | 2018-11-22 | Baidu Online Network Technology (Beijing) Co., Ltd. | Method and device for waking up via speech based on artificial intelligence and computer device |
US20200135174A1 (en) * | 2018-10-24 | 2020-04-30 | Tencent America LLC | Multi-task training architecture and strategy for attention-based speech recognition system |
Non-Patent Citations (5)
Title |
---|
唐子惠: "《医学人工智能导论》", 30 April 2020 * |
朱晨光: "《机器阅读理解》", 31 March 2020 * |
杨德举等: "基于门控卷积网络与CTC的端到端语音识别", 《计算机工程与设计》 * |
潘粤成等: "一种基于CNN/CTC的端到端普通话语音识别方法", 《现代信息科技》 * |
臧珍华: "基于深度学习的离线语音识别系统的开发", 《优秀硕士毕业论文》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113488057A (zh) * | 2021-08-18 | 2021-10-08 | 山东新一代信息产业技术研究院有限公司 | 面向康养的对话实现方法及系统 |
CN113488057B (zh) * | 2021-08-18 | 2023-11-14 | 山东新一代信息产业技术研究院有限公司 | 面向康养的对话实现方法及系统 |
WO2023030105A1 (zh) * | 2021-08-30 | 2023-03-09 | 京东方科技集团股份有限公司 | 训练自然语言处理模型和自然语言处理的方法、电子设备 |
CN113838462A (zh) * | 2021-09-09 | 2021-12-24 | 北京捷通华声科技股份有限公司 | 语音唤醒方法、装置、电子设备及计算机可读存储介质 |
CN113838462B (zh) * | 2021-09-09 | 2024-05-10 | 北京捷通华声科技股份有限公司 | 语音唤醒方法、装置、电子设备及计算机可读存储介质 |
CN114051154A (zh) * | 2021-11-05 | 2022-02-15 | 新华智云科技有限公司 | 一种新闻视频拆条方法和系统 |
CN116229955A (zh) * | 2023-05-09 | 2023-06-06 | 海尔优家智能科技(北京)有限公司 | 基于生成式预训练gpt模型的交互意图信息确定方法 |
CN116229955B (zh) * | 2023-05-09 | 2023-08-18 | 海尔优家智能科技(北京)有限公司 | 基于生成式预训练gpt模型的交互意图信息确定方法 |
CN117912027A (zh) * | 2024-03-18 | 2024-04-19 | 山东大学 | 一种适用于rpa流程自动化的智能识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Haghani et al. | From audio to semantics: Approaches to end-to-end spoken language understanding | |
CN113178193A (zh) | 一种基于智能语音芯片的中文自定义唤醒与物联交互方法 | |
CN111931506B (zh) | 一种基于图信息增强的实体关系抽取方法 | |
CN110516253B (zh) | 中文口语语义理解方法及系统 | |
CN107797987B (zh) | 一种基于Bi-LSTM-CNN的混合语料命名实体识别方法 | |
CN111858932A (zh) | 基于Transformer的多重特征中英文情感分类方法及系统 | |
CN112151015B (zh) | 关键词检测方法、装置、电子设备以及存储介质 | |
CN107977353A (zh) | 一种基于lstm-cnn的混合语料命名实体识别方法 | |
Heck et al. | Deep learning of knowledge graph embeddings for semantic parsing of twitter dialogs | |
Zhao et al. | Multi-level fusion of wav2vec 2.0 and bert for multimodal emotion recognition | |
CN107797988A (zh) | 一种基于Bi‑LSTM的混合语料命名实体识别方法 | |
Zhu et al. | Catslu: The 1st chinese audio-textual spoken language understanding challenge | |
CN114691864A (zh) | 文本分类模型训练方法及装置、文本分类方法及装置 | |
CN112818698A (zh) | 一种基于双通道模型的细粒度的用户评论情感分析方法 | |
CN114428850A (zh) | 一种文本检索匹配方法和系统 | |
Yuan et al. | Query-by-example speech search using recurrent neural acoustic word embeddings with temporal context | |
CN107992468A (zh) | 一种基于lstm的混合语料命名实体识别方法 | |
CN109933773A (zh) | 一种多重语义语句解析系统及方法 | |
Sarikaya et al. | Shrinkage based features for slot tagging with conditional random fields. | |
CN113823265A (zh) | 一种语音识别方法、装置和计算机设备 | |
Wu et al. | One improved model of named entity recognition by combining BERT and BiLSTM-CNN for domain of Chinese railway construction | |
CN112307179A (zh) | 文本匹配方法、装置、设备及存储介质 | |
Liu et al. | Hierarchical component-attention based speaker turn embedding for emotion recognition | |
CN110738989A (zh) | 一种利用多种语言模型的端到端网络学习解决基于地点的语音的自动识别任务的方法 | |
CN115169363A (zh) | 一种融合知识的增量编码的对话情感识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210727 |
|
RJ01 | Rejection of invention patent application after publication |