針對用戶操作指令的解析方法及裝置

針對用戶操作指令的解析方法及裝置

針對用戶操作指令的解析方法及裝置是由王世鎮 劉思葉 周志衡 發明開發。

本說明書實施例提供一種針對用戶操作指令的解析方法,該方法包括:先獲取對用戶輸入語音進行識別得到的輸入文本,并對其行分詞處理,得到分詞序列;再將該分詞序列中,與商品描述相關的若干分詞分別轉化為預定格式的標記符,得到混合序列;再獲取預先設定的語義模板集,其中每個語義模板包括多個語義描述符的預定組合排列,且對應于一種操作類型,多個語義描述符包括對應于標記符的組合的商品描述符;再基于語義模板集,對初始為混合序列的當前序列進行循環解析;其中任意一次循環解析包括,從當前序列頭部開始,截取出與某個語義模板匹配的序列部分,根據該某個語義模板對應的操作類型和該序列部分中的標記符,得到操作指令,并更新當前序列。

[0001] 本說明書實施例涉及計算機技術領域,具體地,涉及一種針對用戶操作指令的解析方法及裝置。

背景技術

[0002] 越來越多的行業利用人機交互系統,向用戶提供服務。例如,餐飲行業中利用語音點餐系統向用戶提供點餐服務,又例如,交通行業中利用智能售票系統向用戶提供票務服務。這些人機交互系統通常包括語音識別、自然語言理解、自然語言生成、語音合成等幾個主要的功能模塊,其中自然語言理解模塊是整個系統的核心部分,負責理解用戶輸入,解析用戶操作指令,如解析出用戶想在購物車中添加某一商品。

[0003] 然而,目前因自然語言理解模塊對用戶操作指令的解析能力有限,通常要求用戶按照較為簡短的、相對固定的句式進行語音輸入,使得用戶的輸入自由度和靈活度受到限制。

[0004] 因此,迫切需要一種合理、可靠的解析算法,可以支持不同用戶的復雜多變的輸入,同時精準地解析出用戶操作指令,從而提高用戶體驗。

內容

[0005] 本說明書中的一個或多個實施例提供一種針對用戶操作指令的解析方法,利用預先設定的語義模板集,對用戶輸入文本進行循環解析,從而實現從用戶復雜多變的個性化輸入中,精準、高效地解析出一個或多個用戶操作指令。

[0006] 第一方面,提供一種針對用戶操作指令的解析方法,該方法包括:獲取輸入文本,其對應于在提供第一服務的過程中接收的用戶語音輸入。對所述輸入文本進行分詞處理,得到多個分詞,組成分詞序列。將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞分別轉化為預定格式的標記符,得到包括分詞和標記符的混合序列。獲取預先設定的語義模板集,所述語義模板集包括對多個語義模板的第一定義,每個語義模板包括多個語義描述符的預定組合排列,且對應于一種操作類型;所述多個語義描述符包括對應于所述標記符的組合的商品描述符?;谒稣Z義模板集,對初始為所述混合序列的當前序列進行循環解析;其中任意一次循環解析包括,從當前序列頭部開始,截取出與所述多個語義模板中的某個語義模板匹配的序列部分,至少根據該某個語義模板對應的操作類型和該序列部分中對應于商品描述符的標記符組合,得到解析出的操作指令,并更新當前序列。

[0007] 在一個實施例中,所述第一服務為點餐服務或購物服務,在得到解析出的操作指令之后,所述方法還包括:基于所述操作指令,更新用戶的已點商品或購物車。

[0008] 在一個實施例中,獲取輸入文本,包括:獲取所述用戶語音輸入;對所述用戶語音輸入進行語音識別,得到所述輸入文本。

[0009] 在一個實施例中,所述標記符包括表示商品描述詞的第一標記符;將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞轉化為預定格式的標記符,包括:利用商品描述詞集合,對所述多個分詞進行匹配,得到若干匹配詞,其中商品描述詞集合基于所述第一服務中可提供的多種商品而預先確定;將所述分詞序列中的所述若干匹配詞分別轉化為所述第一標記符。

[0010] 在一個具體的實施例中,所述標記符還包括用于指示對單品描述中止的中止符;將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞轉化為預定格式的標記符,還包括:判斷所述分詞序列中相鄰的兩個分詞之間是否存在關聯;在判斷出所述兩個分詞之間不存在關聯的情況下,在所述兩個分詞對應的兩個第一標記符之間添加所述中止符;其中,所述商品描述符對應于若干第一標記符和所述中止符的組合。

[0011] 在一個更具體的實施例中,判斷所述兩個分詞之間是否存在關聯,包括:基于預先確定的對應于多種商品的多個商品描述詞子集,判斷所述兩個分詞是否存在于同一商品描述詞子集中;如果所述兩個分詞未存在于同一商品描述詞子集中,則判斷出所述兩個分詞之間不存在關聯。

[0012] 在另一個更具體的實施例中,判斷所述兩個分詞之間是否存在關聯,包括:基于預先建立的商品描述詞和描述類別標簽之間的映射關系,確定所述兩個分詞對應的兩個描述類別標簽;基于預先設定的標簽關聯規則,確定所述兩個描述類別標簽之間是否存在關聯;如果所述兩個描述類別標簽之間不存在關聯,則判斷出所述兩個分詞之間不存在關聯。

[0013] 在一個例子中,所述映射關系基于多個商品描述詞和多個描述類別標簽而預先建立,其中多個描述類別標簽包括以下中的至少一個:商品種類、商品屬性、商品常用名。

[0014] 在一個實施例中,所述多個語義描述符還包括以下中的至少一項:若干種操作類型描述符,數量描述符,單位描述符。

[0015] 在一個實施例中,所述語義模板集還包括對所述多個第二描述符的第二定義;所述從當前序列頭部開始,截取出與所述多個語義模板中的某個語義模板匹配的序列部分,包括:基于所述第二定義,從所述當前序列頭部開始,依次將各個分詞或標記符轉化為對應的語義描述符,使得轉化得到的第一語義描述符序列,與所述多個語義模板中的第一語義模板相匹配;將當前序列中與所述第一語義描述符序列對應的部分截取為所述序列部分。

[0016] 在一個具體的實施例中,基于所述第二定義,從所述當前序列頭部開始,依次將各個分詞或標記符轉化為對應的語義描述符,使得轉化得到的第一語義描述符序列,與所述多個語義模板中的第一語義模板相匹配,包括:基于所述第二定義,依次將所述當前序列中的分詞或標記符分別轉化為對應的若干備選語義描述符,從而得到多個語義描述符序列,該多個語義描述符序列與所述多個語義模板中的多個第二語義模板相匹配;基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列。

[0017] 在一個更具體的實施例中,基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列,包括:從所述多個分詞子序列中,確定出包含分詞數量最多的最長分詞子序列,并將其對應的語義描述符序列確定為所述第一語義描述符序列。

[0018] 在另一個更具體的實施例中,基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列,包括:將所述多個分詞子序列分別輸入預先訓練的關聯度預測模型中,得到多個預測關聯度;確定所述預測關聯度中的最大值,并將其對應的分詞子序列所對應的語義描述符序列,確定為所述第一語義描述符序列。

[0019] 在一個實施例中,至少根據該某個語義模板對應的操作類型和該序列部分中對應于商品描述符的標記符組合,得到解析出的操作指令,包括:至少根據所述標記符組合所對應的原始分詞,解析出商品信息;基于所述操作類型和所述商品信息,得到對應的操作指令。

[0020] 在一個具體的實施例中,所述多個語義描述符中還包括數量描述符;至少根據所述標記符組合所對應的原始分詞,解析出商品信息,還包括:根據該序列部分中包含的與數量描述符對應的原始分詞,確定商品數量,歸入所述商品信息。

[0021] 在一個實施例中,更新當前序列,包括:從所述當前序列中去除與所述某個語義模板匹配的序列部分,得到更新后的當前序列。

[0022] 根據第二方面,提供一種針對用戶操作指令的解析裝置,該裝置包括:文本獲取模塊,配置為獲取輸入文本,其對應于在提供第一服務的過程中接收的用戶語音輸入。文本分詞模塊,配置為對所述輸入文本進行分詞處理,得到多個分詞,組成分詞序列。序列轉化模塊,配置為將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞分別轉化為預定格式的標記符,得到包括分詞和標記符的混合序列。模板集獲取模塊,配置為獲取預先設定的語義模板集,所述語義模板集包括對多個語義模板的第一定義,每個語義模板包括多個語義描述符的預定組合排列,且對應于一種操作類型。所述多個語義描述符包括對應于所述標記符的組合的商品描述符;循環解析模塊,配置為基于所述語義模板集,對初始為所述混合序列的當前序列進行循環解析;其中循環解析模塊具體包括:序列匹配單元,配置為從當前序列頭部開始,截取出與所述多個語義模板中的某個語義模板匹配的序列部分;指令確定單元,配置為至少根據該某個語義模板對應的操作類型和該序列部分中對應于商品描述符的標記符組合,得到解析出的操作指令;序列更新單元,配置為更新當前序列。

