1、首先,我們介紹一下NLSML的一些背景信息。MRCP中的NLSML實(shí)際上是一種數據交換的格式,它介于語(yǔ)音識別和說(shuō)話(huà)人確認資源的之間。
NLSML可表示的數據信息包括用戶(hù)語(yǔ)音輸入,用戶(hù)的DTMF輸入,和其相關(guān)的語(yǔ)義解釋信息,信任度信息和時(shí)間戳的信息。
MRCP拓展了NLSML來(lái)進(jìn)一步表示說(shuō)話(huà)人注冊語(yǔ)法(英文全稱(chēng)是Voiceen rolled grammars, 有時(shí)也稱(chēng)之為speaker dependent grammars)相關(guān)數據。speaker dependent grammars 表示的是由用戶(hù)自己語(yǔ)音創(chuàng )建的語(yǔ)法,為了進(jìn)一步的語(yǔ)音識別操作來(lái)服務(wù)的語(yǔ)法形式。
NLSML也可以配合說(shuō)話(huà)人確認資源來(lái)表示各種說(shuō)話(huà)人確認信息和身份等相關(guān)的數據。
2、首先讓我們看看NLSML的數據結構。NLSML的數據結構通過(guò)媒體類(lèi)型來(lái)定義:application/nlsml+xml。其結構如下:
< xmlversion="1.0"encoding="UTF-8" ><resultxmlns="http://www.ietf.org/xml/ns/mrcpv2">
…
</result>
這里的數據完全取決于是否使用了NLSML返回的語(yǔ)音識別的結果信息,例如語(yǔ)音識別結果,聲音注冊的語(yǔ)法結果和說(shuō)話(huà)人確認和身份結果都等數據。我們在下面的章節中會(huì )依次介紹這三種數據結果的結構。
3、現在我們首先介紹一下語(yǔ)音識別結果的數據格式。語(yǔ)音識別的結果是被封裝在NLSML中,并且包含在了RECOGNITION COMPLETE事件的消息體或GET-RESULT 響應的信息體。我們已經(jīng)在前面的章節中介紹過(guò)事件的消息體內容,讀者可查閱歷史文檔學(xué)習。NLSML的結果通過(guò)<result>的一個(gè)或多個(gè)子要素標簽<interpretation>來(lái)做標識。以下表中表示了NLSML中的數據格式要素和其屬性數值。
剛才,我們已經(jīng)提到過(guò),每個(gè)NLSML文件至少包含一個(gè)或多個(gè)<interpretation>。如果有多個(gè)<interpretation>時(shí),這里的<interpretation>將會(huì )以遞減信任度的形式排列。可選數值confidence表示對其<interpretation>的數值的信任評價(jià)值,其取值范圍從0.0到1.0。在<interpretation>中包含一個(gè)<input>和一個(gè)<instance>要素。<input>表示用戶(hù)輸入的文本形式,<instance>則包含了相應的語(yǔ)義解釋結果。如果沒(méi)有成功識別的話(huà),此文件會(huì )包含<noinput>或 <nomatch>的要素,表示未成功識別。timestamp-start和timestamp-end用來(lái)表示用戶(hù)輸入時(shí)間段。這里,讀者要注意,其時(shí)間戳格式是ISO 8601格式標準。
語(yǔ)音識別在一定時(shí)間內,其檢測結果可能是成功的也可能是失敗的。
我們重點(diǎn)介紹幾個(gè)不同的狀態(tài)返回結果。當在一定時(shí)間內沒(méi)有檢測到用戶(hù)輸入時(shí),語(yǔ)音識別引擎會(huì )在返回的RECOGNITION-COMPLETE事件中返回002 no-input-timeout 錯誤碼。關(guān)于002 錯誤碼我們在以前的章節中做過(guò)介紹,用戶(hù)可以查閱歷史文檔。如果NLSML結果在返回的事件的消息體中的話(huà),NLSML將返回一個(gè)<noinput>作為<input>的子要素。如果識別引擎檢測到了用戶(hù)輸入數據,但是識別引擎沒(méi)有匹配語(yǔ)法設置或超過(guò)信任度的峰值參數時(shí),在RECOGNITION-COMPLETE的返回的事件中,識別引擎會(huì )攜帶001 no-match 錯誤碼。同時(shí),如果返回的事件消息體中包含了NLSML的結果,NLMSL將包含一個(gè)<nomatch>子要素作為<input>的子要素。另外,在<nomatch>要素中可能包含某些可選的文本,這些文本是被拒絕匹配中的最佳結果。我們列舉幾個(gè)不同的返回結果來(lái)說(shuō)明語(yǔ)音識別是否成功。
成功的識別結果,包含兩個(gè)<interpretation>值和相應的返回值<instance>。
< xml version="1.0" encoding="UTF-8" >
<result xmlns="http://www.ietf.org/xml/ns/mrcpv2"
grammar="http://www.example.com/demo.grxml">
<interpretation confidence="0.81">
<input mode="speech">
to recognise speech
</input>
<instance>
to recognise speech
</instance>
</interpretation>
<interpretation confidence="0.75">
<input mode="speech">
to wreck a nice beach
</input>
<instance>
to wreck a nice beach
</instance>
</interpretation>
</result>
無(wú)用戶(hù)輸入的檢測結果,這里輸出的是<noinput/>子要素,可能沒(méi)有用戶(hù)輸入或沒(méi)有設置時(shí)間戳設置。
< xml version="1.0" encoding="UTF-8" >
<result xmlns="http://www.ietf.org/xml/ns/mrcpv2">
<interpretation>
<input mode="speech">
<noinput/>
</input>
<instance/>
</interpretation>
</result>
無(wú)匹配的返回結果,這里可能是信任度峰值的數值不準確導致不匹配。
< xml version="1.0" encoding="UTF-8" >
<result xmlns="http://www.ietf.org/xml/ns/mrcpv2"
grammar="http://www.example.com/number.grxml">
<interpretation confidence="0.31">
<input mode="speech">
<nomatch>one</nomatch> // 雖然返回拒絕匹配輸出結果,但是提供了最佳匹配可選內容。
</input>
<instance/>
</interpretation>
</result>
4、上面的章節中我們介紹了語(yǔ)音識別的返回結果匹配的結果,這里我們進(jìn)一步介紹包含語(yǔ)義解釋的語(yǔ)音識別的語(yǔ)法結構。當語(yǔ)法中的tag-format設置為semantics/1.0-literals 時(shí),<tag>要素中的內容則被解釋為ECMAScript 腳本。我們在前面的章節中已經(jīng)說(shuō)明這個(gè)定義。當所有匹配的<tag>執行以后會(huì )從語(yǔ)法規則中生成語(yǔ)義結果。然后,NLSML會(huì )把匹配的語(yǔ)法中的語(yǔ)義解釋結果插入到<instance>中。現在讓我們看一下以下示例:
< xmlversion="1.0"encoding="UTF-8" ><grammarversion="1.0"xmlns="http://www.w3.org/2001/06/grammar"
mode="voice"xml:
lang="en-IE"
root="yesno"
tag-format="semantics/1.0-literals">
<ruleid="yesno">
<one-of>
<item>yes<tag>affirmative</tag></item>
<item>yea<tag>affirmative</tag></item>
<item>no<tag>negative</tag></item>
<item>nah<tag>negative</tag></item>
</one-of></rule>
</grammar>
現在,如果我們假設用戶(hù)發(fā)音是單詞“yea”,那么NLSML可能生成的結果是:
< xmlversion="1.0"encoding="UTF-8" ><resultxmlns="http://www.ietf.org/xml/ns/mrcpv2"
grammar="http://www.example.com/yesno.grxml"><interpretationconfidence="0.91">
<inputmode="speech">yea</input>
<instance>affirmative</instance>
</interpretation></result>
其他的應用程序則可以根據<instance>的結果來(lái)做進(jìn)一步的業(yè)務(wù)處理。
5、前面我們介紹了ECMAScript的語(yǔ)法結構和具體使用方式和解釋結果。語(yǔ)義解釋結果會(huì )保存到數據文件中。當規則中的變量被認定為一個(gè)標量類(lèi)型(例如string, number,boolean,null或undefined類(lèi)型)時(shí),那么語(yǔ)義結果同樣會(huì )NLSML生成的<instance>中。這里,如果number是小于零,則加一個(gè)negative前綴。如果是布爾值,則為true或false。null則為null值。如果是undefined的值,則仍然為undefined值。以下語(yǔ)法同樣會(huì )生成同樣的語(yǔ)義結果(根據前面所生產(chǎn)的語(yǔ)義結果):
< xmlversion="1.0"encoding="UTF-8" ><grammarversion="1.0"xmlns="http://www.w3.org/2001/06/grammar"
mode="voice"xml:
lang="en-IE"
root="yesno"
tag-format="semantics/1.0">
<ruleid="yesno">
<one-of>
<item>yes<tag>out="affirmative";</tag>
</item><item>yea<tag>out="affirmative";</tag></item><item>no<tag>out="negative";</tag></item>
<item>nah<tag>out="negative";</tag></item>
</one-of>
</rule>
</grammar>
當語(yǔ)法規則的變量不是標量變量類(lèi)型,它返回的是ECMAScript 對象時(shí),則處理的數據格式更加復雜。關(guān)于如何從ECMAScript 對象轉轉換成XML語(yǔ)法結構的規定,用戶(hù)可以參考Semantic Interpretation for Speech Recognition(SISR)。規則中定義了不同的轉換規則,用戶(hù)可以做進(jìn)一步的了解。具體的規則如下:

