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

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

▶ 本田技研工業株式会社の特許一覧

<>
  • 特開-対話理解装置、および対話理解方法 図1
  • 特開-対話理解装置、および対話理解方法 図2
  • 特開-対話理解装置、および対話理解方法 図3
  • 特開-対話理解装置、および対話理解方法 図4
  • 特開-対話理解装置、および対話理解方法 図5
  • 特開-対話理解装置、および対話理解方法 図6
  • 特開-対話理解装置、および対話理解方法 図7
  • 特開-対話理解装置、および対話理解方法 図8
  • 特開-対話理解装置、および対話理解方法 図9
  • 特開-対話理解装置、および対話理解方法 図10
  • 特開-対話理解装置、および対話理解方法 図11
  • 特開-対話理解装置、および対話理解方法 図12
  • 特開-対話理解装置、および対話理解方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024119383
(43)【公開日】2024-09-03
(54)【発明の名称】対話理解装置、および対話理解方法
(51)【国際特許分類】
   G10L 15/22 20060101AFI20240827BHJP
   G10L 15/10 20060101ALI20240827BHJP
   G10L 15/28 20130101ALI20240827BHJP
   G10L 13/00 20060101ALI20240827BHJP
   G10L 15/24 20130101ALI20240827BHJP
   G10L 15/06 20130101ALI20240827BHJP
   G10L 15/25 20130101ALI20240827BHJP
   G06F 3/16 20060101ALI20240827BHJP
   G06F 3/01 20060101ALI20240827BHJP
