(57)【特許請求の範囲】
【請求項１】
対話エージェントシステムとユーザとの会話に対応するノードの使用回数に基づいて、前記ユーザの会話の進め方の傾向を特定する特定部と、
前記特定部によって特定された前記ユーザの会話の進め方の傾向に応じて応答メッセージの内容を変形する変形部と、
前記変形部によって内容が変形された応答メッセージを出力するよう制御する出力制御部と、
を備えたことを特徴とする応答生成装置。
【請求項２】
前記特定部は、前記ユーザの会話の進め方の傾向に応じたユーザ特性を特定し、
前記変形部は、前記特定部によって特定されたユーザ特性に基づいて、応答メッセージの内容を変形する、
ことを特徴とする請求項１に記載の応答生成装置。
【請求項３】
前記変形部は、出力時における音声の特徴が、前記ユーザの音声の特徴から特定されたユーザ特性に対応する音声の特徴とは異なる音声の特徴となるように、応答メッセージとしての広告情報の内容を変形する、
ことを特徴とする請求項２に記載の応答生成装置。
【請求項４】
前記変形部は、出力時における音声の特徴が、前記ユーザの音声の特徴から特定されたユーザ特性に対応する音声の特徴と同様の特徴となるように、応答メッセージとしての広告情報の内容を変形する、
ことを特徴とする請求項２に記載の応答生成装置。
【請求項５】
前記特定部は、応答メッセージとして登録されている所定の広告情報であって、出力予定の広告情報を予測し、予測した広告情報の内容から当該広告情報の特徴を特定し、
前記変形部は、前記特定部によって特定された広告情報の特徴に基づいて、応答メッセージの内容を変形する、
ことを特徴とする請求項１又は２に記載の応答生成装置。
【請求項６】
前記変形部は、前記出力予定の応答メッセージのうち、前記特定部によって予測された広告情報が出力されるまでの応答回数が所定の閾値以下である場合に、応答メッセージの内容を変形する、
ことを特徴とする請求項５に記載の応答生成装置。
【請求項７】
コンピュータが実行する応答生成方法であって、
対話エージェントシステムとユーザとの会話に対応するノードの使用回数に基づいて、前記ユーザの会話の進め方の傾向を特定する特定工程と、
前記特定工程によって特定された前記ユーザの会話の進め方の傾向に応じて応答メッセージの内容を変形する変形工程と、
前記変形工程によって内容が変形された応答メッセージを出力するよう制御する出力制御工程と、
を含んだことを特徴とする応答生成方法。
【請求項８】
対話エージェントシステムとユーザとの会話に対応するノードの使用回数に基づいて、前記ユーザの会話の進め方の傾向を特定する特定手順と、
前記特定手順によって特定された前記ユーザの会話の進め方の傾向に応じて応答メッセージの内容を変形する変形手順と、
前記変形手順によって内容が変形された応答メッセージを出力するよう制御する出力制御手順と、
をコンピュータに実行させることを特徴とする応答生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、応答生成装置、応答生成方法及び応答生成プログラムに関する。
【背景技術】
【０００２】
従来、ユーザ端末からメッセージを受け付けたことに応じて、このメッセージに対応するメッセージをユーザ端末に出力する対話エージェントシステムが知られている。このような対話エージェントシステムにおいて、ユーザ端末から受け付けたメッセージに対応するメッセージの出力を行ったり、このユーザ端末のユーザに適した広告を含むメッセージの出力を行ったりする技術が提供されている。また、対話のコンテンツやコンテキストに基づいて、ユーザに提供する広告を決定する技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００６−５００６９９号広報
【特許文献２】特表２００１−５２５９５１号広報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、ユーザと適切な会話を行うことができない場合がある。例えば、上記の従来技術では、ユーザ端末から受け付けたメッセージに対応する応答や広告を、あらかじめ登録された応答や広告から選択してそのまま出力するので、会話が不自然になったり、広告効果が最適にならない場合がある。
【０００５】
本願は、上記に鑑みてなされたものであって、ユーザと適切な会話を行うことができる応答生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本願にかかる、応答生成装置は、対話エージェントシステムとユーザとの会話の特徴に関する特徴情報を特定する特定部と、前記特定部によって特定された特徴情報に応じて応答メッセージの内容を変形する変形部と、前記変形部によって内容が変形された応答メッセージを出力するよう制御する出力制御部と、を備えたことを特徴とする。
【発明の効果】
【０００７】
実施形態の一態様によれば、ユーザと適切な会話を行うことができる効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施形態にかかる応答生成処理の一例を示す図である。
【図２】図２は、実施形態にかかる応答生成システムの構成例を示す図である。
【図３】図３は、実施形態にかかる広告入札装置の構成例を示す図である。
【図４】図４は、実施形態にかかる広告情報記憶部の一例を示す図である。
【図５】図５は、実施形態にかかる応答生成装置の構成例を示す図である。
【図６】図６は、実施形態にかかる判定情報記憶部の一例を示す図である。
【図７】図７は、判定情報記憶部に記憶されるツリー構造の模式図である。
【図８】図８は、実施形態にかかる応答生成装置による応答生成処理手順を示すシーケンス図である。
【図９】図９は、変形例にかかる判定ツリーの一例を示す図である。
【図１０】図１０は、変形例にかかる判定ツリーの一例を示す図である。
【図１１】図１１は、応答生成装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【０００９】
以下に、本願にかかる応答生成装置、応答生成方法及び応答生成プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願にかかる応答生成装置、応答生成方法及び応答生成プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【００１０】
〔１．応答生成処理〕
まず、図１を用いて、実施形態にかかる応答生成処理の一例について説明する。図１は、実施形態にかかる応答生成処理の一例を示す図である。図１では、応答生成装置１００によって応答生成処理が行われる例を示す。
【００１１】
ユーザ端末１０は、ユーザによって利用される端末装置である。ユーザ端末１０は、例えば、スマートフォンなどの携帯電話機や、タブレット端末や、ＰＤＡ（Personal  Digital  Assistant）や、デスクトップ型ＰＣ（Personal  Computer）や、ノート型ＰＣ等である。なお、ユーザ端末１０は、会話を行うロボットや、ロボットが有する情報処理装置、その他ロボットに内蔵される任意の装置に適用することができる。
【００１２】
音声認識装置２０は、ユーザ端末１０から受信した入力メッセージ、すなわち、発話の音声データをテキストデータに変換する。また、音声認識装置２０は、ユーザ端末１０から受信した音声データを解析し、音の特徴情報としてユーザに関する特性を特定する。具体的には、音声認識装置２０は、音声データ解析により音声波形を生成する。そして、音声認識装置２０は、生成した音声波形のピーク形状や周波数特性等に基づいて、音声を入力したユーザ特性を特定する。
【００１３】
なお、音の特徴情報としてのユーザ特性とは、例えば、ユーザの年齢、性別、感情、方言、体調といったユーザ属性に関する情報である。例えば、音声認識装置２０は、音声波形に基づいて、音のテンポや単語と単語との間隔が所定値より短ければ「せっかち」、長ければ「おっとり」といった性格を判定することができる。また、音声認識装置２０は、音声波形における振動の幅、ピーク形状、周波数から、年齢・性別・方言を判定することができる。なお、音声認識装置２０は、上述した処理以外にも、任意の手法を用いて、音声からユーザ特性を特定してよい。
【００１４】
広告主端末３０は、広告主によって利用される端末装置である。広告主端末３０は、例えば、スマートフォンなどの携帯電話機や、タブレット端末や、ＰＤＡや、デスクトップ型ＰＣや、ノート型ＰＣ等である。また、広告主端末３０は、広告主から受け付けた広告情報を広告入札装置４０へ送信する。
【００１５】
広告入札装置４０は、入札用画面を広告主端末３０に提示する。また、広告入札装置４０は、広告主端末３０から受け付けた広告情報を所定の記憶部に記憶する。なお、広告情報には、広告の内容を特徴づける広告キーワードや、応答メッセージとして出力される広告データ等が含まれる。広告データとは、例えば、テキスト形式の広告文に該当する。
【００１６】
応答生成装置１００は、ユーザの発話である入力メッセージに対し、予め設定された判定情報に従って応答メッセージを出力することにより会話を実現する。以下、実施形態では、かかる判定情報は、入力メッセージ及び応答メッセージに対応する各ノードから成るツリー構造（以下、「判定ツリー」と表記する場合がある）であるものとする。
【００１７】
なお、図１に示す判定ツリーおいて、破線ブロックは、検出ノードを示しており、実線ブロックは、動作ノードを示している。検出ノードは、ユーザからの入力メッセージに対応し、動作ノードは応答メッセージに対応する。
【００１８】
そして、実施形態における応答生成装置１００は、会話の特徴に関する特徴情報として、会話の進め方の傾向、または、音の特徴情報に関するユーザ特性を特定し、特定したユーザ特性に応じて応答メッセージの内容を変形する。そして、応答生成装置１００は、内容を変形した応答メッセージを出力するよう出力制御する。これにより、応答生成装置１００は、よりユーザの特性に応じた会話を実現する。なお、上述したように、音の特徴情報としてのユーザ特性は、音声認識装置２０によって特定されるため、応答生成装置１００は、会話の進め方の傾向に関するユーザ特性を、任意の技術を用いて特定する。そして、応答生成装置１００は、特定されたいずれかのユーザ特性に基づいて、変形処理を行う。また、応答生成装置１００は、複数のユーザ特性を用いて変形処理を行ってもよい。
【００１９】
例えば、応答生成装置１００は、会話の進め方の傾向として、ユーザとの一連の会話の中で使用した所定のノードの使用回数や、使用したノードの総数等に基づいて、ユーザ特性を特定する。具体的には、応答生成装置１００は、所定のノードの使用回数や、会話が終了するまでに使用したノード総数に所定の閾値を設定する。そして、応答生成装置１００は、各ノードの使用回数や、広告情報を出力するまでに使用したノード総数が所定の閾値よりも少ない場合は、ユーザ特性として、「話題の切り替えを好まない傾向（話題の無駄が生じない傾向）→無駄話嫌い」と特定し、多い場合は、「話題の切り替えを好む傾向（話題の無駄が生じる傾向）→無駄話好き」と特定する。
【００２０】
ここでは、応答生成装置１００は、音声認識装置２０によって特定されたユーザ特性を用いるものとする。具体的には、応答生成装置１００は、音声認識装置２０によって特定されたユーザＵ０１のユーザ特性として、「大阪弁」を用いるものとする。そして、以下では、図１を用いて、応答生成装置１００が、ユーザ特性「大阪弁」に基づいて、応答メッセージの内容を変形する例について説明する。
【００２１】
まず、ユーザ端末１０は、その所有者であるユーザＵ０１からメッセージの入力を受け付けたとすると（ステップＳ１１）、その音声データを音声認識装置２０へ送信する（ステップＳ１２）。
【００２２】
音声認識装置２０は、ユーザ端末１０から受信した発話の音声データをテキストデータに変換すると共に、ユーザ端末１０から受け付けた音声データを解析し、音声データに含まれる音の特徴を示す特徴情報として、ユーザ特性を特定する（ステップＳ１３）。
【００２３】
そして、音声認識装置２０は、テキストデータと、特定したユーザ特性「大阪弁」をユーザ端末１０へ送信する（ステップＳ１４）。ユーザ端末１０は、受信したテキストデータと、ユーザ特性「大阪弁」を応答生成装置１００へ送信する（ステップＳ１５）。
【００２４】
そして、応答生成装置１００は、出力する応答メッセージのデータを取得する（ステップＳ１６）。ちなみに、応答生成装置１００は、音声テキストを受け付けた場合に、かかる音声テキストに含まれているキーワードを有する検出ノードを判定し、判定した検出ノードと接続された動作ノードに対応する応答メッセージのデータを取得する。このように、応答生成装置１００は、検出ノードと動作ノードを使用してユーザとの会話を実現する。
【００２５】
ここで、応答生成装置１００は、判定した検出ノードを使用するたびに広告情報を広告入札装置４０から検索し、検索の結果、広告情報が存在する場合には、その広告情報に含まれる広告データを、動作ノードとして登録されている応答メッセージに変わる応答メッセージとして取得する。なお、応答生成装置１００は、判定した検出ノードに広告検索を行う旨が登録されている場合に、広告情報を検索してもよい。
【００２６】
なお、広告情報は、応答生成装置１００が所定の検出ノードを使用（音声テキストの受信に該当）した場合に、その検出ノードに対応する動作ノードとして使用（応答メッセージの出力）されるよう、予め広告主によって、かかる検出ノードを識別するためのノードＩＤ（以下、「検出ノードＩＤ」と表記する場合がある）が登録されている。よって、応答生成装置１００は、音声テキストを受信することにより検出ノードを使用するたびに、かかる検出ノードＩＤに対応する広告情報を検索するよう広告入札装置４０に要求し、広告入札装置４０によって検索された広告情報に含まれる広告データを取得することになる。なお、検出ノードに対応する広告情報が登録されていない場合等には、応答生成装置１００は、判定ツリーに登録されている通常の応答メッセージを取得する。なお、通常の応答メッセージとは、広告情報以外の応答メッセージのことである。
【００２７】
そして、応答生成装置１００は、取得した応答メッセージが、判定ツリーに登録されている通常の応答メッセージであっても、また、広告主によって登録されている広告データのいずれであっても、その内容をユーザ特性「大阪弁」に合わせて、「大阪弁」に変形する（ステップＳ１７）。
【００２８】
例えば、図１に示す判定ツリーにおいて、太線で示す曲線Ｋ１の流れで会話が行われたとする。また、判定ツリーには、応答メッセージが標準語で登録されているとする。ここで、従来の応答サーバは、「食べること好きや」といった「大阪弁」でメッセージが入力されても、標準語の応答メッセージ「何が好きですか？」を変形せずに出力するので、会話が不自然になってしまう。また、かかる応答メッセージに対して、「キーマカレーが好きやわ」といった「大阪弁」でメッセージが入力されても、従来の応答サーバは、標準語の応答メッセージ「Ａ店のキーマカレーすごくおいしいです」を変形せずに出力するので、会話が不自然になる結果、広告効果が悪化してしまう。
【００２９】
一方、応答生成装置１００は、変形処理を行う場合には、「食べること好きや」といった「大阪弁」の入力メッセージに応じて、標準語の応答メッセージ「何が好きですか？」を、「何が好きなん？」と「大阪弁」に変形する。また、続く、「キーマカレーが好きやわ」といった「大阪弁」の入力メッセージに応じて、標準語の応答メッセージ「Ａ店のキーマカレーすごくおいしいです」を、「Ａ店のキーマカレーめっちゃうまいで！」に変形する。
【００３０】
そして、応答生成装置１００は、文章を変形した応答メッセージがユーザ端末１０によって出力されるよう出力制御を行う（ステップＳ１８）。
【００３１】
このように、応答生成装置１００は、特定したユーザ特性に応じて応答メッセージの内容を変形する。例えば、応答生成装置１００は、ユーザ特性として、ユーザが「大阪弁」を話すことを特定した場合には、入力メッセージを受け付けるたびに、対応する応答メッセージの文章を「大阪弁」に変形し、変形した応答メッセージの出力制御を行う。これにより、応答生成装置１００は、「大阪弁」を話すユーザに対し、「標準語」で応答することによる違和感を与えることがない。すなわち、応答生成装置１００は、自然な流れでユーザの特性に応じた会話を行うことができ、会話に対するユーザの満足度を高めることができる。
【００３２】
〔２．応答生成システムの構成〕
次に、図２を用いて、実施形態にかかる応答生成システムの構成について説明する。図２は、実施形態にかかる応答生成システム１の構成例を示す図である。図２に示すように、応答生成システム１は、ユーザ端末１０と、音声認識装置２０と、広告主端末３０と、広告入札装置４０と、ＡＰＩサーバ装置６０と、音声合成装置７０と、応答生成装置１００とを含む。ユーザ端末１０と、音声認識装置２０と、広告主端末３０と、広告入札装置４０と、ＡＰＩサーバ装置６０と、音声合成装置７０と、応答生成装置１００とは、ネットワークＮを介して有線または無線により通信可能に接続される。なお、図２に示す応答生成システム１には、複数台のユーザ端末１０や、複数台の広告主端末３０が含まれてよい。
【００３３】
ここで、応答生成システム１がユーザへ音声サービスを提供する処理の概要について説明する。ユーザ端末１０は、アプリケーションの起動後、ユーザの発話を検知すると、発話の音声データを音声認識装置２０へ送信する。
【００３４】
音声認識装置２０は、ユーザ端末１０から発話の音声データを受信すると、音声データをテキストデータに変換し、発話のテキストデータをユーザ端末１０へ送信する。音声認識装置２０から発話のテキストデータを受信したユーザ端末１０は、発話のテキストデータを応答生成装置１００に送信する。
【００３５】
広告主端末３０は、広告主から受け付けた広告情報を広告入札装置４０へ送信する。なお、広告情報には広告キーワード、広告データ等が含まれる。広告入札装置４０は、入札用画面を広告主端末３０に提示する。また、広告入札装置４０は、広告主端末３０から受け付けた広告情報を後述する記憶部に記憶する。また、広告入札装置４０は、応答生成装置１００によって変形された広告文を広告主に提示する。
【００３６】
応答生成装置１００は、ユーザ端末１０から発話のテキストデータ及び音声認識装置２０によって取得されたユーザ情報を受信すると、上述した検索処理を実行して応答メッセージを生成する。また、応答生成装置１００は、ユーザの発話に基づいて画像検索結果や経路検索結果等を応答として出力する場合には、応答の生成に必要なデータの検索条件を指定し、ユーザ端末１０が起動したアプリケーションに対応するＡＰＩサーバ装置６０に対してデータの要求を行う。
【００３７】
ＡＰＩサーバ装置６０は、応答生成装置１００から受信した検索条件に従って、画像検索結果や経路検索結果等を含むデータを応答生成装置１００に送信する。例えば、ＡＰＩサーバ装置６０は、画像検索結果や経路検索結果を含むＸＭＬ（Extensible  Markup  Language）データを取得する処理を行い、取得したＸＭＬデータを応答生成装置１００に送信する。
【００３８】
応答生成装置１００は、ＡＰＩサーバ装置６０から、例えば、ＸＭＬデータを受信すると、ＸＭＬデータからデータを抽出し、ＸＭＬデータをＨＴＭＬデータに変換するとともに、ＸＭＬデータまたはＨＴＭＬデータから音声にて応答を行うテキストデータ（以下、応答発話表示用のテキストデータと記載する）を抽出する。また、応答生成装置１００は、応答発話表示用のテキストデータや、判定処理により取得された応答のテキストデータを音声合成装置７０に送信する。
【００３９】
音声合成装置７０は、応答発話表示用のテキストデータや判定処理により取得された応答のテキストデータから音声を合成する音声合成処理を行って生成した応答発話用の中間表記を応答生成装置１００に送信する。応答生成装置１００は、応答発話用の中間表記と応答発話表示用のテキストデータとＨＴＭＬデータとをユーザ端末１０に送信する。
【００４０】
ユーザ端末１０は、受信した応答発話用の中間表記を用いて、応答の音声を出力するとともに、応答発話表示用のテキストデータとＨＴＭＬデータとを用いて、応答内容を表示する。このようにして、応答生成システム１は、ユーザの発話に対して適切な応答を行う音声サービスを実現する。
【００４１】
なお、応答生成装置１００は、上述した音声サービスを提供する処理に、上述した応答メッセージ変形処理を組み合わせることにより、よりユーザの特性に応じた応答メッセージの出力を実現する。
【００４２】
〔３−１．広告入札装置の構成〕
次に、図３を用いて、実施形態にかかる広告入札装置４０について説明する。図３は、実施形態にかかる広告入札装置４０の構成例を示す図である。図３に示すように、広告入札装置４０は、通信部４１と、広告情報記憶部４２と、制御部４３とを有する。
【００４３】
通信部４１は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。そして、通信部４１は、ネットワークと有線または無線で接続される。
【００４４】
広告情報記憶部４２は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
【００４５】
広告情報記憶部４２は、各種広告情報を記憶する。具体的には、広告情報記憶部４２は、広告主端末３０から入札として受け付けた広告情報を記憶する。ここで、図４に、実施形態にかかる広告情報記憶部４２の一例を示す。図４に示した例では、広告情報記憶部４２は、広告ＩＤに、広告キーワードと、広告タグと、広告データとを対応付けて記憶する。
【００４６】
「広告ＩＤ」は、広告情報を識別するための識別情報を示す。また、「広告ＩＤ」は、広告主及び広告主端末３０を識別するための識別情報でもある。「出力箇所」は、広告主が希望する広告出力箇所を示す。具体的には、広告入札装置４０は、応答生成装置１００から所定の部分の判定ツリーを取得し、取得した判定ツリーを広告主に提示することにより、広告主は、かかる判定ツリーを参考に、広告を出力したい出力箇所として、任意の検出ノードに対応するノードＩＤを選択する。つまり、広告主は、選択した検索ノード（出力メッセージ）に対する応答メッセージとして自身の広告情報を出力するよう指定する。
【００４７】
「広告キーワード」は、広告主によって設定されるキーワードである。例えば、広告主は、広告したい商品や情報を特徴づける言葉を広告キーワードとして設定する。「広告タグ」は、どのような人に対して広告したいかといった広告対象を示す。
【００４８】
すなわち、図４では、広告ＩＤ「Ｃ０１」によって識別される広告主（例えばＡ店とする）は、ノードＩＤ「Ｎ９」に対する応答メッセージとして、「Ａ店のキーマカレーすごくおいしいです」といった広告データを出力するよう指定している。また、ユーザが「キーマカレー」を含むメッセージを入力した場合に、そのユーザが大阪地方に関係するユーザであれば、出力するよう指定していることを示す。
【００４９】
図３に戻って説明を続ける。制御部４３は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等によって、広告入札装置４０の内部の記憶装置に記憶されている各種プログラム（広告入札プログラムの一例に相当）がＲＡＭ（Random  Access  Memory）を作業領域として実行されることにより実現される。また、制御部４３は、例えば、ＡＳＩＣ（Application  Specific  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現される。
【００５０】
図３に示すように、制御部４３は、入札受付部４４と、提示部４５とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部４３の内部構成は、図３に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部４３が有する各処理部の接続関係は、図３に示した接続関係に限られず、他の接続関係であってもよい。
【００５１】
入札受付部４４は、広告主端末３０に所定の入札画面を提示することにより、広告主から、希望する広告出力箇所を示す検出ノードＩＤと、広告キーワード、広告タグと、広告データとを含む広告情報の入札を受け付ける。そして、入札受付部４４は、広告ＩＤを払い出し、払い出した広告ＩＤに受け付けた広告情報に含まれる検索ノードＩＤと、広告キーワードと、広告タグと、広告データとを対応付けて広告情報記憶部４２に格納する。なお、入札受付部４４は、必ずしもノードＩＤと、広告キーワード、広告タグの全てを受け付ける必要はなく、少なくともいずれか一つを受け付けていればよい。
【００５２】
提示部４５は、応答生成装置１００からの広告取得要求に応じて広告情報を検索し、検索した広告情報に含まれる広告データを提示する。具体的には、提示部４５は、応答生成装置１００から検索ノードＩＤやユーザ特性を受け付けた場合に、かかる検索ノードＩＤと一致する出力箇所が設定されている広告情報を検索する。なお、提示部４５は、検索により複数の広告情報を得た場合には、例えば、それら広告情報のうち、受け付けた検索キーワード及びユーザ特性を満たす広告情報を特定することにより絞り込む。そして、提示部４５は、検索した広告情報に含まれる広告データを応答生成装置１００に対して提示する。なお、後述するが検索キーワードとは、応答生成装置１００によって入力メッセージに含まれる所定のキーワードが、広告情報検索のための検索キーワードとして設定される。
【００５３】
〔３−２．応答生成装置の構成〕
次に、図５を用いて、実施形態にかかる応答生成装置１００について説明する。図５は、実施形態にかかる応答生成装置１００の構成例を示す図である。図５に示すように、応答生成装置１００は、通信部１１０と、判定情報記憶部１２０と、制御部１３０とを有する。
【００５４】
通信部１１０は、例えば、ＮＩＣ等によって実現される。そして、通信部１１０は、ネットワークと有線または無線で接続される。
【００５５】
判定情報記憶部１２０は、例えば、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。そして、判定情報記憶部１２０は、ユーザによる応答メッセージに対する応答メッセージを判定するための判定情報を記憶する。判定情報は、入力メッセージに対応する処理手順が定められた検出ノードと、応答メッセージに対応する処理手順が定められた動作ノードと、検出ノードと動作ノードとの接続関係を示すエッジとから構成されるツリー構造のデータである。
【００５６】
ここで、図６に実施形態にかかる判定情報記憶部１２０の一例を示す。図６に示した例では、各ノードを識別するノードＩＤと、ノードの種別を示すノード種別と、メッセージに対応する処理手順を示す処理内容とを関連付けて記憶する。また、判定情報記憶部１２０には、各ノードがどのノードと接続されているかを示す情報が登録されているものとする。例えば、判定情報記憶部１２０には、ノードＩＤ「Ｎ１」のノードと、ノードＩＤ「Ｎ２」、「Ｎ３」のノードとが接続され、ノードＩＤ「Ｎ１」のノードからノードＩＤ「Ｎ２」、「Ｎ３」に遷移する確率である遷移確率がそれぞれ「０．５」であるものとする。この結果、判定情報記憶部１２０は、図７に示すツリー構造のデータを記憶することとなる。
【００５７】
図７は、判定情報記憶部１２０に記憶されるツリー構造の模式図である。図７に示される破線ブロックは、検出ノードを示しており、実線ブロックは動作ノードを示している。また、これらのブロックには、ノードＩＤが付されている。また、各ブロック同士を繋ぐ矢印は、エッジを示しており、具体的には、始点（矢がない側）が接続元ノードを示し、終点（矢がある側）が接続先ノードを示している。例えば、ノードＩＤ「Ｎ１」のノードとノードＩＤ「Ｎ２」のノードとを接続する矢印は、接続元ノードがノードＩＤ「Ｎ１」の検出ノードであり、接続先ノードがノードＩＤ「Ｎ２」の動作ノードであることを示している。
【００５８】
また、図７に模式した判定ツリーは、判定情報記憶部１２０が記憶する検出ノードや動作ノードのうち一部のノードのみを表したものであり、各ノードには図６や図７に示すノード以外にも、各種の検出ノードや動作ノードが接続されているものとする。
【００５９】
図５に戻って説明を続ける。制御部１３０は、例えば、ＣＰＵやＭＰＵ等によって、応答生成装置１００の内部の記憶装置に記憶されている各種プログラム（応答生成プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、例えば、ＡＳＩＣやＦＰＧＡ等の集積回路により実現される。
【００６０】
図５に示すように、制御部１３０は、受信部１３１と、特定部１３２と、変形部１３３と、出力制御部１３４とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１３０の内部構成は、図５に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部１３０が有する各処理部の接続関係は、図５に示した接続関係に限られず、他の接続関係であってもよい。
【００６１】
受信部１３１は、上述したように、ユーザ端末１０、ＡＰＩサーバ装置６０、音声合成装置７０から各種情報を受信する。また、受信部１３１は、図示しない外部装置によって作製された判定情報を受信し、判定情報記憶部１２０に格納する。また、受信部１３１は、音声認識装置２０から音声テキストとユーザ特性を受け付ける。そして、受信部１３１は、受け付けたユーザ特性を変形部１３３へ送信する。
【００６２】
特定部１３２は、ユーザとの会話の特徴に関する特徴情報を特定する。具体的には、特定部１３２は、かかる特徴情報として、会話の進め方の傾向に応じたユーザ特性を特定する。
【００６３】
なお、図１でも説明したように、応答生成装置１００は、音声認識装置２０によって音の特徴情報から特定されたユーザ特性を用いて、以下に示す変形処理を行ってもよい。また、応答生成装置１００は、特定部１３２によって特定されたユーザ特性と、音声認識装置２０によって特定されたユーザ特性の両方を用いて、以下に示す変形処理を行ってもよい。
【００６４】
特定部１３２が、会話の進め方の傾向からユーザ特性を特定するには、例えば、以下に示す第１の特定方法がある。具体的には、特定部１３２は、応答生成装置１００によって使用されるノードに基づいて会話の進め方の傾向を特定する。応答生成装置１００によって使用されるノードとは、例えば、入力メッセージを受け付けたことによる対応する検出ノードの使用や、かかる入力メッセージに対する応答メッセージに対応する動作ノードの使用である。
【００６５】
第１の特定方法として、特定部１３２は、一連の会話の中で、応答生成装置１００が検出ノード、または、動作ノードを使用するたびに、その使用回数をノード毎に計数する。そして、特定部１３２は、使用回数に基づく会話の進め方の傾向に基づくユーザ特性を特定する。具体的には、特定部１３２は、一連の会話の中で、応答生成装置１００によって使用された各ノードにおいて、使用回数が所定の閾値より少ないか多いかに基づく会話傾向から、ユーザ特性を特定する。例えば、特定部１３２は、閾値に「特定回数：２回」を設定し、これに基づいて、「特定回数：２回未満→会話傾向：話題が切り替わりにくい→性格：無駄話嫌い」、「特定回数：２回以上→会話傾向：話題が切り替わりやすい→性格：無駄話好き」といった判定基準を設定することにより、特定部１３２は、計数結果と判定基準を比較し、ユーザ特性を特定する。
【００６６】
例えば、所定のノードが使用される回数が多いということは、無駄話を好む傾向等により、ユーザは応答生成装置１００と何度も同じ内容の会話をしていることが予測できる。つまり、無駄話好きな性格であるほどこのような傾向にあるといえる。一方、所定のノードが使用される回数が少ないということは、無駄話を好まない傾向、判定ツリーに忠実な会話が行われたことが予測できる。つまり、無駄話嫌いな性格であるほどこのような傾向にあるといえる。
【００６７】
第２の特定方法として、特定部１３２は、一連の会話の中で、広告情報を検索するまでに、応答生成装置１００によって使用されたノードの総数に基づく会話傾向からユーザ特性を特定する。具体的には、特定部１３２は、一連の会話の中で、応答生成装置１００によって使用されたノードの総数に閾値を設定しており、その閾値より総数が少ないか多いかに基づく会話傾向から、ユーザ特性を特定する。
【００６８】
例えば、一連の会話の中で、応答生成装置１００によって使用されたノード総数が多いほど、会話が盛り上がったために、会話が長引いたことが予測できる。つまり、無駄話好きな性格であるほどこのような傾向にあるといえる。一方、ノード総数が少ないほど、無駄のない短い会話であることが予測できる。つまり、無駄話嫌いな性格であるほどこのような傾向にあるといえる。
【００６９】
第３の特定方法として、特定部１３２は、応答生成装置１００によって使用されたノードの組合せに基づく会話傾向からユーザ特性を特定する。具体的には、上記第１の特定方法によって、「無駄話嫌い」と特定された場合であっても、ノードの組合せによっては「無駄話好き」と特定した方が妥当である場合がある。例えば、「カレー」に関す会話において、「サッカー」に関するメッセージが入力された場合には、そのようなメッセージを入力したユーザは、「無駄話好き」と特定した方が妥当である。つまり、「無駄話好き」であるために、話題を変えてさらに様々な会話を行おうとしていることが予測できる。
【００７０】
具体的な処理としては、特定部１３２は、入力メッセージが対話文脈に沿っているか否かを示す指数を、各ノードに対応付けられているカテゴリに基づいて算出し、その値が所定値より小さいほど対話文脈から外れた入力メッセージであるとし、そのようなメッセージを入力したユーザを「無駄話好き」と特定する。
【００７１】
なお、カテゴリとは、話題の分類を示し、カレーの話、六本木の話といった様々なカテゴリが存在する。例えば、カテゴリ「カレーの話」が対応付けられたノードから成る一連の会話において、カテゴリ「六本木の話」を有する検出ノードが応答生成装置１００によって使用された場合、その検出ノードに対応する入力メッセージは、対話文脈から外れているといえる。特定部１３２は、このように対話文脈から外れている度合いを数値化し、その数値が所定値より小さい場合には、そのようなメッセージを入力したユーザを「無駄話好き」と特定する。
【００７２】
第４の特定方法として、特定部１３２は、応答メッセージが出力制御されてから新たな入力メッセージをユーザから受け付けるまでの時間に基づく会話傾向からユーザ特性を特定する。つまり、特定部１３２は、ノードが使用されるたびに、次のノードを使用されるまでの時間を計測する。そして、特定部１３２は、この操作を会話が終了するまで各ノードについて行い、広告を検索する時点における各ノード間の平均時間を算出する。具体的には、特定部１３２は、平均時間に閾値を設定しており、その閾値より算出した平均時間が少ないか多いかに基づく会話傾向から、ユーザの性格を判定する。
【００７３】
例えば、一連の会話の中で、特定部１３２によって算出された平均時間が長いほど、会話が盛り上がったために、会話が長引いたことが予測できる。つまり、無駄話好きな性格であるほどこのような傾向にあるといえる。一方、平均時間が短いほど、無駄のない短い会話であることが予測できる。つまり、無駄話嫌いな性格であるほどこのような傾向にあるといえる。
【００７４】
第５の特定方法として、特定部１３２は、応答生成装置１００によって、最初のノードが使用されてから広告情報を検索するまでの所要時間を計測する。そして、特定部１３２は、上述してきた特定例と同様に、所要時間に閾値を設定することにより、計測した所要時間がその閾値より少ないか多いかに基づく会話傾向からユーザ特性を特定する。
【００７５】
最後に、第６の特定例として、特定部１３２は、第１〜第５の特定方法を合わせて用いることにより、総合的にユーザ特性を特定する。
【００７６】
特定部１３２は、以上のような方法を用いてユーザ特性を特定する。そして、特定部１３２は、特定したユーザ特性を変形部１３３へ送信する。
【００７７】
一方、音声認識装置２０が音の特徴情報としてユーザ特性を特定するには、例えば、以下に示す方法がある。具体的には、音声認識装置２０は、ユーザ端末１０から受信した音声データを解析することにより、音の特徴情報としてユーザ特性を特定する。つまり、音声認識装置２０は、音声データ解析により音声波形を生成する。そして、応答生成装置１００は、生成した音声波形のピーク形状や周波数等を所定の情報と照合することにより、ユーザ特性を特定する。例えば、音の特徴情報から得られるユーザ特性としては、年齢、性別、性別、感情、方言、体調等がある。そして、音声認識装置２０は、音声テキストと共に、特定したユーザ特性を応答生成装置１００へ送信する。音声認識装置２０からユーザ特性を受信した、応答生成装置１００の受信部１３１は、かかるユーザ特性を変形部１３３へ送信する。
【００７８】
変形部１３３は、音声認識装置２０や特定部１３２によって特定されたユーザ特性に基づいて、応答メッセージの内容を変形する。まず、変形部１３３は、ユーザ特性を受信した場合に、応答メッセージを取得する。
【００７９】
ここで、応答生成装置１００は、受信部１３１から音声テキスト及びユーザ情報を受け付けた場合は、音声テキストと判定情報記憶部１２１に記憶された情報（判定ツリー）とを用いて、応答メッセージを選択する。例えば、検索部１３２は、音声テキストを受け付けた場合に、かかる音声テキストに含まれているキーワードを有する検出ノードを判定し、判定した検出ノードと接続された動作ノードに対応する応答メッセージが出力されるよう、かかる応答メッセージのデータを出力制御する。続いて、検索部１３２は、この応答メッセージに対する入力メッセージの音声テキストを受け付けた場合に、かかる動作ノードと接続された複数の検出ノードのうち、この音声テキストに含まれているキーワードを有する検出ノードを判定する。そして、検索部１３２は、判定した検出ノードに接続された動作ノードに対応する応答メッセージのデータを出力制御する。このように、応答生成装置１００は、検出ノードと動作ノードを使用してユーザとの会話を実現する。
【００８０】
そして、変形部１３３は、応答生成装置１００によって検出ノードが使用されるたびに、かかる検出ノードに対応する動作ノード（応答メッセージ）となる広告情報を広告入札装置４０から取得する。また、広告情報が登録されていない場合には、変形部１３３は、動作ノードとして判定ツリーに登録されている通常の応答メッセージのデータを取得する。
【００８１】
例えば、変形部１３３は、広告情報を取得する場合には、応答生成装置１００によって使用された検出ノードＩＤを広告入札装置４０へ通知する。ここで、広告入札装置４０の提示部４５は、応答生成装置１００によって通知されたノードＩＤに対応する広告情報を広告情報記憶部４２から検索し、検索した広告情報に含まれる広告データを応答生成装置１００に提示する。そして、変形部１３３は、提示された広告データを取得する。
【００８２】
なお、必ずしも検出ノードのノードＩＤに基づく検索が行われる必要はない。例えば、変形部１３３は、入力メッセージに含まれる所定のキーワードを検索キーワードとする。例えば、応答生成装置１００が、「キーマカレー好きやわ」といった入力メッセージのテキストを受け付けたとすると、変形部１３３は、「キーマカレー」を検索キーワードとする。そして、変形部１３３は、検索キーワードとユーザ特性とを広告入札装置４０へ送信する。ここで、広告入札装置４０の提示部４５は、検索キーワードと広告キーワードが一致し、かつ、ユーザ特性と広告タグが一致する広告情報を広告情報記憶部４２から検索し、検索した広告情報に含まれる広告データを応答生成装置１００に提示する。また、提示部４５は、通知された検出ノードＩＤに基づいて検索を行った場合、複数の広告情報が得られた際には、検索キーワードとユーザ特性を用いることにより広告情報を絞り込んでもよい。
【００８３】
以下では、変形部１３３は、出力時における音声の特徴が、特定されたユーザ特性に対応する音声の特徴と同様の特徴となるように、応答メッセージの内容を変形する例について説明する。具体的には、音声認識装置２０によって特定されたユーザ特性に応じて、通常の応答メッセージの内容（以下、「応答文」と表記する場合がある）、及び、広告データの内容を変形する例について図７を用いて説明する。
【００８４】
まず、ユーザＵ０１が、例えば、「カレーめっちゃ好きやわ」といったメッセージを入力したことにより、音声認識装置２０は、ユーザ特性「大阪弁」を特定したものとする。そして、応答生成装置１００は、音声認識装置２０から音声テキストと、ユーザ特性「大阪弁」を受け付けたことにより、検出ノードＩＤ「Ｎ１」を使用したとする。また、応答生成装置１００の受信部１３１は、ユーザ特性「大阪弁」を変形部１３３へ送信する。
【００８５】
ここで、応答生成装置１００の変形部１３３は、応答生成装置１００によって検出ノードＩＤ「Ｎ１」が使用されたことにより、検出ノードＩＤ「Ｎ１」に対する広告情報が広告入札装置４０に登録されている場合には、その広告情報に含まれる広告データを取得する。ここでは、広告情報の登録がなく、変形部１３３は、動作ノードＩＤ「Ｎ３」に対応する通常の応答メッセージを取得したとする。かかる場合に、変形部１３３は、取得した応答メッセージをユーザ特性「大阪弁」に合わせて大阪弁の文章に変形する。具体的には、変形部１３３は、「どこのカレー？六本木？」を「どこのカレーなん？六本木？」と変形する。そして、変形部１３３は、変形した応答メッセージのデータを出力制御部１３４へ送信する。さらに、この応答メッセージに対して、ユーザＵ０１によってメッセージが入力されたことにより、応答生成装置１００が検出ノードＩＤ「Ｎ５」を使用した場合に、変形部１３３は、広告入札装置４０に広告情報の登録がないため、動作ノードＩＤ「Ｎ８」に対応する通常の応答メッセージを取得したとする。かかる場合に、変形部１３３は、取得した応答メッセージ「どんなカレーが好き？」を「どんなカレーが好きなん？」と変形する。そして、変形部１３３は、変形した応答メッセージのデータを出力制御部１３４へ送信する。
【００８６】
さらに、この応答メッセージに対して、ユーザＵ０１によってメッセージが入力されたことにより、応答生成装置１００が検出ノードＩＤ「Ｎ９」を使用した場合に、変形部１３３は、検出ノードＩＤ「Ｎ９」に対する広告情報が広告入札装置４０に登録されていることにより、その広告情報に含まれる広告データを広告入札装置４０から取得する。具体的には、変形部１３３は、検出ノードＩＤ「Ｎ９」を広告入札装置４０へ通知することにより、対応する広告データを取得する。例えば、図４では、検出ノードＩＤ「Ｎ９」を登録している広告主が２つ存在する。ここで、広告入札装置４０の提示部４５は、変形部１３３によって設定された検索キーワード「キーマカレー」とユーザ特性「大阪弁」とを受け付け、これらに対応する広告情報を検索し、「Ｃ０１」を得る。そして、提示部４５は、広告データ「Ａ店のキーマカレーすごくおいしいです」を提示する。
【００８７】
変形部１３３は、提示部４５によって提示された広告データ「Ａ店のキーマカレーすごくおいしいです」を取得し、ユーザ特性「大阪弁」に合わせて大阪弁の文章に変形する。具体的には、変形部１３３は、「Ａ店のキーマカレーすごくおいしいです」を「Ａ店のキーマカレーめっちゃうまいで！」と変形する。そして、変形部１３３は、変形した広告データを出力制御部１３４へ送信する。
【００８８】
なお、変形部１３３は、変形した応答メッセージ応じてイントネーションも変形してもよい。例えば、変形部１３３は、ユーザ特性「大阪弁」に基づいて変形した場合には、変形した応答メッセージを「大阪弁」のイントネーションに変形する。
【００８９】
出力制御部１３４は、変形部１３３によって変形された応答メッセージの応答データを受け付けた場合に、受け付けた応答データを音声合成装置７０に送信して中間表現（例えば、再生波形のデータ）を受信する。そして、出力制御部１３４は、受信した中間表現や応答データのテキストを応答生成装置１００へ送信する。また、応答生成装置１００は、受信した中間表現や応答データのテキストをユーザ端末１０へ送信する。
【００９０】
〔４．応答生成処理フロー〕
次に、図８を用いて、実施形態にかかる応答生成装置１００による応答生成処理について説明する。図８は、実施形態にかかる応答生成装置１００による応答生成処理手順を示すシーケンス図である。
【００９１】
図８に示すように、まず、ユーザ端末１０が、ユーザの発話に関する音声を受信する（ステップＳ２０１）。そして、ユーザ端末１０は、受信した音声データを音声認識装置２０へ送信する（ステップＳ２０２）。音声認識装置２０は、音声データを受信した場合に、かかる音声データをテキストデータに変換すると共に、音の特徴情報としてユーザ特性を特定する（ステップＳ２０３）。そして、音声認識装置２０は、音声テキストと特定したユーザ特性をユーザ端末１０へ送信する（ステップＳ２０４）。ユーザ端末１０は、受け付けた音声テキストとユーザ特性を応答生成装置１００へ送信する（ステップＳ２０５）。
【００９２】
ここで、応答生成装置１００は、会話の進め方の傾向としてユーザ特性を特定する処理を行う（ステップＳ２０６）。例えば、応答生成装置１００の特定部１３２は、上述した第１〜第６の特定方法によってユーザ特性を特定する。なお、音声認識装置２０によってユーザ特性が特定される場合には、応答生成装置１００の特定部１３２は、ユーザ特性の特定処理を行わなくてもよい。
【００９３】
続いて、応答生成装置１００の変形部１３３は、ユーザ特性を受け付けると、出力する応答メッセージとなる広告情報を取得する（ステップＳ２０７）。なお、広告情報が登録されていない場合には、通常の応答メッセージを取得する。そして、変形部１３３は、取得した応答メッセージの内容をユーザ特性に基づいて変形し（ステップＳ２０８）、変形した応答メッセージがユーザ端末１０によって出力されるよう出力制御する（ステップＳ２０９）。
【００９４】
〔５．変形例〕
上述した実施例にかかる応答生成装置１００は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、応答生成装置１００の他の実施例について説明する。
【００９５】
〔５−１．変形処理（１）〕
上述してきた応答生成装置１００の変形部１３３は、応答メッセージが通常の応答文であっても、また、広告文であってもユーザ特性に基づき、その内容を変形する例を示した。しかし、変形部１３３は、特定されたユーザ特性に対応する音声の特徴とは異なる音声の特徴となるよう、応答メッセージとしての広告情報の内容を変形してもよい。例えば、音声認識装置２０によってユーザ特性「標準語」が特定された場合に、変形部１３３は、広告文のみを「標準語」とは異なる方言の文章に変形する。この点について、図９を用いて説明する。
【００９６】
図９は変形例にかかる判定ツリーの一例を示す図である。例えば、所定のユーザとして、ユーザＵ０２がメッセージを入力したことにより、音声認識装置２０は、ユーザ特性「標準語」を特定したものとする。そして、応答生成装置１００は、音声認識装置２０から音声テキストと、ユーザ特性「標準語」を受け付けたことにより、検出ノードＩＤ「Ｎ１」を使用したとする。また、応答生成装置１００の受信部１３１は、ユーザ特性「大阪弁」を変形部１３３へ送信する。
【００９７】
ここで、変形部１３３は、応答生成装置１００によって検出ノードＩＤ「Ｎ１」が使用されたことにより、検出ノードＩＤ「Ｎ１」に対する広告情報が広告入札装置４０に登録されている場合には、その広告情報に含まれる広告データを取得する。ここでは、広告情報の登録がなく、動作ノードＩＤ「Ｎ３」に対応する通常の応答メッセージを取得したとする。変形部１３３は、取得した応答メッセージの変形は行わず、そのまま出力制御部１３４へ送信する。さらに、この応答メッセージに対して、ユーザＵ０２によってメッセージが入力されたことにより、応答生成装置１００が検出ノードＩＤ「Ｎ５」を使用した場合に、変形部１３３は、広告入札装置４０に広告情報の登録がないため、動作ノードＩＤ「Ｎ８」に対応する通常の応答メッセージを取得したとする。変形部１３３は、取得した応答メッセージの変形は行わず、そのまま出力制御部１３４へ送信する。
【００９８】
さらに、この応答メッセージに対して、ユーザＵ０２によってメッセージが入力されたことにより、応答生成装置１００が検出ノードＩＤ「Ｎ９」を使用した場合に、変形部１３３は、検出ノードＩＤ「Ｎ９」に対する広告情報が広告入札装置４０に登録されていることにより、その広告情報に含まれる広告データを取得する。具体的には、変形部１３３は、検出ノードＩＤ「Ｎ９」を広告入札装置４０へ通知することにより、対応する広告データを取得する。例えば、変形部１３３は、広告ＩＤ「Ｃ０１」に対応する広告データ「Ａ店のキーマカレーすごくおいしいです」を取得したとする。ここで、変形部１３３は、例えば、ユーザ特性「標準語」とは異なる「大阪弁」に広告データを変形する。具体的には、変形部１３３は、広告データ「Ａ店のキーマカレーすごくおいしいです」を「Ａ店のキーマカレーめっちゃうまいで！」と変形する。そして、変形部１３３は、変形した広告データを出力制御部１３４へ送信する。
【００９９】
なお、ここでは、ユーザＵ０２の使用する方言とは異なる方言として「大阪弁」を例示したが、これに限るものではない。例えば、変形部１３３は、ユーザ特性として「無駄話嫌い」を受け付けた場合には、広告文をあえて長い文章に変形してもよい。この場合、変形部１３３は、例えば、広告文が所定の製品を広告する内容であるなら、詳細情報や店舗情報等を追加することにより広告文を長く変形する。また、変形部１３３は、ユーザ特性として「落ち込んでいる」を受け付けた場合には、広告文をあえて友好的な明るい文章に変形したり、明るいイントネーションに変形する。
【０１００】
このように、応答生成装置１００は、特定されたユーザ特性とは異なるユーザ特性に基づく変形を広告文に対してのみ行う。これにより、応答生成装置１００は、ユーザに対して広告を印象付けることができ、広告効果を高めることができる。例えば、応答生成装置１００とユーザとの標準語の会話の中で、所定の応答メッセージだけが大阪弁で出力されたとすると、その応答メッセージはユーザに対して印象に残る可能性が高いといえる。また、応答生成装置１００は、このような意外性を利用することにより、ユーザとの会話を盛り上げることもできる。
【０１０１】
〔５−２．変形処理（２）〕
また、上記実施形態において応答生成装置１００の特定部１３２は、出力予定の広告情報を予測し、予測した広告情報の内容から、かかる広告情報の特徴を特定し、変形部１３３は、特定部１３２によって特定された広告情報の特徴に基づいて、応答メッセージを変形してもよい。この点について、図１０を用いて説明する。
【０１０２】
まず、特定部１３２は、応答生成装置１００とユーザとの会話の経過に基づいて出力予定の広告情報を予測する。具体的には、特定部１３２は、判定ツリーを用いて、応答生成装置１００によって使用されたノードの経過から、将来、応答生成装置１００によって使用されるノードを予測する。例えば、特定部１３２は、応答生成装置１００によってノードが使用されるたびに、使用されたノードを記憶する。そして、特定部１３２は、応答生成装置１００とユーザとの間でメッセージのやり取りが進むことにより、所定数のノードを記憶した時点で、応答生成装置１００によって将来使用される検出ノードを予測する。
【０１０３】
そして、特定部１３２は、予測した検出ノードに対する広告情報が広告入札装置４０に登録されている場合には、その広告情報を出力予定の広告情報とし、その広告情報に含まれる広告データを取得する。そして、特定部１３２は、取得した広告データの内容から、かかる広告データの特徴を特定し、特定した特徴と予測したノードのノードＩＤとを変形部１３３に通知する。
【０１０４】
ここで、図１０を用いて説明する。図１０は変形例にかかる判定ツリーの一例を示す図である。例えば、特定部１３２は、ノードＩＤ「Ｎ１」が使用された時点で、ノードＩＤ「０１」よりも先に存在するノード（すなわち、ノードＩＤ「０１」を根ノードとした際の葉ノード）を抽出し、抽出したノードに、広告検索を行わせるノードが含まれるか判定する。図１０に示す例では、特定部１３２は、ノードＩＤ「Ｎ９」が示すノードを特定する。そして、特定部１３２は、特定したノードのノードＩＤ「Ｎ９」を広告入札装置４０へ通知し、広告入札装置４０による検索によって、ノードＩＤ「Ｎ９」に対応する広告情報が存在する場合には、その広告情報を出力予定の広告情報とする。ここでは、広告入札装置４０によって、出力予定の広告情報として広告データ「Ｂ店のキーマカレーめっちゃうまいで！」が検索されたとし、特定部１３２は、かかる広告データを取得する。
【０１０５】
ここで、特定部１３２は、取得した広告データ「Ｂ店のキーマカレーめっちゃうまいで！」の特徴として「大阪弁」であることを特定したとする。特定部１３２は、特定した広告情報の特徴「大阪弁」と、ノードＩＤ「Ｎ９」とを変形部１３３に通知する。なお、特定部１３２は、必ずしも方言等の地域に関する特徴を特定する必要はない。かかる特徴は、例えば、性別、性格、メッセージ長さ、抑揚等に関する特徴であってもよい。
【０１０６】
変形部１３３は、特定部１３２から広告情報の特徴とノードＩＤを受け付けた場合に、出力予定の応答メッセージのうち、特定部１３２によって予測された出力予定の広告情報が出力されるまでの応答回数が所定の閾値を超える応答メッセージの内容を広告情報の特徴に基づいて変形する。
【０１０７】
例えば、変形部１３３は、出力予定の広告情報が出力されるまでの応答回数に閾値「１回」を設定しているものとする。上述したように、特定部１３２は、ノードＩＤ「Ｎ１」の時点で、将来は、応答生成装置１００によってノードＩＤ「Ｎ９」が使用されると予測したとすると、変形部１３３は、判定ツリーを用いることにより、かかる閾値「１回」を超える応答メッセージとして、ノードＩＤ「Ｎ１」からカウントすることによりノードＩＤ「Ｎ８」を特定する。なお、変形部１３３は、ノードＩＤ「Ｎ１」からカウントして１回目の応答メッセージであるノードＩＤ「Ｎ３」は閾値に含まれるため除外する。
【０１０８】
ここで、変形部１３３は、特定したノードＩＤ「Ｎ８」に対応する応答メッセージ「どんなカレーが好き？」を取得し、広告情報の特徴「大阪弁」に合わせて「どんなカレーが好きなん？」と変形する。また、変形部１３３は、文章の変形に伴い、イントネーションも変形してもよい。
【０１０９】
このように、応答生成装置１００は、出力予定の広告情報を予測し、予測した広告情報の特徴を特定し、特定した特徴に基づいて、予測した広告情報までの出力予定の応答メッセージの内容を変形する。これにより、応答生成装置１００は、自然な流れでユーザとの会話の中に、広告情報を応答メッセージとして出力することができる。
【０１１０】
なお、かかる変形例では、広告情報の特徴に合わせて応答メッセージを変形する例を示したが、広告情報の特徴とは異なる特徴に変形してもよい。例えば、広告情報の特徴「明るい抑揚」に対して、変形部１３３は、その広告情報までの出力予定の応答メッセージの内容を「暗い抑揚」に変形する。これにより、応答生成装置１００は、ユーザに対して広告情報を印象付けることができ、広告効果を高めることができる。
【０１１１】
〔５−３．検索処理〕
上述してきた応答生成装置１００の変形部１３３は、応答メッセージを変形するにあたって、検出ノードに対する広告情報が広告入札装置４０に登録されている場合には、かかる広告情報を変形対象として取得し、登録されていない場合には、判定ツリーに登録されている通常の応答メッセージを変形対象として取得する例を示した。しかし、変形部１３３は、遷移確立に基づいて、変形する応答メッセージを取得してもよい。例えば、応答生成装置１００によって、所定の検出ノードに対して、通常の応答メッセージに対応する動作ノードと、広告用の動作ノードが遷移確立と共に紐付られているとする。ここで、変形部１３３は、遷移確立に基づき、通常の応答メッセージに対応する動作ノードを選択した場合には、その動作ノードに対応する応答メッセージを変形し、広告用の動作ノードを選択した場合には、その広告用の動作ノードに含めるための広告情報を広告入札装置４０から取得する。取得方法は、上述してきたように、検出ノードＩＤを用いたものであってもよいし、検索キーワード及びユーザ特性を用いたものであってもよい。
【０１１２】
〔５−４．広告主による変形処理〕
上記実施形態では、変形部１３３によって応答メッセージの内容が変形される例を示した。しかし、広告主がユーザ特性に応じた広告情報を複数入札しておくことで、変形部１３３は、受け付けたユーザ特性と一致するユーザ特性に対応付けられた広告データを取得し、変形することなく出力制御させてもよい。
【０１１３】
例えば、広告主は、広告情報として大阪弁用の広告データと、無駄話好きな人用の広告データを入札しておく。ここで、変形部１３３は、ユーザ特性「無駄話好き」を受け付けたとする。そして、広告入札装置４０は、変形部１３３から送信されたユーザ特性「無駄話好き」に基づいて、かかる広告主の広告情報に含まれる広告データのうち、無駄話好きな人用の広告データ取得し、変形部１３３に提示する。そして、変形部１３３は、その広告データを取得する。このような広告データは、特定部１３２によって特定されたユーザ特性に対応しているので、変形部１３３が変形を行う必要はない。したがって、変形部１３３は、取得した広告データを変形することなく、出力制御部１３４へ送信する。
【０１１４】
〔５−５．装置構成（１）〕
上記実施形態では、応答生成装置１００は、音声認識装置２０によって特定された音の特徴情報としてのユーザ特性に基づいて、変形処理を行う例を示した。しかし、応答生成装置１００が音の特徴情報としてのユーザ特性を特定してもよい。この場合、応答生成装置１００は、音声認識装置２０の音声データ解析機能を有することになる。
【０１１５】
〔５−６．装置構成（２）〕
また、上記実施形態では、音声認識装置２０または応答生成装置１００によって、ユーザ特性が特定させる例を示した。しかしながら、実施形態は、これに限定されるものではない。例えば、ユーザ端末１０は、上述した特定処理を行い、特定したユーザ特性を応答生成装置１００に送信する。そして、応答生成装置１００は、ユーザ端末１０から受け付けたユーザ特性に基づいて、上述した変形処理を行ってもよい。
【０１１６】
〔５−７．ユーザ端末以外の例〕
上記実施形態では、ユーザはユーザ端末１０を用いて、応答生成装置１００と会話を行う例を示した。しかし、ユーザ端末１０の有する応答生成装置１００との対話機能が、会話を行うロボットに搭載されていてもよい。これにより、かかるロボットがユーザに代わって応答生成装置１００と会話を行うことが実現できる。
【０１１７】
〔５−８．プログラム〕
また、上述してきた各実施形態にかかる応答生成装置１００は、例えば図１１に示すような構成のコンピュータ１０００によって実現される。以下、応答生成装置１００を例に挙げて説明する。図１１は、応答生成装置１００の機能を実現するコンピュータ１０００の一例を示すハードウェア構成図である。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ１３００、ＨＤＤ１４００、通信インターフェイス（Ｉ／Ｆ）１５００、入出力インターフェイス（Ｉ／Ｆ）１６００、及びメディアインターフェイス（Ｉ／Ｆ）１７００を有する。
【０１１８】
ＣＰＵ１１００は、ＲＯＭ１３００またはＨＤＤ１４００に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるブートプログラムや、コンピュータ１０００のハードウェアに依存するプログラム等を格納する。
【０１１９】
ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス１５００は、通信網５０を介して他の機器からデータを受信してＣＰＵ１１００へ送り、ＣＰＵ１１００が生成したデータを、通信網５０を介して他の機器へ送信する。
【０１２０】
ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。ＣＰＵ１１００は、入出力インターフェイス１６００を介して、入力装置からデータを取得する。また、ＣＰＵ１１００は、生成したデータを、入出力インターフェイス１６００を介して出力装置へ出力する。
【０１２１】
メディアインターフェイス１７００は、記録媒体１８００に格納されたプログラムまたはデータを読み取り、ＲＡＭ１２００を介してＣＰＵ１１００に提供する。ＣＰＵ１１００は、かかるプログラムを、メディアインターフェイス１７００を介して記録媒体１８００からＲＡＭ１２００上にロードし、ロードしたプログラムを実行する。記録媒体１８００は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１２２】
例えば、コンピュータ１０００が実施形態にかかる応答生成装置１００として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされたプログラムを実行することにより、制御部１３０の機能を実現する。また、ＨＤＤ１４００には、判定情報記憶部内のデータが格納される。コンピュータ１０００のＣＰＵ１１００は、これらのプログラムを、記録媒体１８００から読み取って実行するが、他の例として、他の装置から、通信網５０を介してこれらのプログラムを取得してもよい。
【０１２３】
〔５−９．その他〕
上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１２４】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１２５】
また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０１２６】
〔６．効果〕
上述してきたように、実施形態にかかる応答生成装置１００は、特定部１３２と、変形部１３３と、出力制御部１３４とを有する。特定部１３２は、対話エージェントシステムとユーザとの会話の特徴に関する特徴情報を特定する。変形部１３３は、特定部１３２によって特定された特徴情報に応じて応答メッセージの内容を変形する。出力制御部１３４は、変形部１３３によって内容が変形された応答メッセージを出力するよう制御する。
【０１２７】
これにより、実施形態にかかる応答生成装置１００は、ユーザと適切な会話を行うことができる。具体的には、応答生成装置１００は、ユーザの特性に応じて応答メッセージを変形することによりユーザと自然な会話を行うことができ、また、会話に対するユーザの満足度を高めることができる。
【０１２８】
また、実施形態にかかる特定部１３２は、特徴情報として、ユーザに関するユーザ情報を特定し、変形部１３３は、特定部によって特定されたユーザ情報に基づいて、応答メッセージの内容を変形する。
【０１２９】
これにより、実施形態にかかる応答生成装置１００は、ユーザと適切な会話を行うことができる。
【０１３０】
また、実施形態にかかる特定部１３２は、特徴情報として、ユーザの音声の特徴を特定し、変形部１３３は、出力時における音声の特徴が、特定部１３２によって特定されたユーザ情報に対応する音声の特徴とは異なる音声の特徴となるように、応答メッセージとしての広告情報の内容を変形する。
【０１３１】
これにより、実施形態にかかる応答生成装置１００は、ユーザに対して広告情報を印象付けることができるので、広告効果を高めることができる。
【０１３２】
また、実施形態にかかる特定部１３２は、特徴情報として、ユーザの音声の特徴を特定し、変形部１３３は、出力時における音声の特徴が、特定部１３２によって特定されたユーザ情報に対応する音声の特徴と同様の特徴となるように、応答メッセージとしての広告情報の内容を変形する。
【０１３３】
これにより、実施形態にかかる応答生成装置１００は、自然な流れでユーザとの会話の中に、広告情報を応答メッセージとして出力することができる。
【０１３４】
応答メッセージとして登録されている所定の広告情報であって、出力予定の広告情報を予測し、予測した広告情報の内容から当該広告情報の特徴を特定し、変形部１３３は、特定部１３２によって特定された広告情報の特徴に基づいて、応答メッセージの内容を変形する。
【０１３５】
これにより、実施形態にかかる応答生成装置１００は、自然な流れでユーザとの会話の中に、広告情報を応答メッセージとして出力することができる。
【０１３６】
また、実施形態にかかる変形部１３３は、出力予定の応答メッセージのうち、特定部１３２によって予測された広告情報が出力されるまでの応答回数が所定の閾値以下である場合に、応答メッセージの内容を変形する。
【０１３７】
これにより、実施形態にかかる応答生成装置１００は、自然な流れでユーザとの会話の中に、広告情報を応答メッセージとして出力することができる。
【０１３８】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１３９】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、特定部は、特定手段や特定回路に読み替えることができる。
【符号の説明】
【０１４０】
１０  ユーザ端末
２０  音声認識装置
３０  広告主端末
４０  広告入札装置
４２  広告情報記憶部
４４  入札受付部
４５  提示部
１００  応答生成装置
１２０  判定情報記憶部
１３０  制御部
１３１  受信部
１３２  特定部
１３３  変形部
１３４  出力制御部
【図１】
0006570226.tif 000002
【図２】
0006570226.tif 000003
【図３】
0006570226.tif 000004
【図４】
0006570226.tif 000005
【図５】
0006570226.tif 000006
【図６】
0006570226.tif 000007
【図７】
0006570226.tif 000008
【図８】
0006570226.tif 000009
【図９】
0006570226.tif 000010
【図１０】
0006570226.tif 000011
【図１１】
0006570226.tif 000012