IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッドの特許一覧

特表2022-531987音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体
<>
  • 特表-音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体 図1
  • 特表-音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体 図2
  • 特表-音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体 図3
  • 特表-音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体 図4
  • 特表-音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体 図5
  • 特表-音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-07-12
(54)【発明の名称】音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体
(51)【国際特許分類】
   G10L 15/22 20060101AFI20220705BHJP
   G10L 15/16 20060101ALI20220705BHJP
【FI】
G10L15/22 300Z
G10L15/16
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021571465
(86)(22)【出願日】2020-09-17
(85)【翻訳文提出日】2021-12-07
(86)【国際出願番号】 CN2020116018
(87)【国際公開番号】W WO2021164244
(87)【国際公開日】2021-08-26
(31)【優先権主張番号】202010099574.4
(32)【優先日】2020-02-18
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】ワン、ハイフェン
(72)【発明者】
【氏名】フアン、ジジョウ
(57)【要約】
本開示は、人工知能の分野に関する音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体を開示する。具体的な実現案は、ユーザが入力した第1の音声命令に対して音声認識とニーズ解析を行い、ニーズ解析に失敗した場合、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得し、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返し、前記ユーザが前記ニーズ表現のうちの少なくとも一つを決定する第2の音声命令が受信された場合、前記ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行う。本開示は、ユーザのインタラクション効率を効果的に向上させ、ユーザ体験を向上させることができる。
【選択図】図2
【特許請求の範囲】
【請求項1】
音声インタラクション方法であって、
ユーザが入力した第1の音声命令に対して音声認識とニーズ解析を行うステップと、
ニーズ解析に失敗した場合、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得するステップと、
前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップと、
前記ユーザが前記ニーズ表現のうちの少なくとも一つを決定する第2の音声命令が受信された場合、前記ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行うステップと、を含む、
音声インタラクション方法。
【請求項2】
ニーズ解析に成功した場合、前記第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行うステップをさらに含む、
請求項1に記載の音声インタラクション方法。
【請求項3】
前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得するステップは、
前記第1の音声命令を予めトレーニングされたニーズ予測モデルに入力するステップを含み、前記ニーズ予測モデルは前記第1の音声命令を少なくとも一つのニーズ表現にマッピングする、
請求項1に記載の音声インタラクション方法。
【請求項4】
前記ニーズ予測モデルは、
トレーニングデータを取得することであって、前記トレーニングデータは複数の語句ペアを含み、前記語句ペアは第1の語句と第2の語句を含み、第2の語句はニーズ解析に成功できるものであることと、
前記トレーニングデータを使用してシーケンスからシーケンスまでのSeq2Seqモデルをトレーニングして、前記ニーズ予測モデルを取得することであって、語句ペアのうちの第1の語句を前記Seq2Seqモデルの入力とし、第2の語句を前記Seq2Seqモデルのターゲット出力とすることとにより、予めトレーニングして取得する、
請求項3に記載の音声インタラクション方法。
【請求項5】
前記トレーニングデータはテキスト検索ログから取得し、
テキスト検索要求queryを第1の語句とし、queryに対応するクリックされた検索結果を使用して第2の語句を取得し、前記第1の語句と前記第2の語句が語句ペアを構成し、第2の語句の信頼度は第1の語句をqueryとする時の前記第2の語句のクリック回数によって決定される、
請求項4に記載の音声インタラクション方法。
【請求項6】
前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップは、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が最も高いニーズ表現を第1のニーズ表現とするステップと、
前記第1のニーズ表現を問い合わせの形式で前記ユーザに返すステップと、を含む、
請求項3に記載の音声インタラクション方法。
【請求項7】
前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップは、
前記ユーザが前記第1のニーズ表現を否定する第3の音声命令が受信された場合、前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が次に高いニーズ表現を第2のニーズ表現とするステップと、
第2のニーズ表現を問い合わせの形式で前記ユーザに返すステップと、をさらに含む、
請求項6に記載の音声インタラクション方法。
【請求項8】
前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップは、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が上位N(Nは予め設定された正の整数である)個のニーズ表現を、問い合わせの形式で前記ユーザに返すステップを含む、
請求項3に記載の音声インタラクション方法。
【請求項9】
前記ニーズ解析に失敗した原因を分析し、前記問い合わせに前記ニーズ解析に失敗した原因をさらに携帯させるステップをさらに含む、
請求項1、6および8のいずれか一つに記載の音声インタラクション方法。
【請求項10】
前記ニーズ解析に失敗した原因は、
環境ノイズ、前記第1の音声命令の長さが制限を超えること、前記第1の音声命令の発音不正確、または前記第1の音声命令の口語化を含む、
請求項9に記載の音声インタラクション方法。
【請求項11】
音声インタラクション装置であって、
ユーザが入力した第1の音声命令を受信するための音声インタラクションユニットと、
前記第1の音声命令に対して音声認識とニーズ解析を行うための音声処理ユニットと、
前記ニーズ解析に失敗した場合、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得するためのニーズ予測ユニットと、
前記音声インタラクションユニットが前記ユーザが前記ニーズ表現のうちの少なくとも一つを決定する第2の音声命令が受信された場合、前記ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行うためのサービス応答ユニットと、を含み、
前記音声インタラクションユニットは、さらに、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すために用いられる、
音声インタラクション装置。
【請求項12】
前記サービス応答ユニットは、さらに、ニーズ解析に成功した場合、前記第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行うために用いられる、
請求項11に記載の音声インタラクション装置。
【請求項13】
前記ニーズ予測ユニットは、具体的には、前記第1の音声命令を予めトレーニングされたニーズ予測モデルに入力し、前記ニーズ予測モデルは前記第1の音声命令を少なくとも一つのニーズ表現にマッピングする、
請求項11に記載の音声インタラクション装置。
【請求項14】
トレーニングデータを取得することであって、前記トレーニングデータは複数の語句ペアを含み、前記語句ペアは第1の語句と第2の語句を含み、第2の語句はニーズ解析に成功できるものであることと、
前記トレーニングデータを使用してSeq2Seqモデルをトレーニングして、前記ニーズ予測モデルを取得することであって、語句ペアのうちの第1の語句を前記Seq2Seqモデルの入力とし、第2の語句を前記Seq2Seqモデルのターゲット出力とすることと、に用いられるモデルトレーニングユニットをさらに含む、
請求項13に記載の音声インタラクション装置。
【請求項15】
前記音声インタラクションユニットは、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す時、具体的に、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が最も高いニーズ表現を第1のニーズ表現とし、
前記第1のニーズ表現を問い合わせの形式で前記ユーザに返すことを実行する、
請求項13に記載の音声インタラクション装置。
【請求項16】
前記音声インタラクションユニットは、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す時、さらに、
前記ユーザが前記第1のニーズ表現を否定する第3の音声命令が受信された場合、前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が次に高いニーズ表現を第2のニーズ表現とし、
第2のニーズ表現を問い合わせの形式で前記ユーザに返すために用いられる、
請求項15に記載の音声インタラクション装置。
【請求項17】
前記音声インタラクションユニットは、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す時、具体的に、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が上位N(Nは予め設定された正の整数である)個のニーズ表現を、問い合わせの形式で前記ユーザに返すことを実行する、
請求項13に記載の音声インタラクション装置。
【請求項18】
前記ニーズ解析に失敗した原因を分析し、前記問い合わせに前記ニーズ解析に失敗した原因をさらに携帯させるための原因分析ユニットをさらに含む、
請求項11、15および17のいずれか一つに記載の音声インタラクション装置。
【請求項19】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが請求項1~10のいずれかの一つに記載の音声インタラクション方法を実行する、
電子機器。
【請求項20】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、コンピュータに請求項1~10のいずれかの一つに記載の音声インタラクション方法を実行させる、
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項21】
コンピュータに請求項1~10のいずれかの一つに記載の音声インタラクション方法を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
[優先権情報]
本開示は、出願日が2020年02月18日であり、出願番号が2020100995744であり、発明の名称が「音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体」である中国特許出願の優先権を主張する。
【0002】
本開示はコンピュータアプリケーション技術の分野に関し、特に人工知能の分野の音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体に関する。
【背景技術】
【0003】
この部分は特許請求の範囲に記載された本発明の実施形態のために背景またはコンテキストを提供することを意図する。ここでの説明はこの部分に含まれても、従来の技術に見なされない。
【0004】
音声インタラクション技術の継続的な発展に伴い、ユーザはスマートスピーカー、スマートフォンなどの端末デバイスと音声インタラクションを行うことができる。端末デバイスのオペレーティングシステムに搭載される音声アシスタント以外にも、ますます多くのアプリケーションは音声インタラクション技術を搭載する。ユーザは音声命令を入力することによって対応するサービスを取得することができるため、手を大幅に解放することができる。
【0005】
既存の音声インタラクションシナリオでは、ユーザが入力した音声命令に対して音声認識とニーズ理解を行った後、ユーザのニーズがよく理解できない場合、ユーザに以下の二つの音声応答を返すことができる。
【0006】
1)例えば「すみません、しばらく何を言っているか理解できません」のような、ユーザのニーズを理解できない結果を返す。
【0007】
2)例えば「すみません、もっと簡単な言い方を変更してみてください」のような、ユーザに音声命令を変更することを提示する結果をユーザに返す。
【0008】
しかし、上記のどのような音声応答がいずれもユーザに悪い体験を与え、ユーザは音声アシスタントのインテリジェント程度が悪いと感じ、さらに、入力の音声命令を繰り返し変換する必要があり、ユーザのインタラクション効率にとっても、非常に低い。
【発明の概要】
【発明が解決しようとする課題】
【0009】
これを考慮して、本開示はユーザのインタラクション効率を向上させ、ユーザ体験を向上させるために音声インタラクション方法、装置、機器、及びコンピュータ記憶媒体を提供する。
【課題を解決するための手段】
【0010】
第1の態様において、本開示は音声インタラクション方法を提供し、当該方法は、
ユーザが入力した第1の音声命令に対して音声認識とニーズ解析を行うステップと、
ニーズ解析に失敗した場合、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得するステップと、
前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップと、
前記ユーザが前記ニーズ表現のうちの少なくとも一つを決定する第2の音声命令を受信した場合、前記ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行うステップと、を含む。
【0011】
本開示の好ましい実施形態によれば、当該方法は、
ニーズ解析に成功した場合、前記第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行うステップをさらに含む。
【0012】
本開示の好ましい実施形態によれば、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得するステップは、
前記第1の音声命令を予めトレーニングされたニーズ予測モデルに入力することを含み、前記ニーズ予測モデルは前記第1の音声命令を少なくとも一つのニーズ表現にマッピングする。
【0013】
本開示の好ましい実施形態によれば、前記ニーズ予測モデルは、
トレーニングデータを取得し、前記トレーニングデータは複数の語句ペアを含み、前記語句ペアは第1の語句と第2の語句を含み、第2の語句はニーズ解析に成功できるものであり、
前記トレーニングデータを使用してシーケンスからシーケンスまでのSeq2Seqモデルをトレーニングして、前記ニーズ予測モデルを取得し、語句ペアのうちの第1の語句は前記Seq2Seqモデルの入力とし、第2の語句は前記Seq2Seqモデルのターゲット出力とする方式を使用して予めトレーニングして取得する。
【0014】
本開示の好ましい実施形態によれば、前記トレーニングデータはテキスト検索ログから取得し、
テキスト検索要求queryを第1の語句とし、queryに対応するクリックされた検索結果を使用して第2の語句を取得し、前記第1の語句と前記第2の語句が語句ペアを構成し、第2の語句の信頼度は第1の語句をqueryとする時の前記第2の語句のクリック回数によって決定される。
【0015】
本開示の好ましい実施形態によれば、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップは、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が最も高いニーズ表現を前記第1のニーズ表現とするステップと、
前記第1のニーズ表現を問い合わせの形式で前記ユーザに返すステップと、を含む。
【0016】
本開示の好ましい実施形態によれば、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップは、
前記ユーザが前記第1のニーズ表現を否定する第3の音声命令が受信された場合、前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が次に高いニーズ表現を第2のニーズ表現とするステップと、
第2のニーズ表現を問い合わせの形式で前記ユーザに返すステップと、をさらに含む。
【0017】
本開示の好ましい実施形態によれば、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すステップは、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が上位N個のニーズ表現を、問い合わせの形式で前記ユーザに返すステップを含み、前記Nは予め設定された正の整数である。
【0018】
本開示の好ましい実施形態によれば、当該方法は、
前記ニーズ解析に失敗した原因を分析し、前記問い合わせに前記ニーズ解析に失敗した原因をさらに携帯するステップをさらに含む。
【0019】
本開示の好ましい実施形態によれば、前記ニーズ解析に失敗した原因は、
環境ノイズ、前記第1の音声命令の長さが制限を超えること、前記第1の音声命令の発音不正確、または前記第1の音声命令の口語化を含む。
【0020】
第2の態様において、本開示は音声インタラクション装置を提供し、当該装置は、
ユーザが入力した第1の音声命令を受信するための音声インタラクションユニットと、
前記第1の音声命令に対して音声認識とニーズ解析を行うための音声処理ユニットと、
前記ニーズ解析に失敗した場合、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得するためのニーズ予測ユニットと、
前記音声インタラクションユニットが前記ユーザが前記ニーズ表現のうちの少なくとも一つを決定する第2の音声命令が受信された場合、前記ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行うためのサービス応答ユニットと、を含み、
前記音声インタラクションユニットは、さらに、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返すために用いられる。
【0021】
本開示の好ましい実施形態によれば、前記サービス応答ユニットは、さらに、ニーズ解析に成功した場合、前記第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行うために用いられる。
【0022】
本開示の好ましい実施形態によれば、前記ニーズ予測ユニットは、具体的には、前記第1の音声命令を予めトレーニングされたニーズ予測モデルに入力し、前記ニーズ予測モデルは前記第1の音声命令を少なくとも一つのニーズ表現にマッピングする。
【0023】
本開示の好ましい実施形態によれば、当該装置は、モデルトレーニングユニットをさらに含み、
モデルトレーニングユニットは、
トレーニングデータを取得し前記トレーニングデータは複数の語句ペアを含み、前記語句ペアは第1の語句と第2の語句を含み、第2の語句はニーズ解析に成功できるものであり、
前記トレーニングデータを使用してSeq2Seqモデルをトレーニングして、前記ニーズ予測モデルを取得し、語句ペアのうちの第1の語句を前記Seq2Seqモデルの入力とし、第2の語句を前記Seq2Seqモデルのターゲット出力とするために用いられる。
【0024】
本開示の好ましい実施形態によれば、前記音声インタラクションユニットは、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す時、具体的に、
前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が最も高いニーズ表現を前記第1のニーズ表現とし、
前記第1のニーズ表現を問い合わせの形式で前記ユーザに返すことを実行する。
【0025】
本開示の好ましい実施形態によれば、前記音声インタラクションユニットは、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す時、さらに、
前記ユーザが前記第1のニーズ表現を否定する第3の音声命令が受信された場合、前記ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現の中で信頼度が次に高いニーズ表現を第2のニーズ表現とし、
第2のニーズ表現を問い合わせの形式で前記ユーザに返すために用いられる。
【0026】
本開示の好ましい実施形態によれば、前記音声インタラクションユニットは、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す時、具体的には、
前記ニーズ予測モデルによってマッピングされて取得した少なくとも一つのニーズ表現の中で信頼度が上位N個のニーズ表現を、問い合わせの形式で前記ユーザに返すことを実行し、前記Nは予め設定された正の整数である。
【0027】
本開示の好ましい実施形態によれば、当該装置は、
前記ニーズ解析に失敗した原因を分析し、前記問い合わせに前記ニーズ解析に失敗した原因をさらに携帯させるための原因分析ユニットをさらに含む。
【0028】
第3の態様において、本開示は電子機器を提供し、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが上記に記載の方法を実行する。
【0029】
第4の態様において、本開示はコンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、前記コンピュータに上記に記載の方法を実行させる。
【0030】
上記の技術案から分かるように、本開示は、ユーザが入力した音声命令に対するニーズ解析に失敗した後、さらに、音声命令に対してニーズ予測を行うことができ、ユーザが言ったことを理解できないことを簡単に通知するのではなく、ユーザの可能なニーズ表現を「推測」してユーザに返して確認するため、ユーザのインタラクション効率を向上させ、ユーザ体験を向上させる。
【0031】
上記選択可能な方式が有する他の効果は、以下で具体的な実施例を併せて説明する。
【図面の簡単な説明】
【0032】
図面は、本開示をより良く理解するためのものであり、本開示を限定しない。
図1】本発明の実施例の音声インタラクション方法または音声インタラクション装置に適用可能な例示的なシステムアーキテクチャである。
図2】本開示の実施例1により提供される音声インタラクション方法のフローチャートである。
図3】本開示の実施例2により提供される音声インタラクション方法のフローチャートである。
図4】本開示の実施例3により提供される音声インタラクション方法のフローチャートである。
図5】本開示の実施例4により提供される音声インタラクション装置の構成図である。
図6】本開示の実施例の音声インタラクション方法を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0033】
以下、図面に基づいて、本開示の例示の実施例を表現する。理解を容易にするために、本開示の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本開示の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び修正を行うことができることを認識するはずである。同様に、簡明のために、以下の表現では、よく知られた機能と構造の表現は省略される。
【0034】
図1は、本発明の実施例の音声インタラクション方法または音声インタラクション装置に適用可能な例示的なシステムアーキテクチャである。
【0035】
図1に示すように、当該システムアーキテクチャは端末デバイス101及び102、ネットワーク103、及びサーバ104を含むことができる。ネットワーク103は端末デバイス101、102とサーバ104との間で通信リンクを提供する媒体として使用される。ネットワーク103は有線、無線通信リンクまたは光ファイバケーブルなどのような、様々な接続タイプを含むことができる。
【0036】
ユーザは端末デバイス101及び102を使用してネットワーク103を介してサーバ104とインタラクションすることができる。端末デバイス101及び102には、音声インタラクションアプリケーション、ウェブブラウザアプリケーション、通信アプリケーションなど、様々なアプリケーションがインストールされている。
【0037】
端末デバイス101及び102は音声インタラクションをサポートする様々な電子機器であってもよく、スクリーンを備えたデバイスであってもよく、スクリーンを備えていないデバイスであってもよい。スマートフォン、タブレット、スマートスピーカー、スマートテレビなどが含まれるが、これらに限定されない。本発明により提供される音声インタラクション装置は、上記のサーバ104に設置して実行することができ、処理機能が強い端末デバイス101及び102に設置して実行することもできる。複数のソフトウェアまたはソフトウェアモジュール(例えば、分散サービスを提供するために)として実現することができ、単一のソフトウェアまたはソフトウェアモジュールとして実現することもでき、ここでは具体的に限定しない。
【0038】
例えば、音声インタラクション装置は上記のサーバ104に設置して実行し、端末デバイス101はユーザが入力した音声命令をネットワーク103を介してサーバ104に送信する。サーバ104は、本発明の実施例により提供される方法を使用して処理した後、処理結果を端末デバイス101に返し、さらに、端末デバイス101によってユーザに提供して、ユーザとの間の音声インタラクションを実現する。
【0039】
サーバ104は、単一のサーバであってもよく、複数のサーバによって構成されるサーバグループであってもよい。図1の端末デバイス、ネットワーク及びサーバの数は単なる例示的なものであることを理解することができる。実現ニーズに応じて、任意の数を有する端末デバイス、ネットワーク及びサーバであってもよい。
【0040】
従来の音声インタラクションシナリオでは、ユーザが入力した音声命令に対して音声認識とニーズ解析を行った後、ニーズ解析に失敗した場合、ユーザのニーズが理解できない結果をユーザに返すことができ、またはユーザに音声命令を変更することを提示する結果をユーザに返すことができる。例えば以下の音声インタラクションシナリオでは、
シナリオ1、
ユーザ:私を助けて、私から子供に授乳できる最も近い場所を一つ探してくれるか、子供が腹が空いて、お願いします。
【0041】
音声アシスタント:すみません、XX(例えば、バイドゥの小度(xiaodu)、シャオミの小愛(xiaoai)、アリババの天猫精霊(Tmall Genie)など、音声アシスタントの名前を表示する)しばらく何を言っているか理解できません。
【0042】
このようなシナリオでは、ユーザはこの音声アシスタントが本当に馬鹿で、全然スマートではないと思うことになる。
【0043】
シナリオ2、
ユーザ:私を助けて、私から子供に授乳できる最も近い場所を一つ探してくれるか、子供が腹が空いて、お願いします。
【0044】
音声アシスタント:すみません、XXはしばらくあなたが言ったことが理解できない、簡単な言い方に変えて試してください。
【0045】
ユーザ:私は子供に授乳できる私から最も近い場所を探す必要があります。
【0046】
音声アシスタント:すみません、XXはしばらくあなたが言ったことが理解できない、簡単な言い方に変えて試してください。
【0047】
このようなシナリオでは、ユーザが何度も試したり、言い方を変えたりすることによって、音声アシスタントはまだユーザのニーズを理解できず、ユーザは簡単に忍耐力を失う。このようなインタラクション方式はユーザにとって、明らかに効率が非常に低く、ユーザ体験も非常に悪い。
【0048】
これを考慮して、本開示のコアアイデアは、ユーザが入力した音声命令に対して音声認識とニーズ解析を行った後、ニーズ解析に失敗した場合、さらに、音声命令に対してニーズ予測を行うことができ、ユーザが言ったことを理解できないことを簡単に通知するのではなく、ユーザの可能なニーズ表現を「推測」してユーザに返して確認する。以下、実施例を組み合わせて本開示により提供される方法に対して詳細に説明する。
【実施例1】
【0049】
図2は本開示の実施例1により提供される音声インタラクション方法のフローチャートである。図2に示すように、当該方法は以下のステップを含むことができる。
【0050】
201では、ユーザが入力した第1の音声命令に対して音声認識とニーズ解析を行う。
【0051】
当該第1の音声命令はユーザが音声アシスタントをウェイクアップした後、入力された最初の音声命令であってもよい。ある特定のシナリオで入力した音声命令であってもよい。
【0052】
本開示の音声命令に関する「第1」、「第2」、「第3」など、例えば「第1の音声命令」、「第2の音声命令」、及び「第3の音声命令」について、順序、数量、及び名称上の制約はなく、異なる音声命令を区別するためにのみ使用される。
【0053】
ユーザが入力した第1の音声命令に対して、まず、音声認識を行う。音声認識によって取得されたテキストを取得した後、ニーズ解析を行う。当該ニーズ解析の目的は、主に、ユーザの具体的なニーズ(意図とも呼ばれることができる)を理解し、構造化情報を取得して、ユーザに正確なサービスを提供する。具体的なニーズ解析方式と解析結果は、具体的な垂直系サービスに関連することができる。この部分の内容は、既存の技術を使用することができ、ここでは詳しく説明しない。一例だけを挙げると、
ユーザが第1の音声命令:「西二旗から出発して南鑼鼓巷を経由して北京駅までの渋滞しないルートを計画してください」を入力したと仮定し、音声認識とニーズ解析の後、取得された解析結果は、
「意図:ルート計画
走行方式:運転
出発点:西二旗
目的地:北京駅
パスポイント:南鑼鼓巷
選別条件:渋滞しない」。
【0054】
202では、ニーズ解析に失敗した場合、前記第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得する。
【0055】
しかし、ニーズ解析を行う場合、様々な原因でニーズ解析に失敗する可能性があり、すなわちユーザのニーズタイプ、構造化情報などを正確に取得できない。この場合、本開示はユーザ解析が失敗したと簡単に通知することではなく、第1の音声命令に対してニーズ予測を行って、すなわちユーザのニーズを推測し、予測された少なくとも一つのニーズ表現をユーザに返す。
【0056】
203では、前記ニーズ表現のうちの少なくとも一つを問い合わせの形式で前記ユーザに返す。
【0057】
204では、前記ユーザが前記ニーズ表現のうちの少なくとも一つを決定する第2の音声命令を受信した場合、前記ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行う。
【0058】
本開示では様々な実現方式を使用することができ、例えば、複数ラウンドのインタラクションの方式を使用して一つのニーズ表現を毎回ユーザに返し、次に、一般的な質問文の方式を使用してユーザに問い合わせることができ、その中の一つのニーズ表現に対する決定が取得された場合、当該決定のニーズ表現に対応するニーズ解析結果を使用してサービス応答を行う。否定的な回答が取得された場合、次のラウンドで一般的な質問文の方式を使用して一つのニーズ表現をユーザに返し続けて、予め設定されたインタラクションラウンドの最大数に達するまで、順次に類推する。この方式は後に実施例2において詳細に説明する。
【0059】
また、例えば、毎回複数のニーズ表現をユーザに返すこともでき、次に、質問文を選択する方式を採用してユーザに問い合わせる。ユーザがその中の一つのニーズ表現を選択した場合、ユーザが選択したニーズ表現に対応するニーズ解析結果に従ってサービス応答を行う。この方式は後に実施例3において詳細に説明する。
【実施例2】
【0060】
図3は本開示の実施例2により提供される音声インタラクション方法のフローチャートである。図3に示すように、当該方法は以下のステップを含むことができる。
【0061】
301では、ユーザが入力した第1の音声命令に対して音声認識とニーズ解析を行い、ニーズ解析に成功した場合、302を実行し、ニーズ解析に失敗した場合、303を実行する。
【0062】
302では、第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行い、今回の音声インタラクションプロセスを終了する。
【0063】
直接にユーザが入力した第1の音声命令に対してニーズ解析を行って成功することができる場合、直接にニーズ解析結果を使用してサービス応答をすればよく、複数ラウンドのインタラクションを行う必要がない。
【0064】
303では、第1の音声命令を予めトレーニングされたニーズ予測モデルに入力し、当該ニーズ予測モデルは第1の音声命令を少なくとも一つのニーズ表現にマッピングし、その中の信頼度が最も高いニーズ表現を第1のニーズ表現とする。
【0065】
ユーザが入力した第1の音声命令に対してニーズ解析を行って失敗した場合、第1の音声命令に対してニーズ予測を行う。本開示の実施例では、予めトレーニングされたニーズ予測モデルを使用してニーズ予測を行うことができる。当該ニーズ予測モデルは第1の音声命令を様々な第1の音声命令に近いニーズ表現にマッピングすることができ、第1の音声命令が表すユーザのニーズに対して「推測」することができる。ニーズ予測モデルによってマッピングされた少なくとも一つのニーズ表現はいずれも信頼度を有し、当該信頼度は第1の音声命令に対応するニーズの正確さの度合いを予測できるのを表す。
【0066】
理解を容易にするために、ここでは、ニーズ予測モデルのトレーニングプロセスに対して一つの好ましい実施形態を挙げて説明する。音声インタラクションの限界を考慮すると、一方では、ユーザに様々な検索結果を非常に一般化して返すことができず、他方では、返された検索結果数量が多くなく、通常、ユーザのニーズが明確した場合のみ、ニーズに対応するいくつかの検索結果を返すことができる。テキスト検索にとって、この点の限界がない。ユーザがテキスト検索要求queryを入力しただけで、類似度に基づいて配列して数量がより多く検索結果をユーザに返し、ユーザは多くの検索結果から自分のニーズの内容を探し、クリックして垂直系サービスをさらに取得することができる。本開示の実施例では、テキスト検索ログの内容を根拠とし、その中からユーザのqueryに対応するニーズ表現を抽出することができる。すなわち、テキスト検索ログからトレーニングデータを取得してニーズ予測モデルをトレーニングすることができる。
【0067】
具体的には、ニーズ予測モデルのトレーニングプロセスは以下のステップを含むことができる。
【0068】
ステップS1、トレーニングデータを取得し、当該トレーニングデータは多数の語句ペアを含み、各語句ペアはいずれも第1の語句と第2の語句の二つの語句を含み、第2の語句はニーズ解析に成功することが可能であり、つまり、第2の語句で採用する表現はニーズ解析後にニーズを明確できる表現である。
【0069】
ステップS2、トレーニングデータSeq2Seq(シーケンスからシーケンスまでのトレーニング)モデルを使用して、ニーズ予測モデルを取得し、語句ペアのうちの第1の語句はSeq2Seqモデルの入力とし、第2の語句はSeq2Seqモデルのターゲット出力とする。
【0070】
好ましい実施形態として、まず、テキスト検索ログからトレーニングデータを取得することができる。もちろん、テキスト検索ログからトレーニングデータを取得する以外に、トレーニングデータを人工的に構成する方式ように、他の方式を採用することもできる。本開示ではテキスト検索ログからトレーニングデータを取得するだけを例として詳細に説明する。
【0071】
テキスト検索ログでは、ユーザが入力したテキスト検索要求、すなわちqueryを第1の語句とし、queryに対応するクリックされた検索結果を使用して第2の語句を取得し、第1の語句と第2の語句は語句ペアを構成し、第2の語句の信頼度は第1の語句をqueryとする時の第2の語句のクリック回数によって決定されることができる。
【0072】
通常、ユーザがテキスト検索を行う場合、queryを入力した後に多数の検索結果から自分のニーズの検索結果を検索することができる。そうすると、ユーザがクリックした検索結果は、ある程度でユーザのニーズに合致した検索結果と認められる。また、クリックが多ければ多いほど、当該検索結果がユーザのニーズに合致したことを説明し、さらに、ユーザが当該検索結果に関連するサービスを要求して取得した場合、当該検索結果はユーザのニーズにさらに合致する。
【0073】
クリックされた検索結果を使用して第2の語句を取得する時、当該第2の語句は、検索結果のタイトルから抽出することができ、検索結果の内容から取得することもできる。具体的な取得方式は具体的なアプリケーションに関連することができる。以下、地図系アプリケーションを例を挙げて、ユーザが地図系アプリケーションにテキスト検索要求「近くで子供に授乳できる場所」を入力したと仮定すると、ユーザに返される多数検索結果はいずれもPOI(Point Of IntereSt、興味点)であり、例えば返されるPOIは、以下のPOI1~POI3を含む。
POI1:ママ愛萌宝ベビー&マタニティ用品店
POI2:貝愛貝親産後ケアセンター
POI3:ヨーロッパとアメリカショッピングセンター
【0074】
ユーザがその中のPOI3をクリックしたと仮定し、当該POIのカテゴリ、またはPOIのカテゴリ及び当該POIの属性ラベルを使用して第2の語句を構成することができる。例えば、「ヨーロッパとアメリカショッピングセンター」のPOIカテゴリが「ショッピングセンター」であり、属性ラベルは「母子室がある」を含み、そうすると、「母子室があるショッピングセンター」を第2の語句として取得することができ、それは第1の語句「近くで子供に授乳できる場所」と一つの語句ペアを構成する。
【0075】
類似する方式を採用して、以下のような語句ペア及び信頼度を取得することができると仮定する。
【表1】
【0076】
信頼度が予め設定された信頼度閾値より低い語句ペアをフィルタリングした後、POIのカテゴリ及び当該POIの属性ラベルによって構成される第2の語句を優先的に選択する。取得された語句ペア及び信頼度をトレーニングデータとし、その中の第1の語句をSeq2Seqモデルの入力とし、第2の語句及びその信頼度をSeq2Seqモデルの出力とすることができる。トレーニングデータを取得するSeq2Seqモデルは、一つのeNcoder(エンコーダ)-decoder(デコーダ)入力が一つのシーケンスであり、出力も一つのシーケンスである。eNcoderは一つの可変長の入力シーケンスを固定長のベクトルに変換し、decoderはこの固定長のベクトルを可変長の出力シーケンスにデコードし、トレーニング時に最尤推定の方式を採用することができる。
【0077】
また、上記の方式によって決定された語句ペアを正のサンプルとし、queryとクリックされなかった検索結果から取得された第2の語句によって構成された語句ペアを負のサンプルとし、Seq2Seqモデルのトレーニングを行うこともできる。トレーニング目標は、正のサンプル内の第2の語句の信頼度と負のサンプル内の第2の語句の信頼度の差値を最大化することである。
【0078】
もちろん、Seq2Seqモデルをトレーニングしてニーズ予測モデルを取得する方式を採用する以外に、他の方式を採用してニーズ予測モデルを実現することもできる。例えば、ニーズマッピングテーブルを人工的に構築する方式、すなわち一つの語句を入力とし、ニーズマッピングテーブルを照会することで少なくとも一つのマッピングの語句を出力として取得することができる。
【0079】
ニーズ予測モデルによってマッピングされて取得した少なくとも一つのニーズ表現について、本実施例では、信頼度が最も高いニーズ表現を第1のニーズ表現とし、まず、ユーザに返すために用いられる。本開示ではニーズ表現に関する「第1」、「第2」など、例えば、「第1のニーズ表現」、「第2のニーズ表現」については、順序、数量、及び名称上の制約を備えず、異なるニーズ表現を区別するためにのみ使用される。
【0080】
ユーザが第1の音声命令「私を助けて、私から子供に授乳できる一つの最も近い場所を探してくれるか、子供が腹が空いて、お願いします」を入力したのを例とし、何らかの原因でニーズ解析に失敗した後に、それをニーズ予測モデルに入力し、ニーズ予測モデルが第1の音声命令をマッピングした後に取得された各ニーズ表現及びそれに対応する信頼度はそれぞれ以下のようである。
母子室があるショッピングセンター 0.92
産後ケアセンター 0.81
ベビー&マタニティ店 0.68
……
【0081】
「母子室があるショッピングセンター」を予め設定されたテンプレートと組み合わせて「あなたから一番近い母子室があるショッピングセンターを探す」を第1のニーズ表現として取得する。その中、「あなたから一番近いのを探す」は予め設定されたテンプレートであり、目的はニーズ表現をよりスムーズに、会話術に合うようにするためであるが、予め設定されたテンプレートを追加しなくても同様に可能である。
【0082】
304では、第1のニーズ表現を問い合わせの形式でユーザに返す。
【0083】
本実施例では、一般的な質問文の形式を採用して第1のニーズ表現をユーザに返すことができ、これにより、ユーザが「はい/いいえ」、「YES/NO」、「必要/不要」、「可/不可」、「正しい/違い」などの簡単の音声を回答すればよい。
【0084】
さらに、ユーザが今回なぜニーズ解析に失敗したのを明確に通知し、ユーザの焦慮及び戸惑いを軽減し、ユーザ体験を向上させるために、本開示の実施例では、ニーズ解析失敗の原因を分析することができ、上記の問い合わせではニーズ解析失敗の原因をさらに携帯することができる。
【0085】
ニーズ解析失敗の原因を分析するのは以下の処理の一つまたは任意の組み合わせを含むことができるが、これらに限定しない。
【0086】
第1の処理:音声認識時に、ユーザが第1の音声命令を入力した背景に対してノイズ検出を行い、ノイズが強い場合について、音声認識段階に影響を与えることによって、後のニーズ解析に失敗する。
【0087】
第2の処理:音声認識プロセスで発音の検出を行って、ユーザの発音が正確であるか否かを検出する。発音が不正確である場合について、同様に音声認識段階に影響を与えることによって、後のニーズ解析に失敗する。
【0088】
第3の処理:第1の音声命令の音声認識結果に対してテキスト長さの検出を行う。長すぎる語句について、通常、ニーズ解析に不利な影響を与えることができ、例えば、語義分析を行う時に長い語句の語義を分析することが難しくなり、ニーズ解析に失敗する。
【0089】
第4の処理:第1の音声命令の音声認識結果に対して口語化検出を行う。口語化すぎる表現の語句について、語義分析に不利な影響を与えることができ、ニーズ解析に失敗する。
【0090】
他の処理方式が存在する可能性もあり、ここでは一々網羅しない。
【0091】
上記のいくつかの処理方式に対応して、取得されたニーズ解析失敗の原因は、例えば、環境ノイズ、第1の音声命令の発音不正確、第1の音声命令の長さが制限を超えること、第1の音声命令が口語化すぎ、第1の音声命令が一般化すぎなどを含むことができる。
【0092】
また、問い合わせ時に予め設定されたテンプレートを使用して一般的な質問文を形成することもでき、例えば、「あなたのために検索する必要がありますか?」、「あなたのために検索する必要があるか否か」、「……そうですか」などである。
【0093】
上記の例に続き、ユーザが入力した第1の音声命令:「私を助けて、私から子供に授乳できる一つの最も近い場所を探してくれるか、子供が腹が空いて、お願いします」について、音声アシスタントは「あなたが入力した語句は広く、XXはよく聞き取れません。あなたから一番近い母子室があるショッピングセンターを探しますか」を返すことができる。
【0094】
305では、ユーザが第1のニーズ表現に対する音声命令を受信し、ユーザが上記の第1のニーズ表現を決定する第2の音声命令を受信した場合、306を実行し、ユーザが上記の第1のニーズ表現を否定する第3の音声命令を受信した場合、307を実行する。
【0095】
実施例では、ユーザは第1のニーズ表現に対する決定または否定の応答のみを行う必要がある。
【0096】
306では、第1のニーズ表現に対応するニーズ解析結果を使用してサービス応答を行い、今回の音声インタラクションプロセスを終了する。
【0097】
上記の例に続き、第1のニーズ表現は信頼度が最も高いニーズ表現であるため、ユーザが「あなたが入力した語句は広く、XXはよく聞き取れません。あなたから一番近い母子室があるショッピングセンターを探しますか」に対する大きな確率は決定され、ユーザが応答した第2の音声命令が当該第1のニーズ表現を決定する場合、第1のニーズ表現に対するニーズ解析結果は、
「意図:情報の検索
出発点:現在位置
検索語:ショッピングセンター
選別条件:母子室があり、一番近い距離」
【0098】
検索した後、距離が一番近い母子室があるショッピングセンターをユーザに返す。
【0099】
307では、ニーズ予測モデルによってマッピングされて取得した信頼度が次に高いニーズ表現を第2のニーズ表現とし、第2のニーズ表現を問い合わせの形式でユーザに返す。
【0100】
上記の例に続き、ユーザが「あなたが入力した語句は広く、XXはよく聞き取れません。あなたから一番近い母子室があるショッピングセンターを探しますか」に対して、返されるのが第3の音声命令「いいえ」である場合、「あなたから一番近い産後ケアセンターを探しますか」をユーザに返すことができる。
【0101】
308では、ユーザが第2のニーズ表現に対する音声命令を受信し、ユーザが上記の第2のニーズ表現を決定する第2の音声命令を受信した場合、309を実行し、ユーザが上記の第2のニーズ表現を否定する第3の音声命令を受信した場合、310を実行する。
【0102】
309では、第2のニーズ表現に対応するニーズ解析結果を使用してサービス応答を行い、今回の音声インタラクションプロセスを終了する。
【0103】
310では、予め設定されたインタラクションラウンドの最大数(予め設定されたインタラクションラウンドの最大数が2ラウンドであると仮定する)に達し、ニーズ理解に失敗した結果をユーザに返す。
【0104】
ユーザが依然として第2のニーズ表現が否定であり、予め設定されたインタラクションラウンドの最大数が2であり、既にインタラクションラウンドの最大数に達した場合、例えば"あなたのニーズを理解していません"など、ニーズ理解の失敗の結果をユーザに返すことができる。例えば、「あなたのニーズを理解していません、一つの簡単な言い方に変えてください」など、ユーザが第1の音声命令を再入力するように提示することもできる。
【0105】
本実施例では、2ラウンドをインタラクションラウンドの最大数とし、より多くのラウンドをインタラクションラウンドの最大数とする場合、ユーザの確認を取得しまたは予め設定されたインタラクションラウンドの最大数に達するまで、継続してニーズ予測モデルによってマッピングされて取得した信頼度の次のニーズ表現を問い合わせの形式でユーザに返すことができる。
【0106】
従来のシナリオと比較するために、本実施例に対応するシナリオの多くの状況は以下のようである。
ユーザ:私を助けて、私から子供に授乳できる一つの最も近い場所を探してくれるか、子供が腹が空いて、お願いします。
【0107】
音声アシスタント:あなたが入力した語句は広く、XXはよく聞き取れません。あなたから一番近い母子室があるショッピングセンターを探しますか?
ユーザ:はい。
【0108】
音声アシスタントはディスプレイまたは音声などの形式で距離が一番近い母子室があるショッピングセンターの情報をユーザに返す。
【0109】
明らかに、この方式は従来の方式と比較してユーザのインタラクション効率及び使用体験を大幅に向上させる。
【実施例3】
【0110】
図4は本開示の実施例3により提供される音声インタラクション方法のフローチャートである。図4に示すように、当該方法は以下のステップを含むことができる。
【0111】
401では、ユーザが入力した第1の音声命令に対して音声認識とニーズ解析を行い、ニーズ解析に成功した場合、402を実行し、ニーズ解析に失敗した場合、403を実行する。
【0112】
402では、第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行い、今回の音声インタラクションプロセスを終了する。
【0113】
403では、第1の音声命令を予めトレーニングされたニーズ予測モデルに入力し、当該ニーズ予測モデルは第1の音声命令を少なくとも一つのニーズ表現にマッピングし、信頼度が上位N個にあるニーズ表現を、問い合わせの形式でユーザに返し、Nは予め設定された正の整数である。
【0114】
本実施例3と実施例2との違いは、ニーズ予測モデルによってマッピングされて取得したニーズ表現について、各ラウンドのインタラクション中で1個ずつユーザに返すのではなく、その中のN個のニーズ表現を質問文を選択する形式で一緒にユーザに返して、ユーザが選択するようにする。
【0115】
さらに、ユーザが今回なぜニーズ解析に失敗したのを明確に通知し、ユーザの焦慮及び戸惑いを軽減し、ユーザ体験を向上させるために、本開示の実施例では、ニーズ解析失敗の原因を分析することもでき、上記の問い合わせではニーズ解析失敗の原因をさらに携帯することができる。当該部分は実施例2と類似し、ここでは詳しく説明しない。
【0116】
Nが2であるのを例とし、ユーザが入力した第1の音声命令:「私を助けて、私から子供に授乳できる一つの最も近い場所を探してくれるか、子供が腹が空いて、お願いします」について、音声アシスタントは「あなたが入力した語句は広く、XXはよく聞き取れません。あなたはあなたから一番近い母子室があるショッピングセンターを探しますか、それともあなたから一番近い産後ケアセンターを探しますか?」を返すことができる。このように、ユーザは「前者/後者」と応答すればよい。
【0117】
404では、ユーザの音声命令を受信し、ユーザがその中の一つのニーズ表現を決定する音声命令を受信した場合、405を実行し、ユーザがすべてのニーズ表現を否定する音声命令を受信した場合、406を実行する。
【0118】
405では、ユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行い、今回の音声インタラクションプロセスを終了する。
【0119】
406では、ニーズ理解に失敗した結果をユーザに返す。
【0120】
ユーザが任意のニーズ表現をすべて確認していない場合、例えば、「あなたのニーズを理解していません」など、ニーズ理解に失敗した結果をユーザに返すことができる。例えば、「あなたのニーズを理解していません、一つの簡単な言い方に変えてください」など、ユーザが第1の音声命令を再入力するように提示することもできる。
【0121】
従来のシナリオと比較するために、本実施例に対応するシナリオの多くの状況は以下のようである。
ユーザ:私を助けて、私から子供に授乳できる一つの最も近い場所を探してくれるか、子供が腹が空いて、お願いします。
【0122】
音声アシスタント:あなたが入力した語句は広く、XXはよく聞き取れません。あなたはあなたから一番近い母子室があるショッピングセンターを探しますか、それともあなたから一番近い産後ケアセンターを探しますか?
ユーザ:前者。
【0123】
音声アシスタントはディスプレイまたは音声などの形式で距離が一番近い母子室があるショッピングセンターの情報をユーザに返す。
【0124】
明らかに、この方式は従来の方式と比較してユーザのインタラクション効率及び使用体験を大幅に向上させる。
【0125】
以上は本開示により提供される方法に対して詳細に説明し、以下は実施例を組み合わせて本開示により提供される装置に対して詳細に説明する。
【実施例4】
【0126】
図5は本開示の実施例4により提供される音声インタラクション装置の構成図である。図5に示すように、当該装置は、音声インタラクションユニット01、音声処理ユニット02、ニーズ予測ユニット03、及びサービス応答ユニット04を含むことができ、モデルトレーニングユニット05、及び原因分析ユニット06をさらに含むこともできる。その中、各構成ユニットの主に機能は以下の通りである。
【0127】
音声インタラクションユニット01はユーザからのデータ及びユーザに返されるデータを受信及び伝達することを実現する役割を果たす。まず、ユーザが入力した第1の音声命令を受信する。
【0128】
音声処理ユニット02は第1の音声命令に対して音声認識とニーズ解析を行う役割を果たす。ユーザが入力した第1の音声命令に対して、まず、音声認識を行う。音声認識によって取得されたテキストを取得した後、ニーズ解析を行う。当該ニーズ解析の目的は、主に、ユーザの具体的なニーズ(意図とも呼ばれることができる)を理解し、構造化情報を取得して、ユーザに正確なサービスを提供する。具体的なニーズ解析方式と解析結果は、具体的な垂直系サービスに関連することができる。本ユニットは既存の技術を使用することができ、ここでは詳しく説明しない。
【0129】
ニーズ解析に成功した場合、サービス応答ユニット04は第1の音声命令に対応するニーズ解析結果を使用してサービス応答を行う。
【0130】
ニーズ解析に失敗した場合、ニーズ予測ユニット03は第1の音声命令に対してニーズ予測を行って、少なくとも一つのニーズ表現を取得する。次に、音声インタラクションユニット01はニーズ表現のうちの少なくとも一つを問い合わせの形式でユーザに返す。
【0131】
音声インタラクションユニット01がユーザがニーズ表現のうちの少なくとも一つを決定する第2の音声命令を受信した場合、サービス応答ユニット04はユーザが決定したニーズ表現に対応するニーズ解析結果を使用してサービス応答を行う。
【0132】
具体的には、ニーズ予測ユニット03は第1の音声命令を予めトレーニングされたニーズ予測モデルに入力することができ、ニーズ予測モデルは第1の音声命令を少なくとも一つのニーズ表現にマッピングすることができる。ニーズ予測モデルによってマッピングされて取得した少なくとも一つのニーズ表現はいずれも信頼度を有し、当該信頼度は第1の音声命令に対応するニーズの正確さの度合いを予測できるのを表す。
【0133】
モデルトレーニングユニット05はトレーニングニーズ予測モデルを取得する役割を果たす。具体的には、モデルトレーニングユニット05はトレーニングデータを取得し、トレーニングデータは複数の語句ペアを含み、語句ペアは第1の語句と第2の語句を含み、第2の語句はニーズ解析に成功することが可能であり、トレーニングデータを使用してSeq2Seqモデルをトレーニングして、ニーズ予測モデルを取得し、語句ペアのうちの第1の語句はSeq2Seqモデルの入力とし、第2の語句はSeq2Seqモデルのターゲット出力とする。
【0134】
好ましい実施形態として、上記のトレーニングデータはテキスト検索ログから取得することができる。具体的には、テキスト検索ログ内のqueryを第1の語句とし、queryに対応するクリックされた検索結果を使用して第2の語句を取得し、第1の語句と第2の語句が語句ペアを構成することができ、第2の語句の信頼度は第1の語句をqueryとする時の第2の語句のクリック回数によって決定されることができる。クリック回数が多いほど、対応する信頼度が高くなる。
【0135】
音声インタラクションユニットはニーズ表現のうちの少なくとも一つを問い合わせの形式でユーザに返す時、以下の二つの方式を採用することができるが、これらに限定しない。
第1の方式:ニーズ予測モデルによってマッピングされて取得した少なくとも一つのニーズ表現の中で信頼度が最も高いニーズ表現を第1のニーズ表現とし、第1のニーズ表現を問い合わせの形式でユーザに返す。
【0136】
ユーザが第1のニーズ表現を否定する第3の音声命令が受信された場合、ニーズ予測モデルによってマッピングされて取得した少なくとも一つのニーズ表現の中で信頼度が次に高いニーズ表現を第2のニーズ表現とし、第2のニーズ表現を問い合わせの形式でユーザに返す。
【0137】
この方式の問い合わせは、一般的な質問文の形式を採用することができ、これにより、ユーザが「はい/いいえ」、「YES/NO」、「必要/不要」、「可/不可」、「正しい/違い」などの簡単の音声を回答すればよい。
【0138】
また、この方式では、インタラクションラウンドの最大数を制約し、インタラクションラウンドの最大数に達した後に、音声インタラクションユニット01はニーズ理解に失敗した結果をユーザに返すことができ、ユーザが第1の音声命令を再入力するように提示することもできる。
【0139】
第2の方式:ニーズ予測モデルによってマッピングされて取得した少なくとも一つのニーズ表現の中で信頼度が上位N個のニーズ表現を、問い合わせの形式でユーザに返し、Nは予め設定された正の整数である。
【0140】
この方式では、選択質問文の形式を採用してN個のニーズ表現をユーザに返して、ユーザが選択するようにすることができる。
【0141】
ユーザが任意のニーズ表現に対してすべて確認していない場合、音声インタラクションユニット01はニーズ理解に失敗した結果をユーザに返すことができ、ユーザが第1の音声命令を再入力するように提示することもできる。
【0142】
さらに、原因分析ユニット06はニーズ解析失敗の原因を分析することができ、問い合わせにニーズ解析失敗の原因をさらに携帯することができる。
【0143】
ニーズ解析失敗の原因を分析するのは以下の処理の一つまたは任意の組み合わせを含むことができるが、これらに限定しない。
【0144】
第1の処理:音声認識時に、ユーザが第1の音声命令を入力した背景に対してノイズ検出を行い、ノイズが強い場合について、音声認識段階に影響を与えることによって、後のニーズ解析に失敗する。
【0145】
第2の処理:音声認識プロセスで発音の検出を行って、ユーザの発音が正確であるか否かを検出する。発音が不正確である場合について、同様に音声認識段階に影響を与えることによって、後のニーズ解析に失敗する。
【0146】
第3の処理:第1の音声命令の音声認識結果に対してテキスト長さの検出を行う。長すぎる語句について、通常、ニーズ解析に不利な影響を与えることができ、例えば、語義分析を行う時に長い語句の語義を分析することが難しくなり、ニーズ解析に失敗する。
【0147】
第4の処理:第1の音声命令の音声認識結果に対して口語化検出を行う。口語化すぎる表現の語句について、語義分析に不利な影響を与えることができ、ニーズ解析に失敗する。
【0148】
他の処理方式が存在する可能性もあり、ここでは一々網羅しない。
【0149】
上記のいくつかの処理方式に対応して、取得されたニーズ解析失敗の原因は、例えば、環境ノイズ、第1の音声命令の発音不正確、第1の音声命令の長さが制限を超えること、第1の音声命令が口語化すぎなどを含むことができる。
【0150】
本開示の実施例によれば、本開示は電子機器及び読み取り可能な記憶媒体をさらに提供する。
【0151】
図6に示すように、本開示の実施例の音声インタラクション方法を実現するための電子機器のブロック図である。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタル処理、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様のコンピューティングデバイスなどの様々な形式のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0152】
図6に示すように、当該電子機器は、一つ又は複数のプロセッサ601と、メモリ602と、高速インターフェースと低速インターフェースを含む各コンポーネントを接続するためのインターフェースと、を含む。各コンポーネントは、異なるバスで相互に接続され、共通のマザーボードに取り付けられるか、又は必要に基づいて他の方式で取り付けることができる。プロセッサは、外部入力/出力装置(インターフェースに結合されたディスプレイデバイスなど)にGUIの図形情報をディスプレイするためにメモリに記憶されている命令を含む、電子機器内に実行される命令を処理することができる。他の実施方式では、必要であれば、複数のプロセッサ及び/又は複数のバスを、複数のメモリと複数のメモリとともに使用することができる。同様に、複数の電子機器を接続することができ、各電子機器は、部分的な必要な操作(例えば、サーバアレイ、ブレードサーバ、又はマルチプロセッサシステムとする)を提供することができる。図6では、一つのプロセッサ601を例とする。
【0153】
メモリ602は、本開示により提供される非一時的なコンピュータ読み取り可能な記憶媒体である。その中、前記メモリには、少なくとも一つのプロセッサによって実行される命令を記憶して、前記少なくとも一つのプロセッサが本開示により提供される音声インタラクション方法を実行することができるようにする。本開示の非一時的なコンピュータ読み取り可能な記憶媒体は、コンピュータが本開示により提供される音声インタラクション方法を実行するためのコンピュータ命令を記憶する。
【0154】
メモリ602は、非一時的なコンピュータ読み取り可能な記憶媒体として、本開示の実施例における音声インタラクション方法に対応するプログラム命令/モジュールように、非一時的なソフトウェアプログラム、非一時的なコンピュータ実行可能なプログラム及びモジュールを記憶するために用いられる。プロセッサ601は、メモリ602に記憶されている非一時的なソフトウェアプログラム、命令及びモジュールを実行することによって、サーバの様々な機能アプリケーション及びデータ処理を実行し、すなわち上記の方法の実施例における音声インタラクション方法を実現する。
【0155】
メモリ602は、ストレージプログラム領域とストレージデータ領域とを含むことができ、その中、ストレージプログラム領域は、オペレーティングシステム、少なくとも一つの機能に必要なアプリケーションプログラムを記憶することができ、ストレージデータ領域は、当該電子機器の使用によって作成されたデータなどを記憶することができる。また、メモリ602は、高速ランダム存取メモリを含むことができ、非一時的なメモリをさらに含むことができ、例えば、少なくとも一つのディスクストレージデバイス、フラッシュメモリデバイス、又は他の非一時的なソリッドステートストレージデバイスである。いくつかの実施例では、メモリ602は、プロセッサ601に対して遠隔に設置されたメモリを含むことができ、これらの遠隔メモリは、ネットワークを介して当該電子機器に接続されることができる。上記のネットワークの例は、インターネット、イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、及びその組み合わせを含むが、これらに限定しない。
【0156】
音声インタラクション方法を実現する電子機器は、入力装置603と出力装置604とをさらに含むことができる。プロセッサ601、メモリ602、入力装置603、及び出力装置604は、バス又は他の方式を介して接続することができ、図6では、バスを介して接続することを例とする。
【0157】
入力装置603は、入力された数字又は文字情報を受信することができ、及び当該電子機器のユーザ設置及び機能制御に関するキー信号入力を生成することができ、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、指示杆、一つ又は複数のマウスボタン、トラックボール、ジョイスティックなどの入力装置である。出力装置604は、ディスプレイデバイス、補助照明デバイス(例えば、LED)、及び触覚フィードバックデバイス(例えば、振動モータ)などを含むことができる。当該ディスプレイデバイスは、LCD(液晶ディスプレイ)、LED(発光ダイオード)ディスプレイ、及びプラズマディスプレイを含むことができるが、これらに限定しない。いくつかの実施方式では、ディスプレイデバイスは、タッチスクリーンであってもよい。
【0158】
本明細書で説明されるシステムと技術の様々な実施方式は、デジタル電子回路システム、集積回路システム、特定用途向けASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施方式は、一つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該一つ又は複数のコンピュータプログラムは、少なくとも一つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置に伝送することができる。
【0159】
これらのコンピューティングプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも呼ばれる)は、プログラマブルプロセッサの機械命令、高レベルのプロセス及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ/機械言語でこれらのコンピューティングプログラムを実施することを含む。本明細書に使用されるように、用語「機械読み取り可能な媒体」及び「コンピュータ読み取り可能な媒体」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、機器、及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、PLD(プログラマブルロジックデバイス))を指し、機械読み取り可能な信号である機械命令を受信する機械読み取り可能な媒体を含む。用語「機械読み取り可能な信号」は、機械命令及び/又はデータをプログラマブルプロセッサに提供するための任意の信号を指す。
【0160】
ユーザとのインタラクションを提供するために、コンピュータ上でここで説明されているシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0161】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバー)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続されることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークと、を含む。
【0162】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。
【0163】
以上の説明により分かるように、本開示により提供される方法、装置、機器、及びコンピュータ記憶媒体は、以下の利点を有することができる。
【0164】
1)本開示は、ユーザが入力した音声命令に対するニーズ解析に失敗した後に、さらに、音声命令に対してニーズ予測を行うことができ、ユーザが言ったことを理解できないことを簡単に通知するのではなく、ユーザの可能なニーズ表現を「推測」してユーザに返して確認するため、ユーザのインタラクション効率を向上させ、ユーザ体験を向上させる。
【0165】
2)音声アシスタントが問い合わせの形式で返されるニーズ表現について、ユーザは簡単に確認または選択するだけで効果的な命令入力が実現でき、自分で別の方式を変換して音声命令の再入力を行う必要がなく、さらに、ユーザのインタラクション効率を向上させ、ユーザ体験を向上させる。
【0166】
3)ニーズ理解に失敗した後に、ユーザのニーズを予測するとともに、ニーズ理解に失敗した原因を分析し、分析して取得された原因をユーザに返して、ユーザの戸惑い及び焦慮を軽減し、さらにユーザ体験を向上させる。
【0167】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0168】
上記の具体的な実施方式は、本開示に対する保護範囲の制限を構成するものではない。当業者は、設計要求と他の要因に基づいて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれなければならない。
図1
図2
図3
図4
図5
図6
【国際調査報告】