【FI】
G10L15/22 300U
G10L15/10 500Z
G10L15/28 230K
G10L15/28 230Z
G10L13/00 100M
G10L15/24 Z
G10L15/10 500T
G10L15/28 400
G10L15/06 300D
G10L15/25
G06F3/16 650
G06F3/01 510
G06F3/16 610
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2023026245
(22)【出願日】2023-02-22
(71)【出願人】
【識別番号】000005326
【氏名又は名称】本田技研工業株式会社
(74)【代理人】
【識別番号】100165179
【弁理士】
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100126664
【弁理士】
【氏名又は名称】鈴木 慎吾
(74)【代理人】
【識別番号】100154852
【弁理士】
【氏名又は名称】酒井 太一
(74)【代理人】
【識別番号】100194087
【弁理士】
【氏名又は名称】渡辺 伸一
(72)【発明者】
【氏名】ゴメス ランディ
(72)【発明者】
【氏名】ニコルズ エリック
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA64
5E555BA02
5E555BB02
5E555BC04
5E555CA42
5E555CB65
5E555CC03
5E555DA23
5E555EA22
5E555EA23
5E555FA00
(57)【要約】
【課題】対話システムへの入力を破損する可能性のある異常を検出することができる対話理解装置、および対話理解方法を提供することを目的とする。
【解決手段】対話理解装置は、音声信号を収音する収音部と、文脈処理部と、人間との対話を行う対話システムと、を備え、文脈理解部は、収音部から得た情報を処理する層を複数層備え、複数の各層において、収音された音声信号に対しての所定の処理が成功しない場合のフォールバック処理部を層毎に備え、フォールバック処理部が行うフォールバック処理に応じた対応を行った後、次の層の処理に進み、文脈理解部での処理が完了した音声信号を前記対話システムに入力する。
【選択図】図1
【特許請求の範囲】
【請求項1】
音声信号を収音する収音部と、
文脈処理部と、
人間との対話を行う対話システムと、を備え、
前記文脈処理部は、前記収音部から得た情報を処理する層を複数備え、
前記複数の各層において、収音された音声信号に対しての所定の処理が成功しない場合のフォールバック処理部を前記層毎に備え、
前記フォールバック処理部が行うフォールバック処理に応じた対応を行った後、次の層の処理に進み、
前記文脈処理部での処理が完了した音声信号を前記対話システムに入力する、
対話理解装置。
【請求項2】
前記文脈処理部は、収音された音声信号に対しての所定の処理を行うことで、音声信号をテキスト化し、前記テキスト化したフレーズから固有名詞であるエンティティを検出し、前記テキスト化されたフレーズを、言語モデルを用いて理解して発言者の発話意図を推定する、
請求項1に記載の対話理解装置。
【請求項3】
前記複数層は3層であり、
第1の層は、ウェイクアップワードの検出を行うオーディオトリガー部と、音源の位置特定と音源分離処理を行うサウンド部を備え、
第2の層は、前記第1の層が処理した結果の音声信号に対して、音声からテキストへ変換するASR部と、オーディオストリームの話者識別のための話者ダイアラゼーション処理を行う話者識別部と、文脈依存の入力に対応するSpeech to Textモデルの適応を行うモデル適応部と、自部が備える言語モデルを参照して認識された言語が何語であるか検出する言語検出部を備え、
第3の層は、前記第2の層でテキスト化された文の種類を分類する文章処理部と、前記テキスト化された文中のエンティティタイプの検出を行う文章判別部を備える、
請求項1または請求項2に記載の対話理解装置。
【請求項4】
前記第1の層に対する第1のフォールバック処理部は、ウェイクアップワードが検出されるまで、音声入力を無視し、
前記第2の層に対する第2のフォールバック処理部は、前記第2の層で音声認識処理ができない場合に入力された音声信号をノイズとして無視し、前記第2の層で発言者の交代を検出した場合に予め定められている所定の反応を行い、前記第2の層で前記発言者の発話している言語がサポートされている場合に動的に言語を切り替え、前記発言者がサポートされていない言語で話している場合に話し手に通知し、
前記第3の層に対する第3のフォールバック処理部は、想定内の質問を受けた場合に具体的なリアクションを挿入し、想定外の質問を受けた場合に具体的なリアクションを挿入し、前記発言者の文に必要なエンティティが検出されなかった場合にフォローアップの質問をする、
請求項3に記載の対話理解装置。
【請求項5】
発言者の画像を撮影する撮影部を備え、
前記第3の層は、前記撮影された画像を用いて、前記音源の方位と追跡された人物の位置のマッチングを行い、前記発言者の口の動きのトラッキングを行、前記対話システムと前記発言者の会話を確認するための視線方向推定処理を行う空間視覚部を備え、
前記第1の層に対する第1のフォールバック処理部は、前記発言者の音源方向と撮像された画像から検出される人物とが空間的に一致しない場合に前記音声をノイズとして無視し、前記撮影された画像から前記発言者の口の動きが検出されなかった場合に前記音声をノイズとして無視し、前記発言者が他の人を見ていたり前記対話システムを見ていない場合に前記音声をノイズとして無視する、
請求項3に記載の対話理解装置。
【請求項6】
前記文脈処理部の学習時、前記文脈処理部には、1回目に前記対話システムからシステム情報が入力され、2回目でデータ構造と他の要求に基づいて異なるレベルの理解や文脈を構築する、
請求項1または請求項2に記載の対話理解装置。
【請求項7】
収音部と文脈処理部と対話システムを備える対話理解装置における対話理解方法であって、
前記文脈処理部が、前記収音部から得た情報を処理する層を複数備え、前記複数の各層において収音された音声信号に対しての所定の処理が成功しない場合のフォールバック処理部を前記層毎に備え、
収音部が、音声信号を収音し、
対話システムが、人間との対話を行い、
前記文脈処理部が、前記フォールバック処理部が行うフォールバック処理に応じた対応を行った後、次の層の処理に進め、
前記文脈処理部が、処理が完了した音声信号を前記対話システムに入力する、
対話理解方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、対話理解装置、および対話理解方法に関する。
【背景技術】
【0002】
近年、音声による指示や、利用者と音声によるコミュニケーションを行うロボットや装置が開発されている。音声コマンド処理システムのダイアログシステムは、ロボットとコミュニケーションをとる際に非常に有効である。これにより、ロボットはコマンドを理解し、そのコマンドを適宜実行することができるようになる。このような対話システムは、音声認識結果から得たテキストデータを用いている。また、対話システムでは、例えば、想定される対話について複数のシナリオを有し、このようなシナリオに基づいて、対話を行っている(例えば参考文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2019-84598号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来技術では、会話におけるシナリオから外れていたり、発言者の発話内容が想定されてる構造になっていない場合など、対話システムがうまく機能しない場合がある。例えば、仮説が破損していたり、相手の会話スタイルが対話入力の構造に合っていない場合、対話システムはうまく機能しなかった。
【0005】
本発明は、上記の問題点に鑑みてなされたものであって、対話システムへの入力を破損する可能性のある異常を検出することができる対話理解装置、および対話理解方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
(1)上記目的を達成するため、本発明の一態様に係る対話理解装置は、音声信号を収音する収音部と、文脈処理部と、人間との対話を行う対話システムと、を備え、前記文脈処理部は、前記収音部から得た情報を処理する層を複数備え、前記複数の各層において、収音された音声信号に対しての所定の処理が成功しない場合のフォールバック処理部を前記層毎に備え、前記フォールバック処理部が行うフォールバック処理に応じた対応を行った後、次の層の処理に進み、前記文脈処理部での処理が完了した音声信号を前記対話システムに入力する、対話理解装置である。
【0007】
(2)(1)の対話理解装置において、前記文脈処理部は、収音された音声信号に対しての所定の処理を行うことで、音声信号をテキスト化し、前記テキスト化したフレーズから固有名詞であるエンティティを検出し、前記テキスト化されたフレーズを、言語モデルを用いて理解して発言者の発話意図を推定するようにしてもよい。
【0008】
(3)(1)または(2)の対話理解装置において、前記複数層は3層であり、
第1の層は、ウェイクアップワードの検出を行うオーディオトリガー部と、音源の位置特定と音源分離処理を行うサウンド部を備え、第2の層は、前記第1の層が処理した結果の音声信号に対して、音声からテキストへ変換するASR部と、オーディオストリームの話者識別のための話者ダイアラゼーション処理を行う話者識別部と、文脈依存の入力に対応するSpeech to Textモデルの適応を行うモデル適応部と、自部が備える言語モデルを参照して認識された言語が何語であるか検出する言語検出部を備え、第3の層は、前記第2の層でテキスト化された文の種類を分類する文章処理部と、前記テキスト化された文中のエンティティタイプの検出を行う文章判別部を備えるようにしてもよい。
【0009】
(4)(3)の対話理解装置において、前記第1の層に対する第1のフォールバック処理部は、ウェイクアップワードが検出されるまで、音声入力を無視し、前記第2の層に対する第2のフォールバック処理部は、前記第2の層で音声認識処理ができない場合に入力された音声信号をノイズとして無視し、前記第2の層で発言者の交代を検出した場合に予め定められている所定の反応を行い、前記第2の層で前記発言者の発話している言語がサポートされている場合に動的に言語を切り替え、前記発言者がサポートされていない言語で話している場合に話し手に通知し、前記第3の層に対する第3のフォールバック処理部は、想定内の質問を受けた場合に具体的なリアクションを挿入し、想定外の質問を受けた場合に具体的なリアクションを挿入し、前記発言者の文に必要なエンティティが検出されなかった場合にフォローアップの質問をするようにしてもよい。
【0010】
(5)(3)の対話理解装置において、発言者の画像を撮影する撮影部を備え、前記第3の層は、前記撮影された画像を用いて、前記音源の方位と追跡された人物の位置のマッチングを行い、前記発言者の口の動きのトラッキングを行、前記対話システムと前記発言者の会話を確認するための視線方向推定処理を行う空間視覚部を備え、前記第1の層に対する第1のフォールバック処理部は、前記発言者の音源方向と撮像された画像から検出される人物とが空間的に一致しない場合に前記音声をノイズとして無視し、前記撮影された画像から前記発言者の口の動きが検出されなかった場合に前記音声をノイズとして無視し、前記発言者が他の人を見ていたり前記対話システムを見ていない場合に前記音声をノイズとして無視するようにしてもよい。
【0011】
(6)(1)から(5)のうちのいずれか1つの対話理解装置において、前記文脈処理部の学習時、前記文脈処理部には、1回目に前記対話システムからシステム情報が入力され、2回目でデータ構造と他の要求に基づいて異なるレベルの理解や文脈を構築するようにしてもよい。
【0012】
(7)上記目的を達成するため、本発明の一態様に係る対話理解方法は、収音部と文脈処理部と対話システムを備える対話理解装置における対話理解方法であって、前記文脈処理部が、前記収音部から得た情報を処理する層を複数備え、前記複数の各層において収音された音声信号に対しての所定の処理が成功しない場合のフォールバック処理部を前記層毎に備え、収音部が、音声信号を収音し、対話システムが、人間との対話を行い、前記文脈処理部が、前記フォールバック処理部が行うフォールバック処理に応じた対応を行った後、次の層の処理に進め、前記文脈処理部が、処理が完了した音声信号を前記対話システムに入力する、対話理解方法である。
【発明の効果】
【0013】
(1)~(7)によれば、対話システムへの入力を破損する可能性のある異常を検出することができる。
【図面の簡単な説明】
【0014】
図1】実施形態における処理の概略を示す図である。
図2】実施形態に係る文脈処理部の構成例と処理手順例の概要を示す図である。
図3図2の各部の構成例と処理例を示す図である。
図4図2の各フォールバック部の構成例と処理例を示す図である。
図5】対話システムと人との対話の第1の例を示す図である。
図6】対話システムと人との対話の第2の例を示す図である。
図7】対話システムと人との対話の第3の例を示す図である。
図8】実施形態に係る第1レベルの処理例を示す図である。
図9】実施形態に係る第2レベルの処理例を示す図である。
図10】実施形態に係る第3レベルの処理例を示す図である。
図11】実施形態に係る第1レベルにおけるフォールバック処理例を示す図である。
図12】実施形態に係る第2レベルにおけるフォールバック処理例を示す図である。
図13】実施形態に係る第3レベルにおけるフォールバック処理例を示す図である。
【発明を実施するための形態】
【0015】
以下、本発明の実施の形態について図面を参照しながら説明する。なお、以下の説明に用いる図面では、各部材を認識可能な大きさとするため、各部材の縮尺を適宜変更している。
なお、実施形態を説明するための全図において、同一の機能を有するものは同一符号を用い、繰り返しの説明は省略する。
また、本願でいう「XXに基づいて」とは、「少なくともXXに基づく」ことを意味し、XXに加えて別の要素に基づく場合も含む。また、「XXに基づいて」とは、XXを直接に用いる場合に限定されず、XXに対して演算や加工が行われたものに基づく場合も含む。「XX」は、任意の要素(例えば、任意の情報)である。
【0016】
(処理の概略)
まず、本実施形態における処理の概略を説明する。
図1は、本実施形態における処理の概略を示す図である。図1のように、ロボット1は、例えば、文脈処理部2と、対話システム3と、撮影部4と、収音部5と、言語モデル6を備える。
【0017】
ロボット1は、対話理解装置の一例であり、例えばコミュニケーションロボットである。
【0018】
言語モデル6は、言語(例えば、日本語、英語、フランス語、ドイツ語、中国語等)毎に単語列に対する確率分布であるモデルを備える。
【0019】
文脈処理部2(Contextual Processing Module)には、撮影部4が撮影した画像と、収音部5が収音した音声信号が入力される。また、文脈処理部2には、対話システム3から情報が2回入力される1回目は、システム情報が対話システム3から文脈処理部2にロードされる。2回目は、データ構造と他の要求に基づいて、文脈処理部2が異なるレベルの理解や文脈を構築する。なお、文脈処理部2は、この2回の処理によって自部学習を行う。また、この学習処理はオフラインで行われる。これらの処理以外はオンラインで行われる。
なお、システム情報とは、システムの能力のことであり、例えば、どのようなコマンドやタスクがサポートされているかなどの情報である。データ構造とは、情報をどのように解析し保存するかということで、システムが情報を受け入れまたは拒否し、適切に反応できるようにするためのフォーマットである。その他の要件とは、システムに自由に追加して、受け入れまたは拒否や反応に用いることが出来る要素である。例えば、新しいソースを追加する場合、その新しいソースに関連する新しい要件を自由に作成することができる。
【0020】
文脈処理部2は、撮影部4が撮影した画像と、収音部5が収音した音声信号に対して所定の処理を行って発話内容を理解し、処理した結果に基づいて作成した音声データを対話システム3に出力する。文脈処理部2は、様々なモダリティを異なるレベルで見ることによって、これを活用し、よりロバストでインタラクティブな補正を行い、ダイアログシステムにより対話システム3への最適な入力を生成する。また、文脈処理部2は、フォール(fall)チェックを行い、フォールの場合にフォールバック(fallback)で処理を行う、なお、各処理については、後述する。
【0021】
撮影部4は、例えばRGB(赤緑青)カメラである。なお、撮影部4は、深度情報Dを得られるRGBDカメラであってもよい。なお、撮影された画像には、撮影された時間情報(タイムスタンプ)情報が付加されている。
【0022】
収音部5は、例えば、M(Mは2以上の整数)個のマイクロホンで構成されるマイクロホンアレイである。なお、収音された音声信号には、収音された時間情報(タイムスタンプ)情報が付加されている。
【0023】
対話システム3は、例えば、スピーカー、画像表示部等を備える。対話システム3は、文脈処理部2が出力する情報に基づいて、発言者と対話を行う。
なお、図1に示した構成は一例であり概略であり、構成はこれに限らない。
【0024】
(文脈処理部の構成例と処理手順例)
次に、文脈処理部2の構成例と処理手順例を、図2図4を参照して説明する。図2は、本実施形態に係る文脈処理部の構成例と処理手順例の概要を示す図である。図3は、図2の処理部の構成例と処理例を示す図である。図4は、図2の各フォールバック部(フォールバック処理部)の構成例と処理例を示す図である。
【0025】
図2図4に示すように、文脈処理部2は、3段階(Level1~3)の処理を行う。文脈処理部2は、レベル毎にフォールチェックを行い、フォールと判別されない場合に次にレベルの処理に進め、フォールと判別された場合に各レベルのフォールバック処理を行う。
【0026】
I.第1処理部(第1の層)
レベル1である第1処理部21には、集音された音声信号と撮影された画像が入力される。第1処理部21は、オーディオトリガー部211と、サウンド部212と、空間視覚部213を備える。第1処理部21は、各部のチェック結果がフォールではないと判別された場合、第1処理部21の各部が検出や抽出した情報を関連付けた情報を第2処理部22へ出力する。また、第1処理部21は、各部の検出や抽出でエラーとなった場合、その情報を第1フォールバック部24に出力する。なお、図1のように、第1処理部21と第1フォールバック部24は対であり、協調して処理を行う。
【0027】
オーディオトリガー部211は、ウェイクアップワードや短い音声入力のための特定の音声トリガーの検出を行う。なお、ウェイクアップワードは、予め定められた単語またはフレーズであり、例えば「Hey robot !」である。または、ウェイクアップワードは、例えば、所定の音量かつ所定時間以上の音声信号であってもよい。
【0028】
サウンド部212は、音源の位置特定と分離処理を行う。
【0029】
空間視覚部213は、3つのモジュールを備える。第1モジュール2131は、音源の方位と追跡された人物の位置のマッチングを行う。第2モジュール2132は、発言者の口の動きのトラッキングを行う。第3モジュール2133は、ロボット1と発言者の会話を確認するための視線方向推定処理を行う。
【0030】
II.第2処理部(第2の層)
レベル2である第2処理部22には、第1処理部21から検出や抽出されて関連付けられた情報が入力される。第2処理部22は、ASR部221と、話者識別部222と、モデル適応部223と、言語検出部224を備える。第2処理部22は、各部のチェック結果がフォールではないと判別された場合、第2処理部で検出や抽出された情報を関連付けた情報を第3処理部23へ出力する。また、第2処理部22は、各部の検出や抽出でエラーとなった場合、その情報を第2フォールバック部25に出力する。なお、図1のように、第2処理部22と第2フォールバック部25は対であり、協調して処理を行う。
【0031】
ASR部221は、第1処理部21が処理した結果の音声信号に対して、音声からテキストへ変換する。
【0032】
話者識別部222は、オーディオストリームの話者識別のための話者ダイアラゼーション処理を行う。なお、話者ダイアラゼーション処理とは、発言者や発言者の人数が未知の音声信号に対して、「いつ誰が話したか」を推定する処理である。
モデル適応部223は、文脈依存の入力に対応するSpeech to Textモデル(音声からテキストへの変換)の適応を行う。
【0033】
言語検出部224は、例えば、テキスト化されたテキストの構文解析を行い、さらに言語モデル6を参照して認識された言語が何語であるか検出する。
【0034】
III.第3処理部(第3の層)
レベル3である第3処理部23には、第2処理部22から検出や抽出された情報が関連付けられた情報が入力される。第3処理部23は、文章処理部231と、文章判別部232を備える。第3処理部23は、各部のチェック結果がフォールではないと判別された場合、第3処理部23で検出や抽出した情報を関連付けた情報を対話システム3へ出力する。また、第3処理部23は、各部の検出や抽出でエラーとなった場合、その情報を第3フォールバック部26に出力する。なお、図1のように、第3処理部23と第3フォールバック部26は対であり、協調して処理を行う。
【0035】
文章処理部231は、テキスト化された文の種類を分類する。
【0036】
文章判別部232は、文中のエンティティ(Entity)タイプの検出を行う。なお、エンティティとは、既知の固有名詞等である。
【0037】
IV.第1フォールバック処理部
第1処理部21によってフォールと判別された場合、第1レベルである第1フォールバック部24には、第1処理部21から、第1処理部21の各部で検出や抽出の際にエラーとなったことを示す情報が入力される。第1フォールバック部24は、オーディオトリガー部241と、空間と視覚部242を備える。
【0038】
オーディオトリガー部241は、ウェイクアップワードが検出されるまで、音声入力を無視する。
【0039】
空間と視覚部242は、3つのモジュールを備える。第1モジュール2421は、発言者の音源方向と撮像された画像から検出される人物とが空間的に一致しない場合、音声をノイズとして無視する。第2モジュール2422は、人の口の動きが検出されなかった場合、音声をノイズとして無視する。第3モジュール2423は、発言者が他の人を見ていたり、ロボット1を見ていない場合、音声をノイズとして無視する。
【0040】
第2処理部22によってフォールと判別された場合、第2レベルである第2フォールバック部25には、第2処理部22から、第2処理部22の各部で検出や抽出の際にエラーとなったことを示す情報が入力される。第2フォールバック部25は、ASR部251と、話者識別部252と、言語検出部253を備える。
【0041】
ASR部251は、音声認識処理ができない場合、入力された音声信号をノイズとして無視する。
【0042】
話者識別部252は、発言者の交代を検出した場合、特定の反応をする。なお、特定の反応とは、予め定められた処理であり、例えば交代した発言者に挨拶する等である。
【0043】
言語検出部253は、2つのモジュールを備える。第1モジュール2531は、発言者の発話している言語がサポートされている場合、動的に言語を切り替える。第2モジュール2532は、発言者がサポートされていない言語で話している場合、話し手に通知する。
【0044】
第3処理部23によってフォールと判別された場合、第3レベルである第3フォールバック部26には、第3処理部23から、第3処理部23の各部で検出や抽出の際にエラーとなったことを示す情報が入力される。第3フォールバック部26は、文章処理部261と、文章判別部262を備える。
【0045】
文章処理部261は、想定内の質問を受けた場合、具体的なリアクションを挿入する。または、文章処理部261は、想定外の質問を受けた場合、具体的なリアクションを挿入する。
【0046】
文章判別部262は、発言者の文に必要なエンティティが検出されなかった場合、フォローアップの質問をする。なお、フォローアップの質問とは、必要なエンティティを引き出すための質問であり、例えば含まれている文中にある動詞に基づく「何をどうしたの?」等の質問である。
【0047】
(対話システムと人との対話例)
次に、対話システムと人との対話例と、対話時の処理例を図5図7を用いて説明する。
図5は、対話システムと人との対話の第1の例を示す図である。なお、図5図7の対話例は、ウェイクアップワード検出後の対話例である。
まず、対話システム3は、「Do you have a pet ?」と発する。この発話の意図(Intent)は、「質問」、「has」、および「pet」である(g101)。
文脈処理部2が発言者の発話を音声認識してテキスト化した結果は、「Yes, I have a pet dragon」であったとする。この発話において、文脈処理部2は、「dragon」が「pet」の種類でありEntityであると理解する。そして、文脈処理部2は、この発話の意図を、「返答」、「has」、「pet」、「ys」であると理解する(g102)。
対話システム3は、文脈処理部2の出力に基づいて、「Dragon a good pet ! What’s their name ?」という音声信号を発する。この発話の意図は、「質問」、「pet」および「name」である(g103)。
【0048】
図6は、対話システムと人との対話の第2の例を示す図である。
まず、対話システム3は、「What country are you from ?」と発する。この発話の意図は、「質問」、「country」、および「origin」である(g111)。
文脈処理部2が発言者の発話を音声認識してテキスト化した結果は、「I am from the United of America」であったとする。この発話において、文脈処理部2は、「the United of America」が「country」の種類でありEntityであると理解する。そして、文脈処理部2は、この発話の意図を、「返答」、「country」、「origin」であると理解する(g112)。
対話システム3は、文脈処理部2の出力に基づいて、「I want to visit ! Do you still live there ?」という音声信号を発する。この発話の意図は、「質問」、「country」、「origin」、および「reside」である(g113)。
【0049】
図7は、対話システムと人との対話の第3の例を示す図である。
まず、対話システム3は、「Let’s change topics and discuss weather ?」と発する。この発話の意図は、「質問」、「topics」、および「weather」である(g121)。
文脈処理部2発言者の発話を音声認識してテキスト化した結果は、「No, I want to talk about hobbies lnstead」であったとする。この発話において、文脈処理部2は、「hobbies」が「topics」でありEntityであると理解する。そして、文脈処理部2は、この発話の意図を、「変更」、「topics」、「hobbies」であると理解する(g122)。
対話システム3は、文脈処理部2の出力に基づいて、「OK ! What is your favorite hobby ?」という音声信号を発する。この発話の意図は、「質問」、「favorite」、および「hobby」である(g123)。
なお、図5~7に示した対話例、理解結果例は一例であり、これに限らない。
【0050】
(第1レベルの処理)
次に、第1レベルの処理について、図8を参照して更に説明する。図8は、本実施形態に係る第1レベルの処理例を示す図である。なお、以下の処理例では、発言者が1人の例で説明するが、発言者は複数であってもよい。その場合、発言者が途中で入れ替わったことを検出して処理を行う。
【0051】
(ステップS101)収音部5は、発言者の音声信号を収音する。
【0052】
(ステップS102)文脈処理部2の第1処理部21は、収音された音声信号をアナログ信号からデジタル信号に変換して、変換したデジタル信号から周知の手法で音響特徴量を抽出する。音響特徴量は、例えば、メルスペクトルとMFCC(メル周波数ケプストラム係数)である。
【0053】
(ステップS103)第1処理部21のオーディオトリガー部211は、音声信号と音響特徴量を用いて音声認識処理(構文解析は行わなくてもよい)を行って、音声をテキスト化してテキストからウェイクアップワードの有無を検出する。
【0054】
(ステップS104)第1処理部21のサウンド部212は、音声信号と音響特徴量に対して、例えばビームフォーミング法等を用いて音源定位処理と音源分離処理を行う。
【0055】
(ステップS105)撮影部4は、発言者を撮影する。
【0056】
(ステップS106)第1処理部21は、撮影された画像をアナログ信号からデジタル信号に変換して、変換したデジタル信号から周知の手法で画像特徴量を抽出する。画像特徴量は、例えば、局所画像特徴量、顔や身体の輪郭情報等を含む。
【0057】
(ステップS107)第1処理部21の空間視覚部213は、抽出した画像特徴量に対して、自部または外部に登録されている人毎の特徴量のデータベースを参照して、登録されているデータの中にある人物であれば名前を抽出し、登録されていない人物であれば登録無しと判断する。
【0058】
(ステップS108)第1処理部21の空間視覚部213は、画像特徴量に基づいて、周知の手法によって発言者の視線を抽出する。なお、第1処理部21は、視線の動きを追跡するようにしてもよい。
【0059】
(ステップS109)第1処理部21の空間視覚部213は、画像特徴量に基づいて、周知の手法によって発言者の口の動きを追跡する。
【0060】
(ステップS110)第1処理部21は、ステップS103、S104、S107、S108、S109で検出や抽出されたウェイクアップワード、音源定位結果(含む音響信号)、視線に関する情報および口に関する情報を関連付ける。
【0061】
(ステップS111)第1処理部21は、関連付けた情報に基づいて、発言者が対話のための発話を行ったか否かを判別する。
【0062】
(ステップS112)第1処理部21は、発言者が対話のための発話を行ったと判別した場合、第2レベルの処理に進める。なお、第1処理部21は、第1レベルで検出や抽出された情報を関連付けた情報を第2レベルの第2処理部22に出力する。
【0063】
(ステップS113)第1処理部21は、発言者が対話のための発話を行っていないと判別した場合、第1レベルのフォールバック処理に進める。
【0064】
なお、上述した処理順番や処理内容は一例であり、これに限らない。例えば、音響信号に対する処理と画像に対する処理は、逆であってもよく、または同時に行ってもよい。
【0065】
(第2レベルの処理)
次に、第2レベルの処理について、図9を参照して更に説明する。図9は、本実施形態に係る第2レベルの処理例を示す図である。なお、以下の処理例では、発言者が1人の例で説明するが、発言者は複数であってもよい。その場合、発言者が途中で入れ替わったことを検出して処理を行う。
【0066】
(ステップS201)文脈処理部2の第2処理部22は、ウェイクアップワード、音源定位結果(含む音響信号)、視線に関する情報および口に関する情報が関連付けられた情報を第1処理部21から取得する。
【0067】
(ステップS202)第2処理部22のASR部221は、第1処理部21から取得した音源定位結果(含む音響信号)に対して、音源分離処理、音響認識処理を行って、認識した音声信号をテキストに変換する。なお、第2処理部22は、雑音抑圧処理、発話区間の検出を行ってもよい。
【0068】
(ステップS203)第2処理部22の話者識別部222は、話者ダイアラゼーション処理を行う。
【0069】
(ステップS204)第2処理部22の言語検出部224は、テキスト化されたテキストの構文解析を行い、さらに言語モデル6を参照して認識された言語が何語であるか検出する。
【0070】
(ステップS205)第2処理部22は、ステップS202、S203、およびS204で検出や抽出された発言者の発話履歴(USER HISTORY)と、発話(UTTERANCES)と、言語情報(LANGUAGE)と、メタデータ(META DATA)とを関連付ける。なお、発話履歴とは、発言者とロボット1との発話の履歴であり、過去に対話した発話の履歴も含んでいてもよい。また、メタデータとは、発言者の視線情報、発言者の口の動き、収音された音声信号に含まれている他の発言者の音声信号、撮影された画像に含まれている他の発言者の画像等を含む情報である。
【0071】
(ステップS206)第2処理部22は、抽出した発話を監視する。第2処理部22は、例えば、発話が検出できなくなった場合や、発話に使用されている言語が切り替わった場合などを監視する。
【0072】
(ステップS207)第2処理部22は、監視の結果、トラブル(フォール)が検出されなかったと判別された場合、第3レベルに処理を進める。なお、第2処理部22は、検出や抽出された発言者の発話履歴(USER HISTORY)と、発話(UTTERANCES)と、言語情報(LANGUAGE)と、メタデータ(META DATA)とを関連付けた情報を、第3処理部23へ出力する。
【0073】
(ステップS208)第2処理部22は、監視の結果、トラブル(フォール)が検出されたと判別された場合、第2レベルのフォールバック処理に処理を進める。第2レベルのフォールバック処理では、第2フォールバック部25が、言語が変わったことや発話ではなくノイズであることを決定し、決定した結果を第2処理部22へ返す。
【0074】
なお、上述した処理順番や処理内容は一例であり、これに限らない。例えば、ステップS202~S204の処理順は入れ替わってもよく、同時に行ってもよい。
【0075】
(第3レベルの処理)
次に、第3レベルの処理について、図10を参照して更に説明する。図10は、本実施形態に係る第3レベルの処理例を示す図である。なお、以下の処理例では、発言者が1人の例で説明するが、発言者は複数であってもよい。その場合、発言者が途中で入れ替わったことを検出して処理を行う。
【0076】
(ステップS301)文脈処理部2の第3処理部23は、検出や抽出された発言者の発話履歴と、発話と、言語情報と、メタデータとを関連付けた情報を第2処理部22から取得する。
【0077】
(ステップS302)第3処理部23の文章処理部231は、テキスト化された文の種類を分類する。これにより、文章処理部231は、発話の意図(INTET)を推定する。
【0078】
(ステップS303)第3処理部23の文章判別部232は、文中のエンティティ(Entity)タイプの検出を行う。
【0079】
(ステップS304)第3処理部23は、第1レベル~第3レベルで検出や抽出、判断した結果に基づいて、取得した発言者の発話を理解する。
【0080】
(ステップS305)第3処理部23は、抽出や検出された発話(UTTERANCES)と、(INTENTS)と、固有名詞情報(ENTITINES)と、対話履歴(CONV. HISTORY)を関連付ける。
【0081】
(ステップS306)第3処理部23は、例えば、対話システム3が発した発話に対応した発話が得られているか否か、すなわち対話が成り立っているか否かを判別する。
【0082】
(ステップS307)第3処理部23は、対話が成り立っている場合、対話を継続する。
【0083】
(ステップS308)第3処理部23は、対話が成り立っていない場合、第3レベルの第3フォールバック処理に処理を進める。第3フォールバック部26は、例えば、対話システム3が発した発話が、発言者の対話したい意図と異なっている場合に、発言者の意図に合ったテーマの発話に変え、または予期していなかった返答の場合に聞き返す等の処理を行うように指示する。
【0084】
(第1レベルの文章解析処理時のフォールバック処理例)
次に、第1レベルにおけるフォールバック処理例を説明する。図11は、本実施形態に係る第1レベルにおけるフォールバック処理例を示す図である。図11に示す例では、「フォールバック番号」、「フォールバックの説明(以下、「説明」という)」、「システムプロンプト、具体的なアクション、その他の詳細(以下、「対応」という)」を示している。
【0085】
I.第1のフォールバック
説明;ウェイクアップワードが検出されるまで、音声入力を無視するフォールバックである。
対応;システムが予め設定されたウェイクアップワード以外のすべての音声入力を無視するものとする。
【0086】
II.第2のフォールバック
説明;人物との空間的な一致が確認できない場合、音声をノイズとして無視する。
対応;人間が存在する方向から音が発せられたことが確認できない場合、システムはすべての音声入力をノイズとして無視すること。また、人物は、専用の骨格追跡深度カメラなどを用いて追跡すること。
【0087】
III.第3のフォールバック
説明;口の動きが検出されない場合、音声をノイズとして無視する。
対応;システムは、ある人物の顔が見え、口の動きが検出されない場合、その人物からの音声入力をすべてバックグラウンドノイズとして無視する。この手法により、人物の背後から来る背景雑音に強いシステムを実現する。
【0088】
IV.第4のフォールバック
説明;話し手が他の誰かを見ていたり、ロボット(対話システム3)を見ていない場合、音声をノイズとして無視すること。
対応;話し手が他の人(例えば部屋の中の他の人)と話していることが空間的に確認できる場合、システムは特定の人からの音声入力をすべて無視するものとする。
【0089】
(第2レベルの文章解析処理時のフォールバック処理例)
次に、第2レベルにおけるフォールバック処理例を説明する。図12は、本実施形態に係る第2レベルにおけるフォールバック処理例を示す図である。
【0090】
I.第1のフォールバック
説明;テキストが生成されない音声入力はノイズとして無視する。
対応;システムは、有効なテキストを生成できない音声入力をすべてノイズとして無視しなければならない。
【0091】
II.第2のフォールバック
説明;発言者の変更を検出した場合の具体的な反応。
対応;発言者が変わった場合、システムはそれを検出したことを認識しなければならない。
例えば、新しい話し手に「顔」を合わせたり、生成された返答に「あなたの意見も聞けてうれしいです」などと付け加えたりすることができる。
【0092】
III.第3のフォールバック
説明;言語が切り替わった場合、かつ切り替わった言語がサポートされている場合、動的に言語を切り替える。
対応;デフォルトのフォールバックに頼るのではなく、発言者が音声入力の間に言語を切り替えた場合に、システムが対応できるようにする必要がある。このような場合、前の言語のフレーズで確認する。例えば、「ああ、今スペイン語に切り替えたのでしょうか?もちろん、そうしますよ」等の発話を行った後、対話を継続する。
【0093】
IV.第4のフォールバック
説明;言語が切り替わった場合、かつ切り替わった言語がサポートされていない言語である場合、発言者に通知する。
対応;発言者がサポートされていない言語を使用している場合は、システムがそれを検知し、サポートされている言語への切り替えを提案することができる必要がある。
【0094】
(第3レベルの文章解析処理時のフォールバック処理例)
次に、第3レベルにおけるフォールバック処理例を説明する。図13は、本実施形態に係る第2レベルにおけるフォールバック処理例を示す図である。
【0095】
I.第1のフォールバック
説明;期待されたが質問を受けた場合、具体的なリアクションを挿入する。または、想定外の質問等を受けた場合、具体的なリアクションを挿入する。
対応;例えば、システムが発言者の発言を期待したが、代わりに質問を受け取った場合、システムは発言者が質問に答えるように誘導する。
【0096】
II.第2のフォールバック
説明;発言者が発話した音声をテキスト化した文から必要なエンティティが検出されなかった場合は、フォローアップの質問をする。
対応;システムの意図がエンティティタイプの値を理解することであり、その値が会話を続けるために必要である場合は、システムはフォローアップの質問を行い、不足しているエンティティを抽出することを試みる。
【0097】
なお、文脈処理部2は、図11図13に示した各フォールバックの対応を全て行うのではなく、フォールの内容に応じて必要な対応を行う。また、図11~13に示した説明と対応は一例であり、これに限らない。
【0098】
また、上述した例では、撮影部4が撮影した画像を用いる例を説明したが、文脈処理部2は画像を用いなくてもよい。この場合、文脈処理部2は、発言者の視線検出や口の動きの検出、これらの検出に伴うフォールバック処理を行わなくてもよい。
また、上述した例では、文脈処理部2は、3つのレベル(3つの層)を用いて処理を行う例を説明したが、レベル(層)は2つ以上であればよく、4つ以上であってもよい。
【0099】
(従来技術との比較)
音声コマンド処理システムのダイアログシステムは、人間がロボットとコミュニケーションをとる際に非常に有効である。これにより、ロボットは、コマンドを理解し、そのコマンドを適宜実行することができるようになる。しかしながら、従来の対話システムは、ASR(音声認識)からの仮説という入力の質に大きく左右される。例えば、仮説が破損していたり、相手の会話スタイルが対話入力の構造に合っていない場合、対話システムはうまく機能しなかった。
【0100】
このため、従来のスマートスピーカーや携帯端末等に用いられている音声コマンドによるコミュニケーションでは、いずれのシステムも、音声キャプチャーの品質とASRのテキスト化の精度に関するフィードバックを提供していない。また、従来技術では、音声の品質が低い場合や、音声の転写結果が満足のいくものでない場合のフォールバック戦略も用意されていない。
【0101】
このようなアプローチは、コマンドのような短い単一発話の音声入力では、再試行のコストが低く、音声アシスタントの典型的なユースケースであるため、正当化されることがある。しかし、人間と装置(スマートスピーカー、携帯端末、ロボット等)の対話では、短いコマンドを処理するだけでなく、長い会話を維持することが必要である。
【0102】
これに対して本実施形態では、対話システム3への入力前に、ASRからの仮説の質を向上させるために、仮説を前処理し、文脈フィルタリングの対話的かつ反復的な実行を行うようにした。このアプローチは、破損した仮説やユーザの会話スタイルの問題を解決し、これらを修正することで、対話システムが良好なパフォーマンスを発揮するために最適化された入力を保証することができる。
【0103】
また、本実施形態では、マルチレベルフォールバックのアプローチを用いた。これにより、本実施形態によれば、エンドユーザーにとって普遍的により良い経験を提供することができる。また、本実施形態によれば、発言者がロボット1の理解度についてより多くの情報を得ることができ、従来技術の装置にはない機械知能の感覚を生み出すのに役立っている。
【0104】
なお、第1レベル~第3レベル(例えば図2参照)おける理解度とは、対話システムへの入力が正しいかどうかを確認するための、異なるレベルの文脈チェックとサニティチェックのことである。これは、対話システムのデータ構造を入力として取り込み、誤った入力やフリースタイルの入力を修正するために、異なるレベルの文脈チェック、反復的かつ対話的なクエリを作成する等の処理を文脈処理部2が行う。
【0105】
本実施形態では、発言者の発話の理解を、3つの段階で行い。かつ各段階でフォールバック処理を行うようにした。
本実施形態では、オーディオビジュアルモダリティを利用することで、対話システムへの入力を破損する可能性のある異常を検出することができる。また、本実施形態によれば、3つのレベルのフォールバックにより、各モダリティを利用して、対話システムへの入力仮説を修正することが保証される。
【0106】
また、本実施形態では、3つの理解レベル仮説を前処理し、対話システムに入力する前にASR211からの仮説の質を向上させるために、文脈フィルタリングを対話的かつ反復的に実行するようにした。このアプローチでは、破損した仮説やユーザの会話スタイルの問題を解決し、これらを修正することで、対話システムが良好に動作するように最適化された入力を保証しようとするものである。
【0107】
また、本実施形態では、フォールバック機構のマルチモーダルアプローチを行うようにした。これにより、対話システムへのより信頼性の高い入力を保証するフォールバック実行のマルチモーダルレイヤーにつながるサブシステムの組み合わせ方法を提供できる。
【0108】
なお、本発明における文脈処理部2、対話システム3の機能の一部または全てを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより文脈処理部2、対話システム3が行う処理の全てまたは一部を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0109】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0110】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形および置換を加えることができる。
【符号の説明】
【0111】
1…ロボット、2…文脈処理部、3…対話システム、4…撮影部、5…収音部、6…言語モデル、21…第1処理部、22…第2処理部、23…第3処理部、24…第1フォールバック部、25…第2フォールバック部、26…第3フォールバック部、211…オーディオトリガー部、212…サウンド部、213…空間視覚部、221…ASR部、222…話者識別部、223…モデル適応部、224…言語検出部、231…文章処理部、232…文章判別部、241…オーディオトリガー部、242…空間と視覚部、251…ASR部、252…話者識別部、253…言語検出部、261…文章処理部、262…文章判別部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13