TW201828042A - 一種設定操作的執行方法及裝置 - Google Patents
一種設定操作的執行方法及裝置 Download PDFInfo
- Publication number
- TW201828042A TW201828042A TW106102731A TW106102731A TW201828042A TW 201828042 A TW201828042 A TW 201828042A TW 106102731 A TW106102731 A TW 106102731A TW 106102731 A TW106102731 A TW 106102731A TW 201828042 A TW201828042 A TW 201828042A
- Authority
- TW
- Taiwan
- Prior art keywords
- neural network
- speech signal
- network model
- phoneme
- acoustic
- Prior art date
Links
Landscapes
- Electrically Operated Instructional Devices (AREA)
- Forklifts And Lifting Vehicles (AREA)
- Power Steering Mechanism (AREA)
- Sewing Machines And Sewing (AREA)
Abstract
本申請公開了一種設定操作的執行方法及裝置,該方法包括:獲得語音信號聲學特徵,將獲得的各語音信號聲學特徵輸入訓練好的神經網路模型;其中,對所述神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本;根據訓練好的神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率,判斷是否執行設定操作。本申請中採用的神經網路模型進行計算的方式,可以有效降低計算量級,減少耗費的處理資源。
Description
本申請涉及計算機技術領域,尤其涉及一種設定操作的執行方法及裝置。
隨著資訊技術的發展,語音喚醒技術由於其非接觸式的操控特性,使得用戶可以便捷地針對具有語音喚醒功能的設備進行啟動控制,從而得到了廣泛地應用。
若要實現對設備的語音喚醒,需要在設備中預先設置特定的喚醒詞,根據喚醒詞和發音詞典確定相應的發音音位(其中,發音音位簡稱為音位,是指喚醒詞的發音音節的最小語音單位)。在實際使用時,用戶在設備附近的一定範圍內說出喚醒詞時,設備就會採集用戶發出的語音信號,並根據語音信號聲學特徵,進而判斷語音信號聲學特徵是否與喚醒詞的音位相匹配,以確定用戶說出的是否為喚醒詞,若是,則設備會執行自我喚醒的操作,比如自動啟動、或者從休眠狀態切換為活化狀態,等等。
現有技術中,對於具有語音喚醒功能的設備而言,通常採用隱馬爾可夫模型(Hidden Markov Model,HMM) 實現上述判斷,具體為:在語音喚醒模組中分別預載入喚醒詞和非喚醒詞的HMM,當接收到用戶發出的語音信號後,使用維特比算法對語音信號逐訊框解碼至音位級別,最後根據解碼後的結果,判斷用戶發出的語音信號的語音聲學特徵是否與喚醒詞的音位相匹配,從而判斷出用戶說出的是否為喚醒詞。
上述現有技術存在的缺陷在於,在採用維特比算法對用戶發出的語音信號進行逐訊框解碼計算的過程中會涉及到動態規劃計算,計算量極大,從而導致整個語音喚醒過程耗費較多處理資源。
類似地,在採用上述類似方法,以設定詞對應的語音信號聲學特徵,觸發設備執行自我喚醒的操作外的其他設定操作(比如發出指定信號,或者撥打電話,等等)時,也可能面臨相同的問題。其中,所述的設定詞,是指用於觸發設備執行設定操作的語音信號聲學特徵對應的字或詞的統稱,前文所述的喚醒詞,屬於設定詞的一種。
本申請實施例提供一種設定操作的執行方法,用以解決現有技術中的觸發設備執行設定操作的過程會耗費較多處理資源的問題。
本申請實施例還提供一種設定操作的執行裝置,用以解決現有技術中的觸發設備執行設定操作的過程會耗費較多處理資源的問題。
本申請實施例提供的設定操作的執行方法,包括:獲得語音信號聲學特徵;將獲得的各語音信號聲學特徵輸入訓練好的神經網路模型;其中,對所述神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本;根據訓練好的神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述喚醒詞對應的音位的概率,判斷是否執行喚醒操作。
本申請實施例提供的設定操作的執行裝置,包括:獲取模組,用於獲得語音信號聲學特徵;神經網路模組,用於將獲得的各語音信號聲學特徵輸入訓練好的神經網路模型;其中,對所述神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本;判斷確認模組,用於根據訓練好的神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率,判斷是否執行設定操作。
採用本申請實施例提供的上述至少一個方案,透過採用神經網路模型,來確定獲得的語音信號聲學特徵對應於與設定詞對應的音位的概率,進而根據概率確定是否執行設定操作。由於相比於採用維特比算法對語音信號逐訊框解碼至音位級別而言,採用神經網路來確定所述概率不會耗費較多資源,因此相比於現有技術,本申請實施例提供的方案可減少設定操作過程耗費的處理資源。
401‧‧‧獲取模組
402‧‧‧神經網路模組
403‧‧‧判斷確認模組
404‧‧‧語音活動檢測模組
此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:圖1為本申請實施例提供的設定操作的執行過程;圖2為本申請實施例提供的神經網路模型的示意圖;圖3a、3b為本申請實施例提供的根據神經網路模型的輸出,對喚醒詞對應音位進行規律統計的示意圖;圖4本申請實施例提供的設定操作的執行裝置結構示意圖。
為使本申請的目的、技術方案和優點更加清楚,下面將結合本申請具體實施例及相應的附圖對本申請技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例。基於本申請中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本申請保護的範圍。
如前所述,採用維特比算法對語音信號逐訊框解碼至音位級別需要耗費大量計算資源,尤其對於具備語音喚醒功能的設備而言,如:智慧音響、智慧家居設備等等,較大的計算量不僅會增加設備的工作負荷,而且會增加設備 能耗,導致設備的工作效率降低。而考慮到神經網路模型具有較強的特徵學習能力以及計算結構輕量級的特點,適於實際應用中具備語音喚醒功能的各類設備。
正是基於此,本申請提出了如圖1所示的設定操作的執行過程,該過程具體包括以下步驟:S101,獲得語音信號聲學特徵。
在實際應用場景下,當用戶針對具有語音喚醒功能的設備(下文中稱為“語音設備”)透過語音觸發方式執行設定操作時,通常需要說出設定詞,用戶說出設定詞的聲音就是用戶發出的語音信號。相應地,語音設備便可以接收到用戶發出的語音信號。對於語音設備而言,可以認為其接收到的任何語音信號,都是需要進行識別處理的,以便確定出用戶說出的是否為設定詞。
這裡需要說明的是,在本申請中,設定操作包括但不限於:以語音方式觸發的喚醒操作、呼叫操作、多媒體控制操作等等。本申請中的設定詞包括但不限於:喚醒詞、呼叫指令詞、控制指令詞等預先設定的、用於進行語音方式觸發的口令詞語(在某些情況下,設定詞可以只包含一個漢字或單詞)。
在語音設備接收到用戶發出的語音信號之後,會從該語音信號中提取並獲得相應的語音信號聲學特徵,以便對語音信號進行識別。本申請實施例中所述的語音信號聲學特徵,具體可以是從語音信號中提取的以訊框為單位的語音信號的聲學特徵。
當然,對於語音信號而言,可由語音設備中攜帶的具有語音拾音功能的芯片實現信號聲學特徵的提取。更為具體地,語音信號聲學特徵的提取,可由語音設備中的語音喚醒模組完成,這裡並不構成對本申請的限定。一旦語音設備獲得了上述語音信號聲學特徵,就可以對語音信號聲學特徵進行計算處理,也即,可以執行下述步驟S102。
S102,將獲得的各語音信號聲學特徵輸入訓練好的神經網路模型。
其中,對所述神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本。
所述的神經網路模型,具備了計算量級小、計算結果準確的特點,適用於不同的設備中。考慮到在實際應用中,具有極強的特徵學習能力、易訓練的深度神經網路(Deep Neural Network,DNN),可以較好的適應於語音識別的場景中,故在本申請實施例中,具體可以採用訓練好的深度神經網路。
在實際應用場景下,本申請中訓練好的神經網路模型可由設備供應商提供,即,語音設備供應商會將訓練好的神經網路模型作為語音喚醒模組的一部分,將語音喚醒模組設置在芯片或處理器中嵌入語音設備。當然,這裡只是對神經網路模型設置方式的示例性說明,並不構成對本申請的限定。
為了保證訓練好的神經網路模型的輸出結果的準確性,在訓練的過程中,可使用一定規模的訓練樣本進行訓 練,以便優化並完善神經網路模型。對於訓練樣本而言,訓練樣本中通常包含設定詞對應的語音信號聲學特徵樣本,當然,語音設備所接收到的語音信號並非都對應著設定詞,那麼,為了區別出非設定詞,在實際應用中,訓練樣本中一般還可以包含非設定詞的語音信號聲學特徵樣本。
本申請實施例中,該訓練好的神經網路模型的輸入結果,至少包括語音信號聲學特徵對應於與設定詞對應的音位的概率。
在神經網路模型生成後,便可以將之前得到的語音信號聲學特徵(如:語音特徵向量)作為輸入,輸入至神經網路模型中進行計算,得到相應的輸出結果。這裡需要說明的是,作為本申請實施例在實際應用場景下的一種方式,可以在獲得了設定詞對應的全部語音信號聲學特徵後,一併將獲得到的各語音信號聲學特徵輸入至上述的神經網路模型。而作為本申請實施例在實際應用場景下的另一種方式,考慮到用戶發出的語音信號是時序信號,那麼,可以將獲取到的語音信號聲學特徵以時序方式連續輸入至上述的神經網路模型中(也即,邊獲取邊輸入)。上述兩種輸入語音信號聲學特徵的方式可根據實際應用的需要而選定,並不構成對本申請的限定。
S103,根據訓練好的神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率,判斷是否執行設定操作。
其中,所述各語音信號聲學特徵對應於與設定詞對應的音位的概率,即各語音信號聲學特徵與所述設定詞對應的音位相匹配的概率。可以理解,該概率越大,語音信號聲學特徵為設定詞對應的正確發音的語音信號聲學特徵的可能性越大;反之,則可能性越小。
所述執行設定操作,是指以語音喚醒的方式喚醒待喚醒的語音設備。比如,若本申請實施例提供的方法的執行主體是該設備本身,則所述執行設定操作,是指喚醒該設備本身。當然,本申請實施例提供的該方法,也適用於由一設備喚醒另一設備的場景。
本申請實施例中,針對某個語音信號聲學特徵而言,神經網路模型可以根據輸入的該語音信號聲學特徵,經過計算後,輸出該語音信號聲學特徵對應於不同音位(包括設定詞對應的音位和其他音位)的概率分佈,根據輸出的概率分佈,就可以從所述不同音位中,確定出與該語音信號聲學特徵最為匹配的音位,即確定出所述概率分佈中的最大概率對應的音位。該音位,為與該語音信號聲學特徵最為匹配的音位。
以此類推,可以統計出與從長度為一個歷史窗口的語音信號內提取的每個語音信號聲學特徵分別最為匹配的音位,及相應的概率;進一步地,基於與每個語音信號聲學特徵分別最為匹配的音位,及相應的概率,可以確定語音信號是否與設定詞相對應。需要說明的是,所述歷史窗口也即一定時長,該時長為語音信號時長,具備該時長的語 音信號一般被認為包含足夠多的語音信號聲學特徵。
以下舉例說明上述特徵的具體實現過程:假設以設定詞為漢語中“啟動”二字為例:其發音包含“q”、“i3”、“d”、“ong4”四個音位,這裡的數字3和4分別表示不同的聲調,也即,“i3”表示發出“i”音時是第三聲調,相類似的,“ong4”表示發出“ong”音時是第四聲調。在實際應用時,設備將獲得的語音信號聲學特徵輸入至訓練好的神經網路模型中,神經網路模型可計算出各語音信號聲學特徵可能表示的音位的概率分佈,如:計算出語音信號聲學特徵可能表示的每一種音位“q”、“i3”、“d”、“ong4”的概率,並將語音信號聲學特徵映射到概率最大的音位,從而,也就得到了各語音信號聲學特徵相匹配的音位。基於此,在一個歷史窗口內,確定語音信號是否依次對應著“q”、“i3”、“d”、“ong4”這四個音位,若是,那麼,語音信號就對應著“啟動”這個設定詞。
從上例可見,這樣的方式可確定出語音信號聲學特徵所對應的音位是否為設定詞的音位,也就能進一步確定出用戶說出的是否為設定詞,從而判斷是否執行設定操作。
透過上述步驟,透過採用神經網路模型,來確定獲得的語音信號聲學特徵對應於與設定詞對應的音位的概率,進而根據概率確定是否執行喚醒操作。由於相比於採用維特比算法對語音信號逐訊框解碼至音位級別而言,採用神經網路來確定所述概率不會耗費較多資源,因此相比於現 有技術,本申請實施例提供的方案可減少設定操作過程耗費的處理資源。
對於上述步驟,需要說明的是,在執行設定操作之前,設備通常處於休眠、關閉等未活化狀態(此時,只有設備中的語音喚醒模組處於監控狀態),設定操作是在用戶說出設定詞透過認證後,設備中的語音喚醒模組會控制設備進入活化狀態。因此,在本申請中,獲得語音信號聲學特徵之前,所述方法還包括:透過執行語音活動檢測(Voice Activity Detection,VAD),判斷是否存在語音信號,在判斷為是時,執行步驟S101,即獲得語音信號聲學特徵。
在實際應用時,對於上述步驟S101而言,獲得語音信號聲學特徵,包括:從語音信號訊框中獲得所述語音信號聲學特徵。也就是說,上述的語音信號聲學特徵通常是從語音信號中提取後獲得的,而語音信號聲學特徵提取的準確性,將對後續神經網路模型的泛化預測產生影響,也會對提升喚醒識別的準確度有重大的影響。下面將對語音信號聲學特徵提取的過程進行具體說明。
在特徵的提取階段,一般在一個固定大小的時間窗口內採樣每一訊框語音信號的特徵。例如:作為本申請實施例中的一種可選方式,信號採集窗口的時間長度設置為25ms,採集週期設置為10ms,也就是說,當設備接收到待識別語音信號之後,將每隔10ms對一個時間長度為25ms的窗口進行採樣。
在上述示例中,採樣得到的是語音信號的原始特徵,經過進一步特徵提取後,獲得固定維度(假設為N,N的取值將根據實際應用時所採用的不同的特徵提取方式來確定,這裡不作具體限定)的且具備一定區分度的語音信號聲學特徵。在本申請實施例中,常用的語音聲學特徵包括濾波器組特徵(Filter Bank特徵)、梅爾倒譜特徵(Mel Frequency Cepstrum Coefficient,MFCC特徵),感知線性預測特徵(Perceptual Linear Predictive,PLP)等。
經過這樣的提取過程,便得到了包含有N維語音信號聲學特徵的語音信號訊框(在本申請中,這裡的每一個語音信號訊框也可稱為每一訊框語音特徵向量)。另外需要說明的是,由於語音是時序信號,上下文訊框之間具有相關性,所以,在獲得了上述的各訊框語音特徵向量後,可以按照語音信號訊框在時間軸上的排列順序,依次將各訊框語音特徵向量進行拼接,得到一個組合形式的語音信號聲學特徵。
具體而言,從語音信號訊框中獲得所述語音信號聲學特徵,包括:依次針對語音信號訊框中的各基準訊框,執行:獲取語音信號訊框中的、在時間軸上排列在該基準訊框之前的第一數量的語音信號訊框的聲學特徵,以及語音信號訊框中的、在時間軸上排列在該基準訊框之後的第二數量的語音信號訊框的聲學特徵,其中,對獲取的各聲學特徵進行拼接,得到所述語音信號聲學特徵。
基準訊框通常是指語音設備當前採樣的語音信號訊 框,對於連續的語音信號而言,語音設備會執行多次採樣,從而在整個過程中將產生多個基準訊框。
在本實施例中,所述第二數量可以小於所述第一數量。拼接得到的該語音信號聲學特徵,可以視為相應的基準訊框的語音信號聲學特徵,後文中提及的時間戳,則可以是所述相應的基準訊框的在語音信號中的相對時序次序,即該基準訊框在時間軸上的排列位置。
也就是說,為了提高深度神經網路模型的泛化預測能力,一般將當前訊框(也即,基準訊框)與其上下文的左L訊框,右R訊框拼接起來,組成一個大小為(L+1+R)*N的特徵向量(其中,數字“1”表示當前訊框本身),作為深度神經網路模型的輸入。通常地,L>R,也即,左右不對稱的訊框數。這裡之所以用到不對稱的左、右上下文訊框數,是因為流式音頻存在延時解碼問題,不對稱的上下文訊框可以儘量減少或避免延時解碼的影響。
例如,在本申請實施例中,以當前訊框作為基準訊框,那麼,可以選定該當前訊框及其前30訊框、後10訊框拼接起來,形成了41訊框(包含當前訊框本身)組成的語音信號聲學特徵,作為深度神經網路輸入層的輸入。
以上內容是本申請中語音信號聲學特徵的詳細描述,在獲得了上述的語音信號聲學特徵後,就會輸入至訓練好的神經網路模型中進行計算。那麼,對於本申請中的神經網路模型而言,可以是一種深度神經網路模型,該模型的結構比如如圖2所示。
在圖2中,深度神經網路模型具有輸入層、隱層和輸出層三部分。語音特徵向量從輸入層中輸入至隱層進行計算處理。每一層隱層中包括128個或者256個節點(也稱為神經元),每個節點中設置有相應的活化函數,實現具體的計算過程,作為本申請實施例中的一種可選方式,以線性修正函數(Rectified Linear Units,ReLU)作為隱層節點的活化函數,並在輸出層中設置SoftMax回歸函數,對隱層的輸出進行規整化處理。
建立了上述的深度神經網路模型後,便要對該深度神經網路模型進行訓練。在本申請中,採用下述方式,訓練上述的深度神經網路模型:根據所述設定詞對應的音位樣本的數量,確定待訓練的深度神經網路中輸出層的節點數量,循環執行下述步驟,直至深度神經網路模型收斂(深度神經網路模型收斂是指:深度神經網路所輸出的概率分佈中的最大概率值,對應的是所述語音信號聲學特徵樣本對應的正確發音的音位):將訓練樣本輸入至所述深度神經網路模型,使得所述深度神經網路模型對輸入的樣本的特徵進行前向傳播計算直至輸出層,並使用預設目標函數(一般是基於交叉熵(Cross Entropy)準則)計算誤差,並透過深度神經網路模型從輸出層開始反向傳播誤差,並根據誤差逐層調節所述深度神經網路模型的權重。
當算法收斂時,深度神經網路模型中存在的誤差降至 最低。
經過上述步驟,訓練好的深度神經網路便可以採用芯片方式嵌入到相應的設備中進行應用。這裡針對深度神經網路模型在嵌入式設備的應用需要說明的是,一方面,在應用時需要用到輕量級的模型,即:神經網路中隱層數量和每個隱層的節點數量需要有所限制,故採用適當規模的深度神經網路模型即可;另一方面,還需要根據特定的平台利用優化指令集(如:ARM平台上的NEON)對深度神經網路模型的計算進行性能提升的優化,以滿足實時性的要求。
本申請中,經過訓練後的深度神經網路模型的輸出層的節點的數量,與設定詞對應的音位的數量以及1個“Garbage”節點相對應,也即,假設設定詞為上例中的“啟動”,對應4個音位,那麼,經過訓練後的深度神經網路模型的輸出層的節點數量就為5。其中“Garbage”節點對應於除了設定詞音位之外的其他音位,也即,對應於與設定詞的音位不相同的其他音位。
為了能夠準確地得到與設定詞對應的音位以及與設定詞的音位不相符的其他音位,在訓練過程中,可以基於大詞彙連續語音識別系統(Large Vocabulary Continuous Speech Recognition,LVCSR),為訓練樣本中的每一訊框特徵強對齊(Forced Align)至音位級別。
其中,對於訓練樣本而言,一般可以包括正樣本(包含設定詞)和負樣本(不包含設定詞)。本申請實施例 中,通常選擇發音以元音開頭(或包含元音)的設定詞,這樣的設定詞發音飽滿,有助於提高喚醒系統的誤拒比率。鑒於此,訓練樣本的設定詞可以例如:“大白,你好”,其對應的音位分別為:d、a4、b、ai2、n、i3、h、ao3。這裡舉例說明的設定詞只是一種示例,並不構成對本申請的限定,在實際應用中還可以類推至其他有價值的設定詞。
經過上述訓練樣本資料的訓練後,將獲得一個收斂優化的深度神經網路模型,其可以最大概率將語音聲學特徵映射到正確的音位上。
另外,為了使得神經網路模型的拓撲結構達到最優狀態,可以採用遷移學習(Transfer Learning)的方式,利用網際網路語音大資料訓練拓撲結構合適的DNN,作為目標深度神經網路(主要是除了輸出層之外的其他層)參數的初始值。這樣處理的好處是為了獲得強健性更好的“特徵表示”,避免訓練過程中陷入局部最優。“遷移學習”的概念很好地利用了深度神經網路“特徵學習”的強大能力。當然,這裡並不構成對本申請的限定。
經過上述內容,便得到了本申請中訓練好的神經網路模型。從而可以進行實際使用。下面將針對實際使用的場景進行說明。
在實際應用時,設備可接收用戶發出的語音信號,並獲取該語音信號對應的語音信號聲學特徵輸入至訓練好的神經網路模型,從而神經網路模型經過計算後,輸出所述 設定詞對應的音位與所述各語音信號聲學特徵分別相匹配的概率,進而判斷是否執行設定操作。
具體而言,根據訓練好的神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率,判斷是否執行喚醒操作,包括:確定所述神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率中的最大似然概率,確定獲得的各最大似然概率與相應的音位的映射關係,根據所述映射關係,以及置信度閾值,判斷是否執行喚醒操作。
這裡需要說明的是,當各語音信號聲學特徵經過上述的神經網路模型的計算處理後,神經網路模型輸出各語音信號聲學特徵的概率分佈,概率分佈反映了語音信號聲學特徵與設定詞對應的音位相匹配的各種可能性分佈,顯然,對於任一語音信號聲學特徵而言,其概率分佈中的最大值(即,最大似然概率),就表示該語音信號聲學特徵與設定詞對應的音位相匹配的可能性的最大,故在本申請的上述步驟中,將確定出各語音信號聲學特徵對應於與所述設定詞對應的音位的概率中最大的似然概率。
另外,在上述步驟中,根據所述映射關係,以及置信度閾值,判斷是否執行喚醒操作,具體包括:針對每一設定詞對應的音位,統計與該音位具有映射關係的最大似然概率的數量,作為該音位對應的置信度,判斷每一音位的置信度是否均大於置信度閾值,若是,則執行所述設定操作;否則,則不執行所述設定操作。
至此,在本申請中,當語音設備獲得了語音信號聲學特徵之後,可將該語音信號聲學特徵輸入至語音喚醒模組神經網路模型中進行計算,得到語音信號聲學特徵可能表徵的各音位的概率分佈,並且,神經網路模型會將語音信號聲學特徵映射到概率最大的音位,這樣一來,在統計了一個歷史窗口內各訊框語音信號聲學特徵的音位規律特性,以確定所述語音信號是否與設定詞相對應。本申請中所採用的神經網路模型進行計算的方式,可以有效降低計算量級,減少耗費的處理資源,同時,神經網路模型易於訓練,能夠有效提升其適用性。
為了清楚地說明上述設定操作操作的執行過程,下面以設定詞為喚醒詞、設定操作為針對語音設備的喚醒操作的場景進行詳細說明:在本場景中,假設語音設備預先設定的喚醒詞為“大白,你好”,該喚醒詞對應的標準音位(為了區分識別過程中用戶說出的詞組所對應的音位,這裡將預設的喚醒詞對應的音位稱為標準音位)分別為:d、a4、b、ai2、n、i3、h、ao3。
首先,為了能夠直觀地表示各音位的概率分佈,可以採用諸如直方圖的圖形方式進行表示,本示例中以直方圖為例,即,將透過上述深度神經網路模型建立每個音位和“Garbage”節點對應的直方圖。如圖3a所示,每一個音位(包括“Garbage”節點)對應一個直方圖柱(由於還未進行語音信號識別處理過程,所以圖3a中,每個音位 的直方圖柱的高度為零),直方圖柱的高度反映了語音信號聲學特徵映射到該音位的統計值。這裡的統計值,便可以看作該音位的置信度。
之後,語音喚醒設備中的語音喚醒模組接收待識別語音信號。通常地,在語音喚醒模組執行前,通常由VAD模組執行語音信號的檢測操作,目的是為了檢測語音信號是否存在(以區別於靜音狀態)。一旦檢測語音信號,語音喚醒系統開始工作,即,利用神經網路模型進行計算處理。
在深度神經網路模型進行計算的過程中,語音喚醒模組會從用戶發出的語音信號中獲得的語音信號聲學特徵(其中包含採用前文所述方式對若干訊框語音特徵向量進行拼接得到的語音信號聲學特徵)輸入到深度神經網路模型,進行前向傳播計算。為了提高計算的效率,這裡也可以採用“塊計算”的方式,即:將連續若干語音信號訊框(形成一個活動窗口)的語音特徵向量同時輸入到深度神經網路模型,接著進行矩陣計算。當然,這裡並不構成對本申請的限定。
深度神經網路模型的輸出層所輸出的數值,表示基於給定語音特徵向量對應音位的概率分佈。顯然,喚醒詞對應的發音音位覆蓋非“Garbage”節點的概率是更大的。取輸出層最大似然概率對應的音位,其直方圖增加一個單位,並記錄相應的時間戳(以訊框為單位)。
具體而言,假設,對於某一語音信號訊框的語音特徵 向量而言,其輸出層最大概率對應的發音音位為喚醒詞發音音位“d”,那麼,在如圖3a所示的直方圖中,對應於標準音位“d”的直方圖的高度就增加一個單位;而如果其輸出層最大概率對應的發音音位不是喚醒詞的任何發音音位,那麼,“garbage”對應的直方圖將增加一個單位,表示這一語音信號訊框的語音特徵向量不對應於喚醒詞的任何發音音位。按照這樣的方式,最終可以形成如圖3b所示的直方圖。
在一個歷史窗口內,每個直方圖的覆蓋占比可以視作每個音位的置信度。本申請實施例中,可以預設置信度閾值,比如可以在深度神經網路訓練完成後,在一個驗證集上進行交叉實驗獲得該置信度閾值。該置信度閾值的作用在於:針對某個語音信號而言,若按照上文介紹的過程,確定出該語音信號對應的喚醒詞的各發音音位的直方圖,那麼,可以根據該直方圖以及該置信度閾值,判斷喚醒詞的各發音音位的直方圖高度(即置信度)是否均超過置信度閾值,若是,那麼可以確定該語音信號是喚醒詞對應的語音信號,也就可以執行相應的語音喚醒操作。
此外需要說明的是,直方圖中每增加一個單位,語音喚醒設備都會記錄相應的時間戳。其中,該時間戳以訊框為單位,表示語音聲學特徵所屬的語音信號訊框在語音信號中的相對時序次序,即該語音聲學特徵所屬的語音信號訊框在時間軸上的排列位置。若針對語音聲學特徵,在直方圖中增加一個單位時,記錄了時間戳為X,則該時間戳 可以表示該訊框語音聲學特徵所屬的語音信號訊框為第X訊框。根據時間戳,可以確定出不同語音聲學特徵所屬的語音信號訊框在時間軸上的排列位置。可以認為,如果待識別語音信號中也包含著“大白,你好”這個喚醒詞,那麼,如圖3b所示的直方圖中,針對與“d”至“ao3”的直方圖對應記錄的時間戳應該單調遞增。
在實際應用中,若引入時間戳作為是否執行喚醒操作的判定條件,則若“d”至“ao3”的直方圖高度均超過置信度閾值,且根據記錄的時間戳,判斷出與“d”至“ao3”的直方圖對應的時間戳單調遞增時,才認為語音信號是喚醒詞對應的語音信號,從而執行喚醒操作。
引入時間戳作為是否執行喚醒操作的判定條件的方式,比較適合於要求對喚醒詞包含的各個字進行依次發音,才能執行喚醒操作的場景。
在實際應用中,上述內容並不限於語音喚醒操作,同樣適用於不同場景下以語音方式觸發的設定操作。這裡不再過多贅述。
以上為本申請實施例提供的設定操作操作的執行方法,基於同樣的思路,本申請實施例還提供一種設定操作的執行裝置,如圖4所示。
在圖4中,設定操作的執行裝置包括:獲取模組401、神經網路模組402、判斷確認模組403,其中,獲取模組401,用於獲得語音信號聲學特徵。
神經網路模組402,用於將獲得的各語音信號聲學特 徵輸入訓練好的神經網路模型;其中,對所述神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本。
判斷確認模組403,用於根據訓練好的神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率,判斷是否執行設定操作。
獲取模組401,具體用於從語音信號訊框中獲得所述語音信號聲學特徵。
更為具體地,獲取模組401,具體用於採用以當前採樣的語音信號訊框作為基準訊框的方式,從第一數量的語音信號訊框之後的第一訊框開始,逐訊框對後續各語音信號訊框執行:獲取各語音信號訊框中的、在時間軸上排列在該基準訊框之前的第一數量的語音信號訊框的聲學特徵,以及各語音信號訊框中的、在時間軸上排列在該基準訊框之後的第二數量的語音信號訊框的聲學特徵,並對獲取的各聲學特徵進行拼接,得到所述語音信號聲學特徵。
對於上述內容而言,其中,所述第二數量小於所述第一數量。
此外,所述裝置還包括:語音活動檢測模組404,用於在獲得語音信號聲學特徵之前,透過執行語音活動檢測VAD,判斷是否存在語音信號,在判斷為是時,獲得語音信號聲學特徵。
在本申請實施例中,神經網路模組402,具體用於採用下述方式,訓練所述神經網路模型:根據所述設定詞對 應的音位樣本的數量確定待訓練的深度神經網路中輸出層的節點數量;循環執行下述步驟,直至待訓練的深度神經網路所輸出的、設定詞對應的語音信號聲學特徵樣本對應的音位的概率分佈中的最大概率值,為所述語音信號聲學特徵樣本對應的正確發音的音位:將訓練樣本輸入至所述待訓練的深度神經網路,使得所述待訓練的深度神經網路對輸入的樣本的特徵進行前向傳播計算直至輸出層,使用預設目標函數計算該誤差,並透過所述深度神經網路模型從輸出層反向傳播誤差,根據誤差逐層調節所述深度神經網路模型的權重。
在上述神經網路模組402完成訓練的基礎上,判斷確認模組403,具體用於確定所述神經網路模型輸出的、所述各語音信號聲學特徵對應於與所述設定詞對應的音位的概率中的最大似然概率,確定獲得的各最大似然概率與相應的音位的映射關係,根據所述映射關係,以及置信度閾值,判斷是否執行喚醒操作。
更為具體地,判斷確認模組403,具體用於針對每一設定詞對應的音位,統計與該音位具有映射關係的最大似然概率的數量,作為該音位對應的置信度,判斷每一音位的置信度是否均大於置信度閾值,若是,則執行所述設定操作;否則,則不執行所述設定操作。
在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和內存記憶體。
內存記憶體可能包括計算機可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)及/或非揮發性內存記憶體等形式,如唯讀記憶體(ROM)或快閃內存記憶體(flash RAM)。內存記憶體是計算機可讀媒體的示例。
計算機可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是計算機可讀指令、資料結構、程式的模組或其他資料。計算機的儲存媒體的例子包括,但不限於相變內存記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可抹除可編程唯讀記憶體(EEPROM)、快閃記憶體或其他內存技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁盤儲存或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備存取的資訊。按照本文中的界定,計算機可讀媒體不包括暫存電腦可讀媒體(transitory media),如調變的資料信號和載波。
還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要件的過程、方法、商品或者設備不僅包括那些要件,而且還包括沒有明確列出的其他要件,或者是還包括為這種過程、方法、商品或者設備所固有的要件。在沒有更多限制的情況下,由語句“包括一個......”限定的要件,並不排除 在包括所述要件的過程、方法、商品或者設備中還存在另外的相同要件。
本領域技術人員應明白,本申請的實施例可提供為方法、系統或計算機程式產品。因此,本申請可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本申請可採用在一個或多個其中包含有計算機可用程式代碼的計算機可用儲存媒體(包括但不限於磁碟儲存器、CD-ROM、光學儲存器等)上實施的計算機程式產品的形式。
以上所述僅為本申請的實施例而已,並不用於限制本申請。對於本領域技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本申請的申請專利的範圍之內。
Claims (16)
- 一種設定操作的執行方法,其特徵在於,包括:獲得語音信號聲學特徵;將獲得的各語音信號聲學特徵輸入訓練好的神經網路模型;其中,對該神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本;根據訓練好的神經網路模型輸出的、該各語音信號聲學特徵對應於與該設定詞對應的音位的概率,判斷是否執行設定操作。
- 如申請專利範圍第1項所述的方法,其中,獲得語音信號聲學特徵,具體包括:從語音信號訊框中獲得該語音信號聲學特徵。
- 如申請專利範圍第2項所述的方法,其中,從語音信號訊框中獲得該語音信號聲學特徵,包括:依次針對語音信號訊框中的各基準訊框,執行:獲取語音信號訊框中的、在時間軸上排列在基準訊框之前的第一數量的語音信號訊框的聲學特徵,以及語音信號訊框中的、在時間軸上排列在該基準訊框之後的第二數量的語音信號訊框的聲學特徵;對獲取的各聲學特徵進行拼接,得到該語音信號聲學特徵。
- 如申請專利範圍第3項所述的方法,其中,該第二數量小於該第一數量。
- 如申請專利範圍第1項所述的方法,其中,獲得 語音信號聲學特徵之前,該方法還包括:透過執行語音活動檢測VAD,判斷是否存在語音信號;在判斷為是時,獲得語音信號聲學特徵。
- 如申請專利範圍第1項所述的方法,其中,採用下述方式,訓練該神經網路模型:根據該設定詞對應的音位樣本的數量確定待訓練的深度神經網路中輸出層的節點數量;循環執行下述步驟,直至待訓練的深度神經網路所輸出的概率分佈中的最大概率值,對應的是該語音信號聲學特徵樣本對應的正確發音的音位:將訓練樣本輸入至該待訓練的深度神經網路,使得該待訓練的深度神經網路對輸入的樣本的特徵進行前向傳播計算直至輸出層,使用預設目標函數計算該誤差,並透過該深度神經網路模型從輸出層反向傳播誤差,根據誤差逐層調節該深度神經網路模型的權重。
- 如申請專利範圍第1項所述的方法,其中,根據訓練好的神經網路模型輸出的、該各語音信號聲學特徵對應於與該設定詞對應的音位的概率,判斷是否執行設定操作,包括:確定該神經網路模型輸出的、該各語音信號聲學特徵對應於與該設定詞對應的音位的概率中的最大似然概率;確定獲得的各最大似然概率與相應的音位的映射關係; 根據該映射關係,以及置信度閾值,判斷是否執行設定操作。
- 如申請專利範圍第7項所述的方法,其中,根據該映射關係,以及置信度閾值,判斷是否執行設定操作,具體包括:針對每一設定詞對應的音位,統計與該音位具有映射關係的最大似然概率的數量,作為該音位對應的置信度;判斷每一音位的置信度是否均大於置信度閾值;若是,則執行該設定操作;否則,則不執行該設定操作。
- 一種設定操作的執行裝置,其特徵在於,包括:獲取模組,用於獲得語音信號聲學特徵;神經網路模組,用於將獲得的各語音信號聲學特徵輸入訓練好的神經網路模型;其中,對該神經網路模型進行訓練所用的樣本,至少包含設定詞對應的語音信號聲學特徵樣本;判斷確認模組,用於根據訓練好的神經網路模型輸出的、該各語音信號聲學特徵對應於與該設定詞對應的音位的概率,判斷是否執行設定操作。
- 如申請專利範圍第9項所述的裝置,其中,該獲取模組,具體用於從語音信號訊框中獲得該語音信號聲學特徵。
- 如申請專利範圍第10項所述的裝置,其中,該獲取模組,具體用於依次針對語音信號訊框中的各基準訊 框,執行:獲取語音信號訊框中的、在時間軸上排列在該基準訊框之前的第一數量的語音信號訊框的聲學特徵,以及語音信號訊框中的、在時間軸上排列在該基準訊框之後的第二數量的語音信號訊框的聲學特徵;對獲取的各聲學特徵進行拼接,得到該語音信號聲學特徵。
- 如申請專利範圍第11項所述的裝置,其中,該第二數量小於該第一數量。
- 如申請專利範圍第9項所述的裝置,其中,該裝置還包括:語音活動檢測模組,用於在獲得語音信號聲學特徵之前,透過執行語音活動檢測VAD,判斷是否存在語音信號,在判斷為是時,獲得語音信號聲學特徵。
- 如申請專利範圍第9項所述的裝置,其中,該神經網路模組,具體用於採用下述方式,訓練該神經網路模型:根據該設定詞對應的音位樣本的數量確定待訓練的深度神經網路中輸出層的節點數量;循環執行下述步驟,直至待訓練的深度神經網路所輸出的概率分佈中的最大概率值,對應的是該語音信號聲學特徵樣本對應的正確發音的音位:將訓練樣本輸入至該待訓練的深度神經網路,使得該待訓練的深度神經網路對輸入的樣本的特徵進行前向傳播計算直至輸出層,使用預設目標函數計算該誤差,並透過該深度神經網路模型從輸出層反向傳播誤差,根據誤差逐層調節該深度神經網路模型的權重。
- 如申請專利範圍第9項所述的裝置,其中,該判斷確認模組,具體用於確定該神經網路模型輸出的、該各語音信號聲學特徵對應於與該設定詞對應的音位的概率中的最大似然概率,確定獲得的各最大似然概率與相應的音位的映射關係,根據該映射關係,以及置信度閾值,判斷是否執行設定操作。
- 如申請專利範圍第9項所述的裝置,其中,該判斷確認模組,具體用於針對每一設定詞對應的音位,統計與該音位具有映射關係的最大似然概率的數量,作為該音位對應的置信度,判斷每一音位的置信度是否均大於置信度閾值,若是,則執行該設定操作;否則,則不執行該設定操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106102731A TWI776799B (zh) | 2017-01-24 | 2017-01-24 | 一種設定操作的執行方法及裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106102731A TWI776799B (zh) | 2017-01-24 | 2017-01-24 | 一種設定操作的執行方法及裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201828042A true TW201828042A (zh) | 2018-08-01 |
TWI776799B TWI776799B (zh) | 2022-09-11 |
Family
ID=63960198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106102731A TWI776799B (zh) | 2017-01-24 | 2017-01-24 | 一種設定操作的執行方法及裝置 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI776799B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI457788B (zh) * | 2012-01-13 | 2014-10-21 | Ind Tech Res Inst | 互動式語音指令建構系統與方法 |
CN103971690A (zh) * | 2013-01-28 | 2014-08-06 | 腾讯科技(深圳)有限公司 | 一种声纹识别方法和装置 |
WO2015184186A1 (en) * | 2014-05-30 | 2015-12-03 | Apple Inc. | Multi-command single utterance input method |
US10089580B2 (en) * | 2014-08-11 | 2018-10-02 | Microsoft Technology Licensing, Llc | Generating and using a knowledge-enhanced model |
US9741344B2 (en) * | 2014-10-20 | 2017-08-22 | Vocalzoom Systems Ltd. | System and method for operating devices using voice commands |
TWI587281B (zh) * | 2014-11-07 | 2017-06-11 | Papago Inc | Voice control system and its method |
CN105096939B (zh) * | 2015-07-08 | 2017-07-25 | 百度在线网络技术(北京)有限公司 | 语音唤醒方法和装置 |
-
2017
- 2017-01-24 TW TW106102731A patent/TWI776799B/zh active
Also Published As
Publication number | Publication date |
---|---|
TWI776799B (zh) | 2022-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017114201A1 (zh) | 一种设定操作的执行方法及装置 | |
US11915699B2 (en) | Account association with device | |
CN110364143B (zh) | 语音唤醒方法、装置及其智能电子设备 | |
JP7336537B2 (ja) | 組み合わせで行うエンドポイント決定と自動音声認識 | |
US11657832B2 (en) | User presence detection | |
US10937448B2 (en) | Voice activity detection method and apparatus | |
CN108320733B (zh) | 语音数据处理方法及装置、存储介质、电子设备 | |
US10872599B1 (en) | Wakeword training | |
JP2019211749A (ja) | 音声の始点及び終点の検出方法、装置、コンピュータ設備及びプログラム | |
US12080282B2 (en) | Natural language processing using context | |
JP2023089116A (ja) | エンドツーエンドストリーミングキーワードスポッティング | |
WO2021098153A1 (zh) | 目标用户改变的检测方法、系统、电子设备和存储介质 | |
US11810593B2 (en) | Low power mode for speech capture devices | |
US11437043B1 (en) | Presence data determination and utilization | |
IT201900015506A1 (it) | Procedimento di elaborazione di un segnale elettrico trasdotto da un segnale vocale, dispositivo elettronico, rete connessa di dispositivi elettronici e prodotto informatico corrispondenti | |
CN112669818B (zh) | 语音唤醒方法及装置、可读存储介质、电子设备 | |
US11763806B1 (en) | Speaker recognition adaptation | |
JP6716513B2 (ja) | 音声区間検出装置、その方法、及びプログラム | |
TWI776799B (zh) | 一種設定操作的執行方法及裝置 | |
US11277304B1 (en) | Wireless data protocol | |
EP4330959A1 (en) | Keyword spotting method based on neural network | |
KR20220129034A (ko) | 작은 풋프린트 멀티-채널 키워드 스포팅 | |
CN113593560B (zh) | 可定制的低延时命令词识别方法及装置 | |
US11908480B1 (en) | Natural language processing using context | |
US11900921B1 (en) | Multi-device speech processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent |