本發(fā)明涉及語音交互系統(tǒng)領域,特別涉及電力系統(tǒng)的語音導航系統(tǒng)、語音識別方法和語音交互方法。
背景技術:
:在傳統(tǒng)的語音導航系統(tǒng)中,用戶與系統(tǒng)交互的方式是通過電話的鍵盤。通常,用戶在進入語音導航系統(tǒng)后,會聽到相關的語音提示選單,根據自己的需要可以按下鍵盤上相關的按鍵。系統(tǒng)通過dtmf信號傳送用戶按下的鍵,同時也將用戶的請求傳送給系統(tǒng),從而觸發(fā)相關的語音信息。然而,傳統(tǒng)的電話僅能通過dtmf信號,傳送有限的幾個數字及符號按鍵。這使得用戶與系統(tǒng)的交互界面受到很大的限制,同時也就使得語音導航系統(tǒng)的信息查詢范圍變得相當狹窄,用戶在實際使用時會感到諸多不便。隨著計算機技術和人工智能總體技術的發(fā)展,自然語言理解不斷取得進展。語音識別系統(tǒng)已成為一個越來越廣泛的應用方向?;趥鹘y(tǒng)聲學模型的語音識別技術的語音導航系統(tǒng),被應用自動語音服務系統(tǒng)(即ivr服務)中,解決了菜單層級過深和業(yè)務無法拓展的問題,隨著服務內容日趨增多,訓練人工投入大、語音識別率低和系統(tǒng)的魯棒性差等固有的缺點和難點也日益凸顯,影響客戶對自助服務的使用,從而求助人工導致人工話務壓力增加。隨著深度學習技術的發(fā)展,在傳統(tǒng)的語音技術的基礎上引入深度學習技術應經成為了必然趨勢和解決當下問題的有效途徑。技術實現要素:針對上述現有技術存在的問題,提供了電力系統(tǒng)的語音導航系統(tǒng)、語音識別方法和語音交互方法。為了實現上述目的,一種電力系統(tǒng)的語音導航系統(tǒng),其特征在于:包括語音輸入模塊:客戶通過手機或者固話,利用排隊機接入呼叫中心系統(tǒng),在cti和ivr的控制下,當用戶需要語音導航業(yè)務時,通過呼叫平臺實現話務接入,平臺記錄下的原始語音信息,并進行播報用戶確認無誤后,將該文件作為原始的語音文件信息輸入;語音識別模塊包括語音識別單元和語音文本處理單元;語音識別單元:語音識別引擎輸入的原始的語音文件信息經過語音識別預處理;將經過語音識別預處理的語音文件進行離線解碼或在線解碼、置信度處理后轉成自然語言文本信息;并將原始語音信息、原始的語音文件信息、語音特征信息存入文本/語音語庫中;語音文本處理單元:將自然語言文本信息經過模式匹配處理、語法分析處理、語義解析處理、語義搜索處理、上下文管理處理以及語義預測處理后,將自然語言文本信息轉換成計算機識別的語音信息作為輸出物;進行業(yè)務需求分析,為自然語言處理引擎提供數據輸入;作為上述方案的進一步優(yōu)化,在語音識別單元中進行的語音識別預處理包括特征提取處理、端點檢測處理和去燥處理。作為上述方案的進一步優(yōu)化,還包括語音反饋模塊,用于反饋噪音或非普通話輸入的原始語音信息。作為上述方案的進一步優(yōu)化,其特征在于:語音識別模塊中,語音識別處理的步驟為:(41)初始化原始的語音文件信息;(42)創(chuàng)建識別引擎;語音識別引擎用于輸入的原始的語音文件;(43)創(chuàng)建識別上下文接口;(44)設置識別消息;(45)設置事件;(46)創(chuàng)建語法規(guī)則;(47)激活語法規(guī)則:(48)獲取識別消息,進行處理:本發(fā)明還公開了電力系統(tǒng)的語音導航系統(tǒng)的語音識別方法,其特征在于,語音識別單元采用深度神經網絡和隱馬爾科夫(dnn-hmm)混合模型,使用hmm來描述語音信號的動態(tài)變化,再使用dnn的每個輸出節(jié)點來估計連續(xù)密度hmm的某個狀態(tài)的后驗概率。作為上述方案的進一步優(yōu)化,離線解碼或在線解碼中:(61)首先將后驗概率轉為似然度p(xt/qt):p(xt/qt=s)=p(qt=s/xt)p(xt)/p(s)(1)其中,是從訓練集中統(tǒng)計的每個狀態(tài)的先驗概率,ts是標記屬于狀態(tài)s的幀數,t是總幀數,(62)p(xt)與字詞序列無關,計算時可以忽略,忽略后得到縮放的似然度(63)在dnn-hmm模型中,解碼出的字詞序列由以下公式確定:其中p(ω)是語言模型(lm)概率,以及上式是聲學模型(am)概率,其中,p(qt/xt)由dnn模型計算得出,p(qt)是狀態(tài)的先驗概率,π(q0)和分別是初始狀態(tài)概率和狀態(tài)轉移概率,(64)語言模型權重系數λ通常被用于平衡聲學和語言模型得分,最終的解碼路徑由以下公式決定:本發(fā)明還公開了一種電力系統(tǒng)的語音導航系統(tǒng)的語音交互方法,包括如下步驟:(101)用戶接通電話,語音導航系統(tǒng)接收到請求;(102)語音導航系統(tǒng)將請求發(fā)送給mcp(mediacontrolplatform)單元;(103)mcp單元返回給對應的語音文件、提示音給語音導航系統(tǒng);(104)語音導航系統(tǒng)播報提示音給用戶;(105)用戶語音輸入,進行識別請求;(106)語音導航系統(tǒng)將識別請求通過mcp單元轉發(fā)至語音識別引擎;引入反饋,將用戶語音識別的結果反饋給用戶,得到用戶的確認后,進行下一步;(107)語音識別引擎進行語音識別,并將轉寫文本發(fā)送給語義理解引擎;(108)語義理解引擎獲取語義上下文信息,給出語義識別結果,并將結果返回給語音識別引擎;(109)語音識別引擎將語義結果返回給語音導航系統(tǒng);(110)語音導航系統(tǒng)將語義結果發(fā)送至mcp單元,進行流程跳轉控制;(111)mcp單元返回最終結果給語音導航系統(tǒng);(112)語音導航系統(tǒng)將結果通過語音播報給用戶。作為上述方案的進一步優(yōu)化,對于查詢類問題,語音導航系統(tǒng)調用webservice接口,進行信息的查詢獲取;且webservice接口返回給語音導航系統(tǒng)對應的客戶的信息。與現有技術相比,本發(fā)明的電力系統(tǒng)的語音導航系統(tǒng)、語音識別方法和語音交互方法的有益效果如下:1、本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng),在識別率、魯棒性方面比基于傳統(tǒng)模型的語音導航有很大的改善和提高。本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng),即使在有一定噪音的環(huán)境下,系統(tǒng)的識別率達也能達到95%以上。2、本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng)的語音識別方法,采用dnn-hmm模型的語音識別引擎,具有識別率高,識別速度快,可移植性好等優(yōu)點。3、本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng)的語音識別方法,,應用電力系統(tǒng)的語音導航系統(tǒng)中,在模型的訓練、識別率、魯棒性方面有顯著的改善,有效提高語音識別率,為語音導航系統(tǒng)識別提供了新的手段。附圖說明圖1為本發(fā)明的電力系統(tǒng)的語音導航系統(tǒng)的結構框圖;圖2為本發(fā)明的語音識別處理的流程圖。具體實施方式為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明了,下面通過附圖及實施例,對本發(fā)明進行進一步詳細說明。但是應該理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限制本發(fā)明的范圍。參見圖1,圖1為本發(fā)明的電力系統(tǒng)的語音導航系統(tǒng)的結構框圖;一種電力系統(tǒng)的語音導航系統(tǒng),包括語音輸入模塊、語音識別模塊和數據交互模塊和語音反饋模塊:其中,語音輸入模塊:客戶通過手機或者固話,利用排隊機接入呼叫中心系統(tǒng),在cti和ivr的控制下,當用戶需要語音導航業(yè)務時,通過呼叫平臺實現話務接入,平臺記錄下的原始語音信息,并進行播報用戶確認無誤后,將該文件作為原始的語音文件信息輸入。語音識別模塊包括語音識別單元和語音文本處理單元。語音識別單元:語音識別引擎輸入的原始的語音文件信息經過語音識別預處理;將經過語音識別預處理的語音文件進行離線解碼或在線解碼、置信度處理后轉成自然語言文本信息;并將原始語音信息、原始的語音文件信息、語音特征信息存入文本/語音語庫中。在語音識別單元中進行的語音識別預處理包括特征提取處理、端點檢測處理和去燥處理。其中,在語音識別單元中進行的語音識別預處理包括特征提取處理、端點檢測處理和去燥處理。語音文本處理單元:將自然語言文本信息經過模式匹配處理、語法分析處理、語義解析處理、語義搜索處理、上下文管理處理以及語義預測處理后,將自然語言文本信息轉換成計算機識別的語音信息作為輸出物;進行業(yè)務需求分析,為自然語言處理引擎提供數據輸入;數據交互模塊,為用戶輸入的數據、系統(tǒng)識別的數據和反饋客戶輸出的數據提供交互。語音反饋模塊,用于反饋噪音或非普通話輸入的原始語音信息。一種電力系統(tǒng)的語音導航系統(tǒng)的語音識方法,首先調用coinitialize(null)初始化com對象,然后創(chuàng)建基于dnn+hmm的語音識別引擎、語法規(guī)則上下文和識別語法,并調用函數loadcmdfromfile裝載文法識別規(guī)則。本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng)調用setinterest來注冊需要的事件。本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng)的語音數據是從gvp取得的實時語音數據,將其存入內存,然后通過調用ispaudioplug的setdata方法將其送入識別引擎,調用語音識別引擎的處理模塊。參見圖2,語音識別處理的步驟為:(41)初始化原始的語音文件信息;本發(fā)明的優(yōu)選實施例中,speechapi5.1+vc6為例:在cwinapp的子類中,調用coinitializeex函數進行com初始化,代碼如下:coinitializeex(null,coinit_apartmentthreaded);//初始化com(42)創(chuàng)建識別引擎;語音識別引擎用于輸入的原始的語音文件:本發(fā)明的優(yōu)選實施例中,使用共享型,大的服務型程序使用inproc;如下:hr=m_cprecognizer.cocreateinstance(clsid_spsharedrecognizer);//sharehr=m_cprecognizer.cocreateinstance(clsid_spinprocrecognizer);//inproc如果是share型,可直接進到步驟3;如果是inproc型,必須使用isprecognizer::setinput設置語音輸入。如下:ccomptr<ispobjecttoken>cpaudiotoken;//定義一個tokenhr=spgetdefaulttokenfromcategoryid(spcat_audioin,&cpaudiotoken);//建立默認的音頻輸入對象if(succeeded(hr)){hr=m_cprecognizer->setinput(cpaudiotoken,true);}或者:ccomptr<ispaudio>cpaudio;//定義一個音頻對象hr=spcreatedefaultobjectfromcategoryid(spcat_audioin,&cpaudio);//建立默認的音頻輸入對象hr=m_cprecoengine->setinput(cpaudio,true);//設置識別引擎輸入源。(43)創(chuàng)建識別上下文接口;本發(fā)明的優(yōu)選實施例中,調用isprecognizer::createrecocontext創(chuàng)建識別上下文接口(isprecocontext),如下:hr=m_cprecoengine->createrecocontext(&m_cprecoctxt);(44)設置識別消息;本發(fā)明的優(yōu)選實施例中,調用setnotifywindowmessage告訴windows哪個是識別消息,需要進行處理。如下:hr=m_cprecoctxt->setnotifywindowmessage(m_hwnd,wm_recoevent,0,0);setnotifywindowmessage定義在ispnotifysource中。(45)設置事件;本發(fā)明的優(yōu)選實施例中,其中最重要的事件是”spei_recognition“。參照speventenum。代碼如下:constulonglongullinterest=spfei(spei_sound_start)|spfei(spei_sound_end)|spfei(spei_recognition);hr=m_cprecoctxt->setinterest(ullinterest,ullinterest);(46)創(chuàng)建語法規(guī)則;本發(fā)明的優(yōu)選實施例中,語法規(guī)則兩種,一種是聽說式(dictation),一種是命令式(commandandcontrol---c&c)。首先利用isprecocontext::creategrammar創(chuàng)建語法對象,然后加載不同的語法規(guī)則,如下://dictationhr=m_cprecoctxt->creategrammar(giddictation,&m_cpdictationgrammar);if(succeeded(hr)){hr=m_cpdictationgrammar->loaddictation(null,splo_static);//加載詞典}//c&chr=m_cprecoctxt->creategrammar(gidcmdctrl,&m_cpcmdgrammar);然后利用isprecogrammar::loadcmdxxx加載語法(47)激活語法規(guī)則:本發(fā)明的優(yōu)選實施例中,hr=m_cpdictationgrammar->setdictationstate(sprs_active);//dictationhr=m_cpcmdgrammar->setrulestate(null,null,sprs_active);//c&c(48)獲取識別消息,進行處理:截獲識別消息(wm_recoevent),然后處理。識別的結果放在cspevent的isprecoresult中。如下:uses_conversion;cspeventevent;switch(event.eeventid){casespei_recognition:{//識別出了語音輸入m_bgotreco=true;staticconstwcharwszunrecognized[]=l"<unrecognized>";cspdynamicstringdstrtext;//取得識別結果if(failed(event.recoresult()->gettext(sp_getwholephrase,sp_getwholephrase,true,&dstrtext,null))){dstrtext=wszunrecognized;}bstrsrout;dstrtext.copytobstr(&srout);cstringrecstring;recstring.empty();recstring=srout;//進一步處理......}break;}此外,本發(fā)明還公開了一種電力系統(tǒng)的語音導航系統(tǒng)的語音識別方法,語音識別單元采用深度神經網絡和隱馬爾科夫(dnn-hmm)混合模型,使用hmm來描述語音信號的動態(tài)變化,再使用dnn的每個輸出節(jié)點來估計連續(xù)密度hmm的某個狀態(tài)的后驗概率。語音識別過程中,離線解碼或在線解碼的步驟如下:離線解碼或在線解碼中:(61)首先將后驗概率轉為似然度p(xt/qt):p(xt/qt=s)=p(qt=s/xt)p(xt)/p(s)(1)其中,是從訓練集中統(tǒng)計的每個狀態(tài)的先驗概率,ts是標記屬于狀態(tài)s的幀數,t是總幀數,(62)p(xt)與字詞序列無關,計算時可以忽略,忽略后得到縮放的似然度對于訓練語句中包含很長靜音時段效果時,除以先驗概率p(s),獲取縮放的似然度,對于緩解標注不平衡問題很有效。(63)在dnn-hmm模型中,解碼出的字詞序列由以下公式確定:其中p(ω)是語言模型(lm)概率,以及上式是聲學模型(am)概率,其中,p(qt/xt)由dnn模型計算得出,p(qt)是狀態(tài)的先驗概率,π(q0)和分別是初始狀態(tài)概率和狀態(tài)轉移概率,各自都由hmm模型決定。(64)語言模型權重系數λ通常被用于平衡聲學和語言模型得分,最終的解碼路徑由以下公式決定:本發(fā)明的電力系統(tǒng)的語音導航系統(tǒng)的語音交互方法,包括如下步驟:(101)用戶接通電話,語音導航系統(tǒng)接收到請求;(102)語音導航系統(tǒng)將請求發(fā)送給mcp(mediacontrolplatform)單元;(103)mcp單元返回給對應的語音文件、提示音給語音導航系統(tǒng);(104)語音導航系統(tǒng)播報提示音給用戶;(105)用戶語音輸入,進行識別請求;(106)語音導航系統(tǒng)將識別請求通過mcp單元轉發(fā)至語音識別引擎;引入反饋,將用戶語音識別的結果反饋給用戶,得到用戶的確認后,進行下一步;(107)語音識別引擎進行語音識別,并將轉寫文本發(fā)送給語義理解引擎;(108)語義理解引擎獲取語義上下文信息,給出語義識別結果,并將結果返回給語音識別引擎;(109)語音識別引擎將語義結果返回給語音導航系統(tǒng);(110)語音導航系統(tǒng)將語義結果發(fā)送至mcp單元,進行流程跳轉控制;(111)mcp單元返回最終結果給語音導航系統(tǒng);(112)語音導航系統(tǒng)將結果通過語音播報給用戶。對于查詢類問題,語音導航系統(tǒng)調用webservice接口,進行信息的查詢獲?。磺襴ebservice接口返回給語音導航系統(tǒng)對應的客戶的信息,如:電費具體是多少。與現有的語音導航系統(tǒng)相比,通過實驗測試本發(fā)明提供的語音導航系統(tǒng)的語音識別模塊的性能,進行了孤立單詞識別、連續(xù)語音識別(連續(xù)單詞識別、連續(xù)言語識別與理解)、特定人語音識別(客服)、非特定人語音識別、有限詞匯識別和無限詞匯識別(全音節(jié)語音識別)等各種語音的輸入,結果參見表1.本發(fā)明提供的語音導航系統(tǒng)綜合識別率達到90%,其中孤立單詞識別和特定人語音識別的識別率達到100%。識別對象傳統(tǒng)模型的語音導航系統(tǒng)本發(fā)明的語音導航系統(tǒng)孤立單詞識別80%100%連續(xù)語音識別73%85%特定人語音識別(客服)89%100%非特定人語音識別82.10%94.00%有限詞匯識別85%97%無限詞匯識別80.20%89%綜合80%90%表1基于傳統(tǒng)模型的語音導航系統(tǒng)和本發(fā)明的語音導航系統(tǒng)效果對比圖本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng),在識別率、魯棒性方面比基于傳統(tǒng)模型的語音導航有很大的改善和提高。本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng),即使在有一定噪音的環(huán)境下,系統(tǒng)的識別率達也能達到95%以上。本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng)的語音識別方法,采用dnn-hmm模型的語音識別引擎,具有識別率高,識別速度快,可移植性好等優(yōu)點。本發(fā)明的一種電力系統(tǒng)的語音導航系統(tǒng)的語音識別方法,,應用電力系統(tǒng)的語音導航系統(tǒng)中,在模型的訓練、識別率、魯棒性方面有顯著的改善,有效提高語音識別率,為語音導航系統(tǒng)識別提供了新的手段。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內所作的任何修改、等同替換或改進等,均應包含在本發(fā)明的保護范圍之內。當前第1頁12