[0023] 第三方面,提供一種計算機可讀存儲介質,其上存儲有計算機程序,當所述計算機程序在計算機中執行時,令計算機執行第一方面中提供的方法。

[0024] 第四方面,提供一種計算設備,包括存儲器和處理器,所述存儲器中存儲有可執行代碼,所述處理器執行所述可執行代碼時,實現第一方面中提供的方法。

[0025] 在本說明書中實施例披露的解析方法中,首先,獲取對用戶輸入語音進行識別得到的輸入文本,并對其行分詞處理,得到分詞序列;再將該分詞序列中,與商品描述相關的若干分詞分別轉化為預定格式的標記符,得到混合序列;接著,獲取預先設定的語義模板集,其中每個語義模板包括多個語義描述符的預定組合排列,且對應于一種操作類型,多個語義描述符包括對應于標記符的組合的商品描述符;再基于語義模板集,對初始為混合序列的當前序列進行循環解析;其中任意一次循環解析包括,從當前序列頭部開始,截取出與某個語義模板匹配的序列部分,根據該某個語義模板對應的操作類型和該序列部分中的標記符,得到操作指令,并更新當前序列。如此可以從復雜多變的用戶輸入中,全面、精準、高效地解析出用戶操作指令,使得用戶可以在人機交互中,靈活、自由地進行語音輸入,從而大大提高用戶體驗。

技術要求書

1.一種針對用戶操作指令的解析方法,包括:獲取輸入文本,其對應于在提供第一服務的過程中接收的用戶語音輸入;對所述輸入文本進行分詞處理,得到多個分詞,組成分詞序列;將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞分別轉化為預定格式的標記符,得到包括分詞和標記符的混合序列;獲取預先設定的語義模板集,所述語義模板集包括對多個語義模板的第一定義,每個語義模板包括多個語義描述符的預定組合排列,且對應于一種操作類型;所述多個語義描述符包括對應于所述標記符的組合的商品描述符;基于所述語義模板集,對初始為所述混合序列的當前序列進行循環解析;其中任意一次循環解析包括,從當前序列頭部開始,截取出與所述多個語義模板中的某個語義模板匹配的序列部分,至少根據該某個語義模板對應的操作類型和該序列部分中對應于商品描述符的標記符組合,得到解析出的操作指令,并更新當前序列。

2.根據權利要求1所述的方法,其中,所述第一服務為點餐服務或購物服務,在得到解析出的操作指令之后,所述方法還包括:基于所述操作指令,更新用戶的已點商品或購物車。

3.根據權利要求1所述的方法,其中,獲取輸入文本,包括:獲取所述用戶語音輸入;對所述用戶語音輸入進行語音識別,得到所述輸入文本。

4.根據權利要求1所述的方法,其中,所述標記符包括表示商品描述詞的第一標記符;將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞轉化為預定格式的標記符,包括:利用商品描述詞集合,對所述多個分詞進行匹配,得到若干匹配詞,其中商品描述詞集合基于所述第一服務中可提供的多種商品而預先確定;將所述分詞序列中的所述若干匹配詞分別轉化為所述第一標記符。

5.根據權利要求4所述的方法,其中,所述標記符還包括用于指示對單品描述中止的中止符;將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞轉化為預定格式的標記符,還包括:判斷所述分詞序列中相鄰的兩個分詞之間是否存在關聯;在判斷出所述兩個分詞之間不存在關聯的情況下,在所述兩個分詞對應的兩個第一標記符之間添加所述中止符;其中,所述商品描述符對應于若干第一標記符和所述中止符的組合。

6.根據權利要求5所述的方法,其中,判斷所述兩個分詞之間是否存在關聯,包括:基于預先確定的對應于多種商品的多個商品描述詞子集,判斷所述兩個分詞是否存在于同一商品描述詞子集中;如果所述兩個分詞未存在于同一商品描述詞子集中,則判斷出所述兩個分詞之間不存在關聯。

7.根據權利要求5所述的方法,其中,判斷所述兩個分詞之間是否存在關聯,包括:基于預先建立的商品描述詞和描述類別標簽之間的映射關系,確定所述兩個分詞對應的兩個描述類別標簽;基于預先設定的標簽關聯規則,確定所述兩個描述類別標簽之間是否存在關聯;如果所述兩個描述類別標簽之間不存在關聯,則判斷出所述兩個分詞之間不存在關聯。