現在讓我們了解一下語(yǔ)法規則和轉換后的結果:
< xmlversion="1.0"encoding="UTF-8" ><grammarversion="1.0"xmlns="http://www.w3.org/2001/06/grammar"
mode="voice"
xml:lang="en-GB"
root="travel"tag-format="semantics/1.0">
<ruleid="travel">
<tag>out.travel=newObject();</tag>
I want a fly from
<rulerefuri="#city"/>
<tag>out.travel.orig=rules.city;</tag>
to
<rulerefuri="#city"/>
<tag>out.travel.dest=rules.city;</tag>
</rule><ruleid="city">
<one-of>
<item>Dublin<tag>out="Dublin";</tag></item><item>London<tag>out="London";</tag></item><item>Paris<tag>out="Paris";</tag>
</item>
</one-of>
</rule>
</grammar>
在以上的示例中,對于“I want to fly from Dublin to Paris“ 輸入變量來(lái)說(shuō),其生成的結果規則變量是:
{
travel:
{
orig:Dublin,
dest:Paris
}
}
如果我們把整個(gè)結果通過(guò)規則轉換的規則來(lái)進(jìn)行語(yǔ)法處理后,NLSML的結果類(lèi)似于:
< xmlversion="1.0"encoding="UTF-8" >
<result xmlns="http://www.ietf.org/xml/ns/mrcpv2"
grammar="http://www.example.com/travel.grxml">
<interpretation confidence="0.93">
<input mode="speech">I want to fly from Dublin to Paris</input>
<instance>
<travel>
<orig>Dublin</orig>
<dest>Paris</dest>
</travel>
</instance>
</interpretation>
</result>
語(yǔ)法規則變量的類(lèi)型也可能是array類(lèi)型或其中一個(gè)屬性可能是array的數據類(lèi)型。這種情況下,如果規則變量轉換成語(yǔ)義結果的話(huà),需要遵守一定的規則。具體的規則如下:
Array對象的帶索引的要素會(huì )變成XML的子要素,并且帶<item>名稱(chēng)。
每個(gè)item中的參數屬性命名為帶索引支持,此索引對應Array中的要素。
XML文件中包含<item>要素屬性length,此值通過(guò)ECMAScript Array的對象來(lái)定義。
以上規則看起來(lái)比較難以理解,我們通過(guò)以下示例來(lái)加以說(shuō)明:
< xmlversion="1.0"encoding="UTF-8" >
<grammar version="1.0"
xmlns="http://www.w3.org/2001/06/grammar"
mode="voice"
xml:lang="en-GB"
root="string"
tag-format="semantics/1.0">
<ruleid="string">
<tag>out.digitstring=newArray();</tag>
<itemrepeat="1-">
<rulerefuri="#digits"/>
<tag>out.digitstring.push(rules.digits);</tag>
</item>
</rule>
<ruleid="digits">
<one-of>
<item>one<tag>out=1;</tag></item>
<item>two<tag>out=2;</tag></item>
<item>three<tag>out=3;</tag></item>
<item>four<tag>out=4;</tag></item>
<item>five<tag>out=5;</tag></item>
</one-of>
</rule>
</grammar>
如果用戶(hù)的輸入語(yǔ)句是”5,4,3,2,1“的話(huà),生成的array 類(lèi)型的對象變量結果格式為:
{
digitstring:[ 5, 4, 3, 2, 1] // 這里的長(cháng)度是5,包含五個(gè)數值。
}
如果按照上面的三條規則進(jìn)行轉換以后,生成的結果類(lèi)似于:
< xmlversion="1.0"encoding="UTF-8" ><resultxmlns="http://www.ietf.org/xml/ns/mrcpv2"
grammar="http://www.example.com/yesno.grxml">
<interpretation confidence="0.93">
<input mode="speech">
five four three two one
</input>
<instance>
<digitstring length="5"> // 長(cháng)度取決于array 對象值。
<item index="0">5</item> // 這里0對應的是5
<itemindex="1">4</item>
<itemindex="2">3</item>
<itemindex="3">2</item>
<itemindex="4">1</item>
</digitstring>
</instance>
</interpretation>
</result>
6、在前面的章節中,我們一直討論關(guān)于語(yǔ)音識別輸出結果的討論。在本章節中,我們將重點(diǎn)介紹語(yǔ)音注冊的輸出結果。語(yǔ)音注冊聽(tīng)起來(lái)比較費解,簡(jiǎn)單來(lái)說(shuō),它是一種機制,用戶(hù)可以通過(guò)增加自己的一些短語(yǔ)創(chuàng )建說(shuō)話(huà)人屬于自己的,獨立的,相對個(gè)性化的語(yǔ)法結構。此語(yǔ)法結構看在后續的正常語(yǔ)音識別中使用。典型的應用案例就是很多人使用的電話(huà)薄。說(shuō)話(huà)人可以對語(yǔ)音識別引擎進(jìn)行訓練,輸入朋友姓名電話(huà)號碼等。其他用戶(hù)可以說(shuō)出訓練后的朋友姓名,然后識別出朋友相應的電話(huà)號碼等關(guān)聯(lián)信息。
從概念上來(lái)說(shuō),注冊語(yǔ)音語(yǔ)法可以看作是簡(jiǎn)單的SRGS語(yǔ)法,它由幾個(gè)可選設置構成,例如以下示例:
< xmlversion="1.0"encoding="UTF-8" ><grammarversion="1.0"
xmlns="http://www.w3.org/2001/06/grammar"
mode="voice"
xml:lang="en-GB"
root="address"
tag-format="semantics/1.0-literals">
<ruleid="address">
<one-of>
<item>Mary<tag>user01</tag></item>
<item>Anne<tag>user02</tag></item>
<item>JohnHenry<tag>user03</tag></item>
…
</one-of>
</rule>
</grammar>
這里,短語(yǔ)(Mary,Anne,JohnHenry)通過(guò)自己的注冊session ID和對應的語(yǔ)義解釋添加到了語(yǔ)法中。每個(gè)短語(yǔ)通過(guò)MRCP 客戶(hù)端提供的唯一短語(yǔ)ID來(lái)進(jìn)行跟蹤。在注冊會(huì )話(huà)中,用戶(hù)說(shuō)幾次短語(yǔ)的名稱(chēng),每次捕捉的短語(yǔ)會(huì )和以前的短語(yǔ)采樣進(jìn)行對比。當捕捉到足夠說(shuō)話(huà)采樣以后,短語(yǔ)經(jīng)過(guò)訓練以后生成個(gè)人注冊語(yǔ)音語(yǔ)法。這個(gè)個(gè)人的注冊語(yǔ)音語(yǔ)法可以通過(guò)正常的語(yǔ)音識別引擎使用個(gè)人語(yǔ)法的URL加以調用。當短語(yǔ)在設定的注冊會(huì )話(huà)期間成功匹配后,語(yǔ)義解釋結果會(huì )以NLSML的結果返回。這里,我們再次強調,這里的部署僅從理論上加以討論,具體的實(shí)現方式完全依賴(lài)于每個(gè)語(yǔ)音識別的平臺本身以及平臺語(yǔ)法和短語(yǔ)等存儲方式,語(yǔ)法結構等相關(guān)參數。當MRCP 客戶(hù)端對語(yǔ)音識別引擎發(fā)出 START-PHRASE-ENROLLMENT請求時(shí),注冊會(huì )話(huà)則開(kāi)始啟動(dòng)。當MRCP客戶(hù)端對語(yǔ)音識別引擎發(fā)出END-PHRASE-ENROLLMENT 請求時(shí),注冊會(huì )話(huà)的生命周期結束。如果在RECOGNIZE請求中包含頭域Enroll-Utterance:true會(huì )觸發(fā)對語(yǔ)音進(jìn)行捕捉。在對應的RECOGNITION-COMPLETE事件中會(huì )包含NLSML結果,它封裝了注冊的嘗試信息。具體的注冊結果我們在未來(lái)的章節中會(huì )做進(jìn)一步的介紹,現在我們專(zhuān)門(mén)針對NLSML中包含的語(yǔ)音注冊結果的格式進(jìn)行介紹。
NLSML包含的語(yǔ)音注冊結果通過(guò)<enrollment-result>來(lái)加以定義,<enrollment-result>是<result>的子要素。以下列表說(shuō)明了語(yǔ)音注冊結果的表達方式:

