【技術(shù)領(lǐng)域】
本發(fā)明涉及計算機應(yīng)用技術(shù)領(lǐng)域,特別涉及一種建立聲學(xué)特征提取模型的方法、提取聲學(xué)特征的方法及對應(yīng)裝置。
背景技術(shù):
隨著人工智能的不斷發(fā)展,語音交互已經(jīng)成為最自然的交互方式之一得到日益推廣,語音識別技術(shù)也越來越得到人們的重視。在語音識別技術(shù)中,聲學(xué)特征的提取是核心技術(shù),其可以用于用戶識別、驗證或分類等。
現(xiàn)有聲學(xué)特征提取方式,主要是依據(jù)預(yù)設(shè)的特征類型,對語音數(shù)據(jù)進行預(yù)設(shè)方式的變換后,從中提取對應(yīng)類型的特征。這種聲學(xué)特征提取方式很大程度上依靠特征類型的設(shè)置和變換方式的設(shè)置,準確性和靈活性較低。
技術(shù)實現(xiàn)要素:
本發(fā)明提供了一種建立聲學(xué)特征提取模型的方法、提取聲學(xué)特征的方法、裝置、設(shè)備和計算機存儲介質(zhì),以便于提高所提取聲學(xué)特征的準確性和靈活性。
具體技術(shù)方案如下:
本發(fā)明提供了一種建立聲學(xué)特征提取模型的方法,該方法包括:
將從各用戶標識對應(yīng)的語音數(shù)據(jù)中分別提取的第一聲學(xué)特征,作為訓(xùn)練數(shù)據(jù);
利用所述訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型;
其中所述深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目標為:最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述第一聲學(xué)特征包括:fbank64聲學(xué)特征。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述深度神經(jīng)網(wǎng)絡(luò)包括:卷積神經(jīng)網(wǎng)絡(luò)cnn、殘差卷積神經(jīng)網(wǎng)絡(luò)rescnn或者門控遞歸單元gru。
根據(jù)本發(fā)明一優(yōu)選實施方式,利用所述訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型包括:
利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征;
利用所述各語音數(shù)據(jù)的第二聲學(xué)特征計算三元組損失,利用所述三元組損失對所述深度神經(jīng)網(wǎng)絡(luò)進行調(diào)參,以最小化所述三元組損失;
其中,所述三元組損失體現(xiàn)不同用戶的第二聲學(xué)特征之間的相似度與相同用戶的第二聲學(xué)特征之間的相似度的差值狀況。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征包括:
利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出幀級別的第二聲學(xué)特征;
對幀級別的第二聲學(xué)特征進行池化和語句標準化處理,輸出句子級別的第二聲學(xué)特征;
在計算三元組損失時利用的所述各語音數(shù)據(jù)的第二聲學(xué)特征為各語音數(shù)據(jù)的句子級別的第二聲學(xué)特征。
本發(fā)明還提供了一種提取聲學(xué)特征的方法,該方法包括:
提取待處理語音數(shù)據(jù)的第一聲學(xué)特征;
將所述第一聲學(xué)特征輸入聲學(xué)特征提取模型,得到待處理語音數(shù)據(jù)的第二聲學(xué)特征;
其中所述聲學(xué)特征提取模型是采用上述建立聲學(xué)特征提取模型的方法預(yù)先建立的。
根據(jù)本發(fā)明一優(yōu)選實施方式,該方法還包括:
利用所述待處理語音數(shù)據(jù)的第二聲學(xué)特征,注冊所述待處理語音數(shù)據(jù)所對應(yīng)用戶標識的聲紋模型;或者,
將所述待處理語音數(shù)據(jù)的第二聲學(xué)特征與已注冊的各用戶標識的聲紋模型進行匹配,確定所述待處理語音數(shù)據(jù)對應(yīng)的用戶標識。
本發(fā)明還提供了一種建立聲學(xué)特征提取模型的裝置,該裝置包括:
數(shù)據(jù)獲取單元,用于將從各用戶標識對應(yīng)的語音數(shù)據(jù)中分別提取的第一聲學(xué)特征,作為訓(xùn)練數(shù)據(jù);
模型訓(xùn)練單元,用于利用所述訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型;其中所述深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目標為:最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述第一聲學(xué)特征包括:fbank64聲學(xué)特征。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述深度神經(jīng)網(wǎng)絡(luò)包括:卷積神經(jīng)網(wǎng)絡(luò)cnn、殘差卷積神經(jīng)網(wǎng)絡(luò)rescnn或者門控遞歸單元gru。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述模型訓(xùn)練單元,具體用于:
利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征;
利用所述各語音數(shù)據(jù)的第二聲學(xué)特征計算三元組損失,利用所述三元組損失對所述深度神經(jīng)網(wǎng)絡(luò)進行調(diào)參,以最小化所述三元組損失;
其中,所述三元組損失體現(xiàn)不同用戶的第二聲學(xué)特征之間的相似度與相同用戶的第二聲學(xué)特征之間的相似度的差值狀況。
根據(jù)本發(fā)明一優(yōu)選實施方式,所述模型訓(xùn)練單元在利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征時,具體執(zhí)行:利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出幀級別的第二聲學(xué)特征;對幀級別的第二聲學(xué)特征進行池化和語句標準化處理,輸出句子級別的第二聲學(xué)特征;
在模型訓(xùn)練單元計算三元組損失時利用的所述各語音數(shù)據(jù)的第二聲學(xué)特征為各語音數(shù)據(jù)的句子級別的第二聲學(xué)特征。
本發(fā)明還提供了一種提取聲學(xué)特征的裝置,該裝置包括:
預(yù)處理單元,用于提取待處理語音數(shù)據(jù)的第一聲學(xué)特征;
特征提取單元,用于將所述第一聲學(xué)特征輸入聲學(xué)特征提取模型,得到待處理語音數(shù)據(jù)的第二聲學(xué)特征;
其中所述聲學(xué)特征提取模型是由上述建立聲學(xué)特征提取模型的裝置預(yù)先建立的。
根據(jù)本發(fā)明一優(yōu)選實施方式,該裝置還包括:
聲紋注冊單元,用于利用所述待處理語音數(shù)據(jù)的第二聲學(xué)特征,注冊所述待處理語音數(shù)據(jù)所對應(yīng)用戶標識的聲紋模型;或者,
聲紋匹配單元,用于將所述待處理語音數(shù)據(jù)的第二聲學(xué)特征與已注冊的各用戶標識的聲紋模型進行匹配,確定所述待處理語音數(shù)據(jù)對應(yīng)的用戶標識。
本發(fā)明提供了一種設(shè)備,包括
存儲器,包括一個或者多個程序;
一個或者多個處理器,耦合到所述存儲器,執(zhí)行所述一個或者多個程序,以實現(xiàn)上述方法中執(zhí)行的操作。
本發(fā)明還提供了一種計算機存儲介質(zhì),所述計算機存儲介質(zhì)被編碼有計算機程序,所述程序在被一個或多個計算機執(zhí)行時,使得所述一個或多個計算機執(zhí)行上述方法中執(zhí)行的操作。
由以上技術(shù)方案可以看出,本發(fā)明基于神經(jīng)網(wǎng)絡(luò),以最小化相同用戶的第二聲學(xué)特征之間的相似度且最大化不同用戶的第二聲學(xué)特征之間的相似度為目標,訓(xùn)練得到聲學(xué)特征提取模型。也就是說,本發(fā)明的聲學(xué)特征提取模型能夠自學(xué)習(xí)到達到訓(xùn)練目標的最優(yōu)聲學(xué)特征。相比較現(xiàn)有預(yù)設(shè)特征類型和變換方式的聲學(xué)特征提取方式,實現(xiàn)更加靈活,準確性更高。
【附圖說明】
圖1為本發(fā)明實施例提供的建立聲學(xué)特征提取模型的方法流程圖;
圖2為本發(fā)明實施例提供的聲學(xué)特征提取模型的結(jié)構(gòu)示意圖;
圖3為本發(fā)明實施例提供的堆疊殘差塊的結(jié)構(gòu)示意圖;
圖4為本發(fā)明實施例提供的提取聲學(xué)特征的方法流程圖;
圖5為本發(fā)明實施例提供的建立聲學(xué)特征提取模型的裝置結(jié)構(gòu)圖;
圖6為本發(fā)明實施例提供的提取聲學(xué)特征的裝置結(jié)構(gòu)圖;
圖7為實現(xiàn)本發(fā)明實施方式的示例性計算機系統(tǒng)/服務(wù)器的框圖。
【具體實施方式】
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細描述。
在本發(fā)明實施例中使用的術(shù)語是僅僅出于描述特定實施例的目的,而非旨在限制本發(fā)明。在本發(fā)明實施例和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。
應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”僅僅是一種描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,a和/或b,可以表示:單獨存在a,同時存在a和b,單獨存在b這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。
取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時”或“當(dāng)……時”或“響應(yīng)于確定”或“響應(yīng)于檢測”。類似地,取決于語境,短語“如果確定”或“如果檢測(陳述的條件或事件)”可以被解釋成為“當(dāng)確定時”或“響應(yīng)于確定”或“當(dāng)檢測(陳述的條件或事件)時”或“響應(yīng)于檢測(陳述的條件或事件)”。
本發(fā)明的核心思想在于,基于深度神經(jīng)網(wǎng)絡(luò)提取語音數(shù)據(jù)的高層聲學(xué)特征,訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)的目標是最大化相同用戶的高層聲學(xué)特征之間的相似度且最小化不同用戶的高層聲學(xué)特征之間的相似度,從而得到聲學(xué)特征提取模型。該聲學(xué)特征提取模型用于提取語音數(shù)據(jù)的高層聲學(xué)特征。
另外,在進行聲學(xué)特征提取模型的訓(xùn)練時,需要首先對訓(xùn)練數(shù)據(jù)中的語音數(shù)據(jù)進行低層聲學(xué)特征的提取,即進行預(yù)處理。其中該低層聲學(xué)特征相對于高層聲學(xué)特征粒度更粗,包含信息量也更粗;相反,經(jīng)過聲學(xué)特征提取模型處理后得到的高層聲學(xué)特征相對于低層聲學(xué)特征粒度更細,包含信息量也更細致,更適于建立聲紋模型,以進行用戶聲紋的建立。在本發(fā)明實施例中,為了對這兩種聲學(xué)特征進行區(qū)分,將對語音數(shù)據(jù)進行預(yù)處理后得到的低層聲學(xué)特征稱為第一聲學(xué)特征;將經(jīng)過聲學(xué)特征提取模型對低層聲學(xué)特征進行處理后,得到的高層聲學(xué)特征稱為第二聲學(xué)特征。
在本發(fā)明中存在兩個階段:聲學(xué)特征提取模型的建立階段以及利用聲學(xué)特征提取模型提取聲學(xué)特征的階段。其中兩個階段互相獨立,聲學(xué)特征提取模型的建立階段可以是預(yù)先執(zhí)行的階段,但也可以在后續(xù)過程中不斷對聲學(xué)特征提取模型進行更新。下面結(jié)合實施例對這兩個進行詳細描述。
圖1為本發(fā)明實施例提供的建立聲學(xué)特征提取模型的方法流程圖,如圖1所示,該方法可以包括以下步驟:
在101中,從各用戶標識對應(yīng)的語音數(shù)據(jù)中分別提取第一聲學(xué)特征,作為訓(xùn)練數(shù)據(jù)。
可以預(yù)先采集已知用戶的語音數(shù)據(jù),在選擇訓(xùn)練數(shù)據(jù)時可以對這些語音數(shù)據(jù)有一些質(zhì)量要求,例如選取清晰度較好的語音數(shù)據(jù),再例如刪除長度過長或過短的語音數(shù)據(jù),等等。
對于采集到的語音數(shù)據(jù)首先進行預(yù)處理,從中提取各語音數(shù)據(jù)的第一聲學(xué)特征。如前面所述的,該第一聲學(xué)特征是低層的聲學(xué)特征。在本發(fā)明實施例中可以采用fbank(mel-scalefilterbank,梅爾標度濾波器組)特征作為第一聲學(xué)特征。例如,以25ms為一幀、10ms為步長提取語音數(shù)據(jù)的fbank特征。但本發(fā)明并不限于fbank特征,還可以采用其他特征作為第一聲學(xué)特征。
這樣,就可以得到各用戶標識對應(yīng)的第一聲學(xué)特征,從而構(gòu)成訓(xùn)練數(shù)據(jù)。其中本發(fā)明并不限定用戶標識的具體類型,可以是任意類型的標識,只要能夠區(qū)分用戶即可。在訓(xùn)練數(shù)據(jù)中可以包含同一用戶對應(yīng)的不同語音數(shù)據(jù)的第一聲學(xué)特征,不同用戶對應(yīng)的語音數(shù)據(jù)的第一聲學(xué)特征,等等。訓(xùn)練數(shù)據(jù)中各第一聲學(xué)特征均具有對應(yīng)的用戶標識作為標簽。
在102中,利用各語音數(shù)據(jù)的第一聲學(xué)特征,訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型;其中深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目標為:最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
本步驟中,可以首先利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征。然后利用各語音數(shù)據(jù)的第二聲學(xué)特征計算三元組損失,將三元組損失反饋給深度神經(jīng)網(wǎng)絡(luò),以便調(diào)整深度神經(jīng)網(wǎng)絡(luò)的參數(shù)以最小化該三元組損失。
為了方便對本發(fā)明實施例提供的聲學(xué)特征提取模型的理解,對該聲學(xué)特征提取模型的結(jié)構(gòu)進行介紹。如圖2所示,該聲學(xué)特征提取模型可以包括深度神經(jīng)網(wǎng)絡(luò)層、池化和句子標準化層以及三元組損失層。
其中,深度神經(jīng)網(wǎng)絡(luò)可以采用cnn、gru(gatedrecurrentunit,門控遞歸單元)等,當(dāng)然也可以采用其他諸如rnn、lstm等其他類型的深度神經(jīng)網(wǎng)絡(luò)。由于cnn相比較rnn、lstm等而言,能夠更加有效地減小頻譜變化以及將頻譜相關(guān)性在聲學(xué)特征中進行體現(xiàn),因此在本發(fā)明實施例中優(yōu)選cnn這種類型的深度神經(jīng)網(wǎng)絡(luò)。
然而,盡管深度神經(jīng)網(wǎng)絡(luò)具有很好地學(xué)習(xí)能力,但更難進行訓(xùn)練,在一定深度情況下準確性反而下滑。為了解決該問題,本發(fā)明可以基于cnn使用但不限于resnet(residualnet,殘差網(wǎng)絡(luò))型cnn,或者采用gru。
首先對resnet型cnn進行介紹。
resnet可以用于簡化cnn的訓(xùn)練。resnet包括若干resblock(堆疊殘差塊),各resblock包括低層輸出和高層輸入間的直接連接。如圖3中所示,各resblock可以定義為:
h=f(x,wi)+x
其中,x和h分別表示resblock的輸入和輸出。f表示堆疊的非線性層的映射函數(shù)。
如圖3所示,resblock可以包括兩個卷積層和兩個激活層。其中,兩個卷積層可以包括諸如3×3的過濾器和1×1的stride(步幅)。每個resblock包括相同的結(jié)構(gòu),并且跳轉(zhuǎn)連接是對x的相同映射。若通道的數(shù)量增加,則可以使用一個卷積層(例如具有5×5的過濾器和2×2的stride)。因此,頻率維度始終在卷積層中保持恒定。經(jīng)過研究發(fā)現(xiàn),語音識別在時間維度上對stride并不敏感。在本發(fā)明實施例中,可以使用如下relu(rectifiedlinearunits,修正線性)函數(shù)作為所有激活層的非線性處理:
σ(x)=min{max{x,0},20}
下面對gru進行介紹。
gru相比較lstm而言,訓(xùn)練速度更快且發(fā)散程度更小。本發(fā)明實施例中深度神經(jīng)網(wǎng)絡(luò)層可以采用多個gru構(gòu)成。例如,每個gru可以包括一個5×5過濾器和2×2stride的卷積層,能夠減少時域和頻域的維度,從而允許gru的計算速度更快。緊接著卷積層的是三個具有1024個單元的前向gru層,在時間維度上進行循環(huán)。在gru中也可以采用諸如relu進行激活。
緊接著深度神經(jīng)網(wǎng)絡(luò)層的是池化和句子標準化層。池化和句子標準化層用來對深度神經(jīng)網(wǎng)絡(luò)層輸出的幀級別的第二聲學(xué)特征進行池化和句子標準化處理,從而得到句子級別的第二聲學(xué)特征。
具體地,如圖2所示,池化和句子標準化層可以包括:池化層、仿射層和句子標準化層。
其中池化層用于將幀級別的輸入轉(zhuǎn)變?yōu)榫渥蛹墑e的表示,即將幀級別的第二聲學(xué)特征進行取平均,得到句子級別的第二聲學(xué)特征。
池化層的輸出h'可以采用如下公式:
其中,t為句子包含的幀數(shù)目,x'(t)為池化層的輸入。
經(jīng)過池化(pooling)層的處理,使得本發(fā)明實施例提供的聲學(xué)特征提取模型能夠處理不同時長的語句,解決了文本無關(guān)的情況。
仿射層將句子級別的第二聲學(xué)特征投射到預(yù)設(shè)的維度,例如投射到512維度。
長度標準化層將仿射層輸出的句子級別的第二聲學(xué)特征的長度進行規(guī)整,使模為1。
本發(fā)明實施例中,三元損失層采用三元損失對深度神經(jīng)網(wǎng)絡(luò)層進行反饋訓(xùn)練,以最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
三元損失層可以采用三個樣本作為輸入:錨樣本,包括一個用戶的句子級別的第二聲學(xué)特征;正樣本,包括與錨樣本同一用戶的另一句子級別的第二聲學(xué)特征;負樣本,包括與錨樣本不同用戶的句子級別的第二聲學(xué)特征。將上述樣本構(gòu)成一個三元組。
三元損失層對深度神經(jīng)網(wǎng)絡(luò)層進行反饋,以使得錨樣本和正樣本之間的余弦相似度(在本發(fā)明實施例中樣本之間的相似度采用余弦相似度體現(xiàn),但不排除其他相似度計算方式)大于錨樣本和負樣本之間的余弦相似度。形式上,
其中,
其中,n為三元組的數(shù)目,操作符[x]+=max(x,0)。
計算出的三元組損失反饋給深度神經(jīng)網(wǎng)絡(luò)層,以不斷調(diào)整深度神經(jīng)網(wǎng)絡(luò)層的參數(shù),從而逐漸訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),最終最小化利用提取的第二聲學(xué)特征計算的三元組損失。訓(xùn)練結(jié)束后,得到聲學(xué)特征提取模型,此次訓(xùn)練過程結(jié)束。
圖4為本發(fā)明實施例提供的提取聲學(xué)特征的方法流程圖,該流程基于如圖1所示實施例建立的聲學(xué)特征提取模型。如圖4所示,該方法可以包括以下步驟:
在401中,提取待處理語音數(shù)據(jù)的第一聲學(xué)特征。
本步驟是對待處理語音數(shù)據(jù)的預(yù)處理,即從中提取第一聲學(xué)特征,該第一聲學(xué)特征是低層的聲學(xué)特征。此處提取的第一聲學(xué)特征的類型和方式與圖1所示實施例中步驟101中提取第一聲學(xué)特征的類型和方式一致。在此不再贅述。
在402中,將提取出的第一聲學(xué)特征輸入聲學(xué)特征提取模型,得到待處理語音數(shù)據(jù)的第二聲學(xué)特征。
對于預(yù)先訓(xùn)練得到的聲學(xué)特征提取模型,由于其從訓(xùn)練數(shù)據(jù)中已經(jīng)完成從第一聲學(xué)特征到第二聲學(xué)特征的自學(xué)習(xí),因此將步驟401中提取出的待處理語音數(shù)據(jù)的第一聲學(xué)特征輸入聲學(xué)特征提取模型,聲學(xué)特征提取模型就能夠輸出待處理語音數(shù)據(jù)的第二聲學(xué)特征。該第二聲學(xué)特征可以為句子級別的高層聲學(xué)特征。
在得到待處理語音數(shù)據(jù)的第二聲學(xué)特征后,可以利用第二聲學(xué)特征進行后續(xù)應(yīng)用的處理,例如在403a中,利用待處理語音數(shù)據(jù)的第二聲學(xué)特征,注冊該待處理語音數(shù)據(jù)所對應(yīng)用戶標識的聲紋模型,或者在403b中,將待處理語音數(shù)據(jù)的第二聲學(xué)特征與已注冊的各用戶標識的聲紋模型進行匹配,確定待處理語音數(shù)據(jù)對應(yīng)的用戶標識。
在403a中,若待處理語音數(shù)據(jù)對應(yīng)的用戶標識已知,則可以利用提取的第二聲學(xué)特征注冊該用戶標識對應(yīng)的聲紋模型。在注冊聲紋模型時,可以將提取的第二聲學(xué)特征進行處理后,作為聲紋信息存儲于聲紋模型庫中??梢岳糜脩魳俗R對應(yīng)的一個或多個第二聲學(xué)特征來進行聲學(xué)模型的注冊,具體注冊過程本發(fā)明不做具體限制。
在403b中,若待處理語音數(shù)據(jù)對應(yīng)的用戶標識未知,則可以利用提取的第二聲學(xué)特征與聲紋模型庫中各已注冊的聲紋模型進行匹配,例如通過計算提取的第二聲學(xué)特征與聲紋模型庫中各聲紋模型之間相似度的方式進行匹配。若匹配到某個聲紋模型,則可以確定該待處理語音數(shù)據(jù)對應(yīng)該匹配到的聲紋模型對應(yīng)的用戶標識。
上述403a和403b是本發(fā)明實施例提供的兩種在提取語音數(shù)據(jù)的第二聲學(xué)特征后,對其的應(yīng)用方式,當(dāng)然除了這兩種應(yīng)用方式之外,還可以進行其他應(yīng)用,本發(fā)明不做一一窮舉。
上述方法可以應(yīng)用于語音識別系統(tǒng)中,執(zhí)行主體可以為對應(yīng)裝置,該裝置可以是位于用戶設(shè)備的應(yīng)用,或者還可以為位于用戶設(shè)備的應(yīng)用中的插件或軟件開發(fā)工具包(softwaredevelopmentkit,sdk)等功能單元。其中,用戶設(shè)備可以包括但不限于諸如:智能移動終端、智能家居設(shè)備、網(wǎng)絡(luò)設(shè)備、可穿戴式設(shè)備、智能醫(yī)療設(shè)備、pc(個人計算機)等。其中智能移動設(shè)備可以包括諸如手機、平板電腦、筆記本電腦、pda(個人數(shù)字助理)、互聯(lián)網(wǎng)汽車等。智能家居設(shè)備可以包括智能家電設(shè)備,諸如智能電視、智能空調(diào)、智能熱水器、智能冰箱、智能空氣凈化器等等,智能家居設(shè)備還可以包括智能門鎖、智能電燈、智能攝像頭等。網(wǎng)絡(luò)設(shè)備可以包括諸如交換機、無線ap、服務(wù)器等??纱┐魇皆O(shè)備可以包括諸如智能手表、智能眼鏡、智能手環(huán)、虛擬現(xiàn)實設(shè)備、增強現(xiàn)實設(shè)備、混合現(xiàn)實設(shè)備(即可以支持虛擬現(xiàn)實和增強現(xiàn)實的設(shè)備)等等。智能醫(yī)療設(shè)備可以包括諸如智能體溫計、智能血壓儀、智能血糖儀等等。
圖5為本發(fā)明實施例提供的建立聲學(xué)特征提取模型的裝置結(jié)構(gòu)圖,該裝置可以用于執(zhí)行如圖1中所示的操作。如圖5所示,該裝置可以包括:數(shù)據(jù)獲取單元01和模型訓(xùn)練單元02。其中各組成單元的主要功能如下:
數(shù)據(jù)獲取單元01負責(zé)將從各用戶標識對應(yīng)的語音數(shù)據(jù)中分別提取的第一聲學(xué)特征,作為訓(xùn)練數(shù)據(jù)。
可以預(yù)先采集已知用戶的語音數(shù)據(jù),在選擇訓(xùn)練數(shù)據(jù)時可以對這些語音數(shù)據(jù)有一些質(zhì)量要求,例如選取清晰度較好的語音數(shù)據(jù),再例如刪除長度過長或過短的語音數(shù)據(jù),等等。
在本發(fā)明實施例中可以采用fbank特征作為第一聲學(xué)特征。例如,以25ms為一幀、10ms為步長提取語音數(shù)據(jù)的fbank特征。但本發(fā)明并不限于fbank特征,還可以采用其他特征作為第一聲學(xué)特征。
模型訓(xùn)練單元02負責(zé)利用訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型;其中深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目標為:最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
優(yōu)選地,本發(fā)明實施例中采用的深度神經(jīng)網(wǎng)絡(luò)可以包括:cnn、rescnn或者gru。rescnn和gru的相關(guān)描述參見方法實施例中的記載,在此不再贅述。
具體地,模型訓(xùn)練單元02可以首先利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征;然后利用各語音數(shù)據(jù)的第二聲學(xué)特征計算三元組損失,將三元組損失反饋給深度神經(jīng)網(wǎng)絡(luò),以便調(diào)整深度神經(jīng)網(wǎng)絡(luò)的參數(shù)以最小化三元組損失;其中,三元組損失體現(xiàn)不同用戶的第二聲學(xué)特征之間的相似度與相同用戶的第二聲學(xué)特征之間的相似度的差值狀況。
更具體地,模型訓(xùn)練單元02在利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出各語音數(shù)據(jù)的第二聲學(xué)特征時,可以具體執(zhí)行:利用深度神經(jīng)網(wǎng)絡(luò)對各語音數(shù)據(jù)的第一聲學(xué)特征進行學(xué)習(xí),輸出幀級別的第二聲學(xué)特征;對幀級別的第二聲學(xué)特征進行池化和語句標準化處理,輸出句子級別的第二聲學(xué)特征。此時,在模型訓(xùn)練單元02計算三元組損失時利用的各語音數(shù)據(jù)的第二聲學(xué)特征為各語音數(shù)據(jù)的句子級別的第二聲學(xué)特征。
對于聲學(xué)特征提取模型的具體架構(gòu)以及該架構(gòu)中各層次所執(zhí)行的具體處理可以參見方法實施例中的相關(guān)描述,在此不再贅述。
圖6為本發(fā)明實施例提供的提取聲學(xué)特征的裝置結(jié)構(gòu)圖,如圖6所示,該裝置可以包括:預(yù)處理單元11和特征提取單元12。其中各組成單元的主要功能如下:
預(yù)處理單元11負責(zé)提取待處理語音數(shù)據(jù)的第一聲學(xué)特征。該第一聲學(xué)特征的類型和提取方式與圖5中數(shù)據(jù)獲取單元01獲取訓(xùn)練數(shù)據(jù)時所采用的第一聲學(xué)特征的類型和提取方式一致。例如,第一聲學(xué)特征可以采用fbank特征。
特征提取單元12負責(zé)將第一聲學(xué)特征輸入聲學(xué)特征提取模型,得到待處理語音數(shù)據(jù)的第二聲學(xué)特征。
在得到待處理語音數(shù)據(jù)的第二聲學(xué)特征后,可以利用第二聲學(xué)特征進行后續(xù)應(yīng)用的處理,例如該裝置還可以包括:
聲紋注冊單元(圖中未示出),負責(zé)利用待處理語音數(shù)據(jù)的第二聲學(xué)特征,注冊該待處理語音數(shù)據(jù)所對應(yīng)用戶標識的聲紋模型。
再例如,該裝置還可以包括:
聲紋匹配單元(圖中未示出),負責(zé)將待處理語音數(shù)據(jù)的第二聲學(xué)特征與已注冊的各用戶標識的聲紋模型進行匹配,確定待處理語音數(shù)據(jù)對應(yīng)的用戶標識。
圖7示出了適于用來實現(xiàn)本發(fā)明實施方式的示例性計算機系統(tǒng)/服務(wù)器012的框圖。圖7顯示的計算機系統(tǒng)/服務(wù)器012僅僅是一個示例,不應(yīng)對本發(fā)明實施例的功能和使用范圍帶來任何限制。
如圖7所示,計算機系統(tǒng)/服務(wù)器012以通用計算設(shè)備的形式表現(xiàn)。計算機系統(tǒng)/服務(wù)器012的組件可以包括但不限于:一個或者多個處理器或者處理單元016,系統(tǒng)存儲器028,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器028和處理單元016)的總線018。
總線018表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標準體系結(jié)構(gòu)(isa)總線,微通道體系結(jié)構(gòu)(mac)總線,增強型isa總線、視頻電子標準協(xié)會(vesa)局域總線以及外圍組件互連(pci)總線。
計算機系統(tǒng)/服務(wù)器012典型地包括多種計算機系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是任何能夠被計算機系統(tǒng)/服務(wù)器012訪問的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動的和不可移動的介質(zhì)。
系統(tǒng)存儲器028可以包括易失性存儲器形式的計算機系統(tǒng)可讀介質(zhì),例如隨機存取存儲器(ram)030和/或高速緩存存儲器032。計算機系統(tǒng)/服務(wù)器012可以進一步包括其它可移動/不可移動的、易失性/非易失性計算機系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)034可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖7未顯示,通常稱為“硬盤驅(qū)動器”)。盡管圖7中未示出,可以提供用于對可移動非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動器,以及對可移動非易失性光盤(例如cd-rom,dvd-rom或者其它光介質(zhì))讀寫的光盤驅(qū)動器。在這些情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線018相連。存儲器028可以包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實施例的功能。
具有一組(至少一個)程序模塊042的程序/實用工具040,可以存儲在例如存儲器028中,這樣的程序模塊042包括——但不限于——操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實現(xiàn)。程序模塊042通常執(zhí)行本發(fā)明所描述的實施例中的功能和/或方法。
計算機系統(tǒng)/服務(wù)器012也可以與一個或多個外部設(shè)備014(例如鍵盤、指向設(shè)備、顯示器024等)通信,在本發(fā)明中,計算機系統(tǒng)/服務(wù)器012與外部雷達設(shè)備進行通信,還可與一個或者多個使得用戶能與該計算機系統(tǒng)/服務(wù)器012交互的設(shè)備通信,和/或與使得該計算機系統(tǒng)/服務(wù)器012能與一個或多個其它計算設(shè)備進行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(i/o)接口022進行。并且,計算機系統(tǒng)/服務(wù)器012還可以通過網(wǎng)絡(luò)適配器020與一個或者多個網(wǎng)絡(luò)(例如局域網(wǎng)(lan),廣域網(wǎng)(wan)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器020通過總線018與計算機系統(tǒng)/服務(wù)器012的其它模塊通信。應(yīng)當(dāng)明白,盡管圖7中未示出,可以結(jié)合計算機系統(tǒng)/服務(wù)器012使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設(shè)備驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、raid系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存儲系統(tǒng)等。
處理單元016通過運行存儲在系統(tǒng)存儲器028中的程序,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,例如實現(xiàn)一種建立聲學(xué)特征提取模型的方法,可以包括:
將從各用戶標識對應(yīng)的語音數(shù)據(jù)中分別提取的第一聲學(xué)特征,作為訓(xùn)練數(shù)據(jù);
利用所述訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型;
其中所述深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目標為:最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
再例如,實現(xiàn)一種提取聲學(xué)特征的方法,可以包括:
提取待處理語音數(shù)據(jù)的第一聲學(xué)特征;
將所述第一聲學(xué)特征輸入聲學(xué)特征提取模型,得到待處理語音數(shù)據(jù)的第二聲學(xué)特征。
上述的計算機程序可以設(shè)置于計算機存儲介質(zhì)中,即該計算機存儲介質(zhì)被編碼有計算機程序,該程序在被一個或多個計算機執(zhí)行時,使得一個或多個計算機執(zhí)行本發(fā)明上述實施例中所示的方法流程和/或裝置操作。例如,被上述一個或多個處理器執(zhí)行的方法流程,可以包括:
將從各用戶標識對應(yīng)的語音數(shù)據(jù)中分別提取的第一聲學(xué)特征,作為訓(xùn)練數(shù)據(jù);
利用所述訓(xùn)練數(shù)據(jù)訓(xùn)練深度神經(jīng)網(wǎng)絡(luò),得到聲學(xué)特征提取模型;
其中所述深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練目標為:最大化相同用戶的第二聲學(xué)特征之間的相似度且最小化不同用戶的第二聲學(xué)特征之間的相似度。
再例如,被上述一個或多個處理器執(zhí)行的方法流程,可以包括:
提取待處理語音數(shù)據(jù)的第一聲學(xué)特征;
將所述第一聲學(xué)特征輸入聲學(xué)特征提取模型,得到待處理語音數(shù)據(jù)的第二聲學(xué)特征。
隨著時間、技術(shù)的發(fā)展,介質(zhì)含義越來越廣泛,計算機程序的傳播途徑不再受限于有形介質(zhì),還可以直接從網(wǎng)絡(luò)下載等??梢圆捎靡粋€或多個計算機可讀的介質(zhì)的任意組合。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或者計算機可讀存儲介質(zhì)。計算機可讀存儲介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計算機可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計算機磁盤、硬盤、隨機存取存儲器(ram)、只讀存儲器(rom)、可擦式可編程只讀存儲器(eprom或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(cd-rom)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計算機可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
計算機可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計算機可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括——但不限于——電磁信號、光信號或上述的任意合適的組合。計算機可讀的信號介質(zhì)還可以是計算機可讀存儲介質(zhì)以外的任何計算機可讀介質(zhì),該計算機可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
計算機可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括——但不限于——無線、電線、光纜、rf等等,或者上述的任意合適的組合。
可以以一種或多種程序設(shè)計語言或其組合來編寫用于執(zhí)行本發(fā)明操作的計算機程序代碼,所述程序設(shè)計語言包括面向?qū)ο蟮某绦蛟O(shè)計語言—諸如java、smalltalk、c++,還包括常規(guī)的過程式程序設(shè)計語言—諸如“c”語言或類似的程序設(shè)計語言。程序代碼可以完全地在用戶計算機上執(zhí)行、部分地在用戶計算機上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算機上部分在遠程計算機上執(zhí)行、或者完全在遠程計算機或服務(wù)器上執(zhí)行。在涉及遠程計算機的情形中,遠程計算機可以通過任意種類的網(wǎng)絡(luò)——包括局域網(wǎng)(lan)或廣域網(wǎng)(wan)連接到用戶計算機,或者,可以連接到外部計算機(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。
由以上描述可以看出,本發(fā)明提供的上述方法、裝置、設(shè)備和計算機存儲介質(zhì)可以具備以下優(yōu)點:
1)本發(fā)明的聲學(xué)特征提取模型能夠自學(xué)習(xí)到達到訓(xùn)練目標的最優(yōu)聲學(xué)特征。相比較現(xiàn)有預(yù)設(shè)特征類型和變換方式的聲學(xué)特征提取方式,實現(xiàn)更加靈活,準確性更高。
2)本發(fā)明中優(yōu)選rescnn或gru類型的深度神經(jīng)網(wǎng)絡(luò),從而在采用較高層級深度的神經(jīng)網(wǎng)絡(luò)情況下,也能夠保證特征提取的準確性,且提高深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度。
3)本發(fā)明在訓(xùn)練聲學(xué)特征提取模型的過程中,對深度神經(jīng)網(wǎng)絡(luò)的輸出進行池化和句子標準化處理,使得該模型除了能夠?qū)ξ谋鞠嚓P(guān)的語音數(shù)據(jù)進行特征提取之外,也能夠?qū)ξ谋緹o關(guān)的語音數(shù)據(jù)進行很好地特征提取。
4)經(jīng)過試驗后發(fā)現(xiàn),本發(fā)明能夠更好的處理大規(guī)模的語音數(shù)據(jù)并且能夠很好地適應(yīng)不同語言的處理。
在本發(fā)明所提供的幾個實施例中,應(yīng)該理解到,所揭露的方法、裝置和設(shè)備,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上。可以根據(jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能單元的形式實現(xiàn)。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明保護的范圍之內(nèi)。