8.根據權利要求7所述的方法,其中,所述映射關系基于多個商品描述詞和多個描述類別標簽而預先建立,其中多個描述類別標簽包括以下中的至少一個:商品種類、商品屬性、商品常用名。

9.根據權利要求1所述的方法,其中,所述多個語義描述符還包括以下中的至少一項:若干種操作類型描述符,數量描述符,單位描述符。

10.根據權利要求1所述的方法,其中,所述語義模板集還包括對所述多個第二描述符的第二定義;所述從當前序列頭部開始,截取出與所述多個語義模板中的某個語義模板匹配的序列部分,包括:基于所述第二定義,從所述當前序列頭部開始,依次將各個分詞或標記符轉化為對應的語義描述符,使得轉化得到的第一語義描述符序列,與所述多個語義模板中的第一語義模板相匹配;將當前序列中與所述第一語義描述符序列對應的部分截取為所述序列部分。

11.根據權利要求10所述的方法,其中,基于所述第二定義,從所述當前序列頭部開始,依次將各個分詞或標記符轉化為對應的語義描述符,使得轉化得到的第一語義描述符序列,與所述多個語義模板中的第一語義模板相匹配,包括:基于所述第二定義,依次將所述當前序列中的分詞或標記符分別轉化為對應的若干備選語義描述符,從而得到多個語義描述符序列,該多個語義描述符序列與所述多個語義模板中的多個第二語義模板相匹配;基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列。

12.根據權利要求11所述的方法,其中,基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列,包括:從所述多個分詞子序列中,確定出包含分詞數量最多的最長分詞子序列,并將其對應的語義描述符序列確定為所述第一語義描述符序列。

13.根據權利要求11所述的方法,其中,基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列,包括:將所述多個分詞子序列分別輸入預先訓練的關聯度預測模型中,得到多個預測關聯度;確定所述預測關聯度中的最大值,并將其對應的分詞子序列所對應的語義描述符序列,確定為所述第一語義描述符序列。

14.根據權利要求1所述得方法,其中,至少根據該某個語義模板對應的操作類型和該序列部分中對應于商品描述符的標記符組合,得到解析出的操作指令,包括:至少根據所述標記符組合所對應的原始分詞,解析出商品信息;基于所述操作類型和所述商品信息,得到對應的操作指令。

15.根據權利要求14所述的方法,其中,所述多個語義描述符中還包括數量描述符;至少根據所述標記符組合所對應的原始分詞,解析出商品信息,還包括:根據該序列部分中包含的與數量描述符對應的原始分詞,確定商品數量,歸入所述商品信息。

16.根據權利要求1所述的方法,其中,更新當前序列,包括:從所述當前序列中去除與所述某個語義模板匹配的序列部分,得到更新后的當前序列。

17.一種針對用戶操作指令的解析裝置,包括:文本獲取模塊,配置為獲取輸入文本,其對應于在提供第一服務的過程中接收的用戶語音輸入;文本分詞模塊,配置為對所述輸入文本進行分詞處理,得到多個分詞,組成分詞序列;序列轉化模塊,配置為將所述分詞序列中,與所述第一服務中的商品描述相關的若干分詞分別轉化為預定格式的標記符,得到包括分詞和標記符的混合序列;模板集獲取模塊,配置為獲取預先設定的語義模板集,所述語義模板集包括對多個語義模板的第一定義,每個語義模板包括多個語義描述符的預定組合排列,且對應于一種操作類型;所述多個語義描述符包括對應于所述標記符的組合的商品描述符;循環解析模塊,配置為基于所述語義模板集,對初始為所述混合序列的當前序列進行循環解析;其中循環解析模塊具體包括:序列匹配單元,配置為從當前序列頭部開始,截取出與所述多個語義模板中的某個語義模板匹配的序列部分;指令確定單元,配置為至少根據該某個語義模板對應的操作類型和該序列部分中對應于商品描述符的標記符組合,得到解析出的操作指令;序列更新單元,配置為更新當前序列。

18.根據權利要求17所述的裝置,其中,所述第一服務為點餐服務或購物服務,所述裝置還包括:購物車更新模塊,配置為基于所述操作指令,更新用戶的已點商品或購物車。