讓我們看一下在語(yǔ)音注冊會(huì )話(huà)生命周期中,RECOGNITION-COMPLETE事件返回的NLSML結果。在下面的示例中,具體語(yǔ)法結果表示通過(guò)URL設定了個(gè)人語(yǔ)法,目前收到一個(gè)連續的語(yǔ)音,仍然需要獲得兩個(gè)或多個(gè)語(yǔ)音,并且還有兩個(gè)不相容短語(yǔ)(Mary和Madge,它們分別通過(guò)clash-phrase-id 表示)。
< xmlversion="1.0"encoding="UTF-8" ><resultxmlns="http://www.ietf.org/xml/ns/mrcpv2"
grammar="http://example.com/ve/personal-grammar-01">
<enrollment-result>
<num-good-repetitions>1</num-good-repetitions>
<num-repetitions-still-needed>2</num-repetitions-still-needed>
<consistency-status>consistent</consistency-status>
<transcriptions>
<item>Marie</item>
</transcriptions>
<num-clashes>2</num-clashes>
<clash-phrase-ids>
<item>Mary</item>
<item>Madge</item>
</clash-phrase-ids>
</enrollment-result>
</result>
7、MRCP通過(guò)NLSML封裝了說(shuō)話(huà)人的狀態(tài)驗證信息。這些結果消息包含在VERIFICATION-COMPLETE事件的消息體中,是GET-INTERMEDIATE-RESULT請求的對應響應。關(guān)于說(shuō)話(huà)人驗證和定位消息,我們在以前的章節中做過(guò)簡(jiǎn)單的介紹,在未來(lái)的章節中會(huì )更加深入地進(jìn)行剖析。這里,我們僅關(guān)心NLSML的文件結構, 這里的NLSML文件用來(lái)描述訓練的聲紋結果,聲紋對比以后的語(yǔ)音變化,說(shuō)話(huà)語(yǔ)音和多個(gè)聲紋對比來(lái)確認狀態(tài)。NLSML在<verification-result> XML要素來(lái)獲得支持。以下列表是一個(gè)關(guān)于speaker verification/identification 結果的匯總:

