專利名稱:語音處理方法、系統(tǒng)和終端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,并且更具體地,涉及一種語音處理方法、系統(tǒng)和終端。
背景技術(shù):
自然語言理解技術(shù)在手機(jī)上作為一種嶄新的人機(jī)交互方式,引發(fā)了人們廣泛的關(guān)注。目前有若干廠商推出了基于云的自然語言處理(Nature Language Process,簡稱“NLP”)服務(wù)。由于自然語言理解需要大量的語料積累,需要大量的用戶參與測試,所以,各廠商都推出了免費(fèi)的NLP服務(wù),通過免費(fèi)試用來搜集大量的真實(shí)的語料。同時(shí),各廠商的NLP側(cè)重也不同,例如Google側(cè)重搜索關(guān)鍵詞的理解。但是,在真實(shí)的自然語言交互中,用戶的談話往往會(huì)涉及到多個(gè)領(lǐng)域,例如在短信中包含約會(huì)地點(diǎn)。在很多情況,我們不能很容易的判斷出來當(dāng)前用戶和手機(jī)交互所處的領(lǐng)域。各個(gè)廠商側(cè)重的領(lǐng)域各不相同,例如,對(duì)于百度和谷歌分別對(duì)相同關(guān)鍵詞的搜索結(jié)果不同。因此,各個(gè)廠商對(duì)不匹配的領(lǐng)域的識(shí)別率會(huì)較低,用戶會(huì)感到答非所問。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種語音處理方法、系統(tǒng)和終端,能夠得到各種側(cè)重不同的搜索結(jié)果第一方面,提供了一種語音處理方法,包括將語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。結(jié)合第一方面,在第一方面的第一種可能的實(shí)現(xiàn)方式中,所述根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果,包括根據(jù)所述多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,以獲取所述每一個(gè)NLP引擎的本次識(shí)別得分;根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。結(jié)合第一方面的第一種可能的實(shí)現(xiàn)方式,在第一方面的第二種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序,包括根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式,在第一方面的第三種可能的實(shí)現(xiàn)方式中,所述確定所述一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序,包括根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),選擇來自于不同的NLP引擎的識(shí)別結(jié)果,并以按照引擎交叉排序的方式確定所述來自于不同的NLP引擎的識(shí)別結(jié)果的輸出次序。結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式或第三種可能的實(shí)現(xiàn)方式,在第一方面的第四種可能的實(shí)現(xiàn)方式中,所述方法還包括根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分,對(duì)所述每一個(gè)NLP引擎的歷史總得分進(jìn)行修正,以得到所述每一個(gè)NLP引擎的最新得分。結(jié)合第一方面的第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式或第四種可能的實(shí)現(xiàn)方式,在第一方面的第五種可能的實(shí)現(xiàn)方式中,所述方法還包括根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,對(duì)所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分進(jìn)行修正,以得到所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分。結(jié)合第一方面的第一種可能的實(shí)現(xiàn)方式、第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式、第四種可能的實(shí)現(xiàn)方式或第五種可能的實(shí)現(xiàn)方式,在第一方面的第六種可能的實(shí)現(xiàn)方式中,所述對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,包括根據(jù)所述每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分。結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式、第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式、第四種可能的實(shí)現(xiàn)方式、第五種可能的實(shí)現(xiàn)方式或第六種可能的實(shí)現(xiàn)方式,在第一方面的第七種可能的實(shí)現(xiàn)方式中,所述將語音發(fā)送至多個(gè)NLP引擎,包括通過代理服務(wù)器將所述語音發(fā)送至所述多個(gè)NLP引擎。結(jié)合第一方面、第一方面的第一種可能的實(shí)現(xiàn)方式、第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式、第四種可能的實(shí)現(xiàn)方式、第五種可能的實(shí)現(xiàn)方式、第六種可能的實(shí)現(xiàn)方式或第七種可能的實(shí)現(xiàn)方式,在第一方面的第八種可能的實(shí)現(xiàn)方式中,所述將語音發(fā)送至多個(gè)NLP引擎之前,所述方法還包括根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從所述NLP引擎集合中確定所述多個(gè)NLP引擎。第二方面,提供了一種終端,包括發(fā)送單元,用于將語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收單元,用于接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;第一確定單元,用于根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果;輸出單元,用于向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。結(jié)合第二方面,在第二方面的第一種可能的實(shí)現(xiàn)方式中,所述第一確定單元包括打分子單元,用于根據(jù)所述多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,以獲取所述每一個(gè)NLP引擎的本次識(shí)別得分;確定子單元,用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果的輸出次序。結(jié)合第二方面的第一種可能的實(shí)現(xiàn)方式,在第二方面的第二種可能的實(shí)現(xiàn)方式中,所述確定子單元具體用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果的輸出次序。結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式,在第二方面的第三種可能的實(shí)現(xiàn)方式中,所述確定子單元具體用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),選擇來自于不同NLP引擎的識(shí)別結(jié)果,以及以按照引擎交叉排序的方式確定所述來自于不同的NLP引擎的識(shí)別結(jié)果的輸出次序。結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式或第三種可能的實(shí)現(xiàn)方式,在第二方面的第四種可能的實(shí)現(xiàn)方式中,所述終端還包括第一修正單元,用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分,對(duì)所述每一個(gè)NLP引擎的歷史總得分進(jìn)行修正,以得到所述每一個(gè)NLP引擎的最新得分。結(jié)合第二方面的第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式或第四種可能的實(shí)現(xiàn)方式,在第二方面的第五種可能的實(shí)現(xiàn)方式中,所述終端還包括第二修正單元,用于根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,對(duì)所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分進(jìn)行修正,以得到所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分。結(jié)合第二方面的第一種可能的實(shí)現(xiàn)方式、第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式、第四種可能的實(shí)現(xiàn)方式或第五種可能的實(shí)現(xiàn)方式,在第二方面的第六種可能的實(shí)現(xiàn)方式中,所述打分子單元具體用于根據(jù)所述每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分。結(jié)合第二方面、第二方面的第一種可能的實(shí)現(xiàn)方式、第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式、第四種可能的實(shí)現(xiàn)方式、第五種可能的實(shí)現(xiàn)方式或第六種可能的實(shí)現(xiàn)方式,在第二方面的第七種可能的實(shí)現(xiàn)方式中,所述發(fā)送單元具體用于通過代理服務(wù)器將所述語音發(fā)送至所述多個(gè)NLP引擎。結(jié)合第二方面、第二方面的第一種可能的實(shí)現(xiàn)方式、第二種可能的實(shí)現(xiàn)方式、第三種可能的實(shí)現(xiàn)方式、第四種可能的實(shí)現(xiàn)方式、第五種可能的實(shí)現(xiàn)方式、第六種可能的實(shí)現(xiàn)方式或第七種可能的實(shí)現(xiàn)方式,在第二方面的第八種可能的實(shí)現(xiàn)方式中,所述終端還包括第二確定單元,用于根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從所述NLP引擎集合中確定所述多個(gè)NLP引擎。第三方面,提供了一種語音處理系統(tǒng),其特征在于,包括如第二方面或第二方面中任一種可能的實(shí)現(xiàn)方式中所述的終端;以及多個(gè)引擎,分別用于根據(jù)對(duì)所述終端發(fā)送的語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果,并將所述識(shí)別結(jié)果發(fā)送至所述終端。結(jié)合第三方面,在第三方面的第一種可能的實(shí)現(xiàn)方式中,所述語音處理系統(tǒng),還包括代理服務(wù)器,用于接收所述終端發(fā)送的語音,并將所述語音轉(zhuǎn)發(fā)至所述多個(gè)引擎。因此,在本發(fā)明實(shí)施例中,通過向語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果,可以使得多個(gè)NLP引擎為用戶的一段語音進(jìn)行處理,可以利用到多個(gè)廠商的技術(shù),從而可以得到各種側(cè)重不同的搜索結(jié)果。
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)本發(fā)明實(shí)施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1是根據(jù)本發(fā)明實(shí)施例的語言處理方法100的示意性流程圖。圖2是根據(jù)本發(fā)明實(shí)施例的終端的示意性框圖。圖3是根據(jù)本發(fā)明另一實(shí)施例的終端的示意性框圖。圖4是根據(jù)本發(fā)明另一實(shí)施例的終端的示意性框圖。圖5是根據(jù)本發(fā)明實(shí)施例的語音處理系統(tǒng)的示意性框圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明的一部分實(shí)施例,而不是全部實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都應(yīng)屬于本發(fā)明保護(hù)的范圍。本發(fā)明的技術(shù)方案,可以應(yīng)用于各種通信系統(tǒng),例如GSM,碼分多址(CDMA, CodeDivision Multiple Access)系統(tǒng),寬帶碼分多址(WCDMA, Wideband Code DivisionMultiple Access Wireless),通用分組無線業(yè)務(wù)(GPRS,General Packet Radio Service),長期演進(jìn)(LTE, Long Term Evolution)等。終端(Terminal),也可稱之為用戶設(shè)備(User Equipment,簡稱“UE”),可以經(jīng)無線接入網(wǎng)(例如,Radio Access Network,簡稱“RAN”)與一個(gè)或多個(gè)核心網(wǎng)進(jìn)行通信。圖1示出了根據(jù)本發(fā)明實(shí)施例的語音處理方法100的示意性流程圖。如圖1所示,該方法100包括S110,將語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)該語音進(jìn)行識(shí)另IJ,以獲取識(shí)別結(jié)果,其中,該語音可以為終端對(duì)用戶的話語進(jìn)行錄制而得到的一段錄音片段流;S120,接收來自于該多個(gè)NLP引擎的識(shí)別結(jié)果;S130,根據(jù)來自于該多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。
具體地說,終端在獲取了一個(gè)錄音片段流之后,可以將該一個(gè)錄音片段流發(fā)送至多個(gè)NLP引擎,其中,終端可以直接將該錄音片段流發(fā)送至多個(gè)NLP引擎,也可以通過代理服務(wù)器將該錄音片段流發(fā)送至多個(gè)NLP引擎;該多個(gè)NLP引擎中的每一個(gè)NLP引擎在收到終端發(fā)送的錄音片段流之后,可以對(duì)該錄音片段流進(jìn)行識(shí)別,并獲取一個(gè)或多個(gè)識(shí)別結(jié)果;終端在接收到來自于多個(gè)NLP引擎的識(shí)別結(jié)果之后,從該多個(gè)NLP引擎發(fā)送的識(shí)別結(jié)果中,選擇一個(gè)或多個(gè)識(shí)別結(jié)果向用戶輸出(例如,通過顯示器或揚(yáng)聲器向用戶輸出),以供用戶選擇,其中,向用戶輸出的識(shí)別結(jié)果可以來自于一個(gè)NLP引擎,也可以是來自于多個(gè)NLP引擎。在本發(fā)明實(shí)施例中,NLP引擎接收到終端發(fā)送的語音之后,可以對(duì)語音進(jìn)行識(shí)別,以獲取一個(gè)或多個(gè)識(shí)別結(jié)果,并對(duì)自己獲取的每一個(gè)識(shí)別結(jié)果進(jìn)行打分,NLP引擎在獲取到識(shí)別結(jié)果以及對(duì)每一個(gè)識(shí)別結(jié)果進(jìn)行打分之后,可以將獲取到的識(shí)別結(jié)果以及每一個(gè)識(shí)別結(jié)果的分?jǐn)?shù)發(fā)送給終端。在本發(fā)明實(shí)施例中,S130中根據(jù)來自于該多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果,可以包括根據(jù)該多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)該多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,獲取該每一個(gè)NLP引擎的本次識(shí)別得分;以及根據(jù)該每一個(gè)NLP引擎的本次識(shí)別得分以及該每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。在本發(fā)明實(shí)施例中,在接收到來自于多個(gè)NLP引擎中的每一個(gè)NLP引擎的識(shí)別結(jié)果之后,可以對(duì)該NLP引擎的本次識(shí)別進(jìn)行打分,其中,可以根據(jù)該每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)該多個(gè)NLP引擎中的每一個(gè)NLP引擎的本次識(shí)別進(jìn)行打分,然后,可以根據(jù)該每一個(gè)NLP引擎的本次識(shí)別得分以及該每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出該一個(gè)或多個(gè)識(shí)別結(jié)果。在本發(fā)明實(shí)施例中,可以將本次識(shí)別得分高的NLP引擎的所有識(shí)別結(jié)果排序在本次識(shí)別得分低的NLP引擎的所有識(shí)別結(jié)果的前面;也可以根據(jù)終端對(duì)NLP引擎的本次識(shí)別打的分以及根據(jù)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),交叉的向用戶輸出各個(gè)NLP引擎全部的識(shí)別結(jié)果或排序靠前的識(shí)別結(jié)果,例如,假設(shè)共有兩個(gè)NLP引擎,可以將此次識(shí)別得分為第一的NLP引擎的識(shí)別結(jié)果中分?jǐn)?shù)最高的識(shí)別結(jié)果排在第一位,將此次識(shí)別得分為第二的NLP引擎識(shí)別結(jié)果中分?jǐn)?shù)最高的識(shí)別結(jié)果排在第二位,將將此次識(shí)別得分為第一的NLP引擎的識(shí)別結(jié)果中分?jǐn)?shù)第二高的識(shí)別結(jié)果排在第三位,將此次識(shí)別得分為第二的NLP引擎識(shí)別結(jié)果中分?jǐn)?shù)第二高的識(shí)別結(jié)果排在第四位,依次類推,其中,各個(gè)識(shí)別結(jié)果的分?jǐn)?shù)是相應(yīng)的弓I擎提供的。本發(fā)明實(shí)施例中,在每次識(shí)別的打分過程中,響應(yīng)時(shí)間短的NLP引擎的分?jǐn)?shù)高于響應(yīng)時(shí)間短的NLP引擎的分?jǐn)?shù),給出的識(shí)別結(jié)果多的NLP引擎的分?jǐn)?shù)高于給出的識(shí)別結(jié)果少的NLP引擎的分?jǐn)?shù),給出的識(shí)別結(jié)果的離散程度高的NLP引擎的分?jǐn)?shù)高于給出的識(shí)別結(jié)果的離散程度低的NLP引擎的分?jǐn)?shù)。在本發(fā)明實(shí)施例中,如果考慮每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度中的多個(gè)因素,則可以為每一種因素設(shè)置一個(gè)分?jǐn)?shù)比例,例如,假設(shè)針對(duì)此次打分總分為10分,則響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少、識(shí)別結(jié)果的離散程度所占的分值可以分別為3分、3分和4分,當(dāng)然,也可以是別的比值,該分?jǐn)?shù)比值可以由用戶自己設(shè)定,例如,如果用戶比較看重響應(yīng)時(shí)間,則可以為響應(yīng)時(shí)間設(shè)定更高的分?jǐn)?shù)比值。在本發(fā)明實(shí)施例中,給出的識(shí)別結(jié)果的離散程度是指NLP引擎對(duì)其各自的識(shí)別結(jié)果所打的分?jǐn)?shù)的相近程度,其中,分?jǐn)?shù)越相近則離散程度越低,而分?jǐn)?shù)相差越遠(yuǎn)則離散程度較聞。在本發(fā)明實(shí)施例中,可以針對(duì)響應(yīng)時(shí)間設(shè)定一個(gè)閾值,如果某一 NLP引擎的響應(yīng)時(shí)間小于該閾值的話,可以將該NLP引擎的本次識(shí)別得分設(shè)定為正分,如果在該時(shí)間閾值到期的時(shí)候,還沒收到另一 NLP引擎的識(shí)別結(jié)果,則可以直接將該NLP引擎的本次識(shí)別得分設(shè)定為O分或負(fù)分,然后可以不等該另一NLP引擎發(fā)送識(shí)別結(jié)果,直接向用戶輸出已收到的NLP引擎的識(shí)別結(jié)果,如果后續(xù)再接收到該另一 NLP引擎的識(shí)別結(jié)果時(shí),則直接放棄該另一NLP引擎發(fā)送過來的識(shí)別結(jié)果,即意味著說,對(duì)某一 NLP引擎的本次識(shí)別的打分的過程可以在接收到該NLP引擎發(fā)送的識(shí)別結(jié)果之前進(jìn)行。從而,終端不用等到收到所有NLP引擎的識(shí)別結(jié)果后,再向用戶輸出識(shí)別結(jié)果,減少了用戶的等待時(shí)間。當(dāng)然,若設(shè)定了時(shí)間閾值,則可以根據(jù)時(shí)間閾值內(nèi)接收到的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的具體響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度對(duì)NLP引擎進(jìn)行打分。在本發(fā)明實(shí)施例中,終端在接收到來自于多個(gè)NLP引擎的識(shí)別結(jié)果,可以針對(duì)此次識(shí)別結(jié)果,根據(jù)接收到的識(shí)別結(jié)果對(duì)該多個(gè)NLP引擎中的每一個(gè)引擎進(jìn)行打分,然后,可以根據(jù)此次識(shí)別得分修正對(duì)應(yīng)的NLP引擎的歷史得分,例如,可以將此次識(shí)別打分累積到相應(yīng)的NLP引擎的歷史得分,然后根據(jù)每一個(gè)NLP引擎的最新得分以及該多個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),向該用戶輸出可供用戶選擇的識(shí)別結(jié)果。在本發(fā)明實(shí)施例中,可以將總得分高的NLP引擎的所有識(shí)別結(jié)果排序在總得分低的NLP引擎的所有識(shí)別結(jié)果的前面;也可以通過交叉排序各個(gè)NLP引擎的識(shí)別結(jié)果的方式向用戶輸出可供用戶選擇的識(shí)別結(jié)果,例如,假設(shè)共有兩個(gè)NLP引擎,可以將總得分為第一的NLP引擎的識(shí)別結(jié)果中分?jǐn)?shù)最高的識(shí)別結(jié)果排在第一位,將總得分為第二的NLP引擎識(shí)別結(jié)果中分?jǐn)?shù)最高的識(shí)別結(jié)果排在第二位,將將總得分為第一的NLP引擎的識(shí)別結(jié)果中分?jǐn)?shù)第二高的識(shí)別結(jié)果排在第三位,將總得分為第二的NLP引擎識(shí)別結(jié)果中分?jǐn)?shù)第二高的識(shí)別結(jié)果排在第四位,依次類推,其中,各個(gè)識(shí)別結(jié)果的分?jǐn)?shù)是相應(yīng)的弓I擎提供的。在本發(fā)明實(shí)施例中,也可以直接根據(jù)NLP引擎的此次識(shí)別得分、NLP引擎的歷史得分以及每一個(gè)引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù)直接選擇向用戶輸出的識(shí)別結(jié)果,而非通過對(duì)NLP引擎的歷史得分進(jìn)行修正,根據(jù)修正后的最新得分再向用戶輸出識(shí)別結(jié)果。例如,由于用戶的響應(yīng)時(shí)間超過預(yù)定閾值而在打分過程中直接將某一 NLP引擎的此次識(shí)別得分置為0,就算該NLP引擎的歷史得分很高,由于此次的識(shí)別結(jié)果得分較低,則可以直接放棄該NLP引擎的識(shí)別結(jié)果,或者由于某一 NLP引擎的離散程度過低,而使該NLP引擎的此次識(shí)別結(jié)果得分過低,就算該NLP引擎的歷史得分很高,也可以將該NLP引擎的識(shí)別結(jié)果排在所有NLP引擎的后面。其中,終端可以在選擇了需要輸出的識(shí)別結(jié)果之后,再對(duì)每一個(gè)NLP引擎的歷史得分進(jìn)行修正,以供后續(xù)使用。在本發(fā)明實(shí)施例中,可以只向用戶輸出最佳的識(shí)別結(jié)果,該最佳的識(shí)別結(jié)果可以是最新得分最高的NLP引擎中的具有最高的分?jǐn)?shù)的識(shí)別結(jié)果,在本發(fā)明實(shí)施例中,也可以按序輸出全部的識(shí)別結(jié)果,也可以按序輸出排序比較靠前位的識(shí)別結(jié)果。具體可以根據(jù)用戶自己的設(shè)定進(jìn)行識(shí)別結(jié)果的選擇輸出。在本發(fā)明實(shí)施例中,該方法100還可以包括根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,修正該輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分,以獲取該輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分。具體地說,如果輸出的是一個(gè)識(shí)別結(jié)果,用戶可以針對(duì)該識(shí)別結(jié)果向終端輸入自己的滿意度或者是否接受該識(shí)別結(jié)果,然后,終端可以根據(jù)針對(duì)該識(shí)別結(jié)果的選擇輸入,修正該輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分以得到最新得分,例如,用戶接受該識(shí)別結(jié)果,則可以為該識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎進(jìn)行加分,如果用戶拒絕該識(shí)別結(jié)果,可以為該識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎進(jìn)行減分。如果向用戶輸出的是多個(gè)識(shí)別結(jié)果,則可以對(duì)該用戶最終選擇使用識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎進(jìn)行加分,而對(duì)其它NLP引擎進(jìn)行減分或者不加分。在本發(fā)明實(shí)施例中,如圖3所示,在SllO中將語音發(fā)送至多個(gè)NLP引擎之前,該方法100還包括S150,根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從該NLP引擎集合中確定該多個(gè)NLP引擎。具體地說,終端可以根據(jù)NLP引擎集合中的每一個(gè)NLP引擎的歷史得分,選擇將要進(jìn)行語音識(shí)別的NLP引擎,例如,可以選擇歷史得分排在前兩位的NLP引擎或者選擇歷史得分高于預(yù)定閾值的NLP引擎。因此,在本發(fā)明實(shí)施例中,通過向?qū)⒄Z音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果并用用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果,可以使得多個(gè)NLP引擎為用戶的一段語音進(jìn)行處理,可以利用到多個(gè)廠商的技術(shù),從而可以得到各種側(cè)重不同的搜索結(jié)果。更進(jìn)一步地,通過對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,根據(jù)所述每一個(gè)NLP引擎的所得的本次識(shí)別得分以及每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),向所述用戶輸出可供用戶選擇的識(shí)別結(jié)果,可以實(shí)現(xiàn)對(duì)引擎的篩選,做到優(yōu)中選優(yōu)。以上已結(jié)合圖1描述了根據(jù)本發(fā)明實(shí)施例的語音處理方法,以下將結(jié)合圖2至圖4描述根據(jù)本發(fā)明實(shí)施例的終端。圖2是根據(jù)本發(fā)明實(shí)施例的終端200的示意性框圖。如圖2所示,該終端200包括發(fā)送單元210,用于將語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收單元220,用于接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;第一確定單元230,用于根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果;輸出單元240,向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。可選地,如圖3所示,所述第一確定單元230包括打分子單元232,用于根據(jù)所述多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,以獲取所述每一個(gè)NLP引擎的本次識(shí)別得分;確定子單元236,用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序??蛇x地,所述確定子單元236具體用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。可選地,所述確定子單元236具體用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定一個(gè)最佳的識(shí)別結(jié)果,以及所述輸出單元240,具體用于向所述用戶輸出所述一個(gè)最佳的識(shí)別結(jié)果;或者,所述確定子單元236,具體用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),選擇來自于不同的NLP引擎的識(shí)別結(jié)果,以及按照引擎交叉排序的方式確定所述來自于不同的NLP引擎的識(shí)別結(jié)果的輸出次序??蛇x地,如圖3所示,所述終端200還包括第一修正單元250,用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分,對(duì)所述每一個(gè)NLP引擎的歷史總得分進(jìn)行修正,以得到所述每一個(gè)NLP引擎的最新得分??蛇x地,如圖4所示,所述終端200還包括第二修正單元260,用于根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,對(duì)所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分進(jìn)行修正,以得到所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分??蛇x地,所述打分子單元232具體用于根據(jù)所述每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分??蛇x地,所述發(fā)送單元210具體用于通過代理服務(wù)器將所述語音發(fā)送至所述多個(gè)NLP引擎??蛇x地,如圖3所示,所述終端200還包括第二確定單元270,用于根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從所述NLP引擎集合中確定所述多個(gè)NLP引擎。應(yīng)理解,根據(jù)本發(fā)明實(shí)施例的終端200可對(duì)應(yīng)于本發(fā)明實(shí)施例中的語音處理方法100中的終端,并且終端200中的各個(gè)單元的上述和其它操作和/或功能分別為了實(shí)現(xiàn)圖1的方法100的相應(yīng)流程,為了簡潔,在此不再贅述。因此,在本發(fā)明實(shí)施例中,通過向語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,選擇一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果,可以使得多個(gè)NLP引擎為用戶的一段語音進(jìn)行處理,可以利用到多個(gè)廠商的技術(shù),從而可以得到各種側(cè)重不同的搜索結(jié)果。更進(jìn)一步地,通過對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,根據(jù)所述每一個(gè)NLP引擎的所得的本次識(shí)別得分以及每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),向所述用戶輸出可供用戶選擇的識(shí)別結(jié)果,可以實(shí)現(xiàn)對(duì)引擎的篩選,做到優(yōu)中選優(yōu)。圖4是根據(jù)本發(fā)明實(shí)施例的終端300的示意性框圖。如圖4所示,該終端300包括存儲(chǔ)器310、接收器320、發(fā)送器330、處理器340、總線350,輸出裝置360,其中,存儲(chǔ)器310、接收器320、發(fā)送器330、處理器340和輸出裝置360通過總線350連接。其中,存儲(chǔ)器310存儲(chǔ)一組程序代碼,且處理器330用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,執(zhí)行以下操作將語音通過發(fā)送器330發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;通過接收器320接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果,通過輸出裝置360向用戶輸出該一個(gè)或多個(gè)識(shí)別結(jié)果。例如,通過顯示器將該一個(gè)或多個(gè)識(shí)別結(jié)果呈現(xiàn)給用戶,或通過揚(yáng)聲器將該一個(gè)或多個(gè)識(shí)別結(jié)果提供給用戶??蛇x地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,具體執(zhí)行以下操作根據(jù)所述多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,以獲取所述每一個(gè)NLP引擎的本次識(shí)別得分;根據(jù)所述每一個(gè)NLP弓I擎的本次識(shí)別得分以及所述每一個(gè)NLP弓I擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定該一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。可選地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,具體執(zhí)行以下操作根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定該一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序??蛇x地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,具體執(zhí)行以下操作根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定一個(gè)最佳的識(shí)別結(jié)果,并通過輸出裝置360向所述用戶輸出該最佳的識(shí)別結(jié)果;或者根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),選擇來自于不同的NLP引擎的識(shí)別結(jié)果,并以按照引擎交叉排序的方式確定所述自于不同的NLP引擎的識(shí)別結(jié)果的輸出次序。可選地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,還執(zhí)行以下操作根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分,對(duì)所述每一個(gè)NLP引擎的歷史總得分進(jìn)行修正,以得到所述每一個(gè)NLP引擎的最新得分??蛇x地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,還執(zhí)行以下操作根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,對(duì)所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分進(jìn)行修正,以得到所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分。可選地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,具體執(zhí)行以下操作根據(jù)所述每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分??蛇x地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,具體執(zhí)行以下操作
通過代理服務(wù)器將所述語音發(fā)送至所述多個(gè)NLP引擎??蛇x地,處理器340用于調(diào)用存儲(chǔ)器310存儲(chǔ)的程序代碼,還執(zhí)行以下操作根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從所述NLP引擎集合中確定所述多個(gè)NLP引擎。應(yīng)理解,根據(jù)本發(fā)明實(shí)施例的終端300可對(duì)應(yīng)于本發(fā)明實(shí)施例中的語音處理方法100中的終端,并且終端300中的各個(gè)單元的上述和其它操作和/或功能分別為了實(shí)現(xiàn)圖1的方法100的相應(yīng)流程,為了簡潔,在此不再贅述。因此,在本發(fā)明實(shí)施例中,通過向?qū)⒄Z音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,向用戶輸出可供用戶選擇的識(shí)別結(jié)果,可以使得多個(gè)NLP引擎為用戶的一段語音進(jìn)行處理,可以利用到多個(gè)廠商的技術(shù),從而可以得到各種側(cè)重不同的搜索結(jié)果。更進(jìn)一步地,通過對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,根據(jù)所述每一個(gè)NLP引擎的所得的本次識(shí)別得分以及每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),向所述用戶輸出可供用戶選擇的識(shí)別結(jié)果,可以實(shí)現(xiàn)對(duì)引擎的篩選,做到優(yōu)中選優(yōu)。圖5是根據(jù)本發(fā)明實(shí)施例的語音處理系統(tǒng)400的示意性框圖。如圖5所示,該系統(tǒng)400包括終端410,以及多個(gè)引擎420。所述終端410,用于將語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果,并向用戶輸出該一個(gè)或多個(gè)識(shí)別結(jié)果。所述多個(gè)NLP引擎420,分別用于根據(jù)對(duì)所述終端發(fā)送的語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果,并將獲取的識(shí)別結(jié)果發(fā)送至所述終端。可選地,如圖5所示,該系統(tǒng)400還包括代理服務(wù)器430,用于接收所述終端發(fā)送的語音,并將所述語音轉(zhuǎn)發(fā)至所述多個(gè)引擎。應(yīng)理解,根據(jù)本發(fā)明實(shí)施例的終端410可對(duì)應(yīng)于本發(fā)明實(shí)施例中的終端200或300,為了簡潔,在此不再贅述。還應(yīng)理解,雖然圖中示出了三個(gè)NLP引擎,但發(fā)明實(shí)施例并不限定NLP引擎的個(gè)數(shù),只要本發(fā)明實(shí)施例的語音處理系統(tǒng)包括兩個(gè)或兩個(gè)以上的引擎即可。因此,在本發(fā)明實(shí)施例中,通過向?qū)⒄Z音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,向用戶輸出可供用戶選擇的識(shí)別結(jié)果,可以使得多個(gè)NLP引擎為用戶的一段語音進(jìn)行處理,可以利用到多個(gè)廠商的技術(shù),從而可以得到各種側(cè)重不同的搜索結(jié)果。更進(jìn)一步地,通過對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,根據(jù)所述每一個(gè)NLP引擎的所得的本次識(shí)別得分以及每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定一個(gè)或多個(gè)識(shí)別結(jié)果,并向用戶輸出該一個(gè)或多個(gè)識(shí)別結(jié)果,可以實(shí)現(xiàn)對(duì)引擎的篩選,做到優(yōu)中選優(yōu)。本領(lǐng)域普通技術(shù)人員可以意識(shí)到,結(jié)合本文中所公開的實(shí)施例中描述的各方法步驟和單元,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各實(shí)施例的步驟及組成。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。本領(lǐng)域普通技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。結(jié)合本文中所公開的實(shí)施例描述的方法或步驟可以用硬件、處理器執(zhí)行的軟件程序,或者二者的結(jié)合來實(shí)施。軟件程序可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM),電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。盡管通過參考附圖并結(jié)合優(yōu)選實(shí)施例的方式對(duì)本發(fā)明進(jìn)行了詳細(xì)描述,但本發(fā)明并不限于此。在不脫離本發(fā)明的精神和實(shí)質(zhì)的前提下,本領(lǐng)域普通技術(shù)人員可以對(duì)本發(fā)明的實(shí)施例進(jìn)行各種等效的修改或替換,而這些修改或替換都應(yīng)在本發(fā)明的涵蓋范圍內(nèi)。
權(quán)利要求
1.一種語音處理方法,其特征在于,包括: 將語音發(fā)送至多個(gè)自然語言處理NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果; 接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果; 根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果,并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。
2.根據(jù)權(quán)利要求1所述的語音處理方法,其特征在于,所述根據(jù)來自于所述多個(gè)NLP弓丨擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果,包括: 根據(jù)所述多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,以獲取所述每一個(gè)NLP引擎的本次識(shí)別得分; 根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。
3.根據(jù)權(quán)利要求2所述的語音處理方法,其特征在于,所述根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序,包括: 根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。
4.根據(jù)權(quán)利要求3所述的語音處理方法,其特征在于,所述確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序,包括: 根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),選擇來自于不同的NLP引擎的識(shí)別結(jié)果,以及按照引擎交叉排序的方式確定所述來自于不同的NLP引擎的識(shí)別結(jié)果的輸出次序。
5.根據(jù)權(quán)利要求3或4所述的語音處理方法,其特征在于,所述方法還包括: 根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分,對(duì)所述每一個(gè)NLP引擎的歷史總得分進(jìn)行修正,以得到所述每一個(gè)NLP引擎的最新得分;或 根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,對(duì)所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分進(jìn)行修正,以得到所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分。
6.根據(jù)權(quán)利要求2至5中任一項(xiàng)所述的語音處理方法,其特征在于,所述對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,包括: 根據(jù)所述每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分。
7.根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的語音處理方法,其特征在于,所述將語音發(fā)送至多個(gè)NLP引擎之前,所述方法還包括: 根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從所述NLP引擎集合中確定所述多個(gè)NLP引擎。
8.—種終端,其特征在于,包括: 發(fā)送單元,用于將語音發(fā)送至多個(gè)自然語言處理NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果; 接收單元,用于接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果; 第一確定單元,用于根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果; 輸出單元,用于向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。
9.根據(jù)權(quán)利要求8所述的終端,其特征在于,所述第一確定單元包括: 打分子單元,用于根據(jù)所述多個(gè)NLP引擎的識(shí)別結(jié)果,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分,以獲取所述每一個(gè)NLP引擎的本次識(shí)別得分; 確定子單元,用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。
10.根據(jù)權(quán)利要求9所述的終端,其特征在于,所述確定子單元具體用于: 根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),確定所述一個(gè)或多個(gè)識(shí)別結(jié)果以及輸出次序。
11.根據(jù)權(quán)利要求10所述的終端,其特征在于, 所述確定子單元,具體用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分、所述每一個(gè)NLP引擎的歷史得分以及所述每一個(gè)NLP引擎針對(duì)各自的每一個(gè)識(shí)別結(jié)果所提供的分?jǐn)?shù),選擇來自于不同的NLP引擎的識(shí)別結(jié)果,以及按照引擎交叉排序的方式確定所述來自于不同的NLP引擎的識(shí)別結(jié)果的輸出次序。
12.根據(jù)權(quán)利要求10或11所述的終端,其特征在于,所述終端還包括: 第一修正單元,用于根據(jù)所述每一個(gè)NLP引擎的本次識(shí)別得分,對(duì)所述每一個(gè)NLP引擎的歷史總得分進(jìn)行修正,以得到所述每一個(gè)NLP引擎的最新得分;或 第二修正單元,用于根據(jù)用戶針對(duì)輸出的識(shí)別結(jié)果的選擇輸入,對(duì)所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的歷史得分進(jìn)行修正,以得到所述輸出的識(shí)別結(jié)果對(duì)應(yīng)的NLP引擎的最新得分。
13.根據(jù)權(quán)利要求8至12中任一項(xiàng)所述的終端,所述打分子單元具體用于: 根據(jù)所述每一個(gè)NLP引擎的響應(yīng)時(shí)間、給出的識(shí)別結(jié)果的多少或識(shí)別結(jié)果的離散程度,對(duì)所述多個(gè)NLP引擎中的每一個(gè)NLP引擎進(jìn)行打分。
14.根據(jù)權(quán)利要求10至17中任一項(xiàng)所述的終端,其特征在于,所述終端還包括: 第二確定單元,用于根據(jù)NLP引擎集合中每一個(gè)NLP引擎的歷史得分,從所述NLP引擎集合中確定所述多個(gè)NLP引擎。
15.一種語音處理系統(tǒng),其特征在于,包括:如權(quán)利要求10至18中任一項(xiàng)所述的終端; 以及多個(gè)引擎,分別用于根據(jù)對(duì)所述終端發(fā)送的語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果,并將所述識(shí)別結(jié)果發(fā)送至所述終端。
全文摘要
本發(fā)明實(shí)施例提供了一種語音處理方法、系統(tǒng)和終端。該方法包括將語音發(fā)送至多個(gè)NLP引擎,以使所述多個(gè)NLP引擎分別對(duì)所述語音進(jìn)行識(shí)別,以獲取識(shí)別結(jié)果;接收來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果;根據(jù)來自于所述多個(gè)NLP引擎的識(shí)別結(jié)果,確定一個(gè)或多個(gè)識(shí)別結(jié)果并向用戶輸出所述一個(gè)或多個(gè)識(shí)別結(jié)果。本發(fā)明實(shí)施例的語音處理方法、系統(tǒng)和終端可以使得多個(gè)NLP引擎為用戶的一段語音進(jìn)行處理,可以利用到多個(gè)廠商的技術(shù),從而可以得到各種側(cè)重不同的搜索結(jié)果。
文檔編號(hào)G10L15/34GK103077718SQ201310007210
公開日2013年5月1日 申請(qǐng)日期2013年1月9日 優(yōu)先權(quán)日2013年1月9日
發(fā)明者樊艷梅, 蔣洪睿 申請(qǐng)人:華為終端有限公司