亚洲欧美成人中文在线网站,国产亚洲情侣一区二区无,欧美污网站,国产成人综合怡春院精品,欧美日韩国产综合一区二区三区,成人亚洲国产综合精品91,国产成人自拍视频在线观看

您當(dāng)前的位置是:  首頁(yè) > 新聞 > 國(guó)內(nèi) >
 首頁(yè) > 新聞 > 國(guó)內(nèi) >

MRCP學(xué)習(xí)筆記-語(yǔ)音識(shí)別語(yǔ)法技術(shù)細(xì)節(jié)(SRGS)

2018-06-28 09:52:52   作者: james.zhu   來(lái)源:CTI論壇   評(píng)論:0  點(diǎn)擊:


  前面的講座中,我們介紹了描述語(yǔ)音合成標(biāo)記語(yǔ)言。在上一個(gè)講座中,筆者介紹了語(yǔ)音合成標(biāo)記語(yǔ)言的基本語(yǔ)法和使用方式。在今天的章節(jié)中,我們繼續(xù)介紹MRCP協(xié)議中另外一個(gè)重要的語(yǔ)言語(yǔ)法-語(yǔ)音識(shí)別語(yǔ)言的技術(shù)細(xì)節(jié)(英文全稱是:Speech Recognition Grammar Specification)。Speech Recognition Grammar Specification我們簡(jiǎn)稱為SRGS。
  SRGS是W3C定義的一種標(biāo)準(zhǔn),在MRCP v2的規(guī)定中沒(méi)有太多具體的規(guī)定,但是在語(yǔ)音識(shí)別服務(wù)器的設(shè)置方面需要其相關(guān)參數(shù)。因此,筆者認(rèn)為有必要做一些具體的介紹。SRGS用來(lái)支持應(yīng)用開發(fā)人員通過(guò)設(shè)定的單詞或單詞模式的語(yǔ)法結(jié)構(gòu),這個(gè)語(yǔ)法結(jié)構(gòu)能夠被語(yǔ)音識(shí)別引擎聽或者識(shí)別。SRGS支持兩種語(yǔ)法格式,它們分別是XML格式和ABNF格式。在我們介紹的語(yǔ)法格式中,我們會(huì)重點(diǎn)介紹XML格式,因?yàn)樵贛RCP協(xié)議中我們主要還是使用XML格式。關(guān)于ABNF格式,用戶可以參考相關(guān)的rfc5234做進(jìn)一步了解。在本章節(jié)中,我們將會(huì)介紹SRGS的基本語(yǔ)法,語(yǔ)義說(shuō)明和一些關(guān)聯(lián)處理機(jī)制。
  1、語(yǔ)音識(shí)別的語(yǔ)法是通過(guò)對(duì)語(yǔ)言限定來(lái)支持語(yǔ)音識(shí)別的處理。語(yǔ)音識(shí)別語(yǔ)法通過(guò)語(yǔ)言限定可以減少句子內(nèi)容的不確定性,從而更好地支持語(yǔ)音識(shí)別。正式的語(yǔ)法都是由一系列規(guī)則和一些標(biāo)識(shí),象征符號(hào)通過(guò)恰當(dāng)?shù)呐帕薪M成而成。
  SRGS有兩種不同的語(yǔ)法結(jié)構(gòu)。一種是遞歸狀態(tài),表示了一種語(yǔ)法上下文的語(yǔ)法結(jié)構(gòu)。另外一種則不是遞歸狀態(tài),表示了一種有限狀態(tài)或規(guī)則語(yǔ)法結(jié)構(gòu)。語(yǔ)音識(shí)別的核心Hidden Markov Model(HMM)本身就是一個(gè)有限狀態(tài)機(jī)(參考上圖),F(xiàn)在的語(yǔ)音識(shí)別引擎可以支持從由少量單詞組成的語(yǔ)法也可以支持復(fù)雜的上百單詞組成的語(yǔ)法結(jié)構(gòu)。語(yǔ)音識(shí)別的準(zhǔn)確率以及處理速度和語(yǔ)法的復(fù)雜程度和語(yǔ)法的困惑度相關(guān)。換句話說(shuō),如果增加了單詞或語(yǔ)法結(jié)構(gòu),或增加了語(yǔ)法的困惑度會(huì)影響語(yǔ)音識(shí)別引擎的執(zhí)行效率,也會(huì)降低語(yǔ)音識(shí)別的準(zhǔn)確率和處理的速度。我們剛才也提到了困惑度的概念,困惑度簡(jiǎn)單來(lái)說(shuō)就是一個(gè)語(yǔ)法結(jié)構(gòu)中平均支持的分支節(jié)點(diǎn),如果結(jié)束符越多,需要判斷的點(diǎn)會(huì)越多。因此,如果開發(fā)人員需要完成一套高質(zhì)量的語(yǔ)法必須有非常大的投入,前期測(cè)試和后期維護(hù)工作,F(xiàn)在讓我們了解一些關(guān)于SRGS中主要的語(yǔ)法結(jié)構(gòu)和其應(yīng)用。
  2、首先,我們介紹一下SRGS的文件結(jié)構(gòu)。SRGS文件支持XML格式,通過(guò)媒體類型application/srgs+xml來(lái)定義。以下是SRGS支持的屬性:
  其基本的語(yǔ)法格式為:
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.w3.org/2001/06/grammar
  http://www.w3.org/TR/speech-grammar/grammar.xsd"
  mode="voice"
  xml:lang="en-GB"
  root="example">
  
  yes
  
  
  這里,所有的SRGS文件標(biāo)簽都已開始。讀者需要注意到是mode的屬性。默認(rèn)屬性是voice,也可以是DTMF,不支持兩種類型混合使用。如果是vocie表示輸入的值是語(yǔ)音;如果是DTMF則表示輸入的值是DTMF。但是,在一些復(fù)雜配置環(huán)境中,語(yǔ)音識(shí)別引擎可以同時(shí)激活兩種模式支持。在未來(lái)的講座中,我們會(huì)涉及這些兩種模式的使用方式。
  3、語(yǔ)法包含一個(gè)或多個(gè)規(guī)則定義。每個(gè)規(guī)則定義由一個(gè),名稱和ID構(gòu)成。我們稱每個(gè)規(guī)則定義的內(nèi)容為規(guī)則擴(kuò)展。一個(gè)規(guī)則擴(kuò)展將匹配完整語(yǔ)句中的部分內(nèi)容。一個(gè)簡(jiǎn)單的規(guī)則擴(kuò)展由按序排列的標(biāo)志構(gòu)成。一個(gè)單詞加一個(gè)空格就是一個(gè)標(biāo)志單位。
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza">
  I want a hot pepperoni pizza
  I want a hot pepperoni pizza
  
  
  在以上的示例中,語(yǔ)音發(fā)音必須全部完整匹配標(biāo)志的順序格式。SRGS語(yǔ)法同樣可以支持添加一個(gè)或者多個(gè)要素來(lái)增加語(yǔ)法的可閱讀性。這里,我們僅介紹了一個(gè)非常簡(jiǎn)單,定義非常嚴(yán)格的規(guī)則擴(kuò)展。事實(shí)上,SRGS可以實(shí)現(xiàn)非常強(qiáng)大的語(yǔ)法擴(kuò)展,我們?cè)诤罄m(xù)的章節(jié)中會(huì)逐步介紹。
  4、在規(guī)則擴(kuò)展中可以支持多個(gè)可選項(xiàng)的設(shè)置。SRGS使用要素來(lái)表達(dá)。每個(gè)中可以包含多個(gè)item規(guī)則擴(kuò)展。
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza">
  
  I want a hot
  
  pepperoni
  vegetarian
  cheese
  pizza
  
  以上可選項(xiàng)支持了非常靈活的語(yǔ)法結(jié)構(gòu)。它可以匹配:
  I want a hot pepperoni pizza
  I want a hot vegetarian pizza
  I want a hot cheese pizza
  高級(jí)語(yǔ)法中可以對(duì)不同的選項(xiàng)設(shè)置不同的權(quán)重。權(quán)重值等于1表示無(wú)權(quán)重,小于1表示負(fù)面的偏好,大于1表示正面的偏好。在上面的語(yǔ)法中,我們可以添加權(quán)重來(lái)表示特定的優(yōu)先級(jí)設(shè)置,發(fā)生幾率高于其他選項(xiàng)設(shè)置:
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza">
  I want a hot
  
  pepperoni
  vegetarian
  cheese
  pizza
  
  5、SRGS的規(guī)則擴(kuò)展中可以支持一個(gè)參照規(guī)則來(lái)引入其他的規(guī)則,通過(guò)要素加以說(shuō)明。規(guī)則參照的主要目的是重用規(guī)則擴(kuò)展。其用法規(guī)則如下:
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza">
  I want a hotpizza
  
  
  pepperoni
  vegetarian
  cheese
  
  
  可參照的規(guī)則通過(guò)URI屬性的值來(lái)定義。當(dāng)然,它也可以通過(guò)一個(gè)完整的URL來(lái)定義:。
  6、SRGS通過(guò)預(yù)留的名稱定義了三種特別的規(guī)則,它們分別是:NULL,VOID 和GARBAGE。其作用表示:
  NULL,如果講話者沒(méi)有說(shuō)任何語(yǔ)句,自動(dòng)匹配為Null。
  VOID,在排列順序中是一個(gè)相反的效果,它說(shuō)明順序從來(lái)沒(méi)有匹配。
  GARBAGE,則會(huì)一直匹配,直到下一個(gè)標(biāo)志,語(yǔ)法擴(kuò)展或結(jié)束輸入。
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza">
  I want a hotpizza
  
  在以上的語(yǔ)法中,任何語(yǔ)句內(nèi)容都可以匹配此語(yǔ)法規(guī)則(介于hot和pizza之間的輸入內(nèi)容)。例如,“I want a hot something or other pizza”就可以匹配以上語(yǔ)法規(guī)則。
  7、SRGS提供了一個(gè)結(jié)構(gòu)支持規(guī)則擴(kuò)展重復(fù)。通過(guò)一個(gè)重復(fù)的要素設(shè)置可以增加語(yǔ)法的緊湊性。大家可以想象一下,如果在語(yǔ)法中需要定義一個(gè)數(shù)值長(zhǎng)度的話,可能需要從0到9這樣的設(shè)置,我們使用,則需要很多次重復(fù)的語(yǔ)句,語(yǔ)句就會(huì)顯得非常冗長(zhǎng)。以下是repeat 屬性的設(shè)置語(yǔ)法:
  repeat 表示的取值范圍如下:
  0-1表示包含的規(guī)則開展內(nèi)容是可選的
  0-表示至少包含零次,一次或多次規(guī)則擴(kuò)展
  1-表示至少發(fā)生一次匹配
  以下就是一個(gè)使用repeat的示例,表示允許用戶說(shuō)“very” 三次。
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza">
  I want a
  veryhotpizza
  
  
  pepperoni
  vegetarian
  cheese
  
  
  SRGS的語(yǔ)法也可以支持在語(yǔ)音通信領(lǐng)域中用戶經(jīng)常使用的DTMF按鍵。很多時(shí)候,用戶通過(guò)DTMF輸入來(lái)確認(rèn)一些系統(tǒng)信息,例如密碼或其他語(yǔ)音選項(xiàng)設(shè)置。SRGS的DTMF和通信領(lǐng)域中的DTMF按鍵有所不同,通信領(lǐng)域的可以接受0-9數(shù)字,ABCD等其他字符設(shè)置,而SRGS支持0-9數(shù)字,語(yǔ)法結(jié)構(gòu)也比較簡(jiǎn)單,以下是一個(gè)可以接受4位數(shù)DTMF的語(yǔ)法格式:
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="dtmf"
  root="digits">
  
  
  
  
  
  
  0
  1
  2
  3
  4
  5
  6
  7
  8
  9
  
  
  
  8、在SRGS語(yǔ)法提供了對(duì)語(yǔ)義解釋(SISR)的兩種方式,它們可以通過(guò)tag-format來(lái)獲得支持。很多情況下,我們使用不同的表達(dá)方式來(lái)解釋同一種結(jié)果。其中一種是semantics/1.0-literals的方式,這里無(wú)論用戶以哪種方式說(shuō)yes/no,都會(huì)返回yes/no的結(jié)果,其數(shù)值結(jié)構(gòu)是ECMAScript 的數(shù)據(jù)格式。
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="yesno"
  tag-format="semantics/1.0-literals">
  
  
  yes
  yeayes
  ayeyes
  no
  nopeno
  nahno
  
  
  
  另外一種是使用語(yǔ)義腳本語(yǔ)言,通過(guò)tag-format-semantics/1.0獲得支持。tag中的內(nèi)容被看作是ECMAScript 代碼。ECMAScript是一種腳本語(yǔ)言,類似于我們現(xiàn)在通常用到的JavaScript。
  
  
  xmlns="http://www.w3.org/2001/06/grammar"
  mode="voice"
  xml:lang="en-GB"
  root="pizza"
  tag-format="semantics/1.0">
  
  I want a
  
  largeout.size="large";
  smallout.size="small";
  
  
  pepperoniout.sort=1;
  vegetarianout.sort=2;
  cheeseout.sort=3;
  
  pizza
  
  
  這里,我們假設(shè)發(fā)音是”I want a large vegetarian pizza“,那么返回ECMAScript 腳本對(duì)象的兩個(gè)屬性是size 和 sort類型,其值分別是large和2。其取值變量遵循的是ECMAScript 標(biāo)準(zhǔn)。腳本的對(duì)象數(shù)值是:
  {
  size: "large",
  sort: 2
  }
  這個(gè)標(biāo)識(shí)符表示了腳本的數(shù)據(jù)結(jié)構(gòu),語(yǔ)音應(yīng)用程序?qū)⑵鋽?shù)值存儲(chǔ)為數(shù)據(jù)庫(kù)的數(shù)據(jù)以便將來(lái)使用。semantics/1.0還支持了meta 數(shù)據(jù)的表達(dá)方式等靈活的處理方式,我們這里不再做更多介紹。具體的實(shí)現(xiàn)方式建議大家參考相關(guān)的SISR技術(shù)資料。另外,語(yǔ)義腳本語(yǔ)言支持的是ECMScript, 關(guān)于腳本語(yǔ)言的使用方式和變量取值等內(nèi)容,讀者可以參考我們的鏈接。
  9、在本章節(jié)中,我們重點(diǎn)介紹了SRGS技術(shù)細(xì)節(jié)中幾個(gè)主要的概念和要素使用方式以及其相關(guān)的語(yǔ)法結(jié)構(gòu)。首先,筆者對(duì)語(yǔ)音識(shí)別語(yǔ)法的背景做了簡(jiǎn)單介紹,然后對(duì)一些關(guān)鍵語(yǔ)法做了細(xì)致的介紹,包括的關(guān)鍵語(yǔ)法為可選項(xiàng)設(shè)置,重復(fù)語(yǔ)法設(shè)置,預(yù)留的三種特殊設(shè)置,語(yǔ)義腳本結(jié)構(gòu)(SISR),DTMF設(shè)置等設(shè)置語(yǔ)法。這些關(guān)鍵語(yǔ)法可以幫助優(yōu)化語(yǔ)法文件的結(jié)構(gòu),增加其靈活性和緊湊性,從而使其語(yǔ)法規(guī)則更接近于人類的自然語(yǔ)言。
  在接下來(lái)的章節(jié)中,筆者會(huì)介紹自然語(yǔ)言語(yǔ)義標(biāo)識(shí)語(yǔ)言(NLSML)的語(yǔ)法結(jié)構(gòu)和其使用方式。
  參考資料:
  https://tools.ietf.org/rfc/rfc5234.txt
  http://cs229.stanford.edu/section/cs229-hmm.pdf
  關(guān)于SISR標(biāo)準(zhǔn)技術(shù):https://www.w3.org/TR/semantic-interpretation/
  http://www.ecma-international.org/publications/standards/Ecma-327.htm
  HMM介紹-A Tutorial on Hidden Markov Models and
  Selected Applications in Speech Recognition
     
 
  unimrcp-MRCP協(xié)議學(xué)習(xí)分享,QQ群號(hào):208136295
  關(guān)注微信公眾號(hào):asterisk-cn,獲得有價(jià)值的行業(yè)分享
  freepbx 技術(shù)論壇:www.ippbx.org.cn
  Asterisk, freepbx技術(shù)文檔: www.freepbx.org.cn
  歐米(Omni)智能客服解決方案
  融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com
 

【免責(zé)聲明】本文僅代表作者本人觀點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對(duì)文中陳述、觀點(diǎn)判斷保持中立,不對(duì)所包含內(nèi)容的準(zhǔn)確性、可靠性或完整性提供任何明示或暗示的保證。請(qǐng)讀者僅作參考,并請(qǐng)自行承擔(dān)全部責(zé)任。

專題