以下是一個(gè)在聲紋訓練中返回的驗證結果。NLSML包含在VERIFICATION-COMPLETE的事件消息體中,或GET-INTERMEDIATE-RESULTS 請求的響應中:
< xmlversion="1.0"encoding="UTF-8" ><resultxmlns="http://www.ietf.org/xml/ns/mrcpv2">
<verification-result>
<voiceprint id="joebloggs.voiceprint">
<incremental>
<verification-score>0.91</verification-score>
<device>cellular-phone</device>
<gender>male</gender>
<utterance-length>751</utterance-length>
</incremental>
<cumulative>
<verification-score>0.93</verification-score>
<device>cellular-phone</device>
<gender>male</gender>
<utterance-length>1522</utterance-length>
<need-more-data>true</need-more-data>
</cumulative>
</voiceprint>
</verification-result>
</result>
在這個(gè)示例中已經(jīng)有一個(gè)聲紋的確認ID:joebloggs.voiceprint。<incremental> 表示要針對前一個(gè)講話(huà)的分析結果來(lái)做進(jìn)一步處理。其他獨立的標簽表示設備類(lèi)型,說(shuō)話(huà)人性別等信息。<cumulative>中的值是針對說(shuō)話(huà)語(yǔ)音分析,這些語(yǔ)音分析數據是通過(guò)多個(gè)VERIFY或VERIFY-FROM-BUFFER請求獲得的累計的cumulatives cores值。<verification-score> 這里表示的是擬然值,同樣的說(shuō)話(huà)人說(shuō)過(guò)的所有同樣的句子。<utterance-length>表示訓練中所使用的所有語(yǔ)音長(cháng)度,它以毫秒為單位。<need-more-data>設置為true則表示需要更多數據來(lái)完成聲紋訓練,MRCP 客戶(hù)端可能需要從用戶(hù)側獲得更多的數據,因此要求發(fā)送更多的VERIFY 或VERIFY-FROM-BUFFER請求獲得支持數據。
現在,讓我們介紹一個(gè)關(guān)于驗證結果的示例。在START-SESSION請求中,我們在頭域Voiceprint-Identifier設定了一個(gè)單個(gè)的聲紋,我們期望獲得的單個(gè)聲紋NLSML返回結果,在結果中包含一個(gè)<voiceprint>。具體的xml 結果如下:
< xmlversion="1.0"encoding="UTF-8" ><resultxmlns="http://www.ietf.org/xml/ns/mrcpv2">
<verification-result>
<voiceprintid="joebloggs.voiceprint">
<incremental>
<verification-score>0.85</verification-score>
<device>carbon-button-phone</device>
<gender>male</gender>
<utterance-length>841</utterance-length>
</incremental>
<cumulative>
<verification-score>0.81</verification-score>
<device>carbon-button-phone</device>
<gender>male</gender>
<utterance-length>1619</utterance-length>
<decision>accepted</decision>
</cumulative>
</voiceprint>
</verification-result>
</result>
通過(guò)累計分析,這里的<decision>accepted</decision>表示說(shuō)話(huà)人語(yǔ)音資源已經(jīng)足夠匹配其中一個(gè)說(shuō)話(huà)的聲紋。
最后,我們再介紹一個(gè)如何確認從多個(gè)說(shuō)話(huà)人的聲紋中確認某個(gè)說(shuō)話(huà)人。這里,假設“JoeBloggs”是屬于我們前面例子中“MaryBloggs”和“TedBloggs”的成員。在START-SESSION 的請求中設定的Voiceprint-Identifier將會(huì )列出所有三個(gè)聲紋,然后生成NLSML結果,這個(gè)結果包含三個(gè)<voiceprint>要素:
< xml version="1.0" encoding="UTF-8" >
<result xmlns="http://www.ietf.org/xml/ns/mrcpv2">
<verification-result>
<voiceprint id="marybloggs.voiceprint">
<incremental>
<verification-score>0.85</verification-score>
<device>cellular-phone</device>
<gender>female</gender>
<utterance-length>842</utterance-length>
</incremental>
<cumulative>
<verification-score>0.85</verification-score>
<device>cellular-phone</device>
<gender>female</gender>
<utterance-length>842</utterance-length>
<decision>accepted</decision>
</cumulative>
</voiceprint>
<voiceprint id="tedbloggs.voiceprint">
<cumulative>
<verification-score>0.31</verification-score>
</cumulative>
</voiceprint>
<voiceprint id="joebloggs.voiceprint">
<cumulative>
<verification-score>0.29</verification-score>
</cumulative>
</voiceprint>
</verification-result>
</result>
這里的排序是按照<verification-score> 的值,從最大值到最小值的排序方式。說(shuō)話(huà)人語(yǔ)音和列表中的聲紋進(jìn)行對比,現在可以確認,說(shuō)話(huà)人是Mary Bloggs,而不是另外的人。
8、在本章節中,我們介紹了MRCP協(xié)議中的數據表達格式-自然語(yǔ)言語(yǔ)義標識語(yǔ)言(NLSML)。在具體的章節中,我們首先介紹了NLSML的背景知識,文件結構。然后介紹了NLSML的語(yǔ)音識別的結果輸出格式和其腳本(ECMAScript)的轉換機制以及語(yǔ)義對象,array等使用方式的內容。我們也介紹了通過(guò)用戶(hù)注冊的語(yǔ)法實(shí)現個(gè)人語(yǔ)法的NLSML結果以及如何使用在標準的語(yǔ)音識別引擎中。最后,我們介紹了關(guān)于如何驗證說(shuō)話(huà)人以及確認說(shuō)話(huà)人的方式,聲紋訓練。MRCP協(xié)議通過(guò)幾個(gè)不同的NLSML和聲紋資源輸出結果,和相應的最終<verification-score>值來(lái)判斷說(shuō)話(huà)人。
在接下來(lái)的章節中,我們會(huì )介紹MRCP數據呈現的最后一種語(yǔ)法格式-Pronunciation Lexicon Specification (PLS)。
參考資料:
https://www.w3.org/TR/semantic-interpretation/
https://www.nuance.com/content/dam/nuance/en_us/collateral/enterprise/data-sheet/ds-nuance-recognizer11-en-us.pdf



unimrcp-MRCP協(xié)議學(xué)習分享,QQ群號:208136295
關(guān)注微信公眾號: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