19.根據權利要求17所述的裝置,其中,文本獲取模塊具體配置為:獲取所述用戶語音輸入;對所述用戶語音輸入進行語音識別,得到所述輸入文本。20.根據權利要求17所述的裝置,其中,所述標記符包括表示商品描述詞的第一標記符;所述序列轉化模塊具體配置為:利用商品描述詞集合,對所述多個分詞進行匹配,得到若干匹配詞,其中商品描述詞集合基于所述第一服務中可提供的多種商品而預先確定;將所述分詞序列中的所述若干匹配詞分別轉化為所述第一標記符。21.根據權利要求20所述的裝置,其中,所述標記符還包括用于指示對單品描述中止的中止符;所述序列轉化模塊具體包括:關聯判斷單元,配置為判斷所述分詞序列中相鄰的兩個分詞之間是否存在關聯;中止符添加單元,配置為在判斷出所述兩個分詞之間不存在關聯的情況下,在所述兩個分詞對應的兩個第一標記符之間添加所述中止符;其中,所述商品描述符對應于若干第一標記符和所述中止符的組合。22.根據權利要求21所述的裝置,其中,所述關聯判斷單元具體配置為:基于預先確定的對應于多種商品的多個商品描述詞子集,判斷所述兩個分詞是否存在于同一商品描述詞子集中;如果所述兩個分詞未存在于同一商品描述詞子集中,則判斷出所述兩個分詞之間不存在關聯。23.根據權利要求21所述的裝置,其中,所述關聯判斷單元具體配置為:基于預先建立的商品描述詞和描述類別標簽之間的映射關系,確定所述兩個分詞對應的兩個描述類別標簽;基于預先設定的標簽關聯規則,確定所述兩個描述類別標簽之間是否存在關聯;如果所述兩個描述類別標簽之間不存在關聯,則判斷出所述兩個分詞之間不存在關聯。24.根據權利要求23所述的裝置,其中,所述映射關系基于多個商品描述詞和多個描述類別標簽而預先建立,其中多個描述類別標簽包括以下中的至少一個:商品種類、商品屬性、商品常用名。25.根據權利要求17所述的裝置,其中,所述多個語義描述符還包括以下中的至少一項:若干種操作類型描述符,數量描述符,單位描述符。26.根據權利要求17所述的裝置,其中,所述語義模板集還包括對所述多個第二描述符的第二定義;所述序列匹配單元具體配置為:基于所述第二定義,從所述當前序列頭部開始,依次將各個分詞或標記符轉化為對應的語義描述符,使得轉化得到的第一語義描述符序列,與所述多個語義模板中的第一語義模板相匹配;將當前序列中與所述第一語義描述符序列對應的部分截取為所述序列部分。27.根據權利要求26所述的裝置,其中,所述序列匹配單元具體包括:匹配子單元,配置為基于所述第二定義,依次將所述當前序列中的分詞或標記符分別轉化為對應的若干備選語義描述符,從而得到多個語義描述符序列,該多個語義描述符序列與所述多個語義模板中的多個第二語義模板相匹配;確定子單元,配置為基于所述多個語義描述符序列所對應的多個分詞子序列,從所述多個語義描述符序列中確定出所述第一語義描述符序列;截取子單元,配置為將當前序列中與所述第一語義描述符序列對應的部分截取為所述序列部分。28.根據權利要求27所述的裝置,其中,所述確定子單元具體配置為:從所述多個分詞子序列中,確定出包含分詞數量最多的最長分詞子序列,并將其對應的語義描述符序列確定為所述第一語義描述符序列。29.根據權利要求27所述的裝置,其中,所述確定子單元具體配置為:將所述多個分詞子序列分別輸入預先訓練的關聯度預測模型中,得到多個預測關聯度;確定所述預測關聯度中的最大值,并將其對應的分詞子序列所對應的語義描述符序列,確定為所述第一語義描述符序列。30.根據權利要求17所述得裝置,其中,指令確定單元具體包括:解析子單元,配置為至少根據所述標記符組合所對應的原始分詞,解析出商品信息;處理子單元,配置為基于所述操作類型和所述商品信息,得到對應的操作指令。31.根據權利要求30所述的裝置,其中,所述多個語義描述符中還包括數量描述符;所述解析子單元還配置為:根據該序列部分中包含的與數量描述符對應的原始分詞,確定商品數量,歸入所述商品信息。32.根據權利要求17所述的裝置,其中,所述序列更新單元具體配置為:從所述當前序列中去除與所述某個語義模板匹配的序列部分,得到更新后的當前序列。33.一種計算機可讀存儲介質,其上存儲有計算機程序,其中,當所述計算機程序在計算機中執行時,令計算機執行權利要求1-16中任一項的所述的方法。34.一種計算設備,包括存儲器和處理器,其中,所述存儲器中存儲有可執行代碼,所述處理器執行所述可執行代碼時,實現權利要求1-16中任一項所述的方法。

說明書附圖

圖1

圖2

圖3

圖4