(57)【要約】【課題】ネットワークを利用した対話サービスにおけるユーザの利用促進を図ることができる。【解決手段】本発明の一態様は、ネットワークを利用して、ユーザによる問いかけに対して応答を提供する対話サービスにおいて、前記ユーザによる第１問いかけのテキストデータを取得する取得部と、前記対話サービスにおけるログデータに基づき生成された情報であって、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを含む複数のレコード同士を対応付けている参照情報を参照し、前記取得部により取得された前記第１問いかけの少なくとも一部と合致する前記共通キーに基づいて、前記第１問いかけの次の第２問いかけの候補を作成する作成部と、を備える対話支援装置である。【選択図】図５
2019164426.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを利用して、ユーザによる問いかけに対して応答を提供する対話サービスにおいて、前記ユーザによる第１問いかけのテキストデータを取得する取得部と、
前記対話サービスにおけるログデータに基づき生成された情報であって、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを含む複数のレコード同士を対応付けている参照情報を参照し、前記取得部により取得された前記第１問いかけの少なくとも一部と合致する前記共通キーに基づいて、前記第１問いかけの次の第２問いかけの候補を作成する作成部と、
を備える対話支援装置。
【請求項２】
前記参照情報は、前記ユーザのうち同一のユーザのログデータから取得された連続する複数の問いかけにおいて出現した前記共通キーを含む複数のレコード同士を対応付けている情報である、
請求項１に記載の対話支援装置。
【請求項３】
前記作成部は、前記第１問いかけの少なくとも一部を前記共通キーとして、前記第１問いかけの少なくとも一部を含む少なくとも一つのレコードに基づいて、前記第２問いかけの候補を作成する、
請求項１または２に記載の対話支援装置。
【請求項４】
前記作成部は、前記第１問いかけの少なくとも一部と単語の意味のカテゴリーが同一である置き換えワードを前記共通キーとして、前記置き換えワードを含む少なくとも一つのレコードに基づいて、前記第２問いかけの候補として作成する、
請求項１から３のうちいずれか一項に記載の対話支援装置。
【請求項５】
前記共通キーは、前記共通キーを含む複数のレコードからなる一つのレコード群において、単語の意味が同一の単語である、
請求項１から４のうちいずれか一項に記載の対話支援装置。
【請求項６】
前記共通キーは、前記共通キーを含む複数のレコードからなる一つのレコード群において、単語の意味が関連する単語である、
請求項１から５のうちいずれか一項に記載の対話支援装置。
【請求項７】
前記取得部は、前記ユーザに関連する情報として、前記ユーザの現在位置または属性のうち少なくとも一つを取得し、
前記作成部は、前記参照情報のうち、前記ユーザの現在位置または属性のうち少なくとも一つと合致するユーザのログデータに基づいて生成された前記参照情報を参照して、前記第２問いかけの候補を作成する、
請求項１から６のうちいずれか一項に記載の対話支援装置。
【請求項８】
前記作成部により作成された前記第２問いかけの候補が前記ユーザにより選択された場合、選択された前記第２問いかけの候補に対する応答を提供する応答部、
をさらの備える、
請求項１から７のうちいずれか一項に記載の対話支援装置。
【請求項９】
コンピュータが、
ネットワークを利用して、ユーザによる問いかけに対して応答を提供する対話サービスにおいて、前記ユーザによる第１問いかけのテキストデータを取得し、
前記対話サービスにおけるログデータに基づき生成された情報であって、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを含む複数のレコード同士を対応付けている参照情報を参照し、取得された前記第１問いかけの少なくとも一部と合致する前記共通キーに基づいて、前記第１問いかけの次の第２問いかけの候補を作成する、
対話支援方法。
【請求項１０】
コンピュータに、
ネットワークを利用して、ユーザによる問いかけに対して応答を提供する対話サービスにおいて、前記ユーザによる第１問いかけのテキストデータを取得させ、
前記対話サービスにおけるログデータに基づき生成された情報であって、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを含む複数のレコード同士を対応付けている参照情報を参照し、取得された前記第１問いかけの少なくとも一部と合致する前記共通キーに基づいて、前記第１問いかけの次の第２問いかけの候補を作成させる、
プログラム。
【請求項１１】
ネットワークを利用して、ユーザによる問いかけに対して応答する対話サービスにおいて、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを抽出する抽出部と、
前記抽出部により抽出された前記共通キーに基づいて、前記共通キーを含む前記問いかけ同士の対応付けを参照情報に学習させる学習部と、
を備える学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対話支援装置、対話支援方法、プログラム、および学習装置に関する。
【背景技術】
【０００２】
従来より、端末装置等に対するユーザ入力を支援するための様々な手法が提案されている。例えば、クエリに関連する複数の検索結果を取得し、複数の検索結果を解析することで少なくとも１つの推奨項目を取得し、取得した推奨項目を表示する技術が知られている（例えば、特許文献１参照）。
【０００３】
近年では、ユーザによる問いかけにサービス側が応答する対話サービスが注目を集めている。この対話サービスでは、応答の一例として、ネットワークを介して取得したユーザによる問いかけに対して、入力されたクエリに基づく検索エンジン等により提供される情報よりも簡易な情報を提供している。また、対話サービスでは、ユーザとのやり取りのログデータに基づいて、ユーザの設定内容を学習させる機能も注目を集めている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−２０４１０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、対話サービスによる応答は、上述の通り簡易な情報である場合が多く、ユーザとサービス側との会話を長く続けることが難しかった。
【０００６】
本発明は、このような事情を考慮してなされたものであり、ネットワークを利用した対話サービスにおけるユーザの利用促進を図ることができる対話支援装置、対話支援方法、プログラム、および学習装置を提供することを目的の一つとする。
【課題を解決するための手段】
【０００７】
本発明の一態様は、ネットワークを利用して、ユーザによる問いかけに対して応答を提供する対話サービスにおいて、前記ユーザによる第１問いかけのテキストデータを取得する取得部と、前記対話サービスにおけるログデータに基づき生成された情報であって、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを含む複数のレコード同士を対応付けている参照情報を参照し、前記取得部により取得された前記第１問いかけの少なくとも一部と合致する前記共通キーに基づいて、前記第１問いかけの次の第２問いかけの候補を作成する作成部と、を備える対話支援装置である。
【発明の効果】
【０００８】
本発明の一態様によれば、ネットワークを利用した対話サービスにおけるユーザの利用促進を図ることができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態に係る対話支援システム１の概略図である。
【図２】対話サービスにおいて提供される画面の一例を示す図である。
【図３】サジェスト候補の一例を示す図である。
【図４】実施形態に係る学習装置２００の構成図である。
【図５】実施形態に係る対話支援装置３００の構成図である。
【図６】実施形態に係る学習装置２００において実行される処理の一例を示すフローチャートである。
【図７】実施形態に係る対話支援装置３００において実行される処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面を参照し、本発明の対話支援装置、対話支援方法、プログラム、および学習装置の実施形態について説明する。
【００１１】
［情報処理システムの構成］
図１は、実施形態に係る対話支援システム１の概略図である。対話支援システム１は、例えば、一以上の端末装置１００と、学習装置２００と、対話支援装置３００と、情報管理装置４００とを含む。これらの構成は、ネットワークＮＷによって互いに接続されており、このネットワークＮＷを介して互いに通信する。ネットワークＮＷは、例えば、ＷＡＮ（Wide Area Network）やＬＡＮ（Local Area Network）、インターネット、専用回線、無線基地局、プロバイダなどのうちの一部または全部を含む。
【００１２】
端末装置１００は、例えば、スマートフォンなどの携帯電話やタブレット端末、ノート型あるいはデスクトップ型のパーソナルコンピュータ、ＰＤＡ（Personal Digital Assistant）などの、少なくとも通信機能と表示機能を有する端末装置である。また、端末装置１００は、音声認識機能、人工知能、通信機能などを備える専用の端末などであってもよい。端末装置１００は、例えば、対話サービスを利用するユーザにより使用される。
【００１３】
情報管理装置４００は、例えば、様々な情報を管理するサーバである。情報管理装置４００は、入力されたクエリに基づく検索処理を実行する際に参照されるデータベース、各ユーザのスケジュール情報、音楽のライブラリーに登録されている音楽データベース、登録されている各ユーザが保持する電化製品の識別番号等が含まれる。
【００１４】
対話支援装置３００は、ネットワークＮＷを介して、ユーザに対話サービスを提供する。対話サービスとは、少なくとも一人のユーザによる問いかけに対してサービス側による応答を提供するサービスである。ここで、図２を参照して、対話サービスにおいて「問いかけ」と「応答」の一例について説明する。図２は、対話サービスにおいて提供される画面の一例を示す図である。図２に示す全体画面３００Ａは、トーク画面３００Ｂとトーク入力画面３００Ｃとを含む。トーク画面３００Ｂの左側からの吹き出しは、例えばトーク入力画面３００Ｃにおいて入力されたユーザの問いかけである。以下、ユーザの問いかけをユーザトークと記す。トーク画面３００Ｂの右からの吹き出しは、ユーザトークに対する応答である。以下、ユーザトークに対する応答を応答トークと記す。図示の例では、ユーザトーク「明日の天気」に対して、応答トーク「明日の日本全国の天気予報に関する簡易情報」が提供される。また、ユーザトーク「明日の東京の天気」に対して、応答トーク「明日の東京の天気予報に関する簡易情報」が提供される。
【００１５】
また、対話支援装置３００は、ユーザトークのサジェスト機能を備える。サジェスト機能とは、トーク入力画面３００Ｃを用いてユーザに入力されたユーザトーク（以下、第１ユーザトークと記す）の次に入力するユーザトーク（以下、第２ユーザトークと記す）の候補を作成する機能である。以下、第２ユーザトークの候補を、サジェスト候補と記す。対話支援装置３００は、学習装置２００により作成された参照データを参照し、第１ユーザトークに基づき、サジェスト候補を作成する。学習装置２００は、対話サービスのログデータに基づいて所定の参照データを作成する。学習装置２００は、同一ユーザのログデータから取得された連続する複数のユーザトークに基づいて、同一ユーザにより続けて入力された複数のユーザトークに含まれる共通点を抽出する。学習装置２００は、共通点が抽出された複数のユーザトークを用いて、所定の共通点を有するユーザトーク同士を対応付けた参照データを学習させる。
【００１６】
図３は、サジェスト候補の一例を示す図である。図３に示す全体画面３００Ｅは、トーク画面３００Ｆと、候補表示画面３００Ｇと、トーク入力画面３００Ｈとを含む。全体画面３００Ｅは、候補表示画面３００Ｇが表示されている点で全体画面３００Ａと異なる。候補表示画面３００Ｇは、サジェスト候補を表示する画面である。対話支援装置３００は、第１ユーザトーク「今日の天気」がトーク入力画面３００Ｈを用いて入力された場合、この第１ユーザトークに対する応答トーク「今日の日本全国の天気予報に関する簡易情報」をトーク画面３００Ｆに表示させるとともに、第１ユーザトーク「今日の天気」に対するサジェスト候補を作成し、候補表示画面３００Ｇに表示させる。
【００１７】
候補表示画面３００Ｇに表示されたいずれかのサジェスト候補がユーザにより選択された場合、対話支援装置３００は、選択されたサジェスト候補を第２ユーザトークとして、トーク画面３００Ｆに表示させるとともに、第２ユーザトークの次の第３ユーザトークの候補を、候補表示画面３００Ｇに表示させる。こうすることにより、トーク入力画面３００Ｈを用いてユーザが単語を入力する手間を省くことができる。また、第２ユーザトークが入力された後に第３ユーザトークの候補が表示されるように、ユーザトークの候補が連続して表示されることにより、対話を長く継続させることが可能であり、対話サービスの利用を促進することができる。なお、サジェスト候補以外を入力したい場合、ユーザは、トーク入力画面３００Ｈを用いて、第２ユーザトークを入力することができる。
【００１８】
［学習装置の構成］
次に、図４を参照して、実施形態に係る学習装置２００の構成について説明する。図４は、実施形態に係る学習装置２００の構成図である。
【００１９】
学習装置２００は、例えば、通信部２１０と、記憶部２２０と、取得部２３０と、抽出部２４０、学習部２５０とを備える。通信部２１０は、例えば、ＮＩＣなどの通信インターフェースを含む。記憶部２２０は、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＳＳＤなどのフラッシュメモリ、ＨＤＤ（Hard Disk Drive）などである。記憶部２２０には、例えば、ログデータ２２１、辞書データ２２２、参照情報２２３、属性別参照情報２２４、ユーザ属性情報２２５などが格納される。記憶部２２０は、学習装置２００がネットワークを介してアクセス可能なＮＡＳ（Network Attached Storage）などの外部記憶装置であってもよい。
【００２０】
取得部２３０、抽出部２４０、および学習部２５０のうち一部または全部は、例えば、ＣＰＵ（Central Processing Unit）などのプロセッサが、記憶部２２０に記憶されたプログラム（ソフトウェア）を実行することで実現される。また、これらの構成要素の機能のうち一部または全部は、ＬＳＩ、ＡＳＩＣ、ＦＰＧＡ等のハードウェア（回路部：circuitryを含む）によって実現されていてもよいし、ソフトウェアとハードウェアの協働によって実現されていてもよい。
【００２１】
取得部２３０は、例えば、対話サービスのログデータの送信リクエストを対話支援装置３００に対して送信する。取得部２３０は、対話支援装置３００から受信したログデータを、ログデータ２２１として記憶部２２０に格納する。これに代えて、対話支援装置３００が自発的にログデータを学習装置２００に送信してもよい。
【００２２】
抽出部２４０は、ログデータ２２１を参照し、同一グループに属するユーザのログデータから取得された連続する複数のユーザトークから共通キーを抽出する。同一グループに属するユーザとは、サービス側から見て同時に対話している相手と見なされる少なくとも一人のユーザである。サービス側が同時に複数の相手と対話している場合、抽出部２４０は、複数のユーザのログデータに基づいて共通キーを抽出する。例えば、抽出部２４０は、同一のユーザのログデータから取得された連続する複数のユーザトークのそれぞれに含まれる単語のうち、共通条件を満たす少なくとも一以上の単語を、共通キーとして抽出する。なお、抽出部２４０は、適用した共通条件を示す情報を抽出した共通キーに対応付けておく。共通条件には、同一単語であること、あるいは、関連単語であることなどが含まれる。同一単語とは、単語の意味が同一である単語や、単語の意味のカテゴリーが同一である単語などが含まれる。意味が同一である単語には、例えば、「今日」、「きょう」、「キョウ」、「本日」などが含まれる。単語の意味のカテゴリーには、例えば、時間、場所などが含まれる。単語の意味のカテゴリーが同一である単語には、例えば、「一昨日」「昨日」「○月○日」「今日の午後」「明日の夜」などが含まれる。関連単語とは、意味が関連する単語などが含まれる。意味が関連する単語には、例えば、「株価」「為替」「日経平均」「レート」などが含まれる。なお、共通キーは、例えば「ここから○○大学まで」のように、二以上の単語により構成されるものであってもよい。また、二以上の単語により構成される共通キーは、一部に、単語の意味のカテゴリーが同一である単語、関連単語、あるいはその両方が含まれていてもよい。
【００２３】
また、共通キーは、定義された共通点を有する少なくとも一以上の単語（以下、定義単語と記す）であってもよい。共通キーが二以上の単語により構成される場合、一部に定義単語が含まれていてもよい。例えば、共通キー「ここから○○大学まで」のうち「ここから」の部分は、「ここから」「現在地から」「自宅から」などを含む「出発地点を示す定義単語」であってもよい。また、共通キー「ここから○○大学まで」のうち「○○大学まで」の部分は、例えば、「○○大学まで」「自宅まで」「職場まで」「駅まで」「実家まで」などを含む「到着地点を示す定義単語」であってよい。なお、共通キーの一部に定義単語等が含まれることや、共通キーにおける定義単語等の配置などを示す情報は、抽出部２４０により生成され、共通キーに対応付けられる。
【００２４】
共通キーとは、参照情報における一つのレコード群（複数のレコードを含む）に共通する少なくとも一以上の単語である。対話支援装置３００において、共通キーを用いて参照情報が検索されることにより、共通キーと対応付けられた一つのレコード群を検索結果として得ることができる。共通キーは、一つのレコード群において、例えば、一つである場合と、複数である場合がある。一つのレコード群において共通キーが一つである場合は、共通キーが同一単語である場合である。一つのレコード群において共通キーが複数ある場合は、共通キーが関連単語である場合である。
【００２５】
なお、同一単語、関連単語、定義単語等は、辞書データ２２２において予め登録されていてもよい。辞書データ２２２は、互いに意味等が同一である同一単語同士（意味が同一である単語同士、単語の意味のカテゴリーが同一である単語同士）をそれぞれ対応付けたデータ、互いに関連する関連単語同士をそれぞれ対応付けたデータ、同一の定義内容である定義単語同士をそれぞれ対応付けたデータなどを含む。例えば、辞書データ２２２において、単語の意味のカテゴリーが同一である単語として、「日付や時刻を示す単語」は、「今日、明日、明後日、一昨日、昨日、○月○日…」などを含むことが定義されている。
【００２６】
抽出部２４０は、ユーザのログデータから取得された連続する複数のユーザトークのうち、辞書データ２２２において予め登録されている同一単語、関連単語、定義単語などと合致する文字列を、共通キーとして抽出してもよい。また、抽出部２４０は、ユーザのログデータから取得された連続する複数のユーザトークのうち、参照情報２２３（あるいは属性別参照情報２２４）において定義されている共通キーと合致する文字列を、共通キーとして抽出してもよい。
【００２７】
学習部２５０は、抽出部２４０により抽出された共通キーに基づいて、共通キーを含むユーザトーク（以下、学習対象ユーザトークと記す）同士の対応付けを、共通キーごとに参照情報２２３に学習させる。例えば、学習部２５０は、学習対象ユーザトーク同士をそのまま対応付けた情報を参照情報２２３に学習させる（以下、学習方法その１と記す）。また、学習部２５０は、学習対象ユーザトークのうち共通キー以外の文字列を参照情報２２３に学習させてもよい（以下、学習方法その２と記す）。
【００２８】
参照情報２２３は、対話サービスにおけるログデータ２２１に基づき生成された情報であって、学習対象ユーザトークを一つのレコードとして、同一の共通キーに対応する複数のレコードをそれぞれ対応付ける情報である。なお、参照情報２２３は、レコード同士をそのまま対応付けた情報であってもよく、学習対象ユーザトークのうち共通キー以外の文字列だけ一つのレコードとしてそれぞれ対応付けた情報であってもよい。
【００２９】
学習方法その１の一例について説明する。例えば、学習対象ユーザトークが共通キー以外の文字列を含まない場合、学習部２５０は、学習方法その１を用いる。学習部２５０は、例えば、関連単語である「株価」と「為替」とに基づき、以下のようなルールを作成する。このルールが、参照情報３２３の一部となる。
ｓ／＾：株価：＄／＾：為替：＄／ｇ  …ルール（１）
ルール（１）では、「株価」というユーザトークのレコードと、「為替」というユーザトークのレコードが対応づけられている。
【００３０】
学習方法その２の一例について説明する。例えば、学習対象ユーザトークが共通キー以外の文字列を含む場合、学習部２５０は、学習方法その２を用いる。学習部２５０は、例えば、同一単語である「明日」に基づき、以下のようなルールを作成する。
ｓ／の：天気／の：東京：の：天気／ｇ  …ルール（２）
ルール（２）では、「明日の天気」というユーザトークのレコードと、「明日の東京の天気」というユーザトークのレコードが対応づけられている。
【００３１】
なお、ルール（１）（２）において、「ｓ」は各レコードの先頭を表す記号であり、「ｇ」は各レコードの最後尾を表す記号であり、「／」はレコード同士を区切る記号であり、「：」は各レコードに含まれる単語同士を区切る記号であり、「＾」と「＄」はこれらの記号により挟まれた単語が共通キー以外の文字列を含まないレコードであることを表す記号である。
【００３２】
また、学習部２５０は、辞書データ２２２を参照して、単語の意味のカテゴリーが同一である同一単語に共通する参照情報を生成してもよい。例えば、学習部２５０は、ルール（２）において、共通キーを「明日」と定義せずに、「日付や時刻を示す単語」と定義してもよい。こうすることにより、例えば「今日の天気」と「○月○日の運勢」と「昨日の夕飯」とが同一ユーザの連続するユーザトークとして取得された場合、学習部２５０は、これら全てのユーザトークと、１つの共通キー「日付や時刻を示す単語」に対する学習対象ユーザトークとして、参照情報を学習させることができる。また、学習部２５０は、定義単語についても同様にして、定義単語に共通する参照情報を生成してもよい。
【００３３】
また、学習部２５０は、ユーザ属性情報２２５に基づいてログデータに含まれるユーザトークを分類した後、分類されたユーザトークに基づいて、ユーザ属性ごとに用意された参照情報（以下、属性別参照情報）２２４を学習させてもよい。ユーザ属性情報２２５には、例えば、ユーザの性別、年齢、居住エリア、家族構成、趣味などが含まれる。例えば、ユーザＡ（男性、３０代、東京在住、独身、趣味はバイク）のログデータに基づく学習処理を実行する場合、学習部２５０は、一つの属性（東京在住）のために用意された参照情報を、該当する属性のユーザによるログデータから取得された学習対象ユーザトークを用いて学習させてもよい。また、学習部２５０は、二つ以上の属性（男性、３０代）のために用意された参照情報を、該当する属性のユーザによるログデータから取得された学習対象ユーザトークを用いて学習させてもよい。また、学習部２５０は、その両方の参照情報を、それぞれに該当する属性のユーザによるログデータから取得された学習対象ユーザトークを用いて学習させてもよい。こうすることにより、学習対象ユーザトークを増やし、参照情報を充実させることができる。
【００３４】
［対話支援装置の構成］
次に、図５を参照して、実施形態に係る対話支援装置３００の構成について説明する。図５は、実施形態に係る対話支援装置３００の構成図である。
【００３５】
対話支援装置３００は、例えば、通信部３１０と、記憶部３２０と、取得部３３０と、応答部３４０と、作成部３５０とを備える。通信部３１０は、例えば、ＮＩＣなどの通信インターフェースを含む。記憶部３２０は、例えば、ＲＡＭ、ＲＯＭ、ＳＳＤなどのフラッシュメモリ、ＨＤＤなどである。記憶部３２０には、例えば、ログデータ３２１、辞書データ３２２、参照情報３２３、属性別参照情報３２４、ユーザ属性情報３２５などが格納される。記憶部３２０は、対話支援装置３００がネットワークを介してアクセス可能なＮＡＳなどの外部記憶装置であってもよい。なお、ログデータ３２１、辞書データ３２２、参照情報３２３、属性別参照情報３２４、およびユーザ属性情報３２５は、学習装置２００に格納されている各情報と互換性を有し、それぞれが更新されることにより情報の内容が同じになる。
【００３６】
取得部３３０、応答部３４０、および作成部３５０のうち一部または全部は、例えば、ＣＰＵ（Central Processing Unit）などのプロセッサが、記憶部３２０に記憶されたプログラム（ソフトウェア）を実行することで実現される。また、これらの構成要素の機能のうち一部または全部は、ＬＳＩ、ＡＳＩＣ、ＦＰＧＡ等のハードウェア（回路部：circuitryを含む）によって実現されていてもよいし、ソフトウェアとハードウェアの協働によって実現されていてもよい。
【００３７】
取得部３３０は、対話サービスを現在利用しているユーザＢによるユーザトーク（これを、第１ユーザトークである）のテキストデータを取得する。例えば、取得部３３０は、通信部３１０を用いてユーザＢの端末装置１００から、第１ユーザトークのテキストデータを取得する。取得部３３０は、音声認識装置（図示せず）から第１ユーザトークのテキストデータを取得してもよい。音声認識装置は、ネットワークＮＷを介して対話支援装置３００と接続されており、入力する音声データをテキストデータに変換して、このテキストデータを対話支援装置３００に送信する。
【００３８】
また、取得部３３０は、例えば、参照情報等の送信リクエストを学習装置２００に対して送信する。取得部３３０は、学習装置２００から受信した参照情報等（属性別参照情報を含む）を、参照情報３２３（あるいは属性別参照情報３２４）として記憶部３２０に格納する。これに代えて、学習装置２００が自発的に参照情報等を対話支援装置３００に送信してもよい。
【００３９】
応答部３４０は、通信部３１０を用いて端末装置１００から受信したユーザトークに対する応答処理を実行する。例えば、応答部３４０は、ユーザトークに対する応答トークを生成する。応答トークを生成するために、応答部３４０は、例えば、ユーザトークをクエリとする検索処理を実行し、検索結果に基づいて応答トークを作成する。応答部３４０は、例えば、情報管理装置４００のデータベースを参照する。検索処理は、クエリに関する様々なコンテンツを検索する処理であって、例えば、画像、動画、地図、投稿情報、ニュース、ショッピング、レシピなどの様々コンテンツを検索可能である。検索結果が得られた場合、応答部３４０は、検索結果に含まれる情報から主要情報を抽出し、抽出した主要情報に基づいて応答トークを作成する。例えば、応答部３４０は、複数の検索結果が得られた場合、第１主要条件を満たす検索結果を抽出する。応答部３４０は、第１主要条件を満たす検索結果（あるいは、一つだけの検索結果）の中から、第２主要条件を満たす主要情報を抽出する。こうすることにより、簡易で分かりやすい情報をユーザに提供することができる。
【００４０】
第１主要条件には、例えば、複数の検索結果がある場合には検索結果の配置順位が最も高い（検索結果の並び順で一番のもの）こと、複数の検索結果の中にユーザのパーソナル情報が含まれる場合はパーソナル情報であることなどが含まれる。パーソナル情報には、例えば、ユーザが登録するスケジュール情報などが含まれる。第２主要条件には、検索結果の中で最も文字のフォントが大きい情報であること、検索結果に含まれるひとかたまりのテキストの中で文字数が所定数以下であること、説明図が付いている場合はその説明図（あるいは説明図に付与されている説明文）であることなどが含まれる。
【００４１】
なお、応答部３４０は、上述した検索処理に限られず、例えば、ユーザトークに対する応答トークとして、人工知能の技術を利用して、人間同士の会話のような応答を作成してもよい。また、応答部３４０は、ユーザトークに対する応答として、ユーザトークに含まる曲名の音楽を再生したり、ユーザトークに含まれる動作を対象の電化製品に対して実行させるためのコマンドを出力してもよい。例えば、ユーザトーク「エアコンをつけて」に対して、応答部３４０は、予め設定されているエアコンの電源をオンする。
【００４２】
また、応答部３４０は、作成部３５０により作成されたサジェスト候補のうちのいずれかがユーザにより選択された場合、選択されたサジェスト候補に対応する応答処理を実行する。
【００４３】
なお、応答部３４０は、通信部３１０を用いてユーザトークや応答トークを端末装置１００に出力させるための出力処理を実行する。出力処理には、例えば、ユーザトークや応答トークを表示画面に表示させるための処理や、ユーザトークや応答トークの内容を音声で出力させるための処理などが含まれる。また、応答部３４０は、サジェスト候補のいずれかががユーザにより選択された場合、選択された候補を第２ユーザトークとして端末装置１００に出力させるための出力処理を実行してもよい。
【００４４】
作成部３５０は、参照情報３２３あるいは属性別参照情報３２４を参照し、取得部３３０により取得された第１ユーザトークの少なくとも一部と合致する共通キーに基づいて、第１ユーザトークに対するサジェスト候補を作成する。例えば、作成部３５０は、ユーザＢによりユーザ属性の参照の禁止が設定されていない場合、属性別参照情報３２４を参照し、ユーザＢによりユーザ属性の参照の禁止が設定されている場合、参照情報３２３を参照する。以下、参照情報３２３を参照する例について説明する。
【００４５】
例えば、作成部３５０は、第１ユーザトークの少なくとも一部を共通キーとして、第１ユーザトークの少なくとも一部を含む少なくとも一つのレコードに基づいて、サジェスト候補を作成する。具体的に説明すると、作成部３５０は、第１ユーザトークを単語単位で分割する。作成部３５０は、参照情報３２３を参照して、第１ユーザトークの少なくとも一部と合致する共通キーを検索する。作成部３５０は、検索により第１ユーザトークの少なくとも一部と合致する共通キーを得た場合、参照情報３２３において、この共通キーを含むレコードに基づいて、サジェスト候補を作成する。共通キーを含むレコードが複数ある場合、作成部３５０は、例えば、予め設定されているユーザに提供可能な数に基づいて、サジェスト候補を作成する。ユーザに提供可能な数とは、例えば、候補表示画面３００Ｇ（図３参照）に表示可能な数や、端末装置１００のスピーカーから出力可能な数（複数の応答トークとして出力する場合も含む）である。
【００４６】
（第１の例）
ここで、具体例を挙げて詳細に説明する。例えば、参照情報３２３において、共通キー「今日」を含む複数のレコードとして、「今日の天気／今日の東京の天気／今日の気温／今日のランチ／今日の服装／今日のニュース／今日の運勢／今日のテレビ番組表／今日の仕事／今日の予定／今日のやるべきこと…」同士が対応付けられているとする。「／」は、各レコード同士を区切ることを示す記号である。第１ユーザトークが「今日の天気」であった場合、作成部３５０は、第１ユーザトークの一部「今日」が共通キー「今日」と合致しているため、上述した複数のレコード「今日の天気／…」に基づいて、サジェスト候補を作成する。例えば、作成部３５０は、複数のレコード「今日の天気／…」の中から、第１ユーザトークと完全に合致する「今日の天気」を除き、所定数のレコードを抜き出だす。作成部３５０は、抜き出した所定数のレコード「今日の東京の天気／…」を、サジェスト候補とする。このようにして作成されたサジェスト候補の一例が、図３に示す例である。
【００４７】
なお、上述の通り、同一単語には、単語の意味のカテゴリーが同一である単語が含まれる。作成部３５０は、第１ユーザトークの少なくとも一部と合致する共通キーの検索に換えて、辞書データ３２２を参照し、第１ユーザトークの少なくとも一部と単語の意味のカテゴリーが同一である少なくとも１つの単語（以下、置き換えワードと記す）を検索してもよい。そして、作成部３５０は、置き換えワードを共通キーとして、置き換えワードを含む少なくとも一つのレコードに基づいて、サジェスト候補として作成してもよい。例えば、第１ユーザトークの少なくとも一部が「今日」である場合、作成部３５０は、辞書データ３２２において「日付や時刻を示す単語」として定義されている単語（例えば、明日、昨日など）を、置き換えワードとして得る。作成部３５０は、検索により得られた置き換えワードと共通キーとを照合し、参照情報３２３の中から置き換え代表単語と合致する共通キーを検索する。なお、作成部３５０は、置き換えワードとして、第１ユーザトークの少なくとも一部と完全に一致する単語も選択可能であり、上述の例では「今日、明日、明後日」などを置き換えワードとして選択してもよい。こうすることにより、作成部３５０は、第１ユーザトーク「今日の天気」に対して、「明日の天気」や「明後日の天気」、「昨日の運勢」や「今日のニュース」などを、サジェスト候補として作成することができる。また、作成部３５０は、定義単語についても同様にして、同一の定義内容である定義単語と置き換えワードとして選択してもよい。
【００４８】
こうすることにより、作成部３５０は、第１ユーザトーク「今日の天気」に対して、共通キー「今日」を含むサジェスト候補だけでなく、共通キー「明日」や「明後日」などを含むサジェスト候補を作成することができる。また、第１ユーザトークに含まれる単語自体が参照情報において共通キーとして登録されていない場合であっても、単語の意味のカテゴリーが同一である単語（あるいは定義単語）として辞書データ３２２に登録されていれば、作成部３５０は、サジェスト候補を作成することができる。例えば、「元日」が、共通キーとして参照情報３２３に登録されていない場合であっても、「日付や時刻を示す単語」として辞書データ３２２に登録されている場合、作成部３５０は、第１ユーザトーク「元日の天気」などについてのサジェスト候補を作成することができる。
【００４９】
なお、複数の置き換えワードが検索により得られた場合、作成部３５０は、所定の選択基準に従って、検索結果の中から採用する置き換えワードを選択してもよい。選択基準は、任意に設定可能であり、例えば、代表単語との距離が近い単語としてもよい。距離が近い単語は、例えば、単語の意味のカテゴリーが時間であれば期間であり、単語の意味のカテゴリーが場所であれば距離である。
【００５０】
また、参照情報３２３において、共通キーが「日付や時刻を示す単語」として定義されている場合、作成部３５０は、置き換えワードを検索しなくてもよい。例えば、作成部３５０は、辞書データ３２２を参照し、第１ユーザトークの少なくとも一部が「日付や時刻を示す単語」に登録されているか否かを判定する。登録されている場合、作成部３５０は、「日付や時刻を示す単語」として定義されている共通キーを含むレコードに基づいて、サジェスト候補を作成してもよい。また、作成部３５０は、定義単語についても同様にして、共通キーが「出発地点を示す定義単語」として定義されている場合、「出発地点を示す定義単語」に含まれる少なくとも一以上の定義単語を共通キーとしてもよい。
【００５１】
（第２の例）
例えば、参照情報３２３において、共通キーを含む複数のレコードとして、「株価／為替／日経平均／急落／レート／相場／予想／ドル…」同士が対応付けられているとする。第１ユーザトークが「株価」であった場合、作成部３５０は、上述した複数のレコード「為替／…」に基づいて、サジェスト候補を作成する。例えば、作成部３５０は、複数のレコード「為替／…」の中から、第１ユーザトークと完全に合致する「株価」を除き、所定数のレコードを抜き出だす。作成部３５０は、抜き出した所定数のレコード「為替／…」を、サジェスト候補とする。
【００５２】
（第３の例）
例えば、ユーザＢによりユーザ属性の参照の禁止が設定されていない場合、作成部３５０は、属性別参照情報３２４のうち、ユーザＢの属性に合致する参照情報を参照して、サジェスト候補を作成する。例えば、作成部３５０は、ユーザ属性情報３２５を参照してユーザＢのユーザ属性情報を取得する。例えば、ユーザＢの属性が３０代の男性である場合、作成部３５０は、属性別参照情報３２４のうち、３０代の男性のために用意された参照情報を参照し、サジェスト候補を作成する。こうすることにより、作成部３５０は、ユーザの属性に応じたサジェスト候補を作成することができる。
【００５３】
また、作成部３５０は、通信部３１０を用いて端末装置１００から送信されたユーザＢの現在位置を示す情報に基づいて、ユーザＢの属性情報を取得してもよい。例えば、ユーザＢの現在位置が大阪である場合、作成部３５０は、属性別参照情報３２４のうち、大阪エリアのために用意された参照情報を参照し、サジェスト候補を作成する。こうすることにより、作成部３５０は、ユーザＢの居住エリアが大阪以外（例えば東京）であったとしても、現在位置に応じたサジェスト候補を作成することができる。
【００５４】
［フローチャート］
次に、図６を参照して、実施形態に係る学習装置２００において実行される処理について説明する。図６は、実施形態に係る学習装置２００において実行される処理の一例を示すフローチャートである。
【００５５】
まず、取得部２３０は、所定の学習タイミングに到達したか否かを判定する（Ｓ１１）。所定の学習タイミングに到達した場合、取得部２３０は、対話支援装置３００からログデータを取得する（Ｓ１２）。次いで、抽出部２４０は、取得されたログデータのうち、ユーザの連続する複数のユーザトークから共通キーを抽出する（Ｓ１３）。そして、学習部２５０は、抽出部２４０により抽出された共通キーを含む学習対象ユーザトーク同士の対応付けを、共通キーごとに参照情報２２３に学習させる（Ｓ１４）。
【００５６】
次いで、学習部２５０は、Ｓ１３により抽出された共通キーを含むユーザトークに基づいて、属性別参照情報２２４を学習させるか否かを判定する（Ｓ１５）。例えば属性別参照情報２２４を学習させることが予め設定されている場合、学習部２５０は、Ｓ１３により共通キーが抽出されたユーザトークのユーザ属性情報をユーザ属性情報２３６から取得し、取得したユーザ属性情報に合致する属性別参照情報２２４の一部を、Ｓ１３により共通キーが抽出されたユーザトークに基づいて学習させる（Ｓ１６）。次いで、学習部２５０は、ログデータに含まれるユーザトークのうち学習対象となるユーザトークの全てについて学習処理が終了したか否かを判定する（Ｓ１７）。終了していない場合、学習部２５０は、Ｓ１３に戻って処理を繰り返す。
【００５７】
次に、図７を参照して、実施形態に係る対話支援装置３００において実行される処理について説明する。図７は、実施形態に係る対話支援装置３００において実行される処理の一例を示すフローチャートである。
【００５８】
まず、取得部３３０が第１ユーザトークと取得する（Ｓ２１）。次いで、応答部３４０が所定の応答処理を行う（Ｓ２２）。そして、作成部３５０は、参照情報３２３あるいは属性別参照情報３２４を参照し、第１ユーザトークの少なくとも一部と合致する共通キーに基づいて、サジェスト候補を作成する（Ｓ２３）。次いで、作成部３５０は、通信部３１０を用いて、作成したサジェスト候補を端末装置１００に送信する（Ｓ２４）。
【００５９】
次いで、作成部３５０は、通信部３１０を用いて、端末装置１００からサジェスト候補のうちのいずれかを選択することを示す選択情報を受信したか否かを判定する（Ｓ２５）。選択情報を受信した場合、作成部３５０は、選択されたサジェスト候補を、第１ユーザトークに設定し（Ｓ２６）、Ｓ２２に戻る。こうすることより、応答部３４０は、選択されたサジェスト候補に対する応答処理を実行し、作成部３５０は、選択されたサジェスト候補（つまり、第１ユーザトークに設定されたサジェスト候補）に対するサジェスト候補を作成することができる。
【００６０】
以上説明した実施形態によれば、ネットワークを利用して、ユーザによる問いかけに対して応答を提供する対話サービスにおいて、前記ユーザによる第１問いかけのテキストデータを取得する取得部３３０と、対話サービスにおけるログデータに基づき生成された情報であって、前記ユーザのログデータから取得された連続する複数の問いかけにおいて出現した共通キーを含む複数のレコード同士を対応付けている参照情報を参照し、取得部３３０により取得された第１問いかけの少なくとも一部と合致する共通キーに基づいて、第１問いかけの次の第２問いかけの候補を作成する作成部３５０と、を備えることにより、ネットワークを利用した対話サービスにおけるユーザの利用促進を図ることができる。
【００６１】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【００６２】
例えば、対話支援装置３００が備える構成の少なくとも一部は、端末装置１００に搭載されるものであってもよい。対話支援装置３００が備える構成の少なくとも一部は、例えば、端末装置１００にインストールされるアプリケーションプログラムが実行されることにより実現される。
【００６３】
なお、対話支援装置３００は、図２，３に示す例に限られず、ユーザトークに対する応答を端末装置１００から音声により出力するようにしてもよい。例えば、第１ユーザトーク「今日の天気」に対するサジェスト候補として「今日の東京の天気をお調べしますか？」という音声を端末装置１００から出力するようにしてもよい。また、対話支援装置３００は、端末装置１００からサジェスト候補についての応答（例えば、「お願い」や「いらない」など）を受信した場合、サジェスト候補についての応答トークを端末装置１００から出力するための処理を実行した後、第１ユーザトーク「今日の天気」に対するサジェスト候補のうちまだ出力処理を実行していないサジェスト候補（例えば、「今日の運勢をお調べしますか？」）という音声を端末装置１００から出力するための処理を実行してもよい。このように、対話支援装置３００は、直近のユーザトークに限られず、ユーザトークの流れに基づいて、第１ユーザトークについての対話が継続されているか否かを判定する。第１ユーザトークについての対話が継続されていると判定した場合、対話支援装置３００は、サジェスト候補を続けて端末装置１００から出力するための処理を実行してもよい。また、対話支援装置３００は、一つの応答トークにおいて複数のサジェスト候補を音声で端末装置１００から出力するための処理を実行してもよい。
【００６４】
また、対話処理装置３００による対話サービスは、複数のユーザからの問いかけに対してサービス側による応答を提供するサービスであってもよい。そして、学習装置２００は、これら複数のユーザによるユーザトークに基づいて参照情報を学習させてもよい。例えば、ユーザＸ１とユーザＸ２とが同一の音声認識機能等を備える専用の端末に対して話しかけた場合、対話処理装置３００は、ユーザＸ１によるユーザトークとユーザＸ２によるユーザトークとをユーザごとに区別することなく連続する複数のユーザトークとして取り扱う。こうすることにより、ユーザＸ１による「今日の天気」の次に、ユーザＸ２による「今日の東京の天気」というログデータがあった場合、学習装置２００は、これらログデータに基づいて参照情報を学習させることができる。なお、複数のユーザからユーザトークを取得するシーンは上述に限られない。例えば、ユーザＸ１が自身の端末装置１００Ｘ１を用いてサービス側と対話しているところに、ユーザＸ２が自身の端末装置１００Ｘ２を用いて参加する場面なども該当する。また、グループとして複数のユーザＸ１〜Ｘ３が登録されており、登録されているユーザがいつでも対話に参加できるようになっている場面なども該当する。
【符号の説明】
【００６５】
１…対話支援システム、１００…端末装置、２００…学習装置、３００…対話支援装置、４００…情報管理装置、２１０…通信部、２２０…記憶部、２３０…取得部、２４０…抽出部、２５０…学習部、２２１…ログデータ、２２２…辞書データ、２２３…参照情報、２２４…属性別参照情報、２２５…ユーザ属性情報、３１０…通信部、３２０…記憶部、３３０…取得部、３４０…応答部、３５０…作成部、３２１…ログデータ、３２２…辞書データ、３２３…参照情報、３２４…属性別参照情報、３２５…ユーザ属性情報
【図１】
2019164426.tif 000003
【図２】
2019164426.tif 000004
【図３】
2019164426.tif 000005
【図４】
2019164426.tif 000006
【図５】
2019164426.tif 000007
【図６】
2019164426.tif 000008
【図７】
2019164426.tif 000009