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

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

▶ オムロン株式会社の特許一覧

特許7540290対話ロボットシステム、対話方法および対話プログラム
<>
  • 特許-対話ロボットシステム、対話方法および対話プログラム 図1
  • 特許-対話ロボットシステム、対話方法および対話プログラム 図2
  • 特許-対話ロボットシステム、対話方法および対話プログラム 図3
  • 特許-対話ロボットシステム、対話方法および対話プログラム 図4
  • 特許-対話ロボットシステム、対話方法および対話プログラム 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-19
(45)【発行日】2024-08-27
(54)【発明の名称】対話ロボットシステム、対話方法および対話プログラム
(51)【国際特許分類】
   G10L 15/22 20060101AFI20240820BHJP
   G10L 15/00 20130101ALI20240820BHJP
【FI】
G10L15/22 300U
G10L15/00 200H
【請求項の数】 8
(21)【出願番号】P 2020176434
(22)【出願日】2020-10-21
(65)【公開番号】P2022067709
(43)【公開日】2022-05-09
【審査請求日】2023-08-08
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100129012
【弁理士】
【氏名又は名称】元山 雅史
(72)【発明者】
【氏名】上坂 晋平
【審査官】山下 剛史
(56)【参考文献】
【文献】特許第6770283(JP,B1)
【文献】特開2017-162036(JP,A)
【文献】国際公開第2019/035371(WO,A1)
【文献】国際公開第2018/230345(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 13/00-15/34
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
ユーザの発話に対し、回答情報を出力する複数の対話ロボット端末と、
前記複数の対話ロボット端末と通信可能に接続される集中処理装置と、
前記集中処理装置に設けられ、前記発話に含まれる質問内容と回答識別子との対応を定義する対話データベースと、
前記複数の対話ロボット端末それぞれに設けられ、前記回答識別子と前記回答情報との対応を定義する複数の回答データベースと、
を備え、
前記対話ロボット端末は、前記発話の内容を示す発話情報を前記集中処理装置に出力し、
前記集中処理装置は、前記対話ロボット端末から出力された前記発話情報から質問内容を特定し、前記対話データベースに従って、特定された前記質問内容に対応する前記回答識別子を決定し、決定された前記回答識別子を当該対話ロボット端末に出力し、
前記対話ロボット端末は、前記回答データベースに従って、出力された前記回答識別子に対応する回答情報を決定する、
対話ロボットシステム。
【請求項2】
前記複数の対話ロボット端末が、前記複数の回答データベースをそれぞれ有している、
請求項1に記載の対話ロボットシステム。
【請求項3】
前記対話ロボット端末の各々が、ユーザの発話内容を音声データとして入力し、前記入力された音声データから変換されたテキストデータを前記発話情報として前記集中処理装置に出力する、
請求項1または2に記載の対話ロボットシステム。
【請求項4】
前記対話ロボット端末の各々が、前記回答識別子に基づいて前記回答情報をテキストデータで決定するように構成され、当該テキストデータから変換された音声データを前記回答情報として出力する、
請求項1から3のいずれか1項に記載の対話ロボットシステム。
【請求項5】
前記回答データベースは、前記回答識別子と対応する前記回答情報を複数の言語ごとに記憶し、
前記対話ロボット端末は、前記発話と同じ言語で、前記回答情報を出力する、
請求項1から4のいずれか1項に記載の対話ロボットシステム。
【請求項6】
前記複数の対話ロボット端末が、複数の鉄道駅それぞれに設置されている、
請求項1から5のいずれか1項に記載の対話ロボットシステム。
【請求項7】
ユーザの発話に対して回答情報を出力する複数の対話ロボット端末と、前記複数の対話ロボット端末と通信可能に接続される集中処理装置とを備える対話ロボットシステムで用いられる対話方法であって、
前記対話ロボット端末から前記集中処理装置に、前記発話の内容を示す発話情報を出力することと、
前記集中処理装置において、出力された前記発話情報から質問内容を特定することと、
前記集中処理装置において、前記発話に含まれる質問内容と回答識別子との対応を定義する対話データベースに従って、特定された前記質問内容に対応する前記回答識別子を決定することと、
前記集中処理装置から前記対話ロボット端末に、決定された前記回答識別子を出力することと、
前記対話ロボット端末において、前記回答識別子と前記回答情報との対応を定義する回答データベースに従って、出力された前記回答識別子に対応する前記回答情報を決定することと、
を備える、対話方法。
【請求項8】
ユーザの発話に対して回答情報を出力する複数の対話ロボット端末と、前記複数の対話ロボット端末と通信可能に接続される集中処理装置とを備える対話ロボットシステムで用いられる対話方法をコンピュータに実行させる対話プログラムであって、
前記対話ロボット端末から前記集中処理装置に、前記発話の内容を示す発話情報を出力することと、
前記集中処理装置において、出力された前記発話情報から質問内容を特定することと、
前記集中処理装置において、前記発話に含まれる質問内容と回答識別子との対応を定義する対話データベースに従って、特定された前記質問内容に対応する前記回答識別子を決定することと、
前記集中処理装置から前記対話ロボット端末に、決定された前記回答識別子を出力することと、
前記対話ロボット端末において、前記回答識別子と前記回答情報との対応を定義する回答データベースに従って、出力された前記回答識別子に対応する前記回答情報を決定することと、
を備える、対話プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、対話ロボット端末を備える対話ロボットシステム、当該対話ロボットシステムにおいて用いられる対話方法、および、当該対話方法をコンピュータに実行させる対話プログラムに関する。
【背景技術】
【0002】
従来、ユーザの発話に対する回答を音声で出力する対話ロボットが知られている。例えば、特許文献1に開示される対話ロボットは、サーバと接続されている。ユーザが対話ロボットに向けて話しかけると、サーバは、その意味内容を解析し、応答文データベースを参照して意味内容に対応する応答文を選択し、応答文を音声データの形式で対話ロボットに送信する。対話ロボットは、ユーザに向けて応答文を音声で出力する。
【先行技術文献】
【特許文献】
【0003】
【文献】特許第6633250号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
このような対話ロボットは、ユーザの質問に対して回答するという案内サービスの提供にも好適に適用されるものと考えられる。例えば、一鉄道事業者が運営する複数の鉄道駅に、駅員に代えて対話ロボットが設置されれば、駅員の省力化と、案内サービスの維持または向上との両立が図られる。しかし、前述した従来の対話ロボットがそのまま各鉄道駅に設置されると、以下のような問題が生じるものと考えられる。
【0005】
鉄道駅における案内の具体例として、乗車券の購入方法や、トイレの場所や売店の営業時間等の駅設備に関する情報などが考えられる。乗車券の購入方法の案内に関しては、同じ質問内容に対して回答内容を全ての鉄道駅で共通化することができる可能性がある。一方、駅設備に関しては、同じ質問内容に対して回答内容を共通化することが難しい。
したがって、対話ロボットが設置された複数の鉄道駅ごとにサーバを設置し、各サーバに、質問内容と当該鉄道駅に固有の回答内容との対応を定義したデータベースを記憶させる必要があるものと考えられる。
【0006】
このサーバは、発話の意味内容を解析して応答文を選択するという情報処理を行う、いわゆる「対話エンジン」である。対話エンジンの構築および維持の作業を鉄道駅ごとに行う必要が生じる。駅員の省力化のため対話ロボットを設置した駅数が増大すると、逆にこの作業負荷の増大を招く。
このような問題は、複数の対話ロボットを複数の場所それぞれに設置し、同じ質問内容に対する回答内容の共通化が困難な場合に、同様に生じるものと考えられる。
【0007】
そこで本発明は、複数の対話ロボット端末を備える対話ロボットシステムの構築および維持の作業負荷を低減することを目的とする。
【課題を解決するための手段】
【0008】
本発明の一形態に係る対話ロボットシステムは、ユーザの発話に対して回答情報を出力する複数の対話ロボット端末と、複数の対話ロボット端末と通信可能に接続される集中処理装置と、集中処理装置に設けられた対話データベースと、複数の対話ロボット端末それぞれに設けられた複数の回答データベースとを備える。対話データベースは、発話に含まれる質問内容と回答識別子との対応を定義し、回答データベースは、回答識別子と回答情報との対応を定義する。対話ロボット端末は、発話の内容を示す発話情報を集中処理装置に出力する。集中処理装置は、対話ロボット端末から出力された発話情報から質問内容を特定し、対話データベースに従って、特定された質問内容に対応する回答識別子を決定し、決定された回答識別子を対話ロボット端末に出力する。対話ロボット端末は、回答データベースに従って、出力された回答識別子に対応する回答情報を決定する。
【0009】
ここで、対話ロボットシステムが複数の対話ロボット端末を備える場合、同じ質問内容に対して全ての対話ロボット端末で回答内容を共通化することができない可能性がある。従来のように対話エンジンが具体的な回答内容の決定を完結させる場合、複数の対話ロボット端末それぞれに複数の対話エンジンを準備する必要が生じる。よって、対話エンジンの構築および維持の作業負荷が高くなる。
【0010】
上記の構成によれば、複数の対話ロボット端末が集中処理装置と接続されている。集中処理装置には、質問内容と回答識別子との対応を定義した対話データベースが設けられ、各対話ロボット端末には、回答識別子と回答情報との対応を定義した回答データベースが設けられている。対話ロボット端末は、ユーザに話しかけられると、その内容を示す発話情報を集中処理装置に送信する。集中処理装置は、発話情報から質問内容を特定し、質問内容に対応した回答識別子を対話ロボット端末に返信する。対話ロボット端末は、回答識別子に基づいて、ユーザに向けて出力されるべき回答情報を決定する。
【0011】
集中処理装置は、発話情報を解析して質問内容を特定して回答を選択するという情報処理を行う「対話エンジン」の機能を有するが、具体的な回答内容の決定まで踏み込まない。ユーザに向けて出力される具体的な回答内容は、各対話ロボット端末において決定される。2種のデータベースが集中処理装置と対話ロボット端末とに分かれて設けられており、質問内容から回答内容を決定するプロセスに回答識別子を介在させる。複数の回答データベースそれぞれにおいて、回答識別子に対応する回答情報として対話ロボット端末に固有の情報が記憶されていればよい。
【0012】
これにより、対話エンジンを複数の対話ロボット端末で共用しながら、固有の回答情報がユーザに向けて出力される。したがって、システムを構成する対話ロボット端末の台数が増えても、対話エンジンの構築および維持の作業負荷を低減することができる。
複数の対話ロボット端末が、複数の回答データベースをそれぞれ有していてもよい。
対話ロボット端末の各々が、ユーザの発話内容を音声データとして入力し、入力された音声データから変換されたテキストデータを発話情報として集中処理装置に出力してもよい。
【0013】
一般に、テキストデータは、音声データと比べてデータ量が小さい。したがって、対話ロボット端末から集中処理装置に送信すべき情報のデータ量が小さくなる。集中処理装置は、テキストデータに基づいて質問内容を特定することができ、迅速な特定処理を実現できる。
対話ロボット端末の各々が、回答識別子に基づいて回答情報をテキストデータで決定するように構成され、当該テキストデータから変換された音声データを回答情報として出力してもよい。
【0014】
上記の構成によれば、回答データベースに記憶される回答情報がテキストデータであったとしても、このテキストデータが音声データに変換される。このため、回答情報を発声してユーザとの対話を実現することができる。
回答データベースは、回答識別子と対応する回答情報を複数の言語ごとに記憶してもよい。対話ロボット端末は、発話と同じ言語で回答情報を出力してもよい。
【0015】
上記の構成によれば、様々な言語を話すユーザとの対話を実現することができる。
複数の対話ロボット端末が、複数の鉄道駅それぞれに設置されていてもよい。
上記の構成によれば、鉄道駅でユーザと対話することができ、鉄道事業者の案内業務の省力化とユーザに提供される情報の充実とを両立することができる。
本発明の一形態に係る対話方法は、ユーザの発話に対して回答情報を出力する複数の対話ロボット端末と、複数の対話ロボット端末と通信可能に接続される集中処理装置とを備える対話ロボットシステムで用いられる。対話方法は、対話ロボット端末から集中処理装置に、発話の内容を示す発話情報を出力することと、集中処理装置において、出力された発話情報から質問内容を特定することと、集中処理装置において、発話に含まれる質問内容と回答識別子との対応を定義する対話データベースに従って、特定された質問内容に対応する回答識別子を決定することと、集中処理装置から対話ロボット端末に、決定された回答識別子を出力することと、対話ロボット端末において、回答識別子と回答情報との対応を定義する回答データベースに従って、出力された回答識別子に対応する回答情報を決定することと、を備える。
【0016】
本発明の一形態に係る対話プログラムは、ユーザの発話に対して回答情報を出力する複数の対話ロボット端末と、複数の対話ロボット端末と通信可能に接続される集中処理装置とを備える対話ロボットシステムで用いられる対話方法をコンピュータに実行させる。対話プログラムは、対話ロボット端末から集中処理装置に、発話の内容を示す発話情報を出力することと、集中処理装置において、出力された発話情報から質問内容を特定することと、集中処理装置において、発話に含まれる質問内容と回答識別子との対応を定義する対話データベースに従って、特定された質問内容に対応する回答識別子を決定することと、集中処理装置から対話ロボット端末に、決定された回答識別子を出力することと、対話ロボット端末において、回答識別子と回答情報との対応を定義する回答データベースに従って、出力された回答識別子に対応する回答情報を決定することと、を備える。
【0017】
上記の対話方法および対話プログラムは、前述した対話ロボットシステムの特徴と対応する技術的特徴を具備しており、対話ロボットシステムと同様の作用効果を奏する。
【発明の効果】
【0018】
本発明によれば、複数の対話ロボット端末を備える対話ロボットシステムの構築および維持の作業負荷を低減することができる。
【図面の簡単な説明】
【0019】
図1】本発明の実施形態に係る対話ロボットシステムの構成図である。
図2】対話データベースおよび回答データベースを示す図である。
図3】対話ロボット端末および集中処理装置を示すブロック図である。
図4】本発明の実施形態に係る対話方法および対話プログラムを示すフローチャートである。
図5】参考例に係る対話ロボットシステムの構成図である。
【発明を実施するための形態】
【0020】
以下、図面を参照しながら本発明の実施形態について説明する。なお、全図を通じて同一または対応する要素には同一の符号を付し、詳細説明の重複を省略する。
図1は本発明の実施形態に係る対話ロボットシステム1の構成図である。対話ロボットシステム1は、複数の対話ロボット端末2(2A,2B,…)と、集中処理装置3とを備えている。各対話ロボット端末2は、通信ネットワーク9を介し、集中処理装置3と通信可能に接続されている。
【0021】
本実施形態では、対話ロボットシステム1が、鉄道事業者の駅窓口での案内業務に活用される。この場合、複数の対話ロボット端末2A,2B,…が、当該鉄道事業者が保有する複数の鉄道駅それぞれに設置される。図示例では、第1の対話ロボット端末2AがA駅に設置され、第2の対話ロボット端末2BがB駅に設置され、第3の対話ロボット端末2CがC駅に設置されている。ただし、対話ロボットシステム1を構成する対話ロボット端末2の台数は、特に限定されない。
【0022】
各対話ロボット端末2は、筐体20を有している。各対話ロボット端末2は、コントローラ21、マイク26、スピーカ27およびディスプレイ28を更に有し、これらは、筐体20の内部、表面あるいは外部に取り付けられている。なお、対話ロボット端末2は、周囲を撮像するカメラ(不図示)や、異常時に発報する警報機(不図示)を更に有していてもよい。
【0023】
コントローラ21は、CPU22、メインメモリ23およびインタフェース24を有している。CPU22は、メインメモリ23に予め記憶される端末用プログラムP2に従って本実施形態に係る対話方法の一部を実行する。メインメモリ23は、ROM、RAMおよびEEPROM等の記憶装置によって構成され、対話方法の実行に必要な情報を一時的に記憶することもできる。インタフェース24は、マイク26、スピーカ27およびディスプレイ28と接続されている。インタフェース24は、通信ネットワーク9を介し、集中処理装置3との間で情報の送受信を行い、また、必要に応じて外部アプリケーション90と情報の送受信を行う。
【0024】
マイク26は、ユーザUの発話を集音する。スピーカ27は、様々な音声情報を出力することができる。ディスプレイ28は、様々な画像情報および文字情報を表示することができる。一例として、スピーカ27は、ユーザUの発話に対する回答情報を音声の形式で出力する。ディスプレイ28は、ユーザUの発話に対する回答情報を文字表示の形式で出力する。
【0025】
集中処理装置3は、例えばサーバ装置によって実現される。集中処理装置3は、ユーザUの対話ロボット端末2への発話から意味内容を特定し、ユーザUへの回答を準備する情報処理を行う、いわゆる「対話エンジン」である。
集中処理装置3は、コントローラ31を有している。コントローラ31は、CPU32、メインメモリ33およびインタフェース34を有している。CPU32は、メインメモリ33に予め記憶されたエンジン用プログラムP3に従って本実施形態に係る対話方法の一部を実行する。インタフェース34は、通信ネットワーク9を介し、システム1を構成する複数の対話ロボット端末2と情報の入出力を行い、また、必要に応じて外部アプリケーション90と情報の入出力を行う。
【0026】
CPU22およびCPU32(あるいはこれらをそれぞれ備えるコントローラ21およびコントローラ31)は、本実施形態に係る対話方法を実行するコンピュータの一例である。端末用プログラムP2およびエンジン用プログラムP3は、この対話方法をコンピュータに実行させる対話プログラムPを構成する。
このような対話ロボットシステム1において、各対話ロボット端末2は、ユーザUの発話に対し、回答情報を出力する。例えば、ユーザUが、「トイレどこ?」あるいは「トイレに行きたい」と、いずれかの対話ロボット端末2に話しかけたとする。このユーザUの発話は、マイク26によって集音される。対話ロボット端末2は、発話の内容を示す発話情報を集中処理装置3に出力する。集中処理装置3は、発話情報から、ユーザUの質問内容を「トイレの場所について」の質問であると特定する。
【0027】
駅により駅設備の構造あるいはレイアウトは異なるため、対話ロボット端末2に対するトイレの相対位置関係も異なる場合がある。よって、同じ質問内容に対し、駅固有の回答情報を出力する必要がある。第1の対話ロボット端末2Aは、A駅に適合した「トイレは左です」との回答情報を出力する一方、第2の対話ロボット端末2Bは、B駅に適合した「トイレは右です」との回答情報を出力する。回答情報は、少なくともスピーカ27から発声の形式で出力され、これに加えてディスプレイ28にて文字表示の形式でも出力される。これにより、ユーザUとの会話が成立し、ユーザUに適切な案内サービスが無人で提供される。
【0028】
発話情報から質問内容を特定するのは、対話エンジンとしての集中処理装置3である。特定された質問内容から駅固有の回答情報を決定する処理は、集中処理装置3と対話ロボット端末2とで分担される。対話ロボット端末2は、回答情報を決定する処理の下流を分担し、自身が決定した回答情報をユーザUに出力する。
この処理の分担の実現のため、対話ロボットシステム1は、集中処理装置3に設けられた対話データベース35と、複数の対話ロボット端末2(2A,2B,…)それぞれに対応して設けられた複数の回答データベース25(25A,25B,…)とを備えている。複数の対話ロボット端末2は、複数の回答データベース25をそれぞれ有している。なお、図1は、図示の便宜上、回答データベース25が筐体20外に配置されている旨を示すが、回答データベース25は筐体20内に配置されていてもよい。
【0029】
以下、A駅に設置された第1の対話ロボット端末2Aと対応するデータベースを、第1の回答データベース25Aと称する。第2の回答データベース25Bおよび第3の回答データベース25Cは、第2の対話ロボット端末2Bおよび第3の対話ロボット端末2Cとそれぞれ対応する。
図2は、対話データベース35および回答データベース25の一例を示す。対話データベース35は、発話に含まれる質問内容と、回答識別子との対応を定義する。図2では、単なる一例として、対話データベース35において、7項目の質問内容が、互いに異なる回答識別子と一対一で対応している。この対話ロボットシステム1は、対話データベース35で予め設定されたこれら7項目の質問内容に対し、ユーザUに回答することができる。なお、質問内容を特定できなかった場合の措置のため、対話データベース35には、特定不可と対応する回答識別子も記録されている(最下行「No.8」を参照)。
【0030】
乗車券に関する情報、および、駅設備に関する情報は、鉄道駅でユーザUに案内する機会が多い。「No.1~5」の5つの質問内容は、乗車券に関する。一般に、乗車券に係る規則は、対話ロボットシステム1を導入した鉄道事業者によって運営される全ての鉄道駅に対し、一律に適用される。そのため、同じ質問内容に対し、回答内容を全ての鉄道駅で共通化することができる可能性がある。
【0031】
他方、太線で囲った「No.6~7」の2つの質問内容は、駅設備に関する。鉄道駅によって構造および規模は様々であり、鉄道駅によって対話ロボット端末2の設置位置も様々であるため、同じ質問内容に対し、回答内容を全ての鉄道駅で共通化することができない。換言すれば、回答内容が駅固有のものとなる。なお、回答内容が駅固有のものとなり得る質問内容として、駅設備に関する情報のほか、駅周辺の観光施設に関する情報や、目的地までの移動経路(乗換)に関する情報が挙げられる。
【0032】
図2では、回答識別子が「Q1」、「Q2」…の記号で表されているが、これは単なる一例である。回答識別子は、互いに異なる情報あるいはデータであればよい。本例では、質問内容の数より1つ多い8つの回答識別子が準備されれば十分であり、各回答識別子を3ビット(2進数3桁)の小さなデータに単純化することも可能である。
回答データベース25は、回答識別子と回答情報との対応を定義する。各回答データベース25に規定される回答情報は、回答識別子を介し、対話データベース35に規定される質問内容と対応している。逆に言えば、対話データベース35に規定される質問内容は、回答識別子を介し、複数の回答データベース25それぞれで規定される複数の回答情報と対応している。
【0033】
例えば、回答識別子「Q1」は、対話データベース35において質問内容「子供の切符について」と対応している。質問内容「子供の切符について」は、乗車券に関する情報であり、回答内容を全ての駅で共通化可能である。そのため、各回答データベース25(25A,25B,…)において、回答識別子「Q1」は、同じ回答情報「お子さまのきっぷ運賃ですね」と対応付けられている。回答識別子「Q2」~「Q5」についても、同様である。
【0034】
他方、回答識別子「Q6」は、対話データベース35において質問内容「トイレの場所について」と対応している。質問内容「トイレの場所について」は、駅設備に関する情報であり、回答内容を全ての駅で共通化することができない。第1の回答データベース25Aにおいては、回答識別子「Q6」が、A駅の構造や第1の対話ロボット端末2Aの設置位置に照らして、回答情報「トイレは左です」と対応付けられている。第2の回答データベース25Bにおいては、回答識別子「Q6」が、B駅の構造や第2の対話ロボット端末2Bの設置位置に照らして、回答情報「トイレは右です」と対応付けられている。詳細図示を省略するが、第3の回答データベース25Cにおいても、回答識別子「Q6」は、C駅に適合した回答情報と対応付けられている。回答識別子「Q7」についてもこれと同様である。各回答データベース25において、質問内容「売店の営業時間について」に対する駅固有の回答情報が記録されている。
【0035】
各回答データベース25は、回答識別子および回答情報の欄のほか、言語の欄も有する。図では、言語を示す情報が、2文字のアルファベットによるコードによって表されている。「ja」は日本語、「en」は英語を示すが、対話ロボット端末2によって取り扱われる言語はこの2つに限定されない。
回答識別子と回答情報との間の複数の対応関係は、言語ごとに定義されている。質問内容および回答識別子の個数をnとし、対話ロボット端末2によって取り扱われる言語の数をmとした場合、各回答データベース25には、n×m個の回答情報が登録される。
【0036】
他方、対話データベース35では、対話ロボット端末2によって取り扱われる言語の数に関わらず、n個の質問内容および回答識別子が登録される。逆に言えば、対話エンジンとしての集中処理装置3は、ある特定の1つの言語(例えば、日本語)を取り扱う。
図3は、対話ロボット端末2および集中処理装置3を示すブロック図である。対話ロボット端末2は、端末用プログラムP2(図1を参照)を実行することで、データ調整部41、問合せ部42、返答受領部43および回答情報決定部44を有している。集中処理装置3は、エンジン用プログラムP3を実行することで、問合せ受領部51、質問内容特定部52、回答識別子決定部53および返答部54を有している。
【0037】
図4は、本実施形態に係る対話方法およびこれをコンピュータに実行させる対話プログラムPを示すフローチャートである。以下、図4に示す対話方法の手順に沿って、図3に示す構成の動作を説明する。対話方法は、ユーザUが対話ロボット端末2に話しかけることによって開始し、対話ロボット端末2が回答情報をユーザUに出力することによって終了する。
【0038】
ユーザUが対話ロボット端末2に発話すると、マイク26で集音された音声に基づいて、データ調整部41が、発話がなされたことを検知する(S11)。次に、データ調整部41は、マイク26で得られた音声データに基づき、ユーザUが発話した言語を識別するとともに(S13)、音声データから変換されたテキストデータを取得する(S14)。
言語の識別および音声データからテキストデータへの変換には、ニューラルネットワークを利用した公知の自動言語識別アルゴリズムおよびデータ変換アルゴリズムが適用される。自動言語識別アルゴリズムによって識別可能な言語数が、対話ロボット端末2によって取扱い可能な言語数と同等となる。自動言語識別アルゴリズムは、端末用プログラムP2に組み込まれていてもよいし、外部アプリケーション90によって提供されていてもよい。
【0039】
換言すれば、データ調整部41が、対話ロボット端末2内において、言語の識別処理およびデータの変換処理を行ってもよい。代わりに、データ調整部41は、発話の検知後に音声データを外部アプリケーション90に送信し、外部アプリケーション90で得られた識別結果を当該外部アプリケーション90から受信することにより、言語を識別してもよい。これと同時に、データ調整部41は、外部アプリケーション90で変換されたテキストデータを当該外部アプリケーション90から取得してもよい。
【0040】
変換されたテキストデータは、発話の言語で記述される。データ調整部41は、識別された言語が日本語であるか否かを判定する(S14)。日本語でなければ(S14:N)、データ調整部41は、日本語に翻訳されたテキストデータを取得する(S15)。テキストデータの翻訳には、公知の機械翻訳アルゴリズムが適用される。機械翻訳アルゴリズムは、端末用プログラムP2に組み込まれていてもよいし、外部アプリケーション90によって提供されていてもよい。
【0041】
換言すれば、データ調整部41が、対話ロボット端末2内において、機械翻訳処理を行ってもよい。代わりに、データ調整部41は、日本語以外の言語で記述されたテキストデータを外部アプリケーション90に送信し、外部アプリケーション90で日本語に翻訳されたテキストデータを当該外部アプリケーション90から取得してもよい。
ここまで対話ロボット端末2で行われた処理(S11~S15)は、発話情報に対応する回答情報を特定する処理に先立つ前処理である。この前処理の後、問合せ部42が、ユーザUの発話の内容を示す発話情報を集中処理装置3に出力する(S16)。
【0042】
問合せ部42は、発話情報として、前処理によって取得された日本語テキストデータを出力し、当該発話情報の解析を集中処理装置3に依頼する。ここで、対話ロボット端末2で行われる処理が一旦中断し、集中処理装置3において対話方法が継続して実行される。
集中処理装置3では、まず、問合せ受領部51が、出力された発話情報を受信する(S31)。すると、質問内容特定部52が、出力された発話情報(日本語テキストデータ)から、質問内容を特定する(S32)。別の言い方では、質問内容特定部52は、出力された発話情報が、対話データベース35で予め設定されている複数の質問内容のうちいずれを含むのかを特定する。テキストデータを解析してその意味内容(質問内容)を特定する処理には、ニューラルネットワークを利用した公知の解析アルゴリズムが適用される。解析アルゴリズムは、エンジン用プログラムP3に組み込まれていてもよいし、外部アプリケーション90によって提供されていてもよい。
【0043】
換言すれば、質問内容特定部52は、集中処理装置3内において、解析処理を行ってもよい。代わりに、質問内容特定部52が、発話情報(日本語テキストデータ)を外部アプリケーション90に送信し、外部アプリケーション90での解析結果を当該外部アプリケーション90から受信することにより、質問内容を特定してもよい。
次に、回答識別子決定部53が、対話データベース35に従って、特定された質問内容に対応する回答識別子を決定する(S34)。なお、質問内容特定部52が、発話情報から質問内容を特定することができなかった場合には、回答識別子決定部53は、その旨を示す回答識別子Q8を決定する。
【0044】
次に、返答部54が、発話情報を出力した対話ロボット端末2に、決定された回答識別子を出力する(S35)。返答部54は、依頼された発話情報の解析の結果として、回答識別子を依頼元の対話ロボット端末2に返信する。ここで、集中処理装置3で行われる処理は終了する。対話ロボット端末2で行われる処理が再開され、対話ロボット端末2において対話方法が継続して実行される。
【0045】
対話ロボット端末2では、まず、返答受領部43が、出力された回答識別子を受信する(S51)。次に、回答情報決定部44が、各対話ロボット端末2に固有の回答データベース25に従って、出力された回答識別子に対応する回答情報を決定する(S52)。
ここで、対話ロボット端末2では、前処理においてユーザUの発話の言語を識別している。回答情報決定部44は、データ調整部41によって識別された言語に対応し、かつ、返答受領部43で受信された回答識別子に対応する回答情報を決定する。
【0046】
対話ロボットシステム1の実用開始時点において、回答データベース25には、少なくとも特定言語(例えば、日本語)の回答情報が記録される。この特定言語は、使用頻度が最も高い言語であり、また、対話エンジンでも取り扱われる言語でもある。対話ロボット端末2が取り扱える特定言語以外の言語の回答情報は、実用開始時点において記録されていてもよいし、空欄のままでもよい。ここでは、取扱い可能な全言語の回答情報が、実用開始時点において回答データベース25に予め記録されているものとする(空欄で実用開始の場合は後述)。
【0047】
回答データベース25から抽出される回答情報は、発話の言語と同じ言語で記述されたテキストデータである。データ調整部41は、このテキストデータから変換された音声データを取得する(S53)。
ステップS13と同様、テキストデータから音声データへの変換には、ニューラルネットワークを利用した公知のデータ変換アルゴリズムが適用される。データ変換アルゴリズムは、端末用プログラムP2に組み込まれていてもよいし、外部アプリケーション90によって提供されていてもよい。
【0048】
次に、スピーカ27が、変換後の音声データを回答情報として出力し、ディスプレイ28が、決定された回答情報と対応する画像情報(文字を含む)を出力する(S54)。このようにして、ユーザUに対し、発話の意味内容に応じた回答が、発話と同じ言語でなされる。
以上の対話方法をより具体的に説明する。例えば、A駅にて、ユーザUが、第1の対話ロボット端末2Aに向けて、英語で「Where is the washroom?(トイレどこ?)」と発話したとする。この発話を契機として対話方法が開始する。
【0049】
第1の対話ロボット端末2Aは、マイク26で拾った発話音声に基づいて、発話の言語が英語であると識別するとともに、発話の内容を示す英語テキストデータ「Where is the washroom?」を取得する。取得された英語テキストデータは、日本語テキストデータに翻訳される。第1の対話ロボット端末2Aは、翻訳後の日本語テキストデータ「どこにトイレはありますか」を発話情報として集中処理装置3に出力し、当該発話情報の解析を集中処理装置3に依頼する。
【0050】
集中処理装置3は、発話情報から質問内容が「トイレの場所について」であると特定し、対話データベース35に従って当該質問内容に対応する回答識別子「Q6」を決定する。集中処理装置3は、決定された回答識別子「Q6」を、問合せ元である第1の対話ロボット端末2Aに出力する。
第1の対話ロボット端末2Aは、第1の回答データベース25Aに従って、回答識別子Q6と対応する英語の回答情報を決定する。第1の回答データベース25Aから抽出された英語テキストデータは音声データに変換され、スピーカ27から英語で「The washroom is on your left.(トイレは左です)」の回答情報が発声される。同時に、ディスプレイ28では、回答情報が文字表示される。現在地とトイレとの位置関係を示すA駅の平面図が併せて表示されてもよい。
【0051】
この回答情報の出力をもって対話方法が終了する。英語の話者との会話が成立し、ユーザUに対する案内サービスを無人で提供することができる。
ここで、本実施形態との対比のため、参考例に係る対話ロボットシステムについて図5を参照して説明する。参考例に係る対話ロボットシステムでは、対話エンジンによって参照されるデータベースが、質問内容と回答情報との対応を直接的に定義している。回答情報は駅固有であるため、データベースおよびこれを備える対話エンジンは、対話ロボット端末と一対一で対応して設けられている。A駅に設置された第1の対話ロボット端末902Aは、A駅固有の回答情報を記録した第1のデータベース930Aを備えた第1の対話エンジン903Aと通信可能に接続される。B駅に設置された第2の対話ロボット端末902Bは、B駅固有の回答情報を記録した第2のデータベース930Bを備えた第2の対話エンジン903Bと通信可能に接続される。各対話エンジン903A,903Bは、対応するデータベース930A,930Bを参照して具体的な回答内容を決定する処理を完結する。各対話エンジン903A,903Bによって決定された回答情報は、音声データの形式で、当該対話エンジン903A,903Bから対応する対話ロボット端末902A,902Bに出力される。
【0052】
これに対し、本実施形態に係る対話ロボットシステム1は、集中処理装置3に設けられ、発話に含まれる質問内容と回答識別子との対応を定義する対話データベース35と、対話ロボット端末2に設けられ、回答識別子と回答情報との対応を定義する回答データベース25とを備えている。対話ロボット端末2は、ユーザUに話しかけられると、その内容を示す発話情報を集中処理装置3に送信する。集中処理装置3は、発話情報から質問内容を特定し、質問内容に対応した回答識別子を対話ロボット端末2に返信する。対話ロボット端末2は、回答識別子に基づいて、ユーザに向けて出力すべき回答情報を決定する。
【0053】
集中処理装置3は、発話情報を解析して質問内容を特定して回答を選択するという情報処理を行う「対話エンジン」の機能を有するが、具体的な回答内容の決定まで踏み込まない。ユーザUに向けて出力される具体的な回答内容は、対話ロボット端末2において決定される。2種のデータベース25,35が集中処理装置3と対話ロボット端末2とに分かれて設けられている。質問内容から回答内容を決定する処理に回答識別子が介在し、集中処理装置3と対話ロボット端末2とが当該処理の実行を分担する。
【0054】
参考例のように対話エンジンが具体的な回答内容の決定を完結させる場合、複数の対話ロボット端末902A,902Bそれぞれに複数の対話エンジン903A,903Bを準備する必要が生じる。よって、対話エンジン930A,930Bの構築および維持の作業負荷が高くなる。
これに対し、本実施形態に係る対話ロボットシステム1は、複数の回答データベース25それぞれにおいて、回答識別子に対応する回答情報として対話ロボット端末2に固有の情報が記録されている。これにより、対話エンジンを複数の対話ロボット端末2で共用しながら、固有の回答情報がユーザUに向けて出力される。したがって、対話エンジンの構築および維持の作業負荷を低減することができる。
【0055】
また、対話ロボットシステム1の実用中に、案内業務の改善のため、質問内容を追加または変更することがある。参考例では、全てのデータベースで質問内容を追加する必要がある。これに対し、本実施形態では、1つの対話データベース25において、質問内容を追加するだけで済む。よって、業務改善への対応作業の負荷が軽減する。
また、回答識別子のデータ量は、数ビット程度であり、音声データと対比して極めて小さい。回答識別子が集中処理装置3から対話ロボット端末2に送信されるので、通信負荷を軽減することができる。
【0056】
各対話ロボット端末2は、ユーザUの発話内容を音声データとして入力し、入力された音声データから変換されたテキストデータを発話情報として集中処理装置3に出力する。一般に、テキストデータは、音声データと比べてデータ量が小さい。したがって、対話ロボット端末2から集中処理装置3に送信すべき情報のデータ量が小さくなる。集中処理装置3は、テキストデータに基づいて質問内容を特定することができ、迅速な特定処理を実現できる。
【0057】
各対話ロボット端末2が、回答識別子に基づいて回答情報をテキストデータで決定するように構成され、当該テキストデータから変換された音声データを回答情報として出力する。これにより、回答データベース25に記憶される回答情報がテキストデータであったとしても、このテキストデータが音声データに変換される。このため、回答情報を発声してユーザUとの対話を実現することができる。
【0058】
回答データベース25は、回答識別子と対応する回答情報を複数の言語ごとに記憶している。これにより、対話ロボット端末2が、発話と同じ言語で回答情報を出力することができ、様々な言語を話すユーザUとの対話を実現することができる。
対話ロボット端末2は、鉄道駅に好適に設置される。これにより、鉄道駅でユーザUとの対話を実現できる。そのため、鉄道事業者の案内業務の省力化とユーザに提供される情報の充実とを両立することができる。
【0059】
これまで本発明の実施形態について説明したが、上記構成は本発明の範囲内で適宜追加、変更および/または削除可能である。
例えば、特定言語(例えば、日本語)以外の言語の回答情報が回答データベース25において未入力の状態で、システム1の実用を開始してもよい。発話が特定言語以外の言語であった場合、回答情報決定部44は、回答データベース25を参照しても、決定された回答識別子および識別された言語と対応する回答情報が空欄のために、回答情報を決定できない場合がある。このとき、回答情報決定部44は、同じ回答識別子と対応する特定言語の回答情報を抽出する。データ調整部41は、抽出された特定言語のテキストデータを発話言語に機械翻訳し、翻訳されたテキストデータを回答データベース25に記録する。このように、実用中に、他言語の回答情報を回答データベース25に随時埋める更新処理を実行してもよい。
【0060】
上記実施形態では、ユーザUの発話言語を識別する識別処理が、自動言語識別アルゴリズムを適用して実行されたが、ユーザU自身が発話言語を選択入力操作してもよい。
この場合、各対話ロボット端末2のディスプレイ28はタッチパネルで構成される。コントローラ23は、対話ロボット端末2のスタンバイ状態、あるいは、ステップS11で発話を検知したときに、ディスプレイ28に言語を選択するボタンを表示させる。コントローラ23は、ユーザUが本格的に発話する前段階で、ユーザUがタッチしたボタンと対応する言語をユーザUの発話言語として識別してもよい。
【0061】
対話ロボットシステム1は、鉄道事業者の案内業務に関わらず、その他の接客業務にも適用可能であり、ホテルや病院に導入されてもよい。
【符号の説明】
【0062】
1 対話ロボットシステム
2 対話ロボット端末
3 集中処理装置
25 回答データベース
35 対話データベース
P 対話プログラム
P2 端末用プログラム
P3 エンジン用プログラム
図1
図2
図3
図4
図5