專利名稱:一種音頻檢索中構(gòu)建索引的方法及系統(tǒng)的制作方法
一種音頻檢索中構(gòu)建索引的方法及系統(tǒng)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及多媒體信息處理技術(shù)領(lǐng)域,特別涉及一種音頻檢索中構(gòu)建索引的方法及系統(tǒng)。背景技術(shù):
音頻是一種重要的信息載體,音頻檢索主要是通過關(guān)鍵詞,對大量音頻信息文件進行搜索,獲得相關(guān)結(jié)果的一種技術(shù)。其中關(guān)鍵詞可以是文本,可以是音頻片斷。在基于內(nèi)容音頻檢索方式中,需要提取音頻文件的特征參數(shù),并生成和語音對應索引,這是一種非常消耗計算資源的操作。
傳統(tǒng)技術(shù)中的音頻檢索方法預先在集中式的服務器上建立音頻資源庫。查詢檢索客戶端獲取輸入的音頻片段或者文本關(guān)鍵詞,然后將音頻片或者文本關(guān)鍵詞段發(fā)送到服務器,服務器接收后,根據(jù)語音識別算法計算該音頻片段的特征碼,或者使用文本關(guān)鍵詞,在音頻樣本庫中查找與該音頻片段的特征碼匹配的音頻資源,并發(fā)送給檢索客戶端。
然而,雖然可以使用若干臺服務器進行共同承擔運算任務,傳統(tǒng)技術(shù)中的音頻檢索構(gòu)建索引時主要采用服務器進行集中式處理,主要表現(xiàn)在需要較多的服務器在接收到音頻數(shù)據(jù)后再構(gòu)建索引。當音頻數(shù)據(jù)較多時,特別是類似呼叫中心每天都產(chǎn)生大量的語音數(shù)據(jù)環(huán)境,構(gòu)建索引需要耗費大量的服務器計算資源,在業(yè)務擴展時,就必須增加服務器,從而增加了擴容時的附加硬件成本,不易于擴容。
發(fā)明內(nèi)容
基于此,有必要提供一種用于音頻檢索,能夠易于擴容的構(gòu)建索引的方法。
一種音頻檢索中構(gòu)建索引的方法,包括以下步驟:
音頻采集裝置獲取音頻數(shù)據(jù);
音頻采集裝置計算所述音頻數(shù)據(jù)的索引值,并將所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值發(fā)送給服務器;
服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引。
優(yōu)選的,所述索引包括與所述音頻數(shù)據(jù)對應的全局標識。
優(yōu)選的,所述音頻采集裝置有多個;
所述服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引的步驟具體為:
服務器先過濾掉索引值相同的音頻資源,然后根據(jù)過濾后的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引,并將`所述音頻數(shù)據(jù)存儲到音頻資源庫中。
優(yōu)選的,所述音頻采集裝置計算所述音頻數(shù)據(jù)的索引值的步驟具體為:
音頻采集裝置對所述音頻數(shù)據(jù)進行預處理,提取聲學特征參數(shù);
音頻采集裝置對所述音頻數(shù)據(jù)進行說話人分割和語音分段;
音頻采集裝置根據(jù)所述聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算所述分段后的音頻數(shù)據(jù)的索引值。優(yōu)選的,所述音頻采集裝置對所述音頻數(shù)據(jù)進行說話人分割和語音分段的步驟還包括:對所述音頻數(shù)據(jù)中的靜默進行檢測,將音頻分段,并將分段后的音頻數(shù)據(jù)按照說話人類別進行分類。優(yōu)選的,所述音頻采集裝置根據(jù)所述聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算所述分段后的音頻數(shù)據(jù)的索引值的步驟具體為:根據(jù)所述分段后的音頻數(shù)據(jù)的語音特征參數(shù)、拼音語言模型、聲學模型和第一發(fā)音字典,通過語音識別解碼生成拼音網(wǎng)格;根據(jù)所述拼音網(wǎng)格、基于詞的語言模型、第二發(fā)音字典生成詞網(wǎng)格;根據(jù)所述詞網(wǎng)格生成所述分段后的音頻數(shù)據(jù)的索引值。優(yōu)選的,所述方法還包括:檢索客戶端獲取檢索請求;檢索客戶端判斷所述檢索請求是否包含音頻片段,若是,則從所述檢索請求中提取出音頻片段并計算該音頻片段的索引值,然后發(fā)送給服務器;服務器根據(jù)索引值在索引中查找與所述索引值對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端。 此外,還有必要提供一種用于音頻檢索,能夠易于擴容的構(gòu)建索引的系統(tǒng)。一種音頻檢索中構(gòu)建索引的系統(tǒng),包括音頻采集裝置和服務器,所述音頻采集裝置包括:音頻獲取模塊,用于獲取音頻數(shù)據(jù);索引值計算模塊,用于計算所述音頻數(shù)據(jù)的索引值,并將所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值發(fā)送給服務器;所述服務器包括:索引構(gòu)建模塊,用于服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引。優(yōu)選的,所述索引包括與所述音頻數(shù)據(jù)對應的全局標識。優(yōu)選的,所述音頻采集裝置有多個;所述索引構(gòu)建模塊還用于過濾掉索引值相同的音頻資源,根據(jù)過濾后的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引,并將所述音頻數(shù)據(jù)存儲到音頻資源庫中。優(yōu)選的,所述索引值計算模塊還用于對所述音頻數(shù)據(jù)進行預處理,提取聲學特征參數(shù);對所述音頻數(shù)據(jù)進行說話人分割和語音分段;根據(jù)所述聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算所述分段后的音頻數(shù)據(jù)的索引值。優(yōu)選的,所述索引值計算模塊還用于對所述音頻數(shù)據(jù)中的靜默進行檢測,將音頻分段,并將分段后的音頻數(shù)據(jù)按照說話人類別進行分類。優(yōu)選的,所述索引值計算模塊還用于根據(jù)所述分段后的音頻數(shù)據(jù)的語音特征參數(shù)、拼音語言模型、聲學模型和第一發(fā)音字典,通過語音識別解碼生成拼音網(wǎng)格;根據(jù)所述拼音網(wǎng)格、基于詞的語言模型、第二發(fā)音字典生成詞網(wǎng)格;根據(jù)所述詞網(wǎng)格生成所述分段后的音頻數(shù)據(jù)的索引值。
優(yōu)選的,還包括檢索客戶端,用于獲取檢索請求,判斷所述檢索請求是否包含音頻片段,若是,則從所述檢索請求中提取出音頻片段并計算所述音頻片段的索引值,然后發(fā)送給服務器;
所述服務器還包括音頻檢索模塊,用于根據(jù)索引值在索引中查找與所述索引值對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端。
上述音頻檢索中構(gòu)建索引方法和系統(tǒng),由音頻采集裝置獲取音頻數(shù)據(jù),然后再由音頻采集裝置計算音頻片段的索引值,并將索引值和音頻數(shù)據(jù)上傳到服務器。服務器再根據(jù)索引值和音頻數(shù)據(jù)構(gòu)建索引。使得服務器將計算音頻數(shù)據(jù)的索引值的工作轉(zhuǎn)移到了音頻采集裝置上。例如,在呼叫中心中,音頻采集裝置可以為客服人員的終端PC。每個終端PC當天可以處理完其當天采集的音頻數(shù)據(jù)。當呼叫中心系統(tǒng)容量擴大時,可通過增加終端PC的數(shù)量進行擴容,而不需要額外添加服務器,從而沒有增加額外的開銷。因此,上述音頻檢索中構(gòu)建索弓I方法降低了音頻檢索系統(tǒng)在擴容時的附加硬件成本,從而更加易于擴容。
圖1為一個實施例中音頻檢索中構(gòu)建索引的方法的流程圖2為一個實施例中音頻采集裝置計算音頻數(shù)據(jù)的索引值的步驟的流程圖3為一個實施例中音頻采集裝置根據(jù)聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算分段后的音頻數(shù)據(jù)的索引值的步驟的流程圖4為一個實施例中音頻檢索的步驟的流程圖5為一個實施例中音頻檢索中構(gòu)建索引的系統(tǒng)的結(jié)構(gòu)示意圖6為另一個實施例中音頻檢索中構(gòu)建索引的系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
如圖1所示,在一個實施例中,一種音頻檢索中構(gòu)建索引的方法,包括以下步驟:
步驟S102,音頻采集裝置獲取音頻數(shù)據(jù)。
音頻數(shù)據(jù)可以是語音,音樂等。音頻采集裝置可通過麥克風等音頻輸入設備或者聲卡輸出緩存等采集用戶的語音來獲取音頻數(shù)據(jù),也可以通過獲取音頻文件來獲取音頻數(shù)據(jù)。
步驟S104,音頻采集裝置計算音頻數(shù)據(jù)的索引值,并將音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值發(fā)送給服務器。
在一個實施例·,音頻采集裝置可以是具有一定運算能力的終端設備,其不僅可以采集語音,還可以對音頻進行運算處理。例如,呼叫中心機房里的話務員的檢索客戶端終端PC,移動網(wǎng)絡中用戶的智能手機等檢索客戶端。
音頻采集裝置通過分析音頻數(shù)據(jù)的特征,生成與音頻數(shù)據(jù)對應的索引值,然后將索引值和音頻數(shù)據(jù)一起發(fā)送給服務器。在一個實施例中,音頻采集裝置將索引值和音頻數(shù)據(jù)發(fā)送給服務器的方式為延遲發(fā)送。當音頻采集裝置檢測到服務器繁忙時,先將獲取到的音頻數(shù)據(jù)和生成的與該音頻數(shù)據(jù)對應的索引值以局部索引的形式緩存在音頻采集裝置中,然后等到服務器負載較小時,再將該局部索引上傳。
步驟S106,服務器根據(jù)接收到的音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值構(gòu)建索引。
服務器接收到音頻采集裝置上傳的音頻數(shù)據(jù)和與音頻數(shù)據(jù)對應的索引值之后,可預先為音頻數(shù)據(jù)分配與該音頻數(shù)據(jù)對應的全局標識,然后在構(gòu)建的索引中,該索引可包括該與音頻數(shù)據(jù)對應的全局標識。索引值可通過鍵值對與該全局標識對應。全部的索引信息構(gòu)成“全局索引”。在一個實施例中,音頻采集裝置可以有多個,服務器可先過濾掉索引值相同的音頻資源,然后根據(jù)過濾后的音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值構(gòu)建索引,并將音頻數(shù)據(jù)存儲到音頻資源庫中。在一個實施例中,音頻采集裝置采用延遲發(fā)送的方式將索引值和音頻數(shù)據(jù)發(fā)送給服務器。音頻采集裝置將緩存的索引值和音頻數(shù)據(jù)存儲為局部索引,服務器上存儲的索引為全局索引。服務器接收到音頻采集裝置延遲發(fā)送的局部索引后,過濾掉局部索引與全局索引重復的部分,然后將過濾后的局部索引添加在全局索引中。過濾掉重復的索引可以減小服務器的存儲壓力。上述音頻檢索中構(gòu)建索引方法,由音頻采集裝置獲取音頻數(shù)據(jù),然后再由音頻采集裝置計算音頻片段的索引值,并將索引值和音頻數(shù)據(jù)上傳到服務器。服務器再根據(jù)索引值和音頻數(shù)據(jù)構(gòu)建索引。使得服務器將計算音頻數(shù)據(jù)的索引值的工作轉(zhuǎn)移到了音頻采集裝置上。例如,在呼叫中心中,音頻采集裝置可以為客服人員的終端PC。每個終端PC當天可以處理完其當天采集的音頻數(shù)據(jù)。當呼叫中心系統(tǒng)容量擴大時,可通過增加終端PC的數(shù)量進行擴容,而不需要額外添加服務器,從而沒有增加額外的開銷。因此,上述音頻檢索中構(gòu)建索引方法降低了音頻檢索系統(tǒng)在擴容時的附加硬件成本,從而更加易于擴容。在一個實施例中,如圖2所示,音頻采集裝置計算音頻數(shù)據(jù)的索引值的步驟可具體為:步驟S202,音頻采集裝置對音頻數(shù)據(jù)進行預處理,提取聲學特征參數(shù)。步驟S204,音頻采集裝置對音頻數(shù)據(jù)進行說話人分割和語音分段。步驟S206,音頻采集裝置根據(jù)聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算分段后的音頻數(shù)據(jù)的索引值。步驟S202中,音頻采集裝置對音頻數(shù)據(jù)進行預處理時,可通過對音頻數(shù)據(jù)進行濾波、預加重、分幀、加窗、補零中的至少一種操作進行預處理。在將音頻數(shù)據(jù)經(jīng)過預處理后,可以通過編碼轉(zhuǎn)換、分割、簡單標記把語音對應的客戶和客服信息關(guān)聯(lián)起來,存入音頻采集裝置端數(shù)據(jù)庫保存。在提取音頻數(shù)據(jù)的特征參數(shù)時,可通過對分幀的語音進行特征提取獲取特征參數(shù)。例如,可通過傳統(tǒng)技術(shù)中的提取MFCC(Mel頻率倒譜系數(shù))、的方法提取音頻數(shù)據(jù)的聲學特征參數(shù)。步驟S204中,音頻采集裝置可通過對音頻數(shù)據(jù)中的靜默進行檢測,將音頻分段,并將分段后的音頻數(shù)據(jù)按照說話人類別進行分類。靜默時間即連續(xù)音頻信號中出現(xiàn)的幅值小于閾值的時間段??赏ㄟ^預設靜默時間來對音頻數(shù)據(jù)進行靜默檢測。通過靜默檢測可將長段語音按語句劃分為多段。例如,在呼叫中心中,音頻采集裝置先將客戶的語音按照說話人類別進行分類??墒褂肎MM模型(Gaussian Mixture Model,高斯混合模型),根據(jù)已有的模型庫中若干個說話人的模型進行分類,可根據(jù)男聲、女生、中性聲進行分類,用于區(qū)分;還可以預先對用戶進行編號,并采用用戶編號進行區(qū)分。
步驟S206中,如圖3所示,音頻采集裝置根據(jù)聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算分段后的音頻數(shù)據(jù)的索引值的步驟具體為:
步驟S302,根據(jù)分段后的音頻數(shù)據(jù)的語音特征參數(shù)、拼音語言模型、聲學模型和第一發(fā)音字典,通過語音識別解碼生成拼音網(wǎng)格(lattice)。
可根據(jù)分段后的音頻數(shù)據(jù)對應的說話人類別,從拼音語言模型庫和聲學模型庫中,選擇與說話人類別對應的拼音模型和聲學模型。例如,若客戶語音為男聲,則選擇男聲對應的拼音語言模型和聲學模型。
第一發(fā)音字典表示拼音語言模型中每個單元(音節(jié))和聲學模型中聲韻母的關(guān)系O
拼音語言模型為以拼音音節(jié)為單位的統(tǒng)計語言模型。第一發(fā)音字典表示拼音語言模型中每個單元(音節(jié))和聲學模型中聲韻母的關(guān)系?;韭晫W單元可包括聲韻、音素和音節(jié),為聲學模型的基本建模單元。優(yōu)選的,聲學模型可以是HMM(隱馬爾科夫模型),可通過Viterbi (維特比)算法通過生成拼音網(wǎng)格進行語音識別解碼。拼音網(wǎng)格中每個節(jié)點表示一個拼音音節(jié),節(jié)點中標記有該音節(jié)的其起始或者結(jié)束時間,節(jié)點之間的連接上標記音節(jié)的聲學概率和語言學概率。
步驟S304,根據(jù)拼音網(wǎng)格、基于詞的語言模型、第二發(fā)音字典生成詞網(wǎng)格。
第二發(fā)音字典表示基于詞的語言模型中每個單元(漢語詞)和拼音語言模型中的音節(jié)(采用Viterbi (維特比)算法解碼時生成的拼音網(wǎng)格中的節(jié)點)的關(guān)系。生成的詞網(wǎng)格中每個節(jié)點表示一個漢語詞,且節(jié)點中標記了該漢語詞的起始或者結(jié)束時間,節(jié)點之間的連接上標記漢語詞的聲學概率和語言學概率。對于多音詞還需要在節(jié)點中標記該漢語詞的發(fā)音類型序號。
進一步的,可計算詞網(wǎng)格中的每個詞的置信度。置信度為詞網(wǎng)格中每個詞的得分,可根據(jù)聲學模型概率、拼音音節(jié)概率、詞語的概率、詞語時間長度、詞網(wǎng)格中候選數(shù)量信息等信息計算獲得。置信度可用于判斷語音識別的預估準確程度。例如,一段含糊不清或者具有多音字的語音易被識別成多種漢語詞,置信度可用于表示預估的識別后的漢語詞的準確度,置信度越高,表示識別時受干擾小,識別后的漢語詞較可靠。
步驟S306,根據(jù)詞網(wǎng)格生成分段后的音頻數(shù)據(jù)的索引值。
可直接采用詞網(wǎng)格作為音頻數(shù)據(jù)的索引值,也可以通過預設的哈希函數(shù)計算基于詞的lattice的哈希值作為音頻數(shù)據(jù)的索引值。
在一個實施例中,服務器根據(jù)接收到的音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值構(gòu)建索引之后,還可對音頻數(shù)據(jù)和索引進行壓縮,從而節(jié)省服務器的存儲空間。
在一個實施例中,服務器根據(jù)接收到的音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值構(gòu)建索引之后,服務器還可通過反向索引存儲將該索弓I存儲。
在一個實施例中,如圖4所示,音頻檢索中構(gòu)建索引的方法還包括音頻檢索的步驟:
步驟S402,檢索客戶端獲取檢索請求。
步驟S404,檢索客戶端判斷檢索請求是否包含音頻片段,若是,則從該檢索請求中提取出音頻片段并計算該音頻片段的索引值,然后發(fā)送給服務器。
步驟S406,服務器根據(jù)索引值在索引中查找與索引值對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端。其中,檢索客戶端獲取音頻片段并計算音頻片段的索引值的方法與音頻采集裝置獲取音頻數(shù)據(jù)并計算音頻數(shù)據(jù)的索引值的方法相同??纱_保相同的音頻數(shù)據(jù)在檢索客戶端和音頻采集裝置中計算得到的索引值相同。在一個實施例中,服務器在接收到檢索客戶端上傳的索引值后,在索引中進行檢索,獲取索引值對應的音頻數(shù)據(jù)的全局標識,然后根據(jù)該全局標識在音頻資源庫中獲取與該全局標識對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端。在一個實施例中,服務器還定期同步音頻采集裝置和檢索客戶端中的拼音語言模型、聲學模型、基于詞的語言模型、發(fā)音詞典。同步后,音頻采集裝置和檢索客戶端在計算音頻數(shù)據(jù)的索引值時,可采用相同的算法以及參數(shù),確保了相同的音頻數(shù)據(jù)在檢索客戶端和音頻采集裝置中計算得到的索引值相同。如圖5所示,在一個實施例中,一種音頻檢索中構(gòu)建索引的系統(tǒng),包括音頻采集裝置100和服務器200,其中,音頻采集裝置100包括:音頻獲取模塊102,用于獲取音頻數(shù)據(jù)。音頻數(shù)據(jù)可以是語音,音樂等。音頻獲取模塊102可通過麥克風等音頻輸入設備或者聲卡輸出緩存等采集用戶的語音來獲取音頻數(shù)據(jù),也可以通過獲取音頻文件來獲取音頻數(shù)據(jù)。索引值計算模塊104,用于計算音頻數(shù)據(jù)的索引值,并將音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值發(fā)送給服務器200。在一個實施例,音頻采集 裝置100可以是具有一定運算能力的終端設備,其不僅可以通過音頻獲取模塊102采集語音,還可以通過索引值計算模塊104對音頻進行運算處理。例如,呼叫中心機房里的話務員的檢索客戶端終端PC,移動網(wǎng)絡中用戶的智能手機等檢索客戶端。索引值計算模塊104通過分析音頻數(shù)據(jù)的特征,生成與音頻數(shù)據(jù)對應的索引值,然后將索引值和音頻數(shù)據(jù)一起發(fā)送給服務器200。在一個實施例中,索引值計算模塊104將索引值和音頻數(shù)據(jù)發(fā)送給服務器200的方式為延遲發(fā)送。當索引值計算模塊104檢測到服務器200繁忙時,先將獲取到的音頻數(shù)據(jù)和生成的與該音頻數(shù)據(jù)對應的索引值以局部索引的形式緩存在音頻采集裝置100中,然后等到服務器200負載較小時,再將該局部索引上傳。服務器200包括:索引構(gòu)建模塊202,用于根據(jù)接收到的音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值構(gòu)建索引。服務器200接收到索引值計算模塊104上傳的音頻數(shù)據(jù)和與音頻數(shù)據(jù)對應的索引值之后,可預先為音頻數(shù)據(jù)分配與該音頻數(shù)據(jù)對應的全局標識,然后在構(gòu)建的索引中,該索引可包括該與音頻數(shù)據(jù)對應的全局標識。索引值可通過鍵值對與該全局標識對應。在一個實施例中,音頻采集裝置100可以有多個。索引構(gòu)建模塊202還可用于過濾掉索引值相同的音頻資源,根據(jù)過濾后的音頻數(shù)據(jù)和音頻數(shù)據(jù)的索引值構(gòu)建索引,并將音頻數(shù)據(jù)存儲到音頻資源庫中。在一個實施例中,音頻采集裝置采用延遲發(fā)送的方式將索引值和音頻數(shù)據(jù)發(fā)送給服務器。音頻采集裝置將緩存的索引值和音頻數(shù)據(jù)存儲為局部索引,服務器上存儲的索引為全局索引。服務器接收到音頻采集裝置延遲發(fā)送的局部索引后,過濾掉局部索引與全局索引重復的部分,然后將過濾后的局部索引添加在全局索引中。過濾掉重復的索引可以減小服務器的存儲壓力。
上述音頻檢索中構(gòu)建索引的系統(tǒng),由音頻采集裝置獲取音頻數(shù)據(jù),然后再由音頻采集裝置計算音頻片段的索引值,并將索引值和音頻數(shù)據(jù)上傳到服務器。服務器再根據(jù)索引值和音頻數(shù)據(jù)構(gòu)建索引。使得服務器將計算音頻數(shù)據(jù)的索引值的工作轉(zhuǎn)移到了音頻采集裝置上。例如,在呼叫中心中,音頻采集裝置可以為客服人員的終端PC。每個終端PC當天可以處理完其當天采集的音頻數(shù)據(jù)。當呼叫中心系統(tǒng)容量擴大時,可通過增加終端PC的數(shù)量進行擴容,而不需要額外添加服務器,從而沒有增加額外的開銷。因此,上述音頻檢索中構(gòu)建索引方法降低了音頻檢索系統(tǒng)在擴容時的附加硬件成本,從而更加易于擴容。
在一個實施例中,索引值計算模塊104還可用于對音頻數(shù)據(jù)進行預處理,提取聲學特征參數(shù);對音頻數(shù)據(jù)進行說話人分割和語音分段;根據(jù)聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算分段后的音頻數(shù)據(jù)的索引值。
索引值計算模塊104還可用于通過對音頻數(shù)據(jù)進行濾波、預加重、分幀、加窗、補零中的至少一種操作進行預處理。在將音頻數(shù)據(jù)經(jīng)過預處理后,可以通過編碼轉(zhuǎn)換、分割、簡單標記把語音對應的客戶和客服信息關(guān)聯(lián)起來,存入音頻采集裝置端數(shù)據(jù)庫保存。
索引值計算模塊104還可用于通過對分幀的語音進行特征提取獲取特征參數(shù)。例如,可通過傳統(tǒng)技術(shù)中的提取MFCC(Mel頻率倒譜系數(shù))、的方法提取音頻數(shù)據(jù)的聲學特征參數(shù)。
索引值計算模塊104還可用于通過對音頻數(shù)據(jù)中的靜默進行檢測,將音頻分段,并將分段后的音頻數(shù)據(jù)按照說話人類別進行分類。
靜默時間即連續(xù)音頻信號中出現(xiàn)的幅值小于閾值的時間段??赏ㄟ^預設靜默時間來對音頻數(shù)據(jù)進行靜默檢測。通過靜默檢測可將長段語音按語句劃分為多段。例如,在呼叫中心中,音頻采集裝置先將客戶的語音按照說話人類別進行分類。可使用GMM模型(Gaussian Mixture Model,高斯混合模型),根據(jù)已有的模型庫中若干個說話人的模型進行分類,可根據(jù)男聲、女生、中性聲進行分類,用于區(qū)分;還可以預先對用戶進行編號,并采用用戶編號進行區(qū)分。
進一 步的,索引值計算模塊104還可用于根據(jù)分段后的音頻數(shù)據(jù)的語音特征參數(shù)、拼音語言模型、聲學模型和第一發(fā)音字典,通過語音識別解碼生成拼音網(wǎng)格;根據(jù)拼音網(wǎng)格、基于詞的語言模型、第二發(fā)音字典生成詞網(wǎng)格;根據(jù)詞網(wǎng)格生成分段后的音頻數(shù)據(jù)的索引值。
可根據(jù)分段后的音頻數(shù)據(jù)對應的說話人類別,從拼音語言模型庫和聲學模型庫中,選擇與說話人類別對應的拼音模型和聲學模型。例如,若客戶語音為男聲,則選擇男聲對應的拼音語言模型和聲學模型。
第一發(fā)音字典表示拼音語言模型中每個單元(音節(jié))和聲學模型中聲韻母的關(guān)系O
拼音語言模型為以拼音音節(jié)為單位的統(tǒng)計語言模型。第一發(fā)音字典表示拼音語言模型中每個單元(音節(jié))和聲學模型中聲韻母的關(guān)系。基本聲學單元可包括聲韻、音素和音節(jié),為聲學模型的基本建模單元。優(yōu)選的,聲學模型可以是HMM(隱馬爾科夫模型),可通過Viterbi (維特比)算法通過生成拼音網(wǎng)格進行語音識別解碼。拼音網(wǎng)格中每個節(jié)點表示一個拼音音節(jié),節(jié)點中標記有該音節(jié)的其起始或者結(jié)束時間,節(jié)點之間的連接上標記音節(jié)的聲學概率和語言學概率。第二發(fā)音字典表示基于詞的語言模型中每個單元(漢語詞)和拼音語言模型中的音節(jié)(采用Viterbi (維特比)算法解碼時生成的拼音網(wǎng)格中的節(jié)點)的關(guān)系。生成的詞網(wǎng)格中每個節(jié)點表示一個漢語詞,且節(jié)點中標記了該漢語詞的起始或者結(jié)束時間,節(jié)點之間的連接上標記漢語詞的聲學概率和語言學概率。對于多音詞還需要在節(jié)點中標記該漢語詞的發(fā)音類型序號。進一步的,可計算詞網(wǎng)格中的每個詞的置信度。置信度為詞網(wǎng)格中每個詞的得分,可根據(jù)聲學模型概率、拼音音節(jié)概率、詞語的概率、詞語時間長度、詞網(wǎng)格中候選數(shù)量信息等信息計算獲得。置信度可用于判斷語音識別的預估準確程度。例如,一段含糊不清或者具有多音字的語音易被識別成多種漢語詞,置信度可用于表示預估的識別后的漢語詞的準確度,置信度越高,表示識別時受干擾小,識別后的漢語詞較可靠。在一個實施例中,索引構(gòu)建模塊202還可對音頻數(shù)據(jù)和索引進行壓縮,從而節(jié)省服務器200的存儲空間。在一個實施例中,索引構(gòu)建模塊202還可用于通過反向索引存儲將構(gòu)建的索引存儲。在一個實施例中,如圖6所示,音頻檢索中構(gòu)建索引的系統(tǒng)還包括檢索客戶端300,用于獲取檢索請求,檢索客戶端判斷檢索請求是否包含音頻片段,若是,則從該檢索請求中提取出音頻片段并計算該音頻片段的索引值,然后發(fā)送給服務器200。服務器200還包·括:音頻檢索模塊204,用于根據(jù)索引值在索引中查找與索引值對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端300。其中,檢索客戶端300獲取音頻片段并計算音頻片段的索引值的方法與索引計算模塊102獲取音頻數(shù)據(jù)并計算音頻數(shù)據(jù)的索引值的方法相同。可確保相同的音頻數(shù)據(jù)在檢索客戶端300和索引計算模塊102中計算得到的索引值相同。在Iv實施例中,服務器200在接收到檢索客戶端300上傳的索引值后,在索引中進行檢索,獲取索引值對應的音頻數(shù)據(jù)的全局標識,然后根據(jù)該全局標識在音頻資源庫中獲取與該全局標識對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端300。在一個實施例中,服務器200還定期同步音頻采集裝置100和檢索客戶端300中的拼音語言模型、聲學模型、基于詞的語言模型、發(fā)音詞典。同步后,音頻采集裝置100和檢索客戶端300在計算音頻數(shù)據(jù)的索引值時,可采用相同的算法以及參數(shù),確保了相同的音頻數(shù)據(jù)在檢索客戶端300和音頻采集裝置100中計算得到的索引值相同。以上所述實施例僅表達了本發(fā)明的幾種實施方式,其描述較為具體和詳細,但并不能因此而理解為對本發(fā)明專利范圍的限制。應當指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進,這些都屬于本發(fā)明的保護范圍。因此,本發(fā)明專利的保護范圍應以所附權(quán)利要求為準。
權(quán)利要求
1.一種音頻檢索中構(gòu)建索引的方法,包括以下步驟: 音頻采集裝置獲取音頻數(shù)據(jù); 音頻采集裝置計算所述音頻數(shù)據(jù)的索引值,并將所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值發(fā)送給服務器; 服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引。
2.根據(jù)權(quán)利要求1所述的音頻檢索中構(gòu)建索引的方法,其特征在于,所述索引包括與所述音頻數(shù)據(jù)對應的全局標識。
3.根據(jù)權(quán)利要求1所述的音頻檢索中構(gòu)建索引的方法,其特征在于,所述音頻采集裝置有多個; 所述服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引的步驟具體為: 服務器先過濾掉索引值相同的音頻資源,然后根據(jù)過濾后的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引,并將所述音頻數(shù)據(jù)存儲到音頻資源庫中。
4.根據(jù)權(quán)利要求1所述的音頻檢索中構(gòu)建索引的方法,其特征在于,所述音頻采集裝置計算所述音頻數(shù)據(jù)的索引值的步驟具體為: 音頻采集裝置對所述音頻數(shù)據(jù)進行預處理,提取聲學特征參數(shù); 音頻采集裝置對所述音頻數(shù)據(jù)進行說話人分割和語音分段; 音頻采集裝置根據(jù)所述聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算所述分段后的音頻數(shù)據(jù)的索引值。
5.根據(jù)權(quán)利要求4中任意一項所述的音頻檢索中構(gòu)建索引的方法,其特征在于,所述音頻采集裝置對所述音頻數(shù)據(jù)進行說話人分割和語音分段的步驟還包括: 對所述音頻數(shù)據(jù)中的靜默進行檢測,將音頻分段,并將分段后的音頻數(shù)據(jù)按照說話人類別進行分類。
6.根據(jù)權(quán)利要求4所述的音頻檢索中構(gòu)建索引的方法,其特征在于,所述音頻采集裝置根據(jù)所述聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算所述分段后的音頻數(shù)據(jù)的索引值的步驟具體為: 根據(jù)所述分段后的音頻數(shù)據(jù)的語音特征參數(shù)、拼音語言模型、聲學模型和第一發(fā)音字典,通過語音識別解碼生成拼音網(wǎng)格; 根據(jù)所述拼音網(wǎng)格、基于詞的語言模型、第二發(fā)音字典生成詞網(wǎng)格; 根據(jù)所述詞網(wǎng)格生成所述分段后的音頻數(shù)據(jù)的索引值。
7.根據(jù)權(quán)利要求1至6任一項所述的音頻檢索中構(gòu)建索引的方法,其特征在于,所述方法還包括: 檢索客戶端獲取檢索請求; 檢索客戶端判斷所述檢索請求是否包含音頻片段,若是,則從所述檢索請求中提取出音頻片段并計算該音頻片段的索引值,然后發(fā)送給服務器; 服務器根據(jù)索引值在索引中查找與所述索引值對應的音頻數(shù)據(jù),并下發(fā)給檢索客戶端。
8.一種音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,包括音頻采集裝置和服務器,所述音頻采集裝置包括:音頻獲取模塊,用于獲取音頻數(shù)據(jù); 索引值計算模塊,用于計算所述音頻數(shù)據(jù)的索引值,并將所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值發(fā)送給服務器; 所述服務器包括: 索引構(gòu)建模塊,用于服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引。
9.根據(jù)權(quán)利要求8所述的音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,所述索引包括與所述音頻數(shù)據(jù)對應的全局標識。
10.根據(jù)權(quán)利要求8所述的音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,所述音頻采集裝置有多個; 所述索引構(gòu)建模塊還用于過濾掉索引值相同的音頻資源,根據(jù)過濾后的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引,并將所述音頻數(shù)據(jù)存儲到音頻資源庫中。
11.根據(jù)權(quán)利要求8所述的音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,所述索引值計算模塊還用于對所述音頻數(shù)據(jù)進行預處理,提取聲學特征參數(shù);對所述音頻數(shù)據(jù)進行說話人分割和語音分段;根據(jù)所述聲學特征參數(shù)、預設的聲學模型、語言模型以及發(fā)音字典計算所述分段后的音頻數(shù)據(jù)的索引值。
12.根據(jù)權(quán)利要求11中所述的音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,所述索引值計算模塊還用于對所述音頻數(shù)據(jù)中的靜默進行檢測,將音頻分段,并將分段后的音頻數(shù)據(jù)按照說話人類別進行分類。
13.根據(jù)權(quán)利要求11所述的音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,所述索引值計算模塊還用于根據(jù)所述分段后的音頻數(shù)據(jù)的語音特征參數(shù)、拼音語言模型、聲學模型和第一發(fā)音字典,通過語音識別解碼生成拼音網(wǎng)格;根據(jù)所述拼音網(wǎng)格、基于詞的語言模型、第二發(fā)音字典生成詞網(wǎng)格;根據(jù)所述詞網(wǎng)格生成所述分段后的音頻數(shù)據(jù)的索引值。
14.根據(jù)權(quán)利要求8至13任意一項所述的音頻檢索中構(gòu)建索引的系統(tǒng),其特征在于,還包括檢索客戶端,用于獲取檢索請求,判斷所述檢索請求是否包含音頻片段,若是,則從所述檢索請求中提取出音頻片段并計算所述音頻片段的索引值,然后發(fā)送給服務器; 所述服務器還包括音頻檢索模塊,用于根據(jù)索引值在索引中查找與所述索引值對應的音頻數(shù)據(jù),并下發(fā)給 檢索客戶端。
全文摘要
一種音頻檢索中構(gòu)建索引的方法,包括以下步驟音頻采集裝置獲取音頻數(shù)據(jù);音頻采集裝置計算所述音頻數(shù)據(jù)的索引值,并將所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值發(fā)送給服務器;服務器根據(jù)接收到的所述音頻數(shù)據(jù)和所述音頻數(shù)據(jù)的索引值構(gòu)建索引。此外,還提供了一種音頻檢索中構(gòu)建索引的系統(tǒng)。上述音頻檢索中構(gòu)建索引的方法和系統(tǒng)可以降低音頻檢索系統(tǒng)在擴容時的附加硬件成本。
文檔編號G11B27/10GK103247316SQ20121003153
公開日2013年8月14日 申請日期2012年2月13日 優(yōu)先權(quán)日2012年2月13日
發(fā)明者黃石磊, 劉軼, 程剛, 曹文曉 申請人:深圳市北科瑞聲科技有限公司, 深港產(chǎn)學研基地產(chǎn)業(yè)發(fā)展中心, 北京大學香港科技大學深圳研修院