余波 張立為
1.上海市物聯(lián)網(wǎng)行業(yè)協(xié)會;2.上海城建職業(yè)學(xué)院
隨著人工智能浪潮的興起,智能家居逐漸走入千家萬戶,這其中語音識別發(fā)揮了極大作用。在實(shí)際應(yīng)用中,語音識別的結(jié)果有著眾多不確定性,如外界環(huán)境、發(fā)音方式、方言習(xí)慣、語音質(zhì)量等都對語音識別的準(zhǔn)確率提出了挑戰(zhàn)。其中語音識別的結(jié)果對語義理解的影響較大,不準(zhǔn)確的語音識別結(jié)果將影響話語的意圖分類。因此,本文需要設(shè)計(jì)一種基于智能家居語音識別多樣化結(jié)果的意圖分類方法。該方法結(jié)合家居命令詞的特點(diǎn)、語音識別結(jié)果與實(shí)際命令詞的差異情況,能更準(zhǔn)確地實(shí)現(xiàn)智能家居話語的意圖分類。
在智能家居項(xiàng)目中,系統(tǒng)需要能夠識別語音命令詞并且控制設(shè)備執(zhí)行相應(yīng)的動作,如命令詞“低檔風(fēng)”,意為設(shè)備開啟最小風(fēng)。在實(shí)際使用中,命令詞語音識別結(jié)果與實(shí)際命令詞具有差異,我們結(jié)合命令詞的特點(diǎn)、語音識別結(jié)果文本與實(shí)際命令詞的差異情況,可以構(gòu)建相應(yīng)的詞典,用來輔助意圖分類。
基于智能家居項(xiàng)目業(yè)務(wù),我們收集了智能家居命令詞共232 條,其中包含設(shè)備、模式、功能的開關(guān)和調(diào)整等指令,我們將這些命令詞按語音特性拆分為2210 個聲母韻母。通過分析命令詞語音特性可以看到,命令詞中的開口呼韻母占較大比重為22%,其次是齊齒呼韻母、合口呼韻母、舌尖后音、舌尖中音,比重分別為17%、11%、10%、10%,這些類別存在誤讀和誤識別的可能性[1]。由于漢語發(fā)音時發(fā)音部位和發(fā)音方法的不同,發(fā)音時氣流受阻的位置、發(fā)音部位控制氣流的方式也會不同,這為語音識別帶來了較多難題。
在項(xiàng)目中,我們收集了命令詞的語音識別結(jié)果文本,整理了正誤詞對照表并分析了其語音特性,通過篩選語音識別正誤差異讀音得到4584 個聲母韻母。我們將其中出現(xiàn)頻數(shù)較大的易混淆對進(jìn)行了統(tǒng)計(jì),結(jié)果表明不送氣音與送氣音混淆對的占比較大,其次是前鼻音與后鼻音、單韻母與復(fù)韻母、舌尖前音與舌尖后音。這些易混淆對影響語音識別結(jié)果的準(zhǔn)確度,需要特別關(guān)注。
通過分析命令詞與語音識別結(jié)果文本的特點(diǎn)可以發(fā)現(xiàn),語音識別的準(zhǔn)確率受多種因素影響。如果語音識別的不準(zhǔn)確結(jié)果經(jīng)過意圖識別模塊時被錯誤分類,將對語義理解整體流程產(chǎn)生災(zāi)難性影響。因此,需要根據(jù)命令詞與語音識別結(jié)果文本的特點(diǎn),結(jié)合現(xiàn)代漢語語音規(guī)律,構(gòu)建規(guī)則詞典并設(shè)計(jì)一種意圖分類方法,提高意圖分類準(zhǔn)確率[2]。
通過命令詞與語音識別結(jié)果文本特點(diǎn)分析,我們可以構(gòu)建規(guī)則詞典,用以輔助意圖分類方法的實(shí)現(xiàn)。規(guī)則詞典包含以下類別:(1)智能家居命令詞詞典。該詞典包含項(xiàng)目所需的232 條命令詞。(2)語音識別結(jié)果正誤對照詞典。根據(jù)實(shí)際項(xiàng)目的測試結(jié)果,收集命令詞語音識別結(jié)果文本,整理后得到正確與錯誤識別命令詞的對照詞表。(3)現(xiàn)代漢語易混淆聲母韻母詞典。根據(jù)現(xiàn)代漢語語音的方音辨證方法,結(jié)合語音識別結(jié)果正誤對照詞典,構(gòu)建易混淆的聲母或韻母對共84 對。其中包含舌尖音與舌面音、不送氣音與送氣音、前鼻音與后鼻音等多種易混淆對。以上詞典可以輔助意圖分類方法的實(shí)現(xiàn)。智能家居命令詞詞典幫助意圖識別明確需要界定的分類,將屬于智能家居意圖類別的話語限定于較小范圍內(nèi)。語音識別結(jié)果正誤對照詞典、現(xiàn)代漢語易混淆聲母韻母詞典幫助我們擴(kuò)大搜索范圍,讓用戶誤讀或語音識別錯誤的結(jié)果能夠被意圖識別模塊捕獲并正確分類。
在實(shí)際應(yīng)用中,語音識別的結(jié)果受外界環(huán)境、發(fā)音方式、方言習(xí)慣、語音質(zhì)量等多方面因素影響,其中的不準(zhǔn)確結(jié)果經(jīng)過意圖識別模塊時如果被錯誤分類,將會對語義理解產(chǎn)生較大影響。因此,根據(jù)命令詞與語音識別結(jié)果文本的特點(diǎn),結(jié)合現(xiàn)代漢語語音規(guī)律,構(gòu)建規(guī)則詞典并設(shè)計(jì)一種意圖分類方法,可以提高基于語音識別結(jié)果文本的意圖分類準(zhǔn)確率。
本文的意圖分類方法根據(jù)構(gòu)建的智能家居命令詞詞典、語音識別結(jié)果正誤對照詞典、現(xiàn)代漢語易混淆聲母韻母詞典,生成命令詞及其易混淆音節(jié)總詞典。通過構(gòu)建2-GRAM 模型,計(jì)算總詞典中的單詞出現(xiàn)概率、雙詞共現(xiàn)概率,評估詞典中句子的出現(xiàn)概率。在此基礎(chǔ)上,取詞典中句子出現(xiàn)概率的最小值作為基線,進(jìn)行意圖分類。句子進(jìn)入意圖識別模塊后,先進(jìn)行概率計(jì)算,凡是高于最小概率的句子進(jìn)入智能家居分類,凡是低于最小概率的句子排除出該分類。意圖分類方法整體設(shè)計(jì)如圖1 所示。
圖1 意圖分類方法整體設(shè)計(jì)Fig.1 Overall design of intent classification method
本文所述的意圖分類方法涉及以下幾個方面:(1)命令詞及易混淆音節(jié)總詞典生成。將智能家居命令詞詞典中的命令詞按語音特性拆分為音節(jié)及聲母韻母組合,然后根據(jù)命令詞在易混淆聲母韻母詞典中的常見混淆情況,結(jié)合語音識別結(jié)果正誤對照詞典,找出命令詞的易混淆讀音。智能家居命令詞詞典中每條命令詞及其易混淆讀音組合,構(gòu)成了命令詞及易混淆音節(jié)總詞典。(2)利用貝葉斯公式計(jì)算句子出現(xiàn)概率[3]。根據(jù)命令詞及易混淆音節(jié)總詞典,獲取命令詞及其易混淆讀音組合,統(tǒng)計(jì)詞典中各項(xiàng)的頻數(shù)。然后根據(jù)拉普拉斯平滑公式,構(gòu)建2-GRAM 模型,計(jì)算單詞出現(xiàn)率、雙詞共現(xiàn)率。最后基于模型計(jì)算句子的出現(xiàn)概率,計(jì)算模型的句子出現(xiàn)概率的最小值。(3)根據(jù)句子出現(xiàn)概率進(jìn)行意圖分類。本文的意圖分類方法將模型的句子出現(xiàn)概率最小值作為模型句子出現(xiàn)最小概率,以此輔助意圖類別的判斷。在意圖分類過程中,根據(jù)2-GRAM 模型,我們?yōu)槊總€進(jìn)入意圖識別分類模塊的句子計(jì)算出現(xiàn)概率,并將其概率值與最小概率值作比較。凡是高于最小概率的句子進(jìn)入智能家居分類,凡是低于最小概率的句子排除出該分類。這樣就實(shí)現(xiàn)了二分法的意圖識別分類。
根據(jù)項(xiàng)目業(yè)務(wù)需要,本意圖分類方法已使用Python、Java 語言實(shí)現(xiàn)。其中主要涉及的功能模塊包含詞典生成模塊、概率模型構(gòu)建模塊、概率計(jì)算模塊、意圖分類模塊。通過圖1 可以看到本文所述的意圖分類方法的實(shí)現(xiàn)涉及以下方面:(1)詞典生成模塊主要根據(jù)智能家居命令詞詞典,對命令詞文本進(jìn)行音節(jié)、聲母韻母拆分,然后根據(jù)語音識別結(jié)果正誤對照詞典、現(xiàn)代漢語易混淆聲母韻母詞典,為每條命令詞找到易混淆聲母韻母組合,最終完成命令詞及易混淆音節(jié)總詞典的構(gòu)建。(2)概率模型構(gòu)建模塊主要基于命令詞及易混淆音節(jié)總詞典,統(tǒng)計(jì)單詞、雙詞詞頻,完成2-GRAM 模型的構(gòu)建,用以計(jì)算單詞出現(xiàn)率、雙詞共現(xiàn)率,預(yù)測句子的出現(xiàn)概率[4]。(3)概率計(jì)算模塊主要基于2-GRAM 模型,計(jì)算句子出現(xiàn)概率,并且計(jì)算詞典中句子出現(xiàn)概率的最小值作為最小概率值,然后以最小概率作為意圖分類的判斷依據(jù)。根據(jù)計(jì)算結(jié)果,我們選定模型的句子出現(xiàn)最小概率值為1.1768093503040191e-24。(4)意圖分類模塊主要基于用戶話語文本輸入,進(jìn)行音節(jié)、聲母韻母拆分,隨后基于2-GRAM 模型計(jì)算句子的出現(xiàn)概率,最后依據(jù)最小概率進(jìn)行意圖分類判斷,判斷此話語是否應(yīng)該進(jìn)入智能家居意圖分類。意圖分類方法的實(shí)現(xiàn),最關(guān)鍵的是意圖分類模塊的實(shí)現(xiàn)。
意圖分類模塊接收用戶話語文本作為輸入數(shù)據(jù),將最終完成類別判斷的意圖分類結(jié)果作為輸出,其實(shí)現(xiàn)流程包含以下幾個方面:(1)處理用戶話語文本。意圖分類模塊在接收到用戶話語文本即語音識別結(jié)果文本后,按語音特性對文本進(jìn)行處理,將文本轉(zhuǎn)換為音節(jié)及聲母韻母組合。(2)計(jì)算句子出現(xiàn)概率。在獲得聲母韻母列表后,通過調(diào)用2-GRAM 模型,計(jì)算單詞出現(xiàn)概率、雙詞共現(xiàn)概率并做概率統(tǒng)計(jì),然后基于詞單位的統(tǒng)計(jì)結(jié)果,對句子出現(xiàn)概率進(jìn)行計(jì)算。(3)進(jìn)行意圖分類[5]。結(jié)合句子出現(xiàn)概率、模型最小概率,將句子出現(xiàn)概率與最小概率進(jìn)行比較。當(dāng)句子出現(xiàn)概率高于最小概率時,將句子分入智能家居意圖類別;當(dāng)句子出現(xiàn)概率低于最小概率時,將句子分入非智能家居意圖類別。意圖分類模塊最終給出意圖分類結(jié)果,支持其他語義處理模塊的功能實(shí)現(xiàn)。
意圖分類在語義處理流程中居于首要地位,意圖分類的結(jié)果直接影響語義理解功能,因此好的意圖分類方法能夠幫助提升語義理解準(zhǔn)確度。根據(jù)項(xiàng)目業(yè)務(wù)需要,以測試意圖分類方法的意圖分類效果為目標(biāo),我們準(zhǔn)備測試集、確定測試指標(biāo)并進(jìn)行測試,通過分析測試結(jié)果,評估該意圖分類方法的應(yīng)用效果。
我們選擇了純智能家居測試數(shù)據(jù)集、智能家居與其他意圖分類混合數(shù)據(jù)集、純非智能家居分類測試數(shù)據(jù)集等類型的數(shù)據(jù)集。其中各測試數(shù)據(jù)集詳情包括如下幾個方面:(1)純智能家居測試數(shù)據(jù)集。選擇由項(xiàng)目客戶測試產(chǎn)生的命令詞測試數(shù)據(jù),以及系統(tǒng)原有智能家居分類測試數(shù)據(jù)共計(jì)605 條,作為測試意圖分類應(yīng)分入智能家居分類的測試數(shù)據(jù)。(2)智能家居與其他意圖分類混合數(shù)據(jù)集。選擇項(xiàng)目需求命令詞、閑聊數(shù)據(jù)、原有智能家居分類測試數(shù)據(jù)進(jìn)行混合,數(shù)據(jù)共計(jì)4191 條,用于測試意圖分類能否準(zhǔn)確對家居和非家居的意圖進(jìn)行分類。(3)純非智能家居分類測試數(shù)據(jù)集。系統(tǒng)本有智能家居、音樂、閑聊等功能分類,因此將非智能家居分類的測試句用于測試意圖分類能否準(zhǔn)確排除非智能家居分類的句子。純非智能家居分類測試數(shù)據(jù)共計(jì)16698 條。
對于意圖分類方法的測試,我們將意圖準(zhǔn)入率、誤入率作為測試指標(biāo)。準(zhǔn)入率主要用于衡量本應(yīng)屬于智能家居意圖分類的句子,有多少準(zhǔn)確進(jìn)入智能家居分類;誤入率主要用于衡量不屬于智能家居分類的句子,有多少被錯誤分入智能家居分類。
我們采用測試集對基于方法實(shí)現(xiàn)的意圖分類功能進(jìn)行測試。結(jié)果發(fā)現(xiàn),在準(zhǔn)入率方面,純智能家居測試數(shù)據(jù)集的準(zhǔn)入率為0.97%,智能家居與其他意圖分類混合數(shù)據(jù)集的準(zhǔn)入率為0.78%;在誤入率方面,純非智能家居分類測試數(shù)據(jù)集的誤入率為0.1%,智能家居與其他意圖分類混合數(shù)據(jù)集的誤入率為0.08%。
通過以上數(shù)據(jù)可以看到,意圖分類功能經(jīng)測試,其效果較好,測試數(shù)據(jù)集的平均準(zhǔn)入率達(dá)到0.87%,平均誤入率為0.09%,基本符合預(yù)期。
本文基于智能家居項(xiàng)目的語音識別應(yīng)用情況,設(shè)計(jì)一種意圖識別分類方法,該方法主要為適應(yīng)語音識別的多樣化結(jié)果。語音識別的實(shí)際結(jié)果文本與預(yù)期有所差異,結(jié)合命令詞的特點(diǎn)、現(xiàn)代漢語語音特性,我們能夠構(gòu)建規(guī)則詞典、設(shè)計(jì)意圖分類方法,使其滿足智能家居話語的意圖分類需要。測試結(jié)果表明,這種意圖分類方法能夠提高意圖分類準(zhǔn)確率,適應(yīng)了項(xiàng)目業(yè)務(wù)的需要。