JP2022047550A - 情報処理装置、及び情報処理方法 - Google Patents

情報処理装置、及び情報処理方法 Download PDF

Info

Publication number
JP2022047550A
JP2022047550A JP2019008895A JP2019008895A JP2022047550A JP 2022047550 A JP2022047550 A JP 2022047550A JP 2019008895 A JP2019008895 A JP 2019008895A JP 2019008895 A JP2019008895 A JP 2019008895A JP 2022047550 A JP2022047550 A JP 2022047550A
Authority
JP
Japan
Prior art keywords
dialogue response
dialogue
response
information
capability
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019008895A
Other languages
English (en)
Inventor
淳己 大村
Junki Omura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Group Corp
Original Assignee
Sony Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Group Corp filed Critical Sony Group Corp
Priority to JP2019008895A priority Critical patent/JP2022047550A/ja
Priority to PCT/JP2020/000581 priority patent/WO2020153146A1/ja
Priority to US17/414,331 priority patent/US20220051673A1/en
Publication of JP2022047550A publication Critical patent/JP2022047550A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/01Assessment or evaluation of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • User Interface Of Digital Computer (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

【課題】より適切に対話応答を提供することができるようにする。【解決手段】対話応答を出力する機器ごとのケイパビリティを取得し、対話応答を生成する際のシードとして利用される対話応答フレームから、取得したケイパビリティに応じた対話応答を生成し、生成した対話応答を機器ごとに展開する処理部を備える情報処理装置が提供される。本技術は、例えば、対話応答を設計する対話応答設計機器に適用することができる。【選択図】図1

Description

本技術は、情報処理装置、及び情報処理方法に関し、特に、より適切に対話応答を提供することができるようにした情報処理装置、及び情報処理方法に関する。
近年、ユーザとの対話を行う対話エージェントが利用されている。この種の対話エージェントが搭載されたエージェント機器は、スピーカやディスプレイ、ボディ等の様々な表現手段を有している。そのため、バックエンドでは同一の対話エージェントを利用したとしても、ユーザとのインターフェースは、エージェント機器によって異なる場合がある。
このような場合において、各エージェント機器が保持する表現手段の組み合わせに適合するように対話設計を行う必要があり、対話応答の開発を行う開発者からすれば、手間がかかっていた。
例えば、開発者の労力を減らすための技術として、特許文献1に開示された技術が提案されている。特許文献1では、入力された文章に対して、事前設計された対話DBと単語間の相関を計算して対話生成手段を利用し、設計済み対話DB及び対話生成手段から、出力する対話を決定している。
特開2005-25602号公報
このように、対話応答の開発を行う開発者にとっては、各エージェント機器が保持する表現手段に応じた対話設計を行うことは手間である。一方で、エージェント機器にとっても、ユーザに対して、保持する表現手段を最大限に利用した対話応答が提供されることが求められる。
本技術はこのような状況に鑑みてなされたものであり、より適切に対話応答を提供することができるようにするものである。
本技術の一側面の情報処理装置は、対話応答を出力する機器ごとのケイパビリティを取得し、前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得した前記ケイパビリティに応じた前記対話応答を生成し、生成した前記対話応答を前記機器ごとに展開する処理部を備える情報処理装置である。
本技術の一側面の情報処理方法は、情報処理装置が、対話応答を出力する機器ごとのケイパビリティを取得し、前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得した前記ケイパビリティに応じた前記対話応答を生成し、生成した前記対話応答を前記機器ごとに展開する情報処理方法である。
本技術の一側面の情報処理装置、及び情報処理方法においては、対話応答を出力する機器ごとのケイパビリティが取得され、前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得された前記ケイパビリティに応じた前記対話応答が生成され、生成された前記対話応答が前記機器ごとに展開される。
本技術の一側面の情報処理装置は、対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答を取得し、コンテキストに関するコンテキスト情報を取得し、取得した前記対話応答の中から、前記コンテキストに適合した前記対話応答を選択し、選択した前記対話応答を出力する処理部を備える情報処理装置である。
本技術の一側面の情報処理方法は、情報処理装置が、対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答を取得し、コンテキストに関するコンテキスト情報を取得し、取得した前記対話応答の中から、前記コンテキストに適合した前記対話応答を選択し、選択した前記対話応答を出力する情報処理方法である。
本技術の一側面の情報処理装置、及び情報処理方法においては、対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答が取得され、コンテキストに関するコンテキスト情報が取得され、取得された前記対話応答の中から、前記コンテキストに適合した前記対話応答が選択され、選択された前記対話応答が出力される。
なお、本技術の一側面の情報処理装置は、独立した装置であってもよいし、1つの装置を構成している内部ブロックであってもよい。
本技術を適用した情報処理装置としての対話応答設計器の一実施の形態の構成の例を示す図である。 対話応答設計処理の流れを説明するフローチャートである。 汎用対話応答フレームを用いた対話応答の展開の例を示す図である。 汎用対話応答フレームを用いた対話応答の生成の例を示す図である。 異なるケイパビリティを有するエージェント機器間の変換の第1の例を示す図である。 異なるケイパビリティを有するエージェント機器間の変換の第2の例を示す図である。 変換後の対話応答のカスタムレイアウトの反映の例を示す図である。 Sequence-to-Sequenceモデルによる任意のケイパビリティの対話応答の生成の例を示す図である。 エージェント機器における表現性能に応じた対話応答の切り替えの例を示す図である。 本技術を適用した情報処理装置としてのエージェント機器の一実施の形態の構成の例を示す図である。 対話応答実行処理の流れを説明するフローチャートである。 一般的な対話応答の生成の例を示す図である。 具体的な対話応答の生成の例を示す図である。 本技術を適用したネットワークシステムの構成の例を示す図である。 コンピュータの構成の例を示す図である。
以下、図面を参照しながら本技術の実施の形態について説明する。なお、説明は以下の順序で行うものとする。
1.本技術の実施の形態
2.変形例
3.コンピュータの構成
<1.本技術の実施の形態>
(用語の定義)
まず、本技術の詳細な内容を説明する前に、本開示で使用される用語の定義をする。
「対話」とは、人同士、あるいは機械を含めて、発話などの情報をやり取りする行為である。1回のやり取りでは終わらず、複数回のやり取りになる場合も多い。その場合には、これまでのやり取りを考慮したやり取りを選択する必要がある。例えば、対話の形態としては、1対1、1対多、多対多などの形態がある。なお、本開示において、対話とインタラクションは同義語として扱うものとする。
「対話システム」とは、ユーザとの間で何らかの情報をやり取り(対話)できるシステムである。ここで、やり取りは一般に、テキストや発話などを利用した自然言語を利用する場合が多いが、例えばジェスチャやアイコンタクトなど、必ずしも言語に限定されるものではない。
「対話エージェント」とは、対話システムを搭載して展開されたサービスである。対話エージェントの提供方法としては、例えば、電子機器として実際に表示デバイスや身体(ボディ)を有してもよいし、あるいはアプリケーションなどのように、GUI(Graphical User Interface)として提供されてもよい。
「対話応答」とは、対話システムとユーザとの対話において、一方(例えばユーザ)からの発話等に対する他方(例えば対話システム)によるリアクションである。このリアクションとしては、例えば、発話応答や画面応答などがあり、それらの応答を組み合わせてもよい。
なお、以下の説明では、対話システムを「S」とも表記し、ユーザを「U」とも表記する。また、「発話応答(音声応答)」は、例えば、TTS(Text To Speech)を利用してテキストを読み上げることで実現されるため、「TTS」とも表記する。「画面応答」は、例えばGUIを表示することで実現されるため、「GUI」とも表記する。
対話応答の具体例:
U:「天気教えて」
S:「天気はこちらです」(天気に関するGUIも表示)
「ケイパビリティ」とは、対話エージェントが搭載されたエージェント機器が持つ様々な対話応答の表現手段である。ここで、「ケイパビリティ」には、「インターフェース情報」と「ケイパビリティ情報」が含まれる。
「インターフェース情報」は、エージェント機器が有するインターフェースに関する情報である。「ケイパビリティ情報」は、インターフェースの能力に関する情報である。
「対話応答フレーム」とは、対話システムの対話応答設計書である。以下の説明では、対話応答フレームは、「汎用対話応答」と同義であるものとする。ここでは、「汎用対話応答」に対する「具体対話応答」も定義する。「具体対話応答」は、実際に各対話エージェントが保有する具体的な対話応答データを指すものとする。
以下、図面を参照しながら、本技術の詳細について説明する。
(情報処理装置の構成)
図1は、本技術を適用した情報処理装置としての対話応答設計器の一実施の形態の構成の例を示す図である。
図1において、対話応答設計器10は、対話応答を設計(生成)して、エージェント機器20-1乃至20-Nに展開する機器(対話応答生成器)である。対話応答設計器10は、対話応答設計ツール101、対話応答変換関数群102、ケイパビリティリスト103、及び対話応答DB104を含んで構成される。
対話応答設計ツール101は、対話エージェントの開発に関わる開発者1が扱うツール(GUIツール)である。対話応答設計ツール101は、例えばウェブアプリケーションや、クライアントツールなどを含み、ここでは、対話応答を一貫して設計するための機能を有する。また、開発者1には、例えば、アプリケーション開発者や、デザイナ(インタラクションデザイナやUIデザイナを含む)、シナリオライタなどが含まれる。
具体的には、対話応答設計ツール101の機能としては、例えば、次に示した(a1)乃至(a5)の機能が含まれる。
(a1)展開可能なケイパビリティ、及び展開エージェント一覧の取得
(a2)対話応答の設計(汎用対話応答と具体対話応答の設計はどちらでも可能)
(a3)汎用対話応答又は具体対話応答から、任意のケイパビリティへの対話応答を生成(対話応答変換モジュールを利用)
(a4)自動生成された対話応答の修正
(a5)生成された対話応答の保存、及び各エージェント機器20-1乃至20-N(N:1以上の整数)に対する対話応答の展開
対話応答変換関数群102は、汎用対話応答又は具体対話応答に対して、任意のケイパビリティリスト103を与えた際に、そのケイパビリティを利用した具体対話応答を生成するためのマッピング関数を保有している。
このマッピング関数には、人手により調整したルールベースによるものと、機械学習による機械学習ベースによるものが含まれる。ルールベースによるマッピング関数は、ルールベースDB102Aに記憶され、機械学習によるマッピング関数は、機械学習ベースDB102Bに記憶される。
ケイパビリティリスト103は、対話応答設計ツール101が利用可能なケイパビリティの一覧である。ケイパビリティリスト103は、想定するサービスに応じて、当該サービスが対応するケイパビリティのみを表示するなどのフィルタ機能を有する。
対話応答DB104は、対話応答設計ツール101により生成された対話応答(のデータ)を記憶する。例えば、対話応答DB104では、生成された対話応答とともに、変換前の対話応答及びその時の入力情報を記録することができる。この入力情報には、例えば、ケイパビリティやコンテキスト情報などが含まれる。
対話応答DB104に記憶されたデータは、機械学習ベースの学習器(対話応答変換学習器11)が利用したり、あるいは、開発者1が変換情報を解析したりするのに利用できる。
また、対話応答設計ツール101が有する機能で、対話応答DB104に記憶されたデータにアクセスすることもできるし、あるいは、汎用的なデータベース(例えば、オープンソースのRDBMS(Relational Database Management System)や商用のRDBMS等)を利用して外部アクセスを提供することができる。
対話応答変換学習器11は、マッピング情報(マッピング関数)を利用して、対話応答を生成可能なモデルを含む。この学習済みモデルは、その変換部の関数を、対話応答変換関数群102の中の関数として登録することができる。
エージェント機器20-1は、対話エージェントが搭載された電子機器であって、例えば、スマートフォンやスマートスピーカ、ディスプレイ付スピーカ、テレビ受像機、ロボット、ウェアラブル機器、タブレット端末、ディスプレイ装置、パーソナルコンピュータ、その他の家電機器などを含む。
エージェント機器20-2乃至20-Nは、エージェント機器20-1と同様に、対話エージェントが搭載された電子機器としてそれぞれ構成される。なお、以下の説明では、エージェント機器20-1乃至20-Nを特に区別する必要がない場合には、単にエージェント機器20と称する。
ここで、エージェント機器20-1乃至20-Nのそれぞれが有するケイパビリティは、異なっており、また、その対話エージェント(サービス)としては、同一のものが搭載されていることを想定するが、異なるサービス群を登録して、所望のサービスに切り替えて設計できるようにしてもよい。
例えば、ある対話エージェント(サービス)として、同一のキャラクタが、様々なケイパビリティを有するエージェント機器20-1乃至20-Nにそれぞれ展開されることが想定される。
また、ケイパビリティは、インターフェース情報とケイパビリティ情報を含むが、エージェント機器20-1乃至20-Nにおいては、ケイパビリティとして、同一のインターフェース情報(例えば、ディスプレイ)を有していても、ケイパビリティ情報(例えば、表示方式や画面サイズ等)が異なる場合が想定される。
なお、対話応答設計器10は、情報処理装置であって、例えば、パーソナルコンピュータやワークステーション、専用のコンソールなどのコンピュータ(例えば、図15のコンピュータ1000)として構成される。例えば、対話応答設計器10において、対話応答設計ツール101は、処理部100(例えば、図15のCPU1001)によりプログラムが実行されることで実現される。
また、対話応答設計器10において、対話応答変換関数群102、及び対話応答DB104は、HDD(Hard Disk Drive)や半導体メモリ等の記憶装置(例えば、図15の記録部1008)に記憶される。さらに、ケイパビリティリスト103は、通信モジュール等の通信部(例えば、図15の通信部1009)によって、エージェント機器20-1乃至20-Nとの間で、所定の規格に準拠した無線通信又は有線通信を行い、各種の情報をそれぞれやりとりすることで取得される。
(対話応答設計処理の流れ)
次に、図2のフローチャートを参照して、対話応答設計ツール101により実行される対話応答設計処理の流れを説明する。
ステップS101において、対話応答設計ツール101は、ケイパビリティリスト103の取得と選択を行う。
ステップS102において、対話応答設計ツール101は、例えば開発者1からの操作等に応じて、汎用対話応答を利用するかどうかを判定する。
ステップS102の判定処理で、汎用対話応答を利用すると判定された場合、処理は、ステップS103に進められる。ステップS103において、対話応答設計ツール101は、汎用対話応答フレームを生成する。
また、ステップS102の判定処理で、汎用対話応答を利用しないと判定された場合、処理は、ステップS104に進められる。ステップS104において、対話応答設計ツール101は、例えば開発者1からの操作等に応じて、新規応答を生成するかどうかが判定される。
ステップS104の判定処理で、新規応答を生成すると判定された場合、処理は、ステップS105に進められる。ステップS105において、対話応答設計ツール101は、具体対話応答を生成する。
また、ステップS104の判定処理で、新規応答を生成しないと判定された場合、処理は、ステップS106に進められる。ステップS106において、対話応答設計ツール101は、対話応答DB104を参照して、既存対話応答の取得と選択を行う。
ステップS103,S105,又はS106の処理が終了すると、処理は、ステップS107に進められる。
ステップS107において、対話応答設計ツール101は、対話応答変換方法の選択と生成を行う。この対話応答変換方法の選択と生成の詳細は、例えば、図4等を参照して後述する。
ステップS108において、対話応答設計ツール101は、例えば開発者1からの操作等に応じて、対話応答の修正を必要かどうかが判定される。
ステップS108の判定処理で、対話応答の修正が必要であると判定された場合、処理は、ステップS109に進められる。ステップS109において、対話応答設計ツール101は、対話応答の修正を行う。
ステップS109の処理が終了すると、処理は、ステップS110に進められる。また、ステップS108の判定処理で、対話応答の修正が不要であると判定された場合、処理は、ステップS110に進められる。
ステップS110において、対話応答設計ツール101は、対話応答を、対話応答DB104へ保存する。
ステップS111において、対話応答設計ツール101は、対話応答を、エージェント機器20に展開する。
以上、対話応答設計処理の流れを説明した。
ここで、対話応答設計ツール101は、例えばエージェントサービスプロバイダ(ASP:Agent Service Provider)向けに提供するツールとされる。ここでの対話エージェントは、同一の対話エージェントであっても、様々なケイパビリティを有するエージェント機器20に対応することが想定される。
例えば、ある対話エージェント(サービス)は、スマートフォンのアプリケーション、スピーカ、又はディスプレイ付スピーカなど、同一の対話エージェントでありながら、様々なケイパビリティを有するエージェント機器20に展開されている。
このようなエージェント機器20に対する対話応答を設計する場合に、同一のユーザ発話に対する対話応答は、内容としては同一の内容となるかもしれないが、各エージェント機器20のケイパビリティに合わせて調整する必要があるため、開発者1にとっては非常に手間のかかる作業となる。
そこで、対話応答設計ツール101においては、汎用対話応答フレームを利用することで、1つの汎用対話応答フレームから、様々なケイパビリティを有するエージェント機器20に対する対話応答を一括して生成(自動生成)できるような仕組みを提供している。
つまり、汎用対話応答フレームは、汎用の対話応答の仕様に則して記述されたフレーム(ファイル)であり、開発者1は、汎用対話応答フレームを記述するだけで、エージェント機器20が有するケイパビリティ(表現手段)を意識することなく、対話応答を設計(自動設計)することが可能とされる。
(汎用対話応答フレームを用いた対話応答の展開の例)
図3は、汎用対話応答フレームを用いた対話応答の展開の例を示している。
図3において、対話応答設計器10は、開発者1により作成された汎用対話応答フレーム110と、あらかじめ用意された変換テンプレート160を用いて、対話応答を生成し、エージェント機器20-1乃至20-7にそれぞれ展開している。
図3の例では、展開先のエージェント機器20-1乃至20-7が様々なケイパビリティを有している。そのため、ここではまず、展開先のエージェント機器20が有するケイパビリティの詳細を説明する。
(ケイパビリティの詳細)
ケイパビリティは、インターフェース情報とケイパビリティ情報を含む。インターフェース情報としては、例えば、ディスプレイ、スピーカ、ロボット、ハプティクス、メッセージ通知、ランプ等を示す情報が含まれる。以下、インターフェース情報とそれに対応するケイパビリティ情報の詳細を、(b1)乃至(b6)に示している。
(b1)ディスプレイ
ディスプレイは、例えば、液晶ディスプレイ(LCD:liquid crystal display)やOLED(Organic Light Emitting Diode)ディスプレイ等の表示装置を表現手段として有する場合に指定される。なお、表示装置には、タッチパネル等の機能が搭載されていてもよい。
インターフェース情報としてディスプレイが指定される場合、ケイパビリティ情報としては、例えば、表示方式や画面サイズ、タッチパネル情報などが指定可能である。
具体的には、表示方式として、例えば、GUIの表示方式として、モノクローム(例えば白黒のモノクロ)又はカラーを示す情報を含めることができる。また、画面サイズには、大型や中型、小型の分類を含めるほか、例えば640×480,1920×1080,3940×2160等の画面解像度を示す情報等を含めてもよい。さらに、タッチパネル情報には、タッチパネルの搭載の有無を示す情報を含めることができる。
例えば、図3において、エージェント機器20-1,20-3,20-4,20-7(スマートフォン、ディスプレイ付スピーカ、テレビ受像機、スマートグラス)には、インターフェース情報として「ディスプレイ」が指定され、ケイパビリティ情報として表示方式や画面サイズ等が指定される。ここでは、例えば、ケイパビリティ情報として、スマートグラスには「小型」、スマートフォンやディスプレイ付スピーカには「中型」、テレビ受像機には「大型」である画面サイズがそれぞれ指定される。
(b2)スピーカ
スピーカは、音声や音楽等の音を再生する音声出力装置を表現手段として有する場合に指定される。スピーカは、モノラルやステレオに限らず、例えば、複数のチャンネルからなるようにしてもよい。なお、複数のチャンネルとしては、スピーカアレイを利用した指向性スピーカを含む。
インターフェース情報としてスピーカが指定される場合、ケイパビリティ情報としては、例えば、再生方式やサウンドチャンネル数などが指定可能である。具体的には、再生方式として、例えばステレオやモノラル等を示す情報を含めることができる。
例えば、図3において、エージェント機器20-2,20-3(スマートスピーカ、ディスプレイ付スピーカ)には、インターフェース情報として「スピーカ」が指定され、ケイパビリティ情報として再生方式等が指定される。ここでは、例えば、ケイパビリティ情報として、スマートスピーカには「モノラル」、ディスプレイ付スピーカには「ステレオ」である再生方式がそれぞれ指定される。
なお、図3では、エージェント機器20-1,20-4(スマートフォン、テレビ受像機)は、音声等の音を出力する機能を有しているため、インターフェース情報として「スピーカ」を指定し、「ステレオ」等のケイパビリティ情報を指定してもよい。
(b3)ロボット
ロボットは、例えば、人や動物(ペット)を模した又は近似した形状及び機能を有し、主にアクチュエータにより身体(ボディ)の部位を動かすことで、何らかの動作を自律的に行う装置又は機械を表現手段として有する場合に指定される。ここでは、ロボットは人型や動物型に限定されるものではなく、例えば、ロボットアームやキャタピラカー等が含まれるため、工場等に設置される作業ロボットなども対象に含まれる。
インターフェース情報としてロボットが指定される場合、ケイパビリティ情報としては、例えば、駆動部位や点灯部位などが指定可能である。具体的には、駆動部位として、例えば、頭部、手等を示す情報を含めることができる。例えば、図3において、エージェント機器20-5(犬型ロボット)には、インターフェース情報として「ロボット」が指定され、ケイパビリティ情報として「頭部」等の駆動部位が指定される。
なお、ここでは、身体を持つロボットを一例に説明したが、物理的な実体を持たなくても、例えば、コンピュータグラフィックス(CG:Computer Graphics)や、仮想現実(VR:Virtual Reality)、拡張現実(AR:Augmented Reality)などで表現される対話エージェントを含めてもよい。
(b4)ハプティクス
ハプティクスは、例えば振動素子等によって、ユーザの皮膚感覚を疑似再現してフィードバックする機能を表現手段として有する場合に指定される。例えば、腕時計型やブレスレット型等のウェアラブル機器により実装される。
インターフェース情報としてハプティクスが指定される場合、ケイパビリティ情報としては、例えば、振動のパターンや強弱などが指定可能である。具体的には、振動のパターンとして、例えば小刻みに震えるパターンや長い振動が続くパターン等を示す情報を含めることができる。また、振動の強弱として、例えば強い振動や、弱い振動等を示す情報を含めることができる。
例えば、図3において、エージェント機器20-1,20-6(スマートフォン、スマートウォッチ)には、インターフェース情報として「ハプティクス」が指定され、ケイパビリティ情報として「小刻みに震える」などの振動のパターンが指定される。
(b5)メッセージ通知
メッセージ通知は、例えば電子メールや、ソーシャルネットワークサービス(SNS:Social Networking Service)等のアプリケーションを利用してメッセージを通知する機能を表現手段として有する場合に指定される。このメッセージとしては、例えば、テキストのほか、画像や動画などを伴うようにしてもよい。
インターフェース情報としてメッセージ通知が指定される場合、ケイパビリティ情報としては、例えば、画像や動画等の対応メディアなどが指定可能である。例えば、図3において、エージェント機器20-1,20-3(スマートフォン、ディスプレイ付スピーカ)には、インターフェース情報として「メッセージ通知」が指定され、ケイパビリティ情報として「画像」、「動画」である対応メディアが指定される。
(b6)ランプ
ランプは、例えば、LED(Light Emitting Diode)等の光源を表現手段として有する場合に指定される。なお、このLED等の光源(ランプ)によって、点灯や明滅、色、輝度などを変化させることで、各種の情報を表現することが可能である。
インターフェース情報としてランプが指定される場合、ケイパビリティ情報としては、例えば、色の種類や点灯(点滅)のパターン、輝度などが指定可能である。具体的には、例えば、「赤」や「青」等の色の種類、「短い間隔」や「長い間隔」で点灯する等の点滅のパターン、「明るい」や「暗い」等の輝度などを示す情報を含めることができる。
例えば、図3において、エージェント機器20-5,20-6(犬型ロボット、スマートウォッチ)には、インターフェース情報として「ランプ」が指定され、ケイパビリティ情報として「青」である色の種類や「短い間隔」である点灯のパターンが指定される。
なお、各エージェント機器20が有するケイパビリティとしては、1又は複数のインターフェース情報と、1又は複数のケイパビリティ情報を含めることができる。ただし、ケイパビリティに、ケイパビリティ情報を含めるかどうかは任意である。
例えば、エージェント機器20-1(スマートフォン)は、「ディスプレイ」、「スピーカ」、「ハプティクス」、「メッセージ通知」、及び「ランプ」をインターフェース情報として有し、それらのインターフェース情報に対してケイパビリティ情報をそれぞれ有している。
図3において、対話応答設計器10では、開発者1により作成された汎用対話応答フレーム150を、様々なケイパビリティの対話応答を生成する際のシード(Seed:種)として利用して、あらかじめ用意した変換テンプレート160に適用する。これにより、対話応答設計器10では、様々なケイパビリティを有するエージェント機器20-1乃至20-7のそれぞれに適合した対話応答を生成して展開することができる。
(汎用対話応答フレームを用いた対話応答の生成の例)
図4は、汎用対話応答フレームを用いた対話応答の生成の例を示している。
図4においては、汎用対話応答フレーム150を用いた対話応答の生成の代表的な例として、変換テンプレート160を利用した対話応答(画面応答と発話応答:GUI + TTS)の展開事例を示している。
図4において、汎用対話応答フレーム150は、対話行動(ACT)、対話行動タイプ(TYPE)、及び対話行動に対するパラメタ(PRAMS)を記述する。
対話行動(ACT)とは、実際に起動するアプリケーション関数に対するIDを記述する。図4の汎用対話応答フレーム150では、対話行動として、「ACT: WETHER-SHOW」を記述しているが、これは、<アプリケーション名> - <アプリケーションの実行関数>、すなわち、"WETHER"であるアプリケーション名と、"SHOW"であるアプリケーションの実行関数を意味している。これには、実行時引数(例えば天気確認における日付情報)は含めない。
対話行動タイプ(TYPE)は、アプリケーションに依存しない一般的な対話行動の種類を記述する。例えば、対話行動タイプとしては、"INFORM","ACK","ASK","EXPLICIT_CONFIRM","IMPLICIT_CONFIRM"などを含む。図4の汎用対話応答フレーム150では、対話行動タイプとして、「TYPE:INFORM」を記述している。詳しくは後述するが、"INFORM"は、システム側からユーザ側に何らかの情報を提供する行為を指している。
対話行動に対するパラメタ(PRAMS)は、対話行動の実行時に必要なパラメタ情報を記述する。このパラメタ(PRAMS)は、対話行動によって異なり、必須又は任意とすることができる。図4の汎用対話応答フレーム150では、パラメタ(天気の情報)として、「DOMAIN:天気」、「DATE:明日」、「PLACE:大崎」、「CONTENTS:[{TEMP:30/24, STATE:晴れ}]」を記述している。
図4において、変換テンプレート160は、汎用対話応答フレーム150から、具体対話応答を生成するためのものである。この変換テンプレート160は、ケイパビリティの組み合わせごとに設計されており、様々な対話応答を生成することができる。
変換テンプレート160では、対話行動タイプ(TYPE)が"INFORM"である場合の例を示している。前述した通り、"INFORM"は、対話行動に依存しないため、他の"INFORM"の対話行動にも利用できるように設計されている。変換テンプレート160は、変数(例えば、$DATE,$DOMAIN等)を受け付けるようになっており、汎用対話応答フレーム150のパラメタ(PRAMS)の値を入力することで、最終的な対話応答を出力することができる。
図4においては、変換テンプレート160として、FULL TEXTと、GUI+TEXTの2パターンが用意されている。ここで、FULL TEXTは、受け付けた入力パラメタの値を、テキストのみに変換するものである。変換テンプレート160では、FULL TEXT 1とFULL TEXT 2の2種類のFULL TEXT変換用のテンプレートを用意している。
FULL TEXT
1. $DATEの$PLACEの$DOMAINは$CONTENTSです
2. $DATEの$DOMAINは$CONTENTS[0][STATE]です
また、例えばウェブアプリケーションを実行可能であれば、HTML(HyperText Markup Language)文書を、GUI要素として、変換テンプレート160を適用してもよい。HTML文書では、前述した場合と同様に、パラメタ(PRAMS)を受け付けることが可能であり、さらに適当な変数の値に応じてコンテンツを切り替えてもよい。
ここで、GUI+TEXTは、受け付けた入力パラメタの値を、GUIとテキストに変換するものである。変換テンプレート160では、GUI+TEXT 3とGUI+TEXT 4の2種類のGUI+TEXT変換用のテンプレートを用意している。
GUI+TEXT
3. $DATEの$DOMAINはこちらです + GUI(PARAMS)
4. こちらです + GUI(PARAMS)
<div>
日付:$DATE
場所:$PLACE
気温:$TEMP
</div>
<img src="sunny.png" % if$STATE == "晴れ" %>
<img src="rainy.png" % if$STATE == "雨" %></div>
このGUI+TEXT変換用のテンプレートの例では、$STATEで指定される文字列(例えば"晴れ"や"雨"等)に応じて、天気アイコン(例えば"sunny.png"や"rainy.png"等)を切り替えている。
図4において、図中の右側の変換例では、変換テンプレート160を経由することで、様々なケイパビリティに応じた対話応答が生成されている。
例えば、ケイパビリティとして、「スピーカ」であるインターフェース情報を有するエージェント機器20に対しては、変換テンプレート160にて、FULL TEXT変換用のテンプレート(FULL TEXT 1又はFULL TEXT 2)を適用することで、受け付けた入力パラメタの値がテキストのみに変換される。そして、この変換後のテキストは、テキスト読み上げ機能(TTS)により音声に変換され、当該音声が対話応答(発話応答)として出力される。
具体的には、FULL TEXT 1を適用することで、対話応答として、「明日の大崎の天気は晴れ、気温は30/24度です」である発話応答が出力される。また、FULL TEXT 2を適用することで、対話応答として、「明日の天気は晴れです」である発話応答が出力される。
また、例えば、ケイパビリティとして、「ディスプレイ」及び「スピーカ」であるであるインターフェース情報を有するエージェント機器20に対しては、変換テンプレート160にて、GUI+TEXT変換用のテンプレート(GUI+TEXT 3又はGUI+TEXT 4)を適用することで、受け付けた入力パラメタの値がGUIとテキストに変換される。そして、この変換後のテキストは音声に変換され、当該音声がGUIとともに対話応答(画面応答と発話応答)として出力される。
具体的には、GUI+TEXT 3を適用することで、対話応答として、場所や日付や気温、曇りアイコン等のGUIの画面応答とともに、「明日の天気はこちらです」である発話応答が出力される。また、GUI+TEXT 4を適用することで、対話応答として、場所や日付や気温、曇りアイコン等のGUIの画面応答とともに、「こちらです」である発話応答が出力される。
なお、同一のケイパビリティにおいても、複数の対話応答が生成可能であり、最終的な対話応答は、開発者1(例えばアプリケーション開発者)が決定すればよい。また、詳細は後述するが、対話応答設計ツール101では、自動生成された対話応答の変更手段も提供している。
(対話行動タイプごとの変換テンプレートの例)
ここで、対話行動タイプ(TYPE)ごとの変換テンプレート160の詳細を説明する。対話行動タイプ(TYPE)は、アプリケーション(ドメイン)に依存しない汎用的な行動タイプである。
対話行動タイプ(TYPE)としては、例えば、INFORM,ACK,ASK,EXPLICIT_CONFIRM,IMPLICIT_CONFIRMなどが含まれる。以下、対話行動タイプ(TYPE)ごとの変換テンプレート160の詳細を、(c1)乃至(c5)に示している。
(c1)INFORM
TYPE:INFORM
意味:対話システムからユーザに何らかの情報を伝える行動を示す。
変換テンプレート160の例:
「$1はこちらです」
「$1は$2です」
「$1は[$2, $3, ... $N]です」
対話応答の例:
「明日の天気は晴れです」
「本日は予定が3件あります 1つ目は、XXX, 2つ目はYYYです」
(c2)ACK
TYPE:ACK
意味:ユーザからの何らかの指示に対する応答を意味する。ACK-YES/ACK-NOのように詳細化してもよい。
変換テンプレート160の例:
「わかりました」
「承知しました」
「$1, 了解しました」
「わかりません」
対話応答の例:
U:「アラーム止めて」
S:「わかりました」

U:「テレビ消して」
S:「OK」

U:「テレビ消して」
S:「テレビが応答していません」(ACK-NOに相当)
(c3)ASK
TYPE:ASK
意味:対話システムがユーザの目的の達成(例えば、「天気を確認する」、「レストランを検索する」など)のために、ユーザに問い合わせをする行動を示す。
変換テンプレート160の例:
「$1を教えて下さい」
「$1を確認しますか?」
「$1は何ですか?」
対話応答の例:
「どこの天気を確認しますか?」
「いつの予定を確認しますか?」
「好きな料理は何ですか?」
(c4)EXPLICIT_CONFIRM
TYPE:EXPLICIT_CONFIRM
意味:明示的に情報を確認する行動を示す。一般に音声認識などを利用した際に、認識エンジンの信頼性が低い場合などに、ユーザに確認の意味も込めて行う。一般に、INFORM等の他のTYPEの行動と合わせて利用する場合が多い。
変換テンプレート160の例:
「$1ですね 合っていますか?」
「$1ですね?」
対話応答の例
「中華料理ですね?」、「近場で3件見つかりました」
(c5)IMPLICIT_CONFIRM
TYPE:IMPLICIT_CONFIRM
意味:前述のEXPLICIT_CONFIRMとは異なり、暗黙的に情報をユーザに確認する。暗黙的に行うため、ユーザには、確認に対する応答を求めるわけではないが、対話システムが情報を発話するため、例えば誤って認識されている場合などに、ユーザがそれに気づき、間違いを指摘できるというメリットがある。
変換テンプレート160の例:
「$1はこちらです」(INFORMと同一の内容でもよい)
「$1ですね こちらになります」(INFORMと同一の内容でもよい)
「$1ですね $2は何ですか?」(ASKと組み合わせたようなものでもよい)
(応答モダリティ変換)
上述した説明では、対話応答生成として、汎用対話応答フレーム150から自動展開する流れを説明したが、ここでは、既に生成された具体対話応答から、他のケイパビリティに変換する流れを説明する。
例えば、初期の段階では、スピーカを有するエージェント機器20を展開していたが、その後にサービスを拡大して、ディスプレイを有するエージェント機器20をさらに展開するときなどに、既存の対話応答資源を再利用できるという意味で有用な手段である。
図5及び図6は、異なるケイパビリティを有するエージェント機器20の間の変換の例を示している。
図5においては、「ディスプレイ」であるケイパビリティ(インターフェース情報)を有するエージェント機器20-1(スマートフォン)に展開した対話応答を、「スピーカ」であるケイパビリティ(インターフェース情報)を有する他のエージェント機器20-2(スマートスピーカ)で再利用するための変換の例を示している。
具体的には、エージェント機器20-1(スマートフォン)では、例えば、ユーザにより「明日の大崎の天気教えて」である発話がなされた場合に、その対話応答の大部分を画面応答(GUI)によって、グラフィカルな情報として表現している。このとき、これと同様の対話応答を、他のエージェント機器20-2(スマートスピーカ)で行う場合を想定する。
この場合において、エージェント機器20-2は、「スピーカ」であるインターフェース情報のみを有しているため、グラフィカルな情報は不要である。そのため、ここでは、グラフィカルな情報をテキストとして変換して(変換ルールに従い変換して)、発話応答(TTS)を可能にする。
これにより、エージェント機器20-2(スマートスピーカ)では、ユーザにより「明日の大崎の天気教えて」である発話がなされた場合に、その対話応答として、「明日の大崎の天気は曇り 最高気温は21度です」である発話応答が出力される。
また、図6においては、「スピーカ」であるケイパビリティ(インターフェース情報)を有するエージェント機器20-2(スマートスピーカ)に展開した対話応答を、「ディスプレイ」であるケイパビリティ(インターフェース情報)を有する他のエージェント機器20-3(ディスプレイ付スピーカ)で再利用するための変換の例を示している。
具体的には、エージェント機器20-2(スマートスピーカ)では、例えば、ユーザにより「明日の大崎の天気教えて」である発話がなされた場合、その対話応答として、「明日の大崎の天気は曇り 最高気温は21度です」である発話応答が出力される。このとき、これと同様の機能を、他のエージェント機器20-3(ディスプレイ付スピーカ)で行う場合を想定する。
この場合において、エージェント機器20-3は、「ディスプレイ」であるインターフェース情報を有しているため、その対話応答をGUIによって、グラフィカルな情報として表現することが可能である。そのため、ここでは、TTSのテキストをGUIのコンポーネントに変換(自動変換)して、グラフィカルな情報を表示可能にしている。
また、ここでは、開発者1によって、変換後の情報(グラフィカルな情報)を最終調整(カスタム)することが可能である。図6の例では、開発者1が最終調整を行うことで、グラフィカルな情報として、場所や日付や天気などの文字情報に対して、曇りアイコンや温度などの画像情報が追加されている。ここでは、土台の対話応答がすでに自動で生成されているため、開発者1は、ゼロから対話応答を設計するよりも作業量を軽減することができる。
これにより、エージェント機器20-3(ディスプレイ付スピーカ)では、ユーザにより「明日の大崎の天気教えて」である発話がなされた場合に、その対話応答として、場所や日付や天気、曇りアイコンや温度などのグラフィカルな情報を含む画面応答が出力される。
なお、エージェント機器20-3(ディスプレイ付スピーカ)は、「スピーカ」であるインターフェース情報を有していることから、例えば、対話応答の一部が発話応答により出力されるように調整してもよい。また、図5の例においても、図6の例と同様に、開発者1が最終調整を行ってもよい。また、図5及び図6に例示した変換方法の詳細は後述する。
(ルールベースによる変換アルゴリズム)
異なるケイパビリティを有するエージェント機器20の間の変換方法としては、当該変換方法をルールとして記載するルールベースの変換アルゴリズムを用いることができる。この変換方法では、ルールベースの変換アルゴリズムをあらかじめ設計しておく必要があるが、調整が容易で、柔軟な対話応答を設計可能である。
なお、ここでは全てを手動で設計する必要はなく、例えばデータ構造に着目して規則性などがある場合にはある程度は自動化することもできる。またこれらの変換は、例えば開発者1などによって、誰でも気軽に追加や編集等の作業を行うことができる。以下、具体例を、(d1)乃至(d2)に示している。
(d1)TTSとGUIの相互変換
発話応答(TTS)と画面応答(GUI)の相互変換では、リスト表記の解析と展開が行われる。このとき、最大リスト項目数などは可変であって、パラメタとして設定可能である。
TTSの例:
「今週の天気は、東京は晴れ、京都は雨、福岡も雨でしょう」
ここでは、テキストのリスト構造が検出される。このリスト構造の検出の際には、専用の検出器により学習してもよいし、人手によりリスト構造のアノテーションをおこなってもよい。なお、スケジュールやToDoリストなど、リスト構造を扱うアプリケーションにも応用が可能である。
GUIの例:
<p>今週の天気</p>
<ul>
<li>東京:晴れ</li>
<li>京都:雨</li>
<li>福岡:雨</li>
</ul>
ここでは、並列情報を解析(例えば形態素解析)し、リスト化して表示する。また、画面応答(GUI)から発話応答(TTS)への変換に際し、HTML文書では、リスト構造が明示的(ul-li)であるため、検出は容易であり、他のケイパビリティへの展開は容易である。
GUI+TTSの例:
//TTS
「今週の天気は、こちらです」

//GUI
<ul>
<li>東京:晴れ</li>
<li>京都:雨</li>
<li>福岡:雨</li>
</ul>
発話応答(TTS)と画面応答(GUI)の両方を用いる場合には、並列情報を解析してリスト化表示を意識したTTSのテキストを生成する。ここでは、リスト化表示を意識することで、例えば、TTSのテキストを省略することができる。
(d2)簡潔発話応答と、SE(Sound Effect)応答と、GUIとの相互の変換
例えば、対話行動タイプ(TYPE)がACK(ACK-YES/ACK-NO)となる場合には、以下に示すように、様々なシチュエーションで使いまわすことができる。
TTSの例:
U:「電気消して」
S:「電気を消しました」

U:「電気消して」
S:「電気を消しませんでした」
SEの例:
U:「電気消して」
S:「ピコーン」(成功の効果音)

U:「電気消して」
S:「ブブー」(失敗の効果音)
GUIの例:
U:「電気消して」
S:<img src="OK-mark.png">(成功の画像表示)

U:「電気消して」
S:<img src="FAIL-mark.png">(失敗の画像表示)
(変換後の対話応答のカスタムサポート)
HTML等のマークアップ言語を用いる場合には、データ構造とレイアウトデザインを分離できるため、対話応答のカスタムとの相性がよい。特に、HTMLの場合には、CSS(Cascading Style Sheets)等のスタイルシートを利用することで、生成された対話応答のカスタムを容易に行うことができる。
ここで用いるスタイルシートとしては、標準で用意されているものを選択してもよいし、開発者がレイアウトを修正してもよい。図7には、変換後の対話応答のカスタムレイアウトの反映の例を示している。
例えば、HTML文書において、<ul class="custom-list">….</ul>のような構成を用いることで、このcustom-listクラスのCSSを編集するだけで、レイアウトを変更することができる。この場合、データ構造はそのまま利用することができるため、図7のA乃至Cに示すように、異なるCSSを用いることで、「明日の大崎の天気は曇り 最高気温は21度です」である画面応答の表示レイアウトを変えることができる。
(パラメタ調整)
言語や方言、丁寧度などのパラメタを調整するようにしてもよい。方言や丁寧度等を調整することで、画面応答(GUI)で表示されるテキスト(文字)や、発話応答(TTS)で読み上げられるテキストのイントネーションなどが変更可能となる。
(機械学習ベースによる変換アルゴリズム)
ここでは、例えば、機械学習の手法の1つである深層学習(Deep Learning)を用いて、ルールやヒューリスティックに頼らずに対話応答を生成することも可能である。
図8は、Sequence-to-Sequenceモデルによる任意のケイパビリティの対話応答の生成の例を示している。
図8に示したSequence-to-Sequenceモデルでは、現在ある既存の対話応答、又は汎用対話応答フレーム150が系列として入力され、所望の対話応答が系列として出力される。具体的には、「大崎は晴れです」であるテキストを入力として、「大崎」であるテキストと、太陽のアイコン(画像)とからなる対話応答が出力される。
ここでは、タグ(図中の「TAG」)として、"HTML"を入力することで、HTML形式の対話応答が出力される。ただし、タグを入力するほか、例えば、ケイパビリティのペアごとに、モデルを学習してもよい。
(コンテキスト利用による動的対話応答生成)
同一のユーザ発話に対しても、コンテキストによっては、対話応答を柔軟にカスタマイズする必要がある。ここでは、コンテキストに関するコンテキスト情報として、例えば、時間帯、人別、距離別、シーン別などに関する情報を含めることができる。以下、コンテキスト情報に応じた対話応答の例を、(e1)乃至(e4)に示している。
(e1)時間帯
ユーザからの発話に応じた対話応答を行うに際して、その時間帯に応じた対話応答を生成することができる。例えば、夜の時間帯である場合において、エージェント機器20が、ディスプレイにおける表示画面の輝度を下げて画面応答を行ったり、あるいはスピーカからの再生音量を落として発話応答を行ったりするような対話応答を生成することができる。
(e2)人別
その周囲に存在する人物に応じた対話応答を生成することができる。例えば、エージェント機器20が、その周囲に存在する人に合わせて、一人用、夫婦用、家族用、又はゲスト用などの画面応答や発話応答をするような対話応答を生成することができる。
(e3)距離別
対話を行うユーザとの距離に応じた対話応答を生成することができる。例えば、エージェント機器20が、ユーザとの距離が離れている場合には、画像サイズや、テキストのフォントサイズを大きくした画面応答を行ったり、あるいはスピーカからの再生音量を上げた発話応答を行ったりするような対話応答を生成することができる。
(e4)シーン別
シーンに応じた対話応答を生成することができる。例えば、ユーザが電車内にいる場合には、エージェント機器20では、スピーカからの発話応答を、他のケイパビリティ(例えば、電子メールや振動等)による応答に置き換えるような対話応答を生成することができる。
また、例えば、部屋内に客人がいる場合には、エージェント機器20では、ユーザのプライベートな情報(例えば個人的な予定等)は、画面応答や発話応答の代わりに、対応するメッセージを携帯端末(例えば、ユーザの所持するスマートフォン等)に通知するような対話応答を生成することができる。
なお、ここでは、コンテキスト情報として、時間帯、人別、距離別、シーン別を利用した場合を例示したが、これらは一例であって、例えば、エージェント機器20のセンサ部で検出されるセンシング情報等の情報に応じた他のコンテキストを用いるようにしてもよい。
(アクセシビリティ対応)
本技術を利用したアクセシビリティへの配慮も可能である。例えば、ディスプレイ、スピーカ、及びハプティクス(例えば振動素子)をケイパビリティ(インターフェース情報)として有しているエージェント機器20に対して、全てのケイパビリティ(インターフェース情報)の組み合わせの対話応答を生成可能なようにしておく。
これにより、エージェント機器20においては、アクセシビリティに対応したケイパビリティが選択され、様々なユーザに応じた柔軟なアクセシビリティへの対応が可能になる。
例えば、事前の設定やセンシング情報等に基づき、全盲のユーザに対しては、画面応答(GUI)の機能はオフにして、発話応答(TTS)の機能のみのケイパビリティに切り替えることができる。また、例えば、難聴のユーザに対しては、発話応答(TTS)の機能をオフにして、画面応答(GUI)の機能に切り替えることができる。
(ケイパビリティ情報に応じた出力)
エージェント機器20は、同一の機器でも、表現性能(例えばCPU(Central Processing Unit)性能や画面解像度、サウンドチャンネル数等)が異なる場合があり、その表現性能の違いはケイパビリティ(ケイパビリティ情報)により表される。そして、エージェント機器20は、ケイパビリティ情報に応じた対話応答を出力することができる。
図9は、エージェント機器20における表現性能に応じた対話応答の切り替えの例を示している。
例えば、画面応答としてxxx.mp4である動画ファイルを再生する場合に、その表現性能としてCPU性能が高い等、エージェント機器20-1(スマートフォン)が高スペックマシンであるときには、動画ファイルをそのまま再生する。
一方で、例えば、表現性能としてCPU性能が低い等、エージェント機器20-1(スマートフォン)が低スペックマシンであるときには、動画ファイルのサムネイルを利用したり、あるいは動画ファイルから所定の形式(例えばGIF(Graphics Interchange Format)形式)の静止画ファイルを生成したりして、画面応答として静止画を表示する。
このように、対話応答設計器10では、展開先のエージェント機器20のケイパビリティ(ケイパビリティ情報)に応じた対話応答(画面応答や発話応答等)を生成して展開することができる。なお、この表現性能に応じた対話応答の変換は、対話応答設計器10が自動で処理を行ってもよいし、開発者1が明示的に指示してもよい。
(付与応答の利用)
事前に人のデータから学習した対話モデル、あるいは人手による対話設計を利用した対話モデルを利用して、新規対話応答又は既存対話応答に対して、付加情報を含めた付与応答(自動付与応答)を用いることができる。開発者1は、付与応答に関しては何もしなくても利用可能である。また、開発者1は、付与応答に対し、必要に応じてパラメタによる細かい調整も可能である。以下、付与応答の例を、(f1)乃至(f4)に示している。
(f1)新規応答型
新規応答型では、例えば、簡単な事実に関する質問応答(QA:Question Answering)などについては、開発者が対話応答を設定していなくても、応答できるようにする。換言すれば、ビルトインのQA機能を提供しているとも言える。
第1の具体例:
U:「アメリカの大統領は?」
S:「XXXXXXXXです」
第2の具体例:
U:「テレビつけて」
S:「ピコーン」(効果音)
(f2)新規付与型
新規付与型では、例えば、相槌や簡単な挨拶などの言葉を付与する。付与する言葉の頻度やタイミングは、開発者により設定される。当該タイミングとしては、例えば、ユーザが長く話しているときや、サービスのロードに時間がかかっているときなどが想定される。
第1の具体例:
U:「今日は楽しいことがあってね」
S:「うんうん」
第2の具体例:
S:「ヒマラヤは8848mなんですよ」
U:「君賢いね!」
S:「ありがとう!」
(f3)追加付与型
追加付与型では、例えば、自然な発話の再現やバックグラウンドサービスの実行に時間がかかっている場合などに、フィラーを追加したり、簡単な挨拶を付け加えたりする。
第1の具体例:
U:「渋谷でやっているイベント見せて」
S:「えっーと、こちらになります」
第2の具体例:
U:「おはよ 今日の予定見せて」
S:「おはようございます 今日の予定は、・・・」
(f4)機能補填型
機能補填型では、例えば、音声認識や意味解析の信頼度が低かった場合に、対話応答に、明示的又は暗黙的な確認情報を付与する。
第1の具体例:
U:「天気見せて、※○△明日の」(ノイズが入ってしまい音声認識の精度が低いケース)
S(オリジナル):「天気はこちらです」 + GUI
S(他の第1の例):「明日の天気はこちらです」 + GUI
S(他の第2の例):「明日ですね 明日の天気はこちらです」 + GUI
以上、対話応答設計器10の機能を中心に説明した。この対話応答設計器10では、対話応答を出力するエージェント機器20ごとのケイパビリティ(インターフェース情報とケイパビリティ情報を含む)が取得され、対話応答を生成する際のシード(種)として利用される汎用対話応答フレーム150から、取得されたケイパビリティに応じた対話応答が生成され、生成された対話応答がエージェント機器20ごとに展開される。
つまり、汎用対話応答フレーム150は、汎用の対話応答の仕様に則して記述されたフレーム(ファイル)であり、対話応答設計器10は、汎用対話応答フレーム150、変換テンプレート160、及びケイパビリティリスト103を入力として、任意のエージェント機器20に適合した対話応答を出力するジェネレータとして構成される。
これにより、開発者1は、汎用対話応答フレーム150を記述するだけで、エージェント機器20が有するケイパビリティ(表現手段)を意識することなく、対話応答を設計(自動設計)することが可能とされる。そのため、1つの汎用の対話応答の仕様をメンテナンスするだけで、様々なケイパビリティを有するエージェント機器20に対応することができる。また、例えば、対話エージェントが対応する機器が変化(増減)したときでも柔軟に対応することができる。その結果として、より適切に対話応答を提供することができる。
また、対話応答設計器10では、特定のエージェント機器20に向けた設計済みの対話応答を、異なるケイパビリティを有する他のエージェント機器20の対話応答に変換することができる(上述の「応答モダリティ変換」)。さらに、ビルトインによる対話応答のテンプレートを用いるだけでなく、開発者1がカスタムすることで、エージェント機器20への展開に際して、細かな対話応答の展開ルールを設計することができる。
なお、上述した特許文献1に開示された技術は、入力された文章に対して、事前設計された対話DBと単語間の相関を計算して対話生成手段を利用し、設計済み対話DB及び対話生成手段から、出力する対話を決定するものであって、開発者がすべての対話応答を設計しなくても、ある条件下においては対話生成手段を用いることで、開発者の労力を減らそうとしている。
一方で、本開示に係る技術は、対話応答設計器10によって、様々な表現手段(ケイパビリティ)を有するエージェント機器20への対話応答の展開による開発者の労力の低減であるため、そのアプローチが異なっている。また、本開示に係る技術は、様々な表現手段(ケイパビリティ)を有するエージェント機器20を対象としているが、特許文献1に開示された技術は、テキスト表示と音声合成発話を対象としており、その対象が限定的である。
また、特許文献1に開示された技術では、機器に適合したテンプレート展開のような概念は存在せず、対話応答の一部又は全部を、対話生成手段により書き換えるものであって、その点においても、本開示に係る技術と大きく異なっている。さらに、レスポンシブウェブデザインと称される手法が知られているが、このデザイン手法は、ディスプレイ表示に限定したものであり、様々な表現手段(ケイパビリティ)を有するエージェント機器20を対象とする本開示に係る技術とは異なっている。
(エージェント機器の構成)
ところで、エージェント機器20では、対話応答設計器10により展開された対話応答を実行するに際し、展開された対話応答をそのまま出力するだけでなく、ユーザに対して、より適切な対話応答が出力されるようにしてもよい。
図10は、本技術を適用した情報処理装置としてのエージェント機器の一実施の形態の構成の例を示す図である。
エージェント機器20は、制御部200、センサ部201、カメラ部202、マイク部203、記憶部204、通信部205、電源部206、及びインターフェース207を含んで構成される。
制御部200は、例えば、CPU等のプロセッサやFPGA(Field Programmable Gate Array)などから構成される。制御部200は、各部の動作の制御や各種の演算処理を行う中心的な処理装置である。制御部200は、対話応答処理部211を含む。対話応答処理部211は、対話応答に関する処理を行う。
センサ部201は、例えば、各種のセンサデバイス等から構成される。センサ部201は、ユーザやその周辺などのセンシングを行い、その結果得られるセンシング情報を、制御部200に供給する。
ここで、センサ部201としては、例えば、磁場(磁界)の大きさや方向を検出する磁気センサ、加速度を検出する加速度センサ、角度(姿勢)や角速度、角加速度を検出するジャイロセンサ、近接するものを検出する近接センサなどを含めることができる。
センサ部201にはまた、温度を検出する温度センサや、湿度を検出する湿度センサ、周囲の明るさを検出する環境光センサなどの周囲の環境を測定するためのセンサや、呼吸や脈拍、指紋、虹彩などの生体情報を検出する生体センサなどを含めることができる。
カメラ部202は、例えばCMOS(Complementary Metal Oxide Semiconductor)イメージセンサやCCD(Charge Coupled Device)イメージセンサ等のイメージセンサと、カメラISP(Image Signal Processor)等の信号処理部を含んで構成される。カメラ部202では、イメージセンサによって被写体を撮像して得られる撮像信号に対し、信号処理部が各種の信号処理を行うことで得られる画像情報が生成され、制御部200に供給される。
マイク部203は、外部からの音(音声)を電気信号に変換し、その結果得られる音声情報を、制御部200に供給する。
記憶部204は、例えば半導体メモリやHDD(Hard Disk Drive)などの記憶装置から構成される。記憶部204は、制御部200からの制御に従い、各種のデータを記憶する。なお、記憶部204には、対話応答設計器10により展開された対話応答(以下、展開済み具体対話応答ともいう)をデータベース(後述する図12又は図13の展開済み具体対話応答DB250)として記憶することができる。
通信部205は、所定の規格に準拠した無線通信又は有線通信に対応した通信モジュールなどから構成される。この通信モジュールとしては、例えば、無線LAN(Local Area Network)や、セルラ方式の通信(例えばLTE-Advancedや5G等)等の通信方式に対応したものとされる。通信部205は、制御部200からの制御に従い、各種の情報を、他の機器(例えば、対話応答設計器10)との間でやりとりする。
電源部206は、制御部200からの制御に従い、外部電源又は蓄電池から得られる電源電力を、制御部200を含むエージェント機器20の各部に供給する。
インターフェース207は、ユーザ2との間で情報をやりとりするためのユーザインターフェースである。換言すれば、インターフェース207は、エージェント機器20が持つ様々な対話応答の表現手段であると言える。
例えば、インターフェース207は、ディスプレイ221、スピーカ222、振動素子223、又はランプ224などの表現手段を含む。この表現手段は、エージェント機器20ごとに同一又は異なるものであって、エージェント機器20ごとに、1つの表現手段に限らず、複数の表現手段を設けてもよい。そして、エージェント機器20においては、インターフェース207(ディスプレイ221等の表現手段)に応じたインターフェース情報とケイパビリティ情報がケイパビリティとされるのである。
なお、図10に示した構成は一例であって、すべての構成要素を備える必要はなく、例えば、カメラ部202やマイク部203などの一部の構成要素を除いた構成としてもよい。あるいは、図10に示した構成に対して、例えば、GPS(Global Positioning System)信号を含む位置情報を検出するための位置情報検出部などの他の構成要素を加えてもよい。
(対話応答実行処理の流れ)
次に、図11のフローチャートを参照して、エージェント機器20により実行される対話応答実行処理の流れを説明する。
ただし、図11に示した処理を実行するに際して、エージェント機器20には、対話応答設計器10により展開された展開済み具体対話応答が、記憶部204(後述する図12等の展開済み具体対話応答DB250)に記憶されているものとする。
ステップS201において、対話応答処理部211は、対話応答イベントが発生したかどうかを判定する。この対話応答イベントは、対話応答システムが対話応答を実際に実行し、表出させる原因(トリガ)となるイベントである。
対話応答イベントとしては、ユーザ2からの発話が一般的ではあるが、対話応答システムが能動的に検出したユーザ情報や、別サービスからのイベントフックなども該当する。前者のユーザ情報としては、例えば、「帰宅したら音楽を再生しよう」等の情報が含まれる。また、後者のイベントフックとしては、例えば、ユーザがスケジュール管理のアプリケーションで登録した予定になったときなどが含まれる。
ステップS201の判定処理で、対話応答イベントが発生したと判定された場合、処理は、ステップS202に進められる。
ステップS202において、対話応答処理部211は、展開済み具体対話応答の中から、発生した対話応答イベントに対応する対話応答を選択する。ここで選択される対話応答は、1つに限らず、複数選択されてもよい。すなわち、エージェント機器20ごとのケイパビリティの違いによって、該当する対話応答が複数存在する場合などが想定される。以下、ここで選択された対話応答を、特に候補対話応答と称する。
ステップS203において、対話応答処理部211は、コンテキスト情報を取得する。このコンテキスト情報としては、例えば、現在のユーザの状況、エージェント機器20の状態、周辺の環境状態、対話履歴など、コンテキストに関する様々な情報が含まれる。例えば、コンテキスト情報は、ユーザ設定やセンシング情報、外部のサービス等の情報に基づき、取得することができる。
ステップS204において、対話応答処理部211は、取得したコンテキスト情報に基づいて、コンテキストに合致していない対話応答を、候補対話応答から除外する。
ここでは、例えば、ユーザが全盲の場合には、ケイパビリティ(インターフェース情報)に応じてディスプレイは使用不可として、候補対話応答から対応する対話応答を除外する。また、例えば、時間帯が夜の遅い時間の場合には、スピーカは使用不可として対応する対話応答を除外する。あるいは、例えば、エージェント機器20の周辺に大型のディスプレイ装置が設置されている場合には、当該ディスプレイ装置を利用するとして、他のディスプレイ装置に関する対話応答を除外する。
ステップS205において、対話応答処理部211は、候補対話応答が1件以上存在するかどうかを判定する。ステップS205において、候補対話応答が1件以上存在すると判定された場合、処理は、ステップS206に進められる。
ステップS206において、対話応答処理部211は、取得したコンテキスト情報に基づいて、候補対話応答の中から、コンテキストに最も合致した対話応答を選択する。
ここでは、例えば、候補対話応答の中から、コンテキストの条件に最も即した対話応答を選択できる。あるいは、例えば、ケイパビリティを最大限活用する対話応答を選択したり、最も消費電力が抑えられる対話応答を選択したりするなど、開発者1が自由に選択方針(ポリシー)を設定してもよい。
一方で、ステップS205において、候補対話応答が存在しないと判定された場合、処理は、ステップS207に進められる。
ステップS207において、対話応答処理部211は、ステップS204の処理でのコンテキスト適用前の候補対話応答を再取得する(取得し直す)。
すなわち、ここでは、コンテキストに沿った事前定義済みの対話応答が存在しなかったため、一度コンテキストは無視して、該当する対話応答を取り戻している。換言すれば、ここでは、コンテキストフィルタを取り除いているとも言える。
ステップS208において、対話応答処理部211は、ビルトイン機能によって(汎用的な処理を行うためにあらかじめ用意されたコンテキストを用いて)、対話応答へのコンテキストの適用を行い、具体対話応答を再生成する(生成し直す)。
ここでは、例えば、コンテキストに応じた対話応答になるように調整(自動調整)がなされる。すなわち、上述した「コンテキスト利用による動的対話応答生成」に示した場合と同様に、例えば、時間帯や人別、距離別、シーン別などに応じて、動的に具体対話応答が生成される。
なお、コンテキストの利用による対話応答の設計は、事前に開発者1(アプリケーション開発者)が行ってもよいし、あるいは、対応するコンテキスト対応済みの対話応答が存在しない場合には、対話システム側で(自動で)サポートするような形式を採用してもよい。
また、このビルトイン機能がない場合、あるいはビルトイン機能を使用しても完全にコンテキストに沿った対話応答を生成できない場合には、例えば、次のような処理を行うことができる。すなわち、対話応答処理部211では、コンテキストを最も満たせる対話応答を選択するほか、例えば、対話応答ができない旨を伝える応答(通知)が生成されるようにしてもよい。この応答としては、例えば、「現在その機能を実行できません」であるメッセージを出力したり、あるいは、LEDを赤く点滅させたりすることができる。
ステップS206又はS208の処理が終了すると、処理は、ステップS209に進められる。ステップS209において、対話応答処理部211は、インターフェース207を介して対話応答を出力する。これにより、ユーザ2は、エージェント機器20から出力される対話応答を認識することができる。
以上、対話応答実行処理の流れを説明した。
ここで、図12及び図13には、図11に示した対話応答実行処理の各処理を模式的に表している。図12は、一般的な対話応答の生成の例を示している。
図12において、エージェント機器20では、対話応答イベントが発生した場合(図11のS201の「YES」)に、展開済み具体対話応答DB250から、対話応答イベントに応じた展開済み具体対話応答が取得される(図11のS202)。
このとき、エージェント機器20では、ユーザ設定やセンシング情報、外部のサービス等の情報に基づき、コンテキスト情報が取得され(図11のS203)、当該コンテキスト情報に基づき、コンテキストに合致した対話応答がフィルタリングされる(図11のS204)。
そして、エージェント機器20では、候補対話応答が1件以上存在する場合には、候補対話応答の中から選択された対話応答を出力する(図11のS206,S209)。一方で、候補対話応答が存在しない場合には、対話応答へのコンテキストの適用を行うことで具体対話応答を再生成して出力する(図11のS207乃至S209)。
なお、ここでは、エージェント機器20内で処理を実行するだけでなく、例えば、クラウド経由でコンテキストに応じた動的な対話応答の生成などの処理が行われるようにしてもよい。
また、図13は、対話応答イベントとして、「天気教えて」であるユーザ2からの発話を受けた場合における対話応答の生成の例を示している。
図13において、エージェント機器20-3(ディスプレイ付スピーカ)では、「天気教えて」であるユーザ発話が、対話応答イベントとして発生した場合(図11のS201の「YES」)、展開済み具体対話応答DB250から、当該対話応答イベントに対応する展開済み具体対話応答として2件の対話応答が取得される(図11のS202)。
1件目の対話応答は、「ディスプレイ」と「スピーカ」であるケイパビリティに応じた画面応答(GUI)と発話応答(TTS)によるものである。一方で、2件目の対話応答は、「スピーカ」であるケイパビリティに応じた発話応答(TTS)によるものである。
このとき、エージェント機器20-3では、センシング情報等の情報に基づき、コンテキスト情報が取得され、ユーザ2は現在キッチンで目が離せない状況、すなわち、エージェント機器20-3には目を向けていない状況であることが認識される(図11のS203)。そのため、2件の対話応答のうち、画面応答(GUI)を含む1件目の対話応答をコンテキストに合致していないものとして除外する(図11のS204)。
これにより、エージェント機器20では、2件目の対話応答(発話応答(TTS))がコンテキストに最も合致した対話応答であるとして選択され(図11のS206)、対話応答として、「天気は晴れます」である発話応答が出力される(図11のS209)。
以上のように、エージェント機器20では、対話応答のイベントが発生した場合に、対話応答を生成する際のシード(種)として利用される汎用対話応答フレーム150からケイパビリティ(インターフェース情報とケイパビリティ情報を含む)に応じて生成された対話応答が取得され、コンテキストに関するコンテキスト情報が取得され、取得された対話応答の中から、コンテキストに適合した対話応答が選択され、選択された対話応答が出力される。
ところで、エージェント機器20が有するケイパビリティに選択肢が多いほど、その対話応答の表現により多くの情報量を載せることができる。本技術では、コンテキスト情報やケイパビリティ情報に応じて、表現すべき機器や対話応答を変化させるようなモダリティ変換を行うことができるが、ここでは、特に、その変換時に、エージェント機器20ごとの表現能力(ケイパビリティ情報)が大きくかわるとき(大差があるとき)のモダリティ変換について説明する。
(g1)表現能力が大きいものから小さいものに変換
表現能力が大きいもの(SRC:Source)から小さいもの(DST:Destination)に変換する場合には、情報量を落とすか、あるいは他のデバイスなどと連携して情報量を維持する方法が想定される。
ここでは、エージェント機器20-4(テレビ受像機)がSRCとなり、エージェント機器20-6(スマートウォッチ)がDSTとなる場合を想定して例示する。
なお、テレビ受像機では、ケイパビリティとして、「ディスプレイ」、「スピーカ」であるインターフェース情報と、「ディスプレイ」に対する「大型(高解像度)」である画面サイズ(画面解像度)のケイパビリティ情報を含む。また、スマートウォッチは、「ディスプレイ」、「ハプティクス」、「ランプ」であるインターフェース情報と、「ディスプレイ」に対する「小型(超低解像度)」である画面サイズ(画面解像度)のケイパビリティ情報を含む。
このとき、スマートウォッチにおいて、テレビ受像機に対する対話応答に応じた画面応答(GUI)のみを行う場合には、例えば、対話応答に応じた情報を表示する際の解像度を落としたり、分割して表示したりすることでGUIの表示が可能となる。この分割表示としては、例えば、分割した情報を、スライドショーにより表示したり、ユーザ2のタッチ操作で表示を切り替えたりすることができる。
また、スマートウォッチにおいては、画面応答(GUI)を、当該応答に関するアイコンや簡単な説明の表示に留めて、他のデバイスを利用して情報を伝えるようにしてもよい。
具体的には、スマートウォッチでは、例えば天気予報の表示であれば、天気予報を提供するアプリケーションのアイコンや、”天気”という文字列だけを表示する一方で、スマートフォンと連携する場合には、そのディスプレイを利用して天気予報の詳細な情報を表示することができる。あるいは、付近に設置されたスピーカや、近距離無線通信(例えばBluetooth(登録商標))に対応したイヤホンなどに対して、画面応答(GUI)から発話応答(TTS)への変換を行い、天気予報の詳細な情報(画面応答に相当する情報)を、発話応答により出力してもよい。
(g2)表現能力が小さいものから大きいものに変換
表示能力が小さいもの(SRC)から大きいもの(DST)に変換する場合には、そのまま情報量を維持して対話応答を出力することができる。そのため、余剰能力に情報を付与してもよいし、オリジナルの対話応答に対して情報量を付与してもよい。勿論、何ら情報量を付与しないまま、オリジナルの対話応答を維持してもよい。
ここでは、エージェント機器20-6(スマートウォッチ)がSRCとなり、エージェント機器20-4(テレビ受像機)がDSTとなる場合を想定して例示する。
このとき、テレビ受像機において、スマートウォッチに対する対話応答に情報量を付与して画面応答(GUI)を行う場合には、例えば、ユーザ2から「今日の天気」を質問された場合には、今日の天気に関する情報を表示するとともに、今週の天気や付近の天気、雨雲レーダなどの情報を、余ったスペースに表示することができる。
また、ここでは、今日の天気に関する情報とともに、コンテキスト情報等の情報に基づき、例えば、ユーザ2の今日の予定や、頻繁に起動するアプリケーションの応答や広告などの情報を、余ったスペースに表示してもよい。さらには、テレビ受像機では、TTSを利用した音声により、例えば、ユーザに挨拶をしたり、今日の占いなどを伝えたりしてもよい。
<2.変形例>
図14は、本技術を適用したネットワークシステムの構成の例を示す図である。
図14のネットワークシステムは、対話応答設計器10、エージェント機器20-1乃至20-N、及びサーバ30を含んで構成され、インターネット等のネットワーク40を介して相互に接続されている。
対話応答設計器10において、対話応答設計ツール101の機能(の一部又は全部)がネットワーク40を介してサーバ30により提供されるようにしてもよい。また、対話応答変換関数群102、及び対話応答DB104は、サーバ30により管理され、ネットワーク40を介して、対話応答設計器10(の対話応答設計ツール101)が適宜アクセスするようにしてもよい。また、対話応答変換学習器11は、サーバ30により提供されるようにしてもよい。
エージェント機器20において、対話応答処理部211の機能(の一部又は全部)がネットワーク40を介してサーバ30により提供されるようにしてもよい。また、エージェント機器20により提供される対話システムの機能の一部(例えば、音声認識や意味解析等の機能)が、ネットワーク40を介してサーバ30により提供されるようにしてもよい。
また、展開済み具体対話応答DB250がサーバ30により管理され、ネットワーク40を介して、エージェント機器20(の対話応答処理部211)が適宜アクセスするようにしてもよい。さらに、エージェント機器20は、ネットワーク40を介して対話応答設計器10と通信を行い、ケイパビリティを送信したり、あるいは対話応答を受信したりしてもよい。
<3.コンピュータの構成>
上述した一連の処理(例えば、図2に示した対話応答設計処理、又は図11に示した対話応答実行処理)は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、各装置のコンピュータにインストールされる。図15は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成の例を示す図である。
コンピュータ1000において、CPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。バス1004には、さらに、入出力インターフェース1005が接続されている。入出力インターフェース1005には、入力部1006、出力部1007、記録部1008、通信部1009、及び、ドライブ1010が接続されている。
入力部1006は、マイクロフォン、キーボード、マウスなどよりなる。出力部1007は、スピーカ、ディスプレイなどよりなる。記録部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインターフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体1011を駆動する。
以上のように構成されるコンピュータ1000では、CPU1001が、ROM1002や記録部1008に記録されているプログラムを、入出力インターフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ1000(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の伝送媒体を介して提供することができる。
コンピュータ1000では、プログラムは、リムーバブル記録媒体1011をドライブ1010に装着することにより、入出力インターフェース1005を介して、記録部1008にインストールすることができる。また、プログラムは、有線又は無線の伝送媒体を介して、通信部1009で受信し、記録部1008にインストールすることができる。その他、プログラムは、ROM1002や記録部1008に、あらかじめインストールしておくことができる。
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。また、プログラムは、1のコンピュータ(プロセッサ)により処理されるものであってもよいし、複数のコンピュータによって分散処理されてもよい。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
また、上述した処理の各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本技術は、以下のような構成をとることができる。
(1)
対話応答を出力する機器ごとのケイパビリティを取得し、
前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得した前記ケイパビリティに応じた前記対話応答を生成し、
生成した前記対話応答を前記機器ごとに展開する
処理部を備える
情報処理装置。
(2)
前記ケイパビリティは、前記機器が有するインターフェースに関するインターフェース情報と、前記インターフェースの能力に関するケイパビリティ情報を含む
前記(1)に記載の情報処理装置。
(3)
前記対話応答フレームは、汎用の対話応答の仕様に則して記述されたフレームである
前記(1)又は(2)に記載の情報処理装置。
(4)
前記処理部は、前記対話応答フレームを、前記ケイパビリティの組み合わせごとの変換用のテンプレートを含む変換テンプレートに適用して、前記対話応答を生成する
前記(3)に記載の情報処理装置。
(5)
前記処理部は、前記ケイパビリティに応じた前記対話応答を、他のケイパビリティに応じた前記対話応答に変換する
前記(1)乃至(4)のいずれかに記載の情報処理装置。
(6)
前記処理部は、ルールベースによる変換アルゴリズム、又は機械学習ベースによる変換アルゴリズムを用いて、前記対話応答を変換する
前記(5)に記載の情報処理装置。
(7)
前記処理部は、
コンテキストに関するコンテキスト情報に基づいて、前記ケイパビリティを選択し、
選択した前記ケイパビリティに応じた前記対話応答を生成する
前記(1)乃至(6)のいずれかに記載の情報処理装置。
(8)
前記処理部は、
アクセシビリティに対応した前記ケイパビリティを選択し、
選択した前記ケイパビリティに応じた前記対話応答を生成する
前記(1)乃至(7)のいずれかに記載の情報処理装置。
(9)
前記処理部は、前記対話応答に対して付加情報を含める
前記(1)乃至(8)のいずれかに記載の情報処理装置。
(10)
情報処理装置が、
対話応答を出力する機器ごとのケイパビリティを取得し、
前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得した前記ケイパビリティに応じた前記対話応答を生成し、
生成した前記対話応答を前記機器ごとに展開する
情報処理方法。
(11)
対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答を取得し、
コンテキストに関するコンテキスト情報を取得し、
取得した前記対話応答の中から、前記コンテキストに適合した前記対話応答を選択し、
選択した前記対話応答を出力する
処理部を備える
情報処理装置。
(12)
前記ケイパビリティは、インターフェースに関するインターフェース情報と、前記インターフェースの能力に関するケイパビリティ情報を含む
前記(11)に記載の情報処理装置。
(13)
前記対話応答フレームは、汎用の対話応答の仕様に則して記述されたフレームである
前記(11)又は(12)に記載の情報処理装置。
(14)
前記対話応答は、前記対話応答フレームを、前記ケイパビリティの組み合わせごとの変換用のテンプレートを含む変換テンプレートに適用することで生成される
前記(13)に記載の情報処理装置。
(15)
前記処理部は、取得した前記対話応答が1以上存在する場合、取得した前記対話応答の中から、前記コンテキストに最も合致した前記対話応答を選択する
前記(11)乃至(14)のいずれかに記載の情報処理装置。
(16)
前記処理部は、取得した前記対話応答が存在しない場合、あらかじめ用意されたコンテキストに応じた前記対話応答を生成する
前記(11)乃至(15)のいずれかに記載の情報処理装置。
(17)
前記イベントは、ユーザの発話を含み、
前記コンテキスト情報は、前記ユーザの状態に関する情報を含む
前記(11)乃至(16)のいずれかに記載の情報処理装置。
(18)
情報処理装置が、
対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答を取得し、
コンテキストに関するコンテキスト情報を取得し、
取得した前記対話応答の中から、前記コンテキストに適合した前記対話応答を選択し、
選択した前記対話応答を出力する
情報処理方法。
10 対話応答設計機器, 11 対話応答変換学習器, 20,20-1乃至20-N エージェント機器, 30 サーバ, 40 ネットワーク, 100 制御部, 101 対話応答設計ツール, 102 対話応答変換関数群, 102A ルールベースDB, 102B 機械学習ベースDB, 103 ケイパビリティリスト, 104 対話応答DB, 150 汎用対話応答フレーム, 160 変換テンプレート, 200 制御部, 201 センサ部, 202 カメラ部, 203 マイク部, 204 記憶部, 205 通信部, 206 電源部, 207 インターフェース, 211 対話応答処理部, 221 ディスプレイ, 222 スピーカ, 223 振動素子, 224 ランプ, 250 展開済み具体対話応答DB, 1000 コンピュータ, 1001 CPU

Claims (18)

  1. 対話応答を出力する機器ごとのケイパビリティを取得し、
    前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得した前記ケイパビリティに応じた前記対話応答を生成し、
    生成した前記対話応答を前記機器ごとに展開する
    処理部を備える
    情報処理装置。
  2. 前記ケイパビリティは、前記機器が有するインターフェースに関するインターフェース情報と、前記インターフェースの能力に関するケイパビリティ情報を含む
    請求項1に記載の情報処理装置。
  3. 前記対話応答フレームは、汎用の対話応答の仕様に則して記述されたフレームである
    請求項1に記載の情報処理装置。
  4. 前記処理部は、前記対話応答フレームを、前記ケイパビリティの組み合わせごとの変換用のテンプレートを含む変換テンプレートに適用して、前記対話応答を生成する
    請求項3に記載の情報処理装置。
  5. 前記処理部は、前記ケイパビリティに応じた前記対話応答を、他のケイパビリティに応じた前記対話応答に変換する
    請求項1に記載の情報処理装置。
  6. 前記処理部は、ルールベースによる変換アルゴリズム、又は機械学習ベースによる変換アルゴリズムを用いて、前記対話応答を変換する
    請求項5に記載の情報処理装置。
  7. 前記処理部は、
    コンテキストに関するコンテキスト情報に基づいて、前記ケイパビリティを選択し、
    選択した前記ケイパビリティに応じた前記対話応答を生成する
    請求項1に記載の情報処理装置。
  8. 前記処理部は、
    アクセシビリティに対応した前記ケイパビリティを選択し、
    選択した前記ケイパビリティに応じた前記対話応答を生成する
    請求項1に記載の情報処理装置。
  9. 前記処理部は、前記対話応答に対して付加情報を含める
    請求項1に記載の情報処理装置。
  10. 情報処理装置が、
    対話応答を出力する機器ごとのケイパビリティを取得し、
    前記対話応答を生成する際のシードとして利用される対話応答フレームから、取得した前記ケイパビリティに応じた前記対話応答を生成し、
    生成した前記対話応答を前記機器ごとに展開する
    情報処理方法。
  11. 対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答を取得し、
    コンテキストに関するコンテキスト情報を取得し、
    取得した前記対話応答の中から、前記コンテキストに適合した前記対話応答を選択し、
    選択した前記対話応答を出力する
    処理部を備える
    情報処理装置。
  12. 前記ケイパビリティは、インターフェースに関するインターフェース情報と、前記インターフェースの能力に関するケイパビリティ情報を含む
    請求項11に記載の情報処理装置。
  13. 前記対話応答フレームは、汎用の対話応答の仕様に則して記述されたフレームである
    請求項11に記載の情報処理装置。
  14. 前記対話応答は、前記対話応答フレームを、前記ケイパビリティの組み合わせごとの変換用のテンプレートを含む変換テンプレートに適用することで生成される
    請求項13に記載の情報処理装置。
  15. 前記処理部は、取得した前記対話応答が1以上存在する場合、取得した前記対話応答の中から、前記コンテキストに最も合致した前記対話応答を選択する
    請求項11に記載の情報処理装置。
  16. 前記処理部は、取得した前記対話応答が存在しない場合、あらかじめ用意されたコンテキストに応じた前記対話応答を生成する
    請求項11に記載の情報処理装置。
  17. 前記イベントは、ユーザの発話を含み、
    前記コンテキスト情報は、前記ユーザの状態に関する情報を含む
    請求項11に記載の情報処理装置。
  18. 情報処理装置が、
    対話応答のイベントが発生した場合に、前記対話応答を生成する際のシードとして利用される対話応答フレームからケイパビリティに応じて生成された前記対話応答を取得し、
    コンテキストに関するコンテキスト情報を取得し、
    取得した前記対話応答の中から、前記コンテキストに適合した前記対話応答を選択し、
    選択した前記対話応答を出力する
    情報処理方法。
JP2019008895A 2019-01-23 2019-01-23 情報処理装置、及び情報処理方法 Pending JP2022047550A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019008895A JP2022047550A (ja) 2019-01-23 2019-01-23 情報処理装置、及び情報処理方法
PCT/JP2020/000581 WO2020153146A1 (ja) 2019-01-23 2020-01-10 情報処理装置、及び情報処理方法
US17/414,331 US20220051673A1 (en) 2019-01-23 2020-01-10 Information processing apparatus and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019008895A JP2022047550A (ja) 2019-01-23 2019-01-23 情報処理装置、及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2022047550A true JP2022047550A (ja) 2022-03-25

Family

ID=71736198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019008895A Pending JP2022047550A (ja) 2019-01-23 2019-01-23 情報処理装置、及び情報処理方法

Country Status (3)

Country Link
US (1) US20220051673A1 (ja)
JP (1) JP2022047550A (ja)
WO (1) WO2020153146A1 (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5886694A (en) * 1997-07-14 1999-03-23 Microsoft Corporation Method for automatically laying out controls in a dialog window
US5926790A (en) * 1997-09-05 1999-07-20 Rockwell International Pilot/controller/vehicle or platform correlation system
US6738803B1 (en) * 1999-09-03 2004-05-18 Cisco Technology, Inc. Proxy browser providing voice enabled web application audio control for telephony devices
US20030130864A1 (en) * 2002-01-09 2003-07-10 Ho Edwin Kong-Sun Facilitation of mobile direct response by service callback
JP2005321730A (ja) * 2004-05-11 2005-11-17 Fujitsu Ltd 対話システム、対話システム実行方法、及びコンピュータプログラム
EP1615124A1 (en) * 2004-07-07 2006-01-11 Alcatel Alsthom Compagnie Generale D'electricite A method for handling a multi-modal dialog
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
JP2010160316A (ja) * 2009-01-08 2010-07-22 Alpine Electronics Inc 情報処理装置及びテキスト読み上げ方法
US8996384B2 (en) * 2009-10-30 2015-03-31 Vocollect, Inc. Transforming components of a web page to voice prompts
US9389831B2 (en) * 2014-08-06 2016-07-12 Toyota Jidosha Kabushiki Kaisha Sharing speech dialog capabilities of a vehicle
ES2657992T3 (es) * 2014-10-24 2018-03-07 Schenck Rotec Gmbh Dispositivo de ensayo para un dispositivo de inflado de neumáticos
US9690542B2 (en) * 2014-12-22 2017-06-27 Microsoft Technology Licensing, Llc Scaling digital personal assistant agents across devices
JP2018055422A (ja) * 2016-09-29 2018-04-05 株式会社東芝 情報処理システム、情報処理装置、情報処理方法、及びプログラム
US11900928B2 (en) * 2017-12-23 2024-02-13 Soundhound Ai Ip, Llc System and method for adapted interactive experiences

Also Published As

Publication number Publication date
WO2020153146A1 (ja) 2020-07-30
US20220051673A1 (en) 2022-02-17

Similar Documents

Publication Publication Date Title
US11670302B2 (en) Voice processing method and electronic device supporting the same
KR102306624B1 (ko) 지속적 컴패니언 디바이스 구성 및 전개 플랫폼
US11148296B2 (en) Engaging in human-based social interaction for performing tasks using a persistent companion device
US20170206064A1 (en) Persistent companion device configuration and deployment platform
KR102599607B1 (ko) 자동화된 어시스턴트를 호출하기 위한 다이내믹 및/또는 컨텍스트 특정 핫워드
JP2018190413A (ja) ユーザ発話の表現法を把握して機器の動作やコンテンツ提供範囲を調整し提供するユーザ命令処理方法およびシステム
WO2016011159A1 (en) Apparatus and methods for providing a persistent companion device
JP2021523467A (ja) ユーザと、自動化されたアシスタントと、他のコンピューティングサービスとの間のマルチモーダル対話
CN113168227A (zh) 执行电子装置的功能的方法以及使用该方法的电子装置
KR20200059054A (ko) 사용자 발화를 처리하는 전자 장치, 및 그 전자 장치의 제어 방법
WO2019107145A1 (ja) 情報処理装置、及び情報処理方法
KR102369083B1 (ko) 음성 데이터 처리 방법 및 이를 지원하는 전자 장치
CN110945455B (zh) 处理用户话语以用于控制外部电子装置的电子装置及其控制方法
KR102369309B1 (ko) 파셜 랜딩 후 사용자 입력에 따른 동작을 수행하는 전자 장치
Iqbal et al. Towards adaptive user interfaces for mobile-phone in smart world
WO2016206646A1 (zh) 使机器装置产生动作的方法及系统
US20190163436A1 (en) Electronic device and method for controlling the same
US20230196943A1 (en) Narrative text and vocal computer game user interface
WO2020153146A1 (ja) 情報処理装置、及び情報処理方法
WO2018183812A1 (en) Persistent companion device configuration and deployment platform
US20220284894A1 (en) Electronic device for processing user utterance and operation method therefor
KR102669152B1 (ko) 사용자, 자동화된 어시스턴트 및 컴퓨팅 서비스 간의 다중 모드 상호 작용
KR20240029481A (ko) 전자 장치 및 전자 장치의 사용자에 대한 응답 처리 방법
Zhu Quiet Interaction: Designing an Accessible Home Environment for Deaf and Hard of Hearing (DHH) Individuals through AR, AI, and IoT Technologies
Gupta et al. Voice Controlled Personal Assistant