(57)【要約】【課題】ユーザに適したメッセージを出力すること。【解決手段】本願にかかる応答生成装置は、入力メッセージに対し応答メッセージを出力する対話エージェントシステムとユーザとの対話における話題の進行状態の傾向を判定する判定部と、判定部によって判定された前記ユーザとの対話における話題の進行状態の傾向に応じた応答メッセージを出力するよう制御する出力制御部と、を備えたことを特徴とする。このため、応答生成装置は、ユーザに適したメッセージを出力することができる。【選択図】図５
2018110026.tif 000002
【特許請求の範囲】
【請求項１】
対話エージェントシステムとユーザとの対話における話題の進行状態の傾向を判定する判定部と、
前記判定部によって判定された前記ユーザとの対話における話題の進行状態の傾向に応じた応答メッセージを出力するよう制御する出力制御部と、
を備えたことを特徴とする応答生成装置。
【請求項２】
前記判定部によって判定された前記ユーザとの対話における話題の進行状態の傾向に基づく検索範囲で、応答メッセージとして出力する広告情報を検索する検索部をさらに有する、
ことを特徴とする請求項１に記載の応答生成装置。
【請求項３】
前記検索部は、前記判定部によって前記ユーザとの話題が切り替わりやすい傾向にあると判定された場合には、前記判定部によって前記ユーザとの話題が切り替わりにくい傾向にあると判定された場合よりも前記広告情報の検索範囲を広げる、
ことを特徴とする請求項２に記載の応答生成装置。
【請求項４】
前記検索部は、前記判定部によって前記ユーザとの話題が切り替わりやすい傾向にあると判定された場合に、メッセージが所定値より長い広告情報を前記広告情報の検索範囲に含める、
ことを特徴とする請求項２又は３に記載の応答生成装置。
【請求項５】
前記検索部は、前記判定部によって前記ユーザとの話題が切り替わりにくい傾向にあると判定された場合に、メッセージが所定値より長い広告情報を前記広告情報の検索範囲から除外する、
ことを特徴とする請求項２〜４のいずれか一つに記載の応答生成装置。
【請求項６】
前記出力制御部は、所定の入力メッセージに関するノードと所定の応答メッセージに関するノードとが関連付けられた判定情報であって前記ユーザとの対話における話題の進行状態の傾向に応じた応答メッセージとは異なる応答メッセージを判定するための判定情報に基づいて選択された応答メッセージを出力するよう制御し、
前記判定部は、前記判定情報に含まれるノードのうち、対話エージェントシステムと前記ユーザとの対話におけるノードの使用経過に基づいて、当該ユーザとの会話の進め方の傾向を判定する、
ことを特徴とする請求項１〜５のいずれか一つに記載の応答生成装置。
【請求項７】
前記判定部は、前記ユーザとの対話において各ノードが使用された回数に基づいて、前記ユーザとの会話の進め方の傾向を判定する、
ことを特徴とする請求項６に記載の応答生成装置。
【請求項８】
前記判定部は、いずれかのノードが使用された回数が所定値を超える場合に、前記ユーザとの話題が切り替わりやすい傾向にあると判定する、
ことを特徴とする請求項７に記載の応答生成装置。
【請求項９】
前記判定部は、前記ユーザとの対話において使用された前記ノードの総数に基づいて、前記ユーザとの対話における話題の進行状態の傾向を判定する、
ことを特徴とする請求項６〜８のいずれか一つに記載の応答生成装置。
【請求項１０】
前記判定部は、前記出力制御部によって応答メッセージが出力されてから新たな入力メッセージを前記ユーザから受け付けるまでの時間に基づいて、前記ユーザとの対話における話題の進行状態の傾向を判定する、
ことを特徴とする請求項１〜９のいずれか一つに記載の応答生成装置。
【請求項１１】
前記判定部は、前記ユーザとの会話が終了するまでに要した時間に基づいて、前記ユーザとの対話における話題の進行状態の傾向を判定する、
ことを特徴とする請求項１〜１０のいずれか一つに記載の応答生成装置。
【請求項１２】
コンピュータが実行する応答生成方法であって、
入力メッセージに対し応答メッセージを出力する対話エージェントシステムとユーザとの対話における話題の進行状態の傾向を判定する判定工程と、
前記判定工程によって判定された前記ユーザとの対話における話題の進行状態の傾向に応じた応答メッセージを出力するよう制御する出力制御工程と、
を含むことを特徴とする応答生成方法。
【請求項１３】
入力メッセージに対し応答メッセージを出力する対話エージェントシステムとユーザとの対話における話題の進行状態の傾向を判定する判定手順と、
前記判定手順によって判定された前記ユーザとの対話における話題の進行状態の傾向に応じた応答メッセージを出力するよう制御する出力制御手順と、
をコンピュータに実行させることを特徴とする応答生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、応答生成装置、応答生成方法及び応答生成プログラムに関する。
【背景技術】
【０００２】
従来、ユーザ端末からメッセージを受け付けたことに応じて、このメッセージに対応するメッセージをユーザ端末に出力する対話エージェントシステムが知られている。このような対話エージェントシステムにおいて、ユーザ端末から受け付けたメッセージに対して多様なメッセージの出力を行ったり、このユーザ端末のユーザに適したメッセージの出力を行ったりする技術が提供されている。
【０００３】
例えば、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、各ノードに対応するメッセージのカテゴリとに基づいて、ユーザに負担をかけることなく、ユーザの趣向に即して対話エージェントシステムの対話ルールを変更する技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１２０１２号公報
【特許文献２】特開２００８−２９９７５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術では、ユーザに適したメッセージが出力されるとは限らない。例えば、上記の従来技術では、無駄話を好まないユーザに対して、対話文脈から外れた応答メッセージを出力することにより、かかるユーザに不快感を与えてしまう可能性がある。このように、上記の従来技術では、ユーザに適したメッセージが出力されるとは限らない。
【０００６】
本願は、上記に鑑みてなされたものであって、ユーザに適したメッセージを出力することができる応答生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願にかかる、応答生成装置は、対話エージェントシステムとユーザとの対話における話題の進行状態の傾向を判定する判定部と、前記判定部によって判定された前記ユーザとの対話における話題の進行状態の傾向に応じた応答メッセージを出力するよう制御する出力制御部と、を備えたことを特徴とする。
【発明の効果】
【０００８】
実施形態の一態様によれば、ユーザに適したメッセージを出力することができる効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施形態にかかる応答生成処理の一例を示す図である。
【図２】図２は、実施形態にかかる応答生成システムの構成例を示す図である。
【図３】図３は、実施形態にかかる広告入札装置の構成例を示す図である。
【図４】図４は、実施形態にかかる広告情報記憶部の一例を示す図である。
【図５】図５は、実施形態にかかる応答生成装置の構成例を示す図である。
【図６】図６は、実施形態にかかる判定情報記憶部の一例を示す図である。
【図７】図７は、判定情報記憶部に記憶されるツリー構造の模式図である。
【図８】図８は、実施形態にかかる応答生成装置による広告入札処理手順を示すフローチャート図である。
【図９】図９は、応答生成装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【００１０】
以下に、本願にかかる応答生成装置、応答生成方法及び応答生成プログラムを実施するための形態（以下、「実施形態」と呼ぶ）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願にかかる応答生成装置、応答生成方法及び応答生成プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【００１１】
〔１．応答生成処理〕
まず、図１を用いて、実施形態にかかる応答生成処理の一例について説明する。図１は、実施形態にかかる応答生成処理の一例を示す図である。図１では、応答生成装置１００によって応答生成処理が行われる例を示す。
【００１２】
応答生成装置１００は、ユーザの発話である入力メッセージに対し、予め設定された判定情報に従って応答メッセージを出力することにより対話を実現する。以下、実施形態では、かかる判定情報は、入力メッセージ及び応答メッセージに対応する各ノードから成るツリー構造（以下、「判定ツリー」と表記する場合がある）であるものとする。
【００１３】
具体的には、応答生成装置１００は、図１に示すような判定ツリーを用いて、ユーザの会話の進め方の傾向（以下、「会話傾向」と表記する場合がある）を特定し、特定した会話の進め方の傾向に基づいて、ユーザの特性を判定する。そして、応答生成装置１００は、ユーザの特性に応じて、応答メッセージとなる広告情報の出力制御の仕分けを行う。なお、以下の実施形態では、応答生成装置１００は、ユーザの特性としてユーザの性格を判定する例について説明する。
【００１４】
〔１−１．ユーザ特性判定処理〕
まず、図１を用いて、実施形態にかかる応答生成処理のうちユーザの性格判定に関する処置の一例について説明する。図１に示す判定ツリーおいて、破線ブロックは、検出ノードを示しており、実線ブロックは、動作ノードを示している。検出ノードは、ユーザからの入力メッセージに対応する処理手順を定めており、動作ノードは応答メッセージに対応する処理手順を定めている。例えば、検出ノードには、所定のキーワードが設定されており、ユーザの入力メッセージにかかる所定のキーワードが含まれているか否かに応じて、応答に対応する動作ノードの選択が行われる。このように、応答生成装置１００は、検出ノードと動作ノードを用いて対話を実現する。
【００１５】
例えば、図１に示すように、応答生成装置１００は、検出ノードに設定されたキーワードがユーザＵ０１の入力メッセージ「東京の有名カレー店は？」に含まれているか否かを判定する。そして、応答生成装置１００は、含まれている場合には、会話を開始する。
【００１６】
ここで、応答生成装置１００は、かかる検出ノードと接続された動作ノードに対応する応答メッセージ、例えば「赤坂２件」または「六本木５件」といった応答メッセージを出力する。そして、応答生成装置１００は、かかる応答メッセージに対応する動作ノードと接続された複数の検出ノードに設定された各キーワードが、ユーザＵ０１の入力メッセージに含まれているか否かを判定し、キーワードが含まれていると判定した場合には、かかるキーワードと対応する検出ノードに接続された動作ノードに対応する応答メッセージを出力する。このように、応答生成装置１００は、検出ノードと動作ノードを使用してユーザとの会話を実現する。
【００１７】
また、応答生成装置１００は、検出ノード、または、動作ノードを使用するたびに、ノード毎に使用回数を計数する。具体的には、応答生成装置１００は、一連の会話の中で、使用回数が最も多いノードを抽出し、そのノードの使用回数が所定の閾値を超えるか否かでユーザの性格を判断する。例えば、応答生成装置１００は、閾値に「２」を設定することにより、使用回数が２より少ない場合には、対応するユーザは、話題が切り替わりにくい、すなわち、無駄話嫌いな性格であると判定する。また、応答生成装置１００は、使用回数が２以上である場合には、対応するユーザは、話題が切り替わりやすい、すなわち、無駄話好きな性格であると判定する。
【００１８】
したがって、応答生成装置１００は、かかる閾値に基づき、例えば、「使用回数：２回未満→会話傾向：話題が切り替わりにくい→性格：無駄話嫌い」、「使用回数：２回以上→会話傾向：話題が切り替わりやすい→性格：無駄話好き」といった判定基準を設定しているものとする。
【００１９】
例えば、ユーザＵ０１の会話の流れを示す曲線Ｋ１に着目すると、応答生成装置１００は、会話が終了するまでに、「東京の有名カレー店は？」、「赤坂２件」、「おすすめは？」、「Ａ店」の４つのメッセージに対するノードを、それぞれ「１回」使用している。この場合、応答生成装置１００は、上述した判定基準に基づいて、ユーザＵ０１の会話傾向を「話題が切り替わりにくい」と定め、これにより、ユーザＵ０１の性格を「無駄話嫌い」と判定する。
【００２０】
このように、応答生成装置１００は、一連の会話の中で各ノードを１回ずつしか使用していないということは、ユーザＵ０１は、予め設定されている対話ツリーに比較的忠実に会話を進めている、すなわち、ユーザＵ０１は、話題が切り替わりにくく、自身の質問等に対しても確実な回答だけを求めるといった会話傾向にあると予測される。したがって、応答生成装置１００は、ユーザＵ０１の性格を「無駄話嫌い」と判定することができる。
【００２１】
一方、図１に示す例では、ユーザＵ０２は、「東京の有名カレー店は？」といった入力メッセージで会話を開始し、「六本木５件」、「良い場所ですよね」、「そうですね」、「ところで何件でしたっけ？」、「六本木５件」、「おすすめは？」、「Ｂ店」といった会話を行ったものとする。かかる会話の流れを示す曲線Ｋ２に着目すると、応答生成装置１００は、動作ノード「六本木５件」を２回使用していることになる。具体的には、応答生成装置１００は、ユーザＵ０２によって、「ところで何件でしたっけ？」と再質問されたことにより、再び動作ノード「六本木５件」を使用することになる。これにより、応答生成装置１００は、動作ノード「六本木５件」の使用回数を「２回」と計数する。そして、応答生成装置１００は、上述した判定基準に基づいて、ユーザＵ０２の会話傾向を「話題が切り替わりやすい」と定め、これにより、ユーザＵ０２の性格を「無駄話好き」と判定する。
【００２２】
このように、一連の会話の中で、応答生成装置１００が所定のノードを複数回使用するということは、ユーザＵ０２は、応答生成装置１００の様々な応答メッセージを期待し、会話をより楽しもうとしていることが考えられる。例えば、図１による再質問の例では、単純に情報の取得漏れによる再質問という可能性もあるが、聞き直すことにより、応答生成装置１００がどの様な応答をしてくるかといったことに期待し、応答生成装置１００との様々な会話をより楽しもうとしていることも考えられる。したがって、応答生成装置１００は、ユーザＵ０２の性格を「無駄話好き」と判定することができる。
【００２３】
なお、一連の会話の中で所定のノードが複数回使用される事例は、図１に示す再質問の例に限るものではなく、様々なケースが考えられる。つまり、会話が広がるほど所定のノードの使用回数は多くなる。すなわち、応答生成装置１００は、そのような会話を行っているユーザは、話題が切り替わりやすく、無駄話等の様々な会話をすることを好む性格であると判定することができる。また、応答生成装置１００は、必ずしも所定のノード使用回数２回以上で、「無駄話好き」と判定する必要はなく、使用回数の閾値と、対応する会話傾向及び性格は任意に設定することができる。
【００２４】
また、ここでは、所定のノードの使用回数に基づく会話傾向からユーザの性格を判定する例を示したが、これに限るのもではない。例えば、後述するが、ノードの組合せ、会話終了までに特定したノード総数、所定のノードを使用してから次のノードを使用するまでの時間、会話終了までに要した時間等から判定してもよいし、これらを適宜組み合わせることにより、総合的に判定してもよい。
【００２５】
〔１−２．広告出力処理〕
次に、図１を用いて、実施形態にかかる応答生成処理のうち広告情報に関する情報を、応答メッセージとして出力する広告出力処理の一例について説明する。なお、かかる広告出力処理は、上述した判定処理と並行して実行される処理であるものとする。
【００２６】
まず、上述した性格判定処理によって「無駄話嫌い」と判定されたユーザＵ０１と、応答生成装置１００との会話の中で、応答生成装置１００が応答メッセージとして、広告情報を出力制御する例について説明する。
【００２７】
応答生成装置１００は、ユーザから入力メッセージを受け付けるたびに、かかる入力メッセージに対応する検出ノードに含まれる所定のキーワードを、広告検索用の検索キーワードとする。
【００２８】
図１に示すように、応答生成装置１００は、ユーザＵ０１から「キーマカレーおいしいお店は？」といった入力メッセージを受け付けたとすると、かかる入力メッセージに対応する検出ノードに含まれる「キーマカレー」を検索キーワードとする。
【００２９】
ここで、ユーザＵ０１は、「無駄話嫌い」と判定されているので、会話の文脈から外れた応答メッセージに対して、不快感を覚える可能性がある。そこで、応答生成装置１００は、対話文脈から外れない応答メッセージとしての広告情報を出力する。つまり、応答生成装置１００は、検索キーワード「キーマカレー」を用いることにより検索の範囲を狭める。言い換えれば、応答生成装置１００は、「キーマカレー」と類似性の強い広告情報を検索する。
【００３０】
具体的には、応答生成装置１００は、検索キーワード「キーマカレー」を用いて検索を行い、入札キーワードとして「キーマカレー」が設定されている広告データを取得する。そして、応答生成装置１００は、取得した広告データを応答メッセージとして出力するよう制御する。例えば、広告主Ｃ店が入札キーワード「キーマカレー」、広告データ「キーマカレーならＣ店おすすめ」といった広告情報を入札しているとすると、応答生成装置１００は、かかる検索方法に基づき、広告主Ｃ店の広告データを取得し、応答メッセージ「キーマカレーならＣ店おすすめ」を出力制御する。
【００３１】
このように、応答生成装置１００は、「無駄話嫌い」と判定したユーザＵ０１に対し、ユーザＵ０１の入力メッセージに含まれる所定のキーワードを用いて検索した広告情報を応答メッセージとして出力制御する。このような応答メッセージは、会話の文脈に忠実であるため、無駄話が嫌いなユーザＵ０１に不快感を与えることもない。具体的には、応答生成装置１００は、「キーマカレー」に関する会話をしているユーザＵ０１に対し、「キーマカレー」に関する内容の応答メッセージを出力するので、対話文脈から外れることがなく、不快感を与えることもない。
【００３２】
一方、上述した性格判定処理によって「無駄話好き」と判定されたユーザＵ０２と、応答生成装置１００との対話の中で、応答生成装置１００が応答メッセージとして、広告情報を出力する例について説明する。
【００３３】
ユーザＵ０２は、「無駄話好き」と判定されているので、応答生成装置１００との様々な会話を楽しみたいと考えているといえる。つまり、会話の文脈から外れた応答メッセージにより、不快感を与えてしまうことはないと考えられる。よって、応答生成装置１００は、あえて対話文脈から外れたような応答メッセージとしての広告情報も出力制御してよいことになる。つまり、応答生成装置１００は、検索キーワード「キーマカレー」だけでなく、その関連語である類似検索キーワードを用いることにより検索の範囲を広める。言い換えれば、応答生成装置１００は、「キーマカレー」を検索範囲に含める類似性のゆるい広告情報を検索する。
【００３４】
図１に示すように、応答生成装置１００は、ユーザＵ０２から「キーマカレーおいしいお店は？」といった入力メッセージを受け付けたとする。かかる場合、応答生成装置１００は、ユーザＵ０２の会話に含まれる「キーマカレー」を検索キーワードとする。また、応答生成装置１００は、かかる検索キーワードと関連する関連語を検索し、それらを類似検索キーワードとする。応答生成装置１００は、「キーマカレー」と類似する類似検索キーワードとして、例えば、「カレー」、「インド料理」を設定する。なお、応答生成装置１００が関連語を検索する処理については、任意の公知技術が適用されるものとする。
【００３５】
ここで、応答生成装置１００は、「キーマカレー」、「カレー」、「インド料理」を用いて検索を行い、入札キーワードとして「キーマカレー」、「カレー」、「インド料理」が設定されている広告データを取得する。そして、応答生成装置１００は、取得した広告データを応答メッセージとして出力制御する。例えば、入札キーワードと広告データとして、各広告主により、広告主Ｃ店「キーマカレー：キーマカレーならＣ店おすすめ」、広告主Ｄ店「カレー：カレーといえばＤ店」、広告主Ｅ店「インド料理：インド料理のおいしいＥ店」といった広告情報が入札されているとする。応答生成装置１００は、かかる検索方法に基づき、各広告主の広告データを取得し、応答メッセージとして出力制御する。
【００３６】
なお、応答生成装置１００は、図１に示すように、複数の広告情報を取得した場合には、例えば、出力対象をユーザ属性とのマッチングを行ってもよいし、入札単価に応じて出力制御する広告情報を決定してもよいし、ランダムに少なくとも１つを決定してもよいし、順に全てを出力制御してもよい。
【００３７】
このように、応答生成装置１００は、「無駄話好き」と判定したユーザＵ０２に対し、ユーザＵ０２の入力メッセージに含まれるキーワードと、かかるキーワードと関連する関連語とを用いた検索によって取得した広告データを応答メッセージとして出力制御する。このような応答メッセージは、検索キーワードによる検索に基づく応答メッセージを出力する場合に比べ、会話の文脈から外れてしまう可能性がある。つまり、図１に示すように、応答生成装置１００は、「キーマカレー」に関する会話をしているユーザＵ０２に対し、単に「カレー」や、「インド料理」に関する応答メッセージを出力する場合がある。このように、応答生成装置１００は、「無駄話好き」と判定したユーザＵ０２に対しては、あえて会話の文脈から外れた応答メッセージを出力することにより、様々な話題を提供することができ、ユーザＵ０２の会話に対する満足度を高めることができる。
【００３８】
以上のように、応答生成装置１００は、会話の傾向に基づいて、ユーザの性格を判定する。そして、応答生成装置１００は、判定した性格に基づいて、応答メッセージとなる広告情報の出力制御の仕分けを行う。例えば、応答生成装置１００は、「無駄話嫌い」と判定したユーザに対しては、話題が切り替わらないように会話の文脈に応じた応答メッセージを出力制御する。また、応答生成装置１００は、「無駄話好き」と判定したユーザに対しては、話題が切り替わってもよいことから会話の文脈から外れた応答メッセージを出力制御する場合がある。これにより、応答生成装置１００は、ユーザの性格に適した応答メッセージを出力制御することができるため、会話におけるユーザの満足度を高めることができる。
【００３９】
〔２．応答生成システムの構成〕
次に、図２を用いて、実施形態にかかる応答生成システムの構成について説明する。図２は、実施形態にかかる応答生成システム１の構成例を示す図である。図２に示すように、応答生成システム１は、ユーザ端末１０と、音声認識装置２０と、広告主端末３０と、広告入札装置４０と、ＡＰＩサーバ装置６０と、音声合成装置７０と、応答生成装置１００とを含む。ユーザ端末１０と、音声認識装置２０と、広告主端末３０と、広告入札装置４０と、ＡＰＩサーバ装置６０と、音声合成装置７０と、応答生成装置１００とは、ネットワークＮを介して有線または無線により通信可能に接続される。なお、図２に示す応答生成システム１には、複数台のユーザ端末１０や、複数台の広告主端末３０が含まれてよい。
【００４０】
ここで、応答生成システム１がユーザへ音声サービスを提供する処理の概要について説明する。ユーザ端末１０は、携帯電話機、スマートフォン、ＰＤＡ（Personal  Digital  Assistant）、タブレット型ＰＣ、ノート型ＰＣ、デスクトップ型ＰＣ等の情報処理装置である。なお、ユーザ端末１０は、会話を行うロボットや、ロボットが有する情報処理装置、その他ロボットに内蔵される任意の装置に適用することができる。ユーザ端末１０は、アプリケーションの起動後、ユーザの発話を検知すると、発話の音声データを音声認識装置２０へ送信する。
【００４１】
音声認識装置２０は、ユーザ端末１０から発話の音声データを受信すると、音声データをテキストデータに変換し、発話のテキストデータをユーザ端末１０へ送信する。音声認識サーバ２０から発話のテキストデータを受信したユーザ端末１０は、発話のテキストデータを応答生成装置１００に送信する。
【００４２】
広告主端末３０は、広告主によって利用される端末装置である。広告主端末３０は、例えば、スマートフォンなどの携帯電話機や、タブレット端末や、ＰＤＡや、デスクトップ型ＰＣや、ノート型ＰＣ等である。また、広告主端末３０は、広告主から受け付けた広告情報を広告入札装置４０へ送信する。なお、広告情報には入札キーワードや広告データ等が含まれる。
【００４３】
広告入札装置４０は、入札用画面を広告主端末３０に提示する。また、広告入札装置４０は、広告主端末３０から受け付けた広告情報を後述する記憶部に記憶する。
【００４４】
応答生成装置１００は、通常は、以下に示す処理を基盤として行うことによりユーザとの会話を実現している。
【００４５】
例えば、応答生成装置１００は、ユーザ端末１０から発話のテキストデータを受信すると、上述した判定処理を実行して応答メッセージを生成する。また、応答生成装置１００は、ユーザの発話に基づいて画像検索結果や経路検索結果等を応答メッセージとして出力する場合には、応答メッセージの生成に必要なデータの検索条件を指定し、ユーザ端末１０が起動したアプリケーションに対応するＡＰＩサーバ装置６０に対してデータの要求を行う。
【００４６】
ＡＰＩサーバ装置６０は、応答生成装置１００から受信した検索条件に従って、画像検索結果や経路検索結果等を含むデータを応答生成装置１００に送信する。例えば、ＡＰＩサーバ装置６０は、画像検索結果や経路検索結果を含むＸＭＬ（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）等の集積回路により実現される。
【００５８】
図３に示すように、制御部４３は、入札受付部４４と、提示部４５とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部４３の内部構成は、図３に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部４３が有する各処理部の接続関係は、図３に示した接続関係に限られず、他の接続関係であってもよい。
【００５９】
入札受付部４４は、広告主端末３０に所定の入札画面を提示することにより、広告主から入札キーワードと広告データを含む広告情報の入札を受け付ける。そして、入札受付部４４は、受け付けた広告情報を広告情報記憶部４２に格納する。
【００６０】
提示部４５は、応答生成装置１００によって検索された広告データを、かかる検索部１３３の取得要求に応じて提示する。具体的には、提示部４５は、応答生成装置１００から検索キーワードを受け付け、受け付けた検索キーワードを用いて広告情報記憶部４２の広告データを検索する。具体的には、提示部４５は、検索キーワードと入札キーワードとが一致する広告データを広告情報記憶部４２から抽出し、抽出した広告データを検索キーワードの送信元である応答生成装置１００に提示する。
【００６１】
〔３−２．応答生成装置の構成〕
次に、図５を用いて、実施形態にかかる応答生成装置１００について説明する。図５は、実施形態にかかる応答生成装置１００の構成例を示す図である。図５に示すように、応答生成装置１００は、通信部１１０と、判定情報記憶部１２０と、制御部１３０とを有する。
【００６２】
通信部１１０は、例えば、ＮＩＣ等によって実現される。そして、通信部１１０は、ネットワークと有線または無線で接続される。
【００６３】
判定情報記憶部１２０は、例えば、ＲＡＭ、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。そして、判定情報記憶部１２０は、ユーザによる応答メッセージに対する応答メッセージを判定するための判定情報を記憶する。判定情報は、入力メッセージに対応する処理手順が定められた検出ノードと、応答メッセージに対応する処理手順が定められた動作ノードと、検出ノードと動作ノードとの接続関係を示すエッジとから構成されるツリー構造のデータである。
【００６４】
ここで、図６に実施形態にかかる判定情報記憶部１２０の一例を示す。図６に示した例では、各ノードを識別するノードＩＤと、ノードの種別を示すノード種別と、メッセージに対応する処理手順を示す処理内容とを関連付けて記憶する。なお、図６では記載を省略したが、判定情報記憶部１２０には、各ノードがどのノードと接続されているかを示す情報が登録されているものとする。例えば、判定情報記憶部１２０には、ノードＩＤ「Ｎ１１」のノードと、ノードＩＤ「Ｎ１２」、「Ｎ１３」のノードとが接続され、ノードＩＤ「Ｎ１１」のノードからノードＩＤ「Ｎ１２」、「Ｎ１３」に遷移する確率である遷移確率がそれぞれ「０．５」であるものとする。この結果、判定情報記憶部１２０は、図７に示すツリー構造のデータを記憶することとなる。
【００６５】
図７は、判定情報記憶部１２０に記憶されるツリー構造の模式図である。図７に示される破線ブロックは、検出ノードを示しており、実線ブロックは動作ノードを示している。また、これらのブロックには、ノードＩＤが付されている。また、各ブロック同士を繋ぐ矢印は、エッジを示しており、具体的には、始点（矢がない側）が接続元ノードを示し、終点（矢がある側）が接続先ノードを示している。例えば、ノードＩＤ「Ｎ１１」のノードとノードＩＤ「Ｎ１２」のノードとを接続する矢印は、接続元ノードがノードＩＤ「Ｎ１１」の検出ノードであり、接続先ノードがノードＩＤ「Ｎ１２」の動作ノードであることを示している。なお、かかる判定ツリーは、図１に示す判定ツリーに対応し、各ノードにおける処理手順等をより明確化した判定ツリーであるといえる。なお、表記されている数値（０．５等）は、遷移確率を示す。また、図７に模式した判定ツリーは、判定情報記憶部１２０が記憶する検出ノードや動作ノードのうち一部のノードのみを表したものであり、各ノードには図６や図７に示すノード以外にも、各種の検出ノードや動作ノードが接続されているものとする。
【００６６】
したがって、応答生成装置１００がユーザの入力メッセージ「東京の有名カレー店は？」に対応するノードが、ノードＩＤ「Ｎ１１」であると判定すると、接続先のノードであるノードＩＤ「Ｎ１２」、または、ノードＩＤ「Ｎ１３」のいずれかの動作ノードへ遷移する。
【００６７】
図５に戻って説明を続ける。制御部１３０は、例えば、ＣＰＵやＭＰＵ等によって、応答生成装置１００の内部の記憶装置に記憶されている各種プログラム（応答生成プログラムの一例に相当）がＲＡＭを作業領域として実行されることにより実現される。また、制御部１３０は、例えば、ＡＳＩＣやＦＰＧＡ等の集積回路により実現される。
【００６８】
図５に示すように、制御部１３０は、受信部１３１と、判定部１３２と、検索部１３３と、出力制御部１３４とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部１３０の内部構成は、図５に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、制御部１３０が有する各処理部の接続関係は、図５に示した接続関係に限られず、他の接続関係であってもよい。
【００６９】
受信部１３１は、上述したように、ユーザ端末１０、ＡＰＩサーバ装置６０、音声合成装置７０から各種情報を受信する。また、受信部１３１は、図示しない外部装置によって作成された判定情報を受信し、判定情報記憶部１２０に格納する。
【００７０】
判定部１３２は、会話の進め方の傾向からユーザ特性を判定する。具体的には、判定部１３２は、応答生成装置１００が検出ノード、または、動作ノードを使用するたびに、ノード毎に使用回数を計数する。そして、判定部１３２は、使用回数に基づいて、会話の進め方の傾向を判定する。そして、判定部１３２は、会話の進め方の傾向に応じたユーザの性格や感情等の各種ユーザ特性を判定する。
【００７１】
図１でも説明したように、判定部１３２は、ユーザと応答生成装置１００との一連の会話の中で、所定のノードの使用回数に基づいて、かかるユーザの会話の進め方の傾向に応じたユーザ特性を判定する。具体的には、判定部１３２は、一連の会話の中で、使用回数が最も多いノードを抽出し、そのノードの使用回数が所定の閾値を超えるか否かでユーザの性格を判断する。例えば、応答生成装置１００は、閾値に「２」を設定することにより、使用回数が２より少ない場合には、対応するユーザは、話題が切り替わりにくい、すなわち、無駄話嫌いな性格であると判定する。また、応答生成装置１００は、使用回数が２以上である場合には、対応するユーザは、話題が切り替わりやすい、すなわち、無駄話好きと判定する。
【００７２】
したがって、応答生成装置１００は、かかる閾値に基づき、例えば、「使用回数：２回未満→会話傾向：話題が切り替わりにくい→性格：無駄話嫌い」、「使用回数：２回以上→会話傾向：話題が切り替わりやすい→性格：無駄話好き」といった判定基準が設定されているものとする。
【００７３】
図７の例では、ユーザＵ０１によって会話が開始されたことにより、判定部１３２は、会話が終了するまで、応答生成装置１００によって検出ノード、または、動作ノードが使用されるたびに、ノード毎に使用回数を計数する。例えば、「Ｎ１１」→「Ｎ１２」→「Ｎ１４」→「Ｎ１８」の順に会話が進んだとする。ここで、判定部１３２は、「Ｎ１１：１回」、「Ｎ１２：１回」、「Ｎ１４：１回」、「Ｎ１８：１回」といった計数結果を有していることになる。そして、判定部１３２は、上述した判定基準と計数結果とを比較する。どのノードにおいても、使用回数は、閾値より少ないため、判定部１３２は、ユーザＵ０１は、話題が切り替わりにくい会話傾向にある、すなわち、「無駄話嫌い」な性格であると判定する。
【００７４】
一方、ユーザＵ０１とは異なるユーザ端末１０を使用するユーザＵ０２によって会話が開始された場合について説明する。例えば、「Ｎ１１」→「Ｎ１３」→「Ｎ１６」→「Ｎ１９」→「Ｎ２２」→「Ｎ１３」→「Ｎ１７」→「Ｎ２０」の順に会話が進んだとする。ここで、判定部１３２は、「Ｎ１１：１回」、「Ｎ１３：２回」、「Ｎ１６：１回」、「Ｎ１７：１回」、「Ｎ１９：１回」、「Ｎ２２：１回」、「Ｎ２０：１回」といった計数結果を有していることになる。そして、判定部１３２は、上述した判定基準と計数結果を比較する。
【００７５】
ここで、ノード「Ｎ１３」は、計数結果「２回」である。１回目は、ノード「Ｎ１１」に対する応答メッセージとしての動作ノードに対応する。２回目は、ノード「Ｎ２２」において、例えば、「ところで何件でしたっけ？」といった再質問がユーザＵ０２によって入力されていることによる、応答メッセージとしての動作ノードに対応する。
【００７６】
これにより、判定部１３２によるノード「Ｎ１３」の使用回数が閾値以上であることから、判定部１３２は、ユーザＵ０２は、話題が切り替わりやすい会話傾向にある、すなわち、「無駄話好き」な性格であると判定する。
【００７７】
なお、判定部１３２は、必ずしも使用回数が最も多いノードにおいて、その使用回数と閾値との比較から判定する必要はない。例えば、判定部１３２は、ノード「Ｎ１３」の使用回数２回、ノード「Ｎ１７」の使用回数２回といったように、複数回使用されたノードがいくつか存在する場合には、それらの合計回数（すなわち、４回）と閾値との比較から判定してもよい。また、判定部１３２は、複数回使用されたノードの数に応じて判定してもよいし、所定のノードが複数回使用されたか否かに応じて判定してもよい。さらに、判定部１３２は、これらを組み合わせてもよい。すなわち、判定部１３２は、ユーザとの会話が所定の条件を満たすか否かに基づいて、ユーザの性格を判断すればよく、任意の手法を適用できる。
【００７８】
そして、判定部１３２は、判定結果によって得られたユーザ特性を図示しない所定の記憶部に記憶してもよい。なお、判定部１３２は、１回の会話でユーザ特性を判定してもよいし、複数の会話で判定してもよい。１回の会話とは、例えば、ユーザ端末１０において、応答生成システム１に関する所定のアプリが起動されてから終了されるまでにユーザと応答生成装置１００間でなされた会話であってよい。なお、ユーザの性格が「無駄話好き」となるか「無駄話嫌い」となるかは、利用者の性格に依存する場合の他にも、例えば、会話のシチュエーションによってそのつど変化する場合もあると考えられる。そこで、判定部１３２は、例えば、会話の内容や利用者の声の状態等から、ユーザとの会話におけるシチュエーションを予測し、予測したシチュエーションを考慮して、利用者の性格を判定してもよい。また、判定部１３２は、シチュエーションを考慮した利用者の性格判定処理を優先するものの、判定結果が曖昧な場合は、利用者の性格に依存する性格判定処理の結果を優先するような処理があってもよい。また、判定部１３２は、全体として、「無駄話嫌い/無駄話好き」のケースが頻発する対話については、そちらを優先する処理を行ってもよい。
【００７９】
図５に戻って説明を続ける。検索部１３３は、判定部１３２によって判定されたユーザ特性に応じて、応答メッセージとなる広告情報を広告情報記憶部４２から検索する。具体的には、検索部１３３は、判定部１３２によって「無駄話嫌い」と判定された場合には、検索範囲を狭めた検索を行い、「無駄話好き」と判定された場合には、検索範囲を広めた検索を行う。これにより、検索部１３３は、「無駄話嫌い」なユーザには、対話文脈から外れない応答メッセージを出力可能にし、「無駄話好き」なユーザには、対話文脈から外れた応答メッセージであっても出力可能にする。具体的な処理について、図１及び図５を用いて説明する。
【００８０】
検索部１３３は、判定部１３２からユーザの特性に関する情報を受け付ける。なお、上述したように、ユーザ特性が所定の記憶部に記憶されている場合には、検索部１３３は、かかる記憶部からユーザ特性を取得してもよい。ここでは、検索部１３３は、ユーザ特性としてユーザの性格を受け付けた場合について説明する。
【００８１】
まず、上述した性格判定処理によって「無駄話嫌い」と判定されたユーザＵ０１と、応答生成装置１００との会話の中で、検索部１３３が応答メッセージとなる広告情報を検索する例について説明する。
【００８２】
検索部１３３は、応答生成装置１００が検出ノードを使用するたびに、かかる検出ノードに含まれる所定のキーワードを、広告検索用の検索キーワードとする。なお、検出ノード中に複数のキーワードが含まれる場合には、最も重要度の高いキーワードを検索キーワードとしてよい。
【００８３】
図１の例ように、応答生成装置１００によって「キーマカレー」を含む検出ノードが使用された場合には、検索部１３３は、この「キーマカレー」を検索キーワードとする。そして、検索部１３３は、検索キーワードと一致する入札キーワードに対応付けられた広告情報を広告情報記憶部４２から取得する。
【００８４】
具体的には、検索部１３３は、検索キーワードを広告入札装置４０へ送信する。ここで、検索キーワードを受け付けた広告入札装置４０の提示部４５は、かかる検索キーワードと入札キーワードが一致する広告データを抽出し、抽出した広告データを検索部１３３に提示する。そして、検索部１３３は、提示された広告データを取得する。
【００８５】
例えば、各広告主によって図４に示す入札がなされているとすると、検索部１３３は、検索キーワード「キーマカレー」を広告入札装置４０へ送信することにより、検索キーワード「キーマカレー」と一致する入札キーワードに対応する対応する広告データとして、「キーマカレーならＣ店おすすめ」を取得する。
【００８６】
そして、検索部１３３は、広告入札装置４０の提示部４５から、広告データを取得した場合に、その広告データを応答メッセージとして出力制御するよう出力制御部１３４に指示する。例えば、上記例では、検索部１３３は、取得した広告データ「キーマカレーならＣ店おすすめ」を出力制御部１３４へ出力する。
【００８７】
このように、検索キーワードと一致する入札キーワードの検索では、検索範囲が狭く、ユーザＵ０１の入力メッセージと関係性の高い応答メッセージのみが検索結果として得られることになる。このような応答メッセージであれば、会話の文脈から外れることもなく、「無駄話嫌い」なユーザＵ０１に不快感を与えることもない。
【００８８】
一方、上述した性格判定処理によって「無駄話好き」と判定されたユーザＵ０２と、応答生成装置１００との会話の中で、検索部１３３が応答メッセージとなる広告情報を検索する例について説明する。
【００８９】
検索部１３３は、応答生成装置１００が検出ノードを使用するたびに、かかる検出ノードに含まれる所定のキーワードを広告検索用の検索キーワードとする。また、検索部１３３は、かかる検索キーワードと関連する関連語を複数設定し、それらを類似検索キーワードとする。なお、関連語は、検索キーワードに対する上位語や類似語から成る。
【００９０】
例えば、図１のように、応答生成装置１００によって「キーマカレー」を含む検出ノードが使用された場合には、検索部１３３は、この「キーマカレー」を検索キーワードとする。また、検索部１３３は、類似検索キーワードとして、例えば、「カレー」、「インド料理」を設定する。
【００９１】
例えば、各広告主によって図４に示す入札がなされているとする。検索部１３３は、検索キーワード「キーマカレー」及び類似検索キーワード「カレー」、「インド料理」を用いて類似度がゆるい検索を行う。具体的には、検索部１３３は、検索キーワードと類似検索キーワードを広告入札装置４０へ送信する。ここで、広告入札装置４０の提示部４５は、受け付けた検索キーワード及び類似検索キーワードと、入札キーワードとが一致する広告データを抽出し、抽出した広告データを検索部１３３に提示する。そして、検索部１３３は、提示された広告データを取得する。つまり、検索部１３３は、「キーマカレーならＣ店おすすめ」、「カレーといえばＤ店」、「インド料理のおいしいＥ店」を取得する。
【００９２】
そして、検索部１３３は、広告入札装置４０の提示部４５から広告データを取得した場合に、その広告データを応答メッセージとして出力するよう出力制御部１３４に指示する。例えば、上記例では、検索部１３３は、取得した広告データ「キーマカレーならＣ店おすすめ」、「カレーといえばＤ店」、「インド料理のおいしいＥ店」とユーザＵ０２のユーザ属性とのマッチングを行い、マッチングの結果選択された広告データ（例えば、「インド料理のおいしいＥ店」）を出力制御部１３４へ出力する。
【００９３】
このように、検索キーワード及び類似検索キーワードを用いた検索では、検索範囲は、検索キーワードのみを用いた場合よりも広く、ユーザＵ０２の入力メッセージと関係性の低い応答メッセージを得られることになる。このような応答メッセージは、会話の文脈から外れる可能性があるが、「無駄話好き」なユーザＵ０２は、様々な会話ができるようになるため、結果的に会話の満足度を高めることができる。
【００９４】
出力制御部１３４は、所定の入力メッセージに関するノードと所定の応答メッセージに関するノードとが関連付けられた判定情報に基づいて選択された応答メッセージを出力させる。例えば、出力制御部１３４は、検索部１３３から応答メッセージとなる広告データを受け付けた場合に、かかる広告データを音声合成装置７０に送信する。音声合成装置７０は、出力制御部１３４から広告データを受け付けると、かかる広告データの中間表現（例えば、再生波形のデータ）及びテキストを作成し、応答生成装置１００へ送信する。
【００９５】
〔４．応答生成処理フロー〕
次に、図８を用いて、実施形態にかかる応答生成装置１００による広告入札処理について説明する。図８は、実施形態にかかる応答生成装置１００による広告入札処理手順を示すフローチャート図である。
【００９６】
図８に示すように、まず、応答生成装置１００の判定部１３２は、ユーザ特性を判定する処理のタイミングであるか否かを判定する。例えば、判定部１３２は、応答生成装置１００によって検出ノード、または、動作ノードを使用された場合に、ユーザ特性を判定する処理のタイミングであると判定し（ステップＳ１０１；Ｙｅｓ）、ユーザ特性の判定処理を行う（ステップＳ１０２）。続いて、応答生成装置１００の検索部１３３は、広告情報を出力するタイミングである場合には（ステップＳ１０３；Ｙｅｓ）、ステップＳ１０２において判定したユーザ特性に応じた検索用のキーワードを設定する（ステップＳ１０４）。具体的には、検索部１３３は、ユーザ特性に応じて設定されている検索範囲に基づき、検索キーワードや類似検索キーワードを設定する。そして、検索部１３３は、設定した検索用キーワードに対応する広告データを広告入札装置４０から取得する（ステップＳ１０５）。具体的には、検索部１３３は、設定した検索用キーワードを広告入札装置４０へ送信することで、広告入札装置４０によってそのキーワードに一致する入札キーワードに対応する広告データが抽出され、抽出された広告データを取得する。続いて、応答生成装置１００の出力制御部１３４は、検索部１３３から受け付けた広告データが音声として出力されるよう、出力制御を行う（ステップＳ１０６）。
【００９７】
〔５．変形例〕
上述した実施例にかかる応答生成装置１００は、上記実施形態以外にも種々の異なる形態にて実施されてよい。そこで、以下では、応答生成装置１００の他の実施例について説明する。
【００９８】
〔５−１．ユーザ特性判定（１）〕
上述してきた応答生成装置１００の判定部１３２は、応答生成装置１００によって所定のノードが使用された使用回数に基づく会話の傾向からユーザの特性として性格を判定する例を示した。しかし、判定部１３２は、所定のユーザによってなされた会話の中で、会話が終了するまでに、応答生成装置１００によって使用されたノードの総数に基づいて、かかるユーザの会話傾向に応じた性格を判定してもよい。この点について、図７を用いて説明する。
【００９９】
具体的には、判定部１３２は、応答生成装置１００によって使用されたノードの総数に閾値を設定しており、その閾値より総数が少ないか多いかに基づく会話傾向から、ユーザの性格を判定する。例えば、判定部１３２は、閾値に「総数：５回」を設定し、これに基づいて、「総数：５回未満→会話傾向：話題が切り替わりにくい→性格：無駄話嫌い」、「総数：５回以上→会話傾向：話題が切り替わりやすい→性格：無駄話好き」といった判定基準を設定しているものとする。
【０１００】
判定部１３２は、応答生成装置１００によって広告情報が出力制御されるまで、応答生成装置１００によってノードが使用されるたびに、使用されたノードの数を計数する。具体的には、判定部１３２は、応答生成装置１００が検出ノード、または、動作ノードを使用するたびに、カウント「１」を加えてゆき、最終的にその総数を算出する。例えば、ユーザＵ０１との会話が「Ｎ１１」→「Ｎ１２」→「Ｎ１４」→「Ｎ１８」の順で進んだ場合には、使用されたノードの数が「４」となる。このように、ノード総数が少ない会話というのは、簡潔にまとまった内容の会話であると共に、様々な方向に話題が切り替わっていない会話であることが予想でき、そういった会話をするユーザが無駄話を好まない性格であると判定ができる。このため、判定部１３２は、ユーザＵ０１が「無駄話嫌い」な性格であると判定する。この結果、判定部１３２は、ノード「Ｎ１８」に対するユーザＵ０１の回答に含まれるキーワードに基づいて、類似性が強い検索を行うことで、出力対象となる広告データを特定する。
【０１０１】
一方、ユーザＵ０２との会話が「Ｎ１１」→「Ｎ１３」→「Ｎ１６」→「Ｎ１９」→「Ｎ２２」→「Ｎ１３」→「Ｎ１７」→「Ｎ２０」の順に進んだ場合には、応答生成装置１００によって使用されたノード総数を「８」と算出する。このように、ノード総数が多い会話というのは、内容の濃い会話であったり、様々な方向に話題が切り替わりっていることが予想でき、そういった会話をするユーザは、結果的に無駄話を好む性格であると判定することができる。このため、判定部１３２は、ユーザＵ０２が「無駄話好き」な性格であると判定する。この結果、判定部１３２は、ノード「Ｎ２０」に対応する応答に含まれるキーワードに基づいて、類似性がゆるい検索を行うことで、出力対象となる広告を特定する。
【０１０２】
〔５−２．ユーザ特性判定（２）〕
また、上述してきた応答生成装置１００の判定部１３２は、ユーザの入力メッセージが、その入力メッセージを含む一連の会話の文脈にどれほど一致しているかの度合いに基づいて、かかるユーザのユーザ特性を判定してもよい。
【０１０３】
ここで、応答生成装置１００は、予め各ノードに所定のカテゴリを対応付けておくとする。例えば、ある一連の会話において、判定部１３２は、応答生成装置１００がユーザから入力メッセージを受け付けることにより、対応する検出ノードを使用した場合に、かかる検出ノードに対応付けられたカテゴリと、かかる検出ノードよりも前に使用されたノードに対応付けられたカテゴリとの「一致度」を算出する。これにより、判定部１３２は、かかる検出ノードに対応する入力メッセージが、それまでに行われた一連の会話の文脈にどれほど一致しているかを判定することができる。なお、一致度とは、どれだけ文脈に沿っているかを表す指数であり、値が小さいほど文脈から外れていることになる。ここでは、判定部１３２は、完全に文脈に一致している場合には、最大値「５」を与えるものとする。
【０１０４】
具体的には、判定部１３２は、一連の会話の中で、最も低い一致度を抽出し、その一致度が所定の閾値を超えるか否かでユーザ特性としてユーザの性格を判定する。例えば、応答生成装置１００は、閾値に「３」を設定することにより、抽出した一致度が３以上である場合には、対応するユーザは、話題が切り替わりにくい、すなわち、無駄話嫌いな性格であると判定する。また、応答生成装置１００は、一致度が３より小さい場合には、対応するユーザは、話題が切り替わりやすい、すなわち、無駄話好きと判定する。
【０１０５】
例えば、図７において、ユーザＵ０２との会話は、「Ｎ１１」→「Ｎ１３」→「Ｎ１６」の順に進んだとする。また、ユーザＵ０１との会話は、「Ｎ１１」→「Ｎ１３」→「Ｎ１７」の順に進んだとする。ここで、応答生成装置１００は、各ノードに対し、Ｎ１１「カレー店：地域」、Ｎ１３「カレー店：六本木」、Ｎ１６「六本木：感情」、Ｎ１７「カレー店：おすすめ」といったカテゴリを予め対応付けておくとする。
【０１０６】
かかる場合、判定部１３２は、ユーザＵ０１との一連の会話の流れは「Ｎ１１」→「Ｎ１３」→「Ｎ１７」であることから、例示したカテゴリに基づき、ユーザＵ０１は常にカレー店に関する話題に沿っている、すなわち、文脈から外れていないと判定し、一致度「５」を与える。そして、判定部１３２は、一致度が閾値「３」以上であることからユーザＵ０１は、「無駄話嫌い」と判定する。
【０１０７】
一方、判定部１３２は、ユーザＵ０２との一連の会話の流れは「Ｎ１１」→「Ｎ１３」→「Ｎ１６」であることから、例示したカテゴリに基づき、ユーザＵ０２の入力メッセージに対応する検出ノード「Ｎ１６」は、カレー店に関する話題から、六本木に関する感情にそれてしまったことにより、例えば、一致度「２」を与える。そして、判定部１３２は、一致度が閾値「３」より小さいことからユーザＵ０２は、「無駄話好き」と判定する。
【０１０８】
このように、応答生成装置１００は、一連の会話の文脈と、その会話におけるユーザの入力メッセージとがどれほど一致しているかによって、かかるユーザのユーザ特性を判定する。
【０１０９】
〔５−３．ユーザ特性判定（３）〕
また、上述してきた応答生成装置１００の判定部１３２は、応答メッセージが出力制御されてから新たな入力メッセージをユーザから受け付けるまでの時間に基づいて、ユーザ特性を判定してもよい。この点について、図７を用いて説明する。
【０１１０】
具体的には、判定部１３２は、応答生成装置１００によって、所定のノードが使用されてから次のノードが使用されるまでに要した時間に基づいて、かかるユーザの会話傾向に応じた性格を判定する。つまり、判定部１３２は、ノードが使用されるたびに、次のノードを使用するまでの時間を計測する。そして、判定部１３２は、この操作を会話が終了するまで各ノードについて行い、広告情報を検索する時点における各ノード間の平均時間を算出する。
【０１１１】
判定部１３２は、平均時間に閾値を設定しており、その閾値より平均時間が少ないか多いかに基づく会話傾向から、ユーザの性格を判定する。例えば、判定部１３２は、閾値に「平均時間：１０秒」を設定し、これに基づいて、「平均時間：１０秒未満→会話傾向：話題が切り替わりにくい→性格：無駄話嫌い」、「平均時間：１０秒以上→会話傾向：話題が切り替わりやすい→性格：無駄話好き」といった判定基準を設定しているものとする。
【０１１２】
例えば、ユーザＵ０１との会話において、平均時間を「Ｎ１１」→「Ｎ１２」（５秒）→「Ｎ１４」（４秒）→「Ｎ１８」（５秒）とする。これにより、判定部１３２は、平均時間「７秒」と算出する。そして、判定部１３２は、算出結果と判定基準とを比較することにより、平均時間は閾値未満であるため、ユーザＵ０１は、話題が切り替わりにくい会話傾向にある、すなわち、「無駄話嫌い」な性格であると判定する。
【０１１３】
このように、平均時間が短いユーザは、話題が切り替わることもなく、すぐに返事をして会話を簡単に早く終わらそうとしていることが予想でき、そういった会話をするユーザは、結果的に無駄話を好まない性格であると判定することができる。
【０１１４】
一方、ユーザＵ０２との会話において、平均時間を「Ｎ１１」→「Ｎ１３」（１５秒）→「Ｎ１６」（６秒）→「Ｎ１９」（２１秒）→「Ｎ２２」（１８秒）→「Ｎ１３」（１０秒）→「Ｎ１７」（１０秒）→「Ｎ２０」（１０秒）とする。これにより、判定部１３２は、平均時間「１４秒」と算出する。そして、判定部１３２は、算出結果と判定基準とを比較することにより、平均時間は閾値以上であるため、ユーザＵ０２は、話題が切り替わりやすい会話傾向にある、すなわち、「無駄話好き」な性格であると判定する。
【０１１５】
このように、平均時間が長いユーザは、じっくり考えて返事をしようとしていることが予想でき、そういった会話をするユーザは、内容の濃い会話をしようとしていると考えられ、結果的に無駄話等の様々な会話を好む性格であると判定することができる。
【０１１６】
〔５−４．ユーザ特性判定（４）〕
また、上述してきた応答生成装置１００の判定部１３２は、広告情報を検索するまでのトータル所要時間に基づいて、かかるユーザの会話傾向に応じたユーザ特性を判定してもよい。具体的には、判定部１３２は、応答生成装置１００によって、最初のノードが使用されてから広告情報を検索するまでの時間を計測する。なお、判定部１３２は、上述したようにノードが使用されるたびに、次のノードが使用されるまでの時間を計測し、その時間の合計をトータル所要時間としてもよい。そして、判定部１３２は、上述してきたように、トータル所要時間に閾値を設定しておき、その閾値より少ないか多いかに基づく会話傾向から、ユーザの性格を判定する。
【０１１７】
〔５−５．ユーザ特性判定（５）〕
また、上述してきた応答生成装置１００の判定部１３２は、上述してきた５つの判定方法を組み合わせることにより総合的に判定してもよい。例えば、判定部１３２は、上記判定方法により、無駄話嫌い、または、無駄話好きのどちらか判定した方に１ポイントを加算する。例えば、判定部１３２は、５つの判定方法中３つの判定方法で無駄話嫌いと判定し、残り２つの判定方法で無駄話好きと判定した場合には、「無駄話嫌い：３ポイント」に対して、「無駄話好き：２ポイント」となり、総合的に「無駄話嫌い」と判定する。
【０１１８】
〔５−６．検索（１）〕
上述してきた応答生成装置１００の検索部１３３は、検索キーワードや類似検索キーワードをタグとして検索する例を示した。しかし、検索部１３３は、検索キーワードと広告内容との関連度に基づいて検索範囲を調整してもよい。
【０１１９】
具体的には、検索部１３３は、関連度に所定の値を設定し、判定部１３２によって「話題が切り替わりにくい、無駄話嫌い」と判定された場合には、所定の値よりも高い関連度を有する広告データを検索する。一方、検索部１３３は、判定部１３２によって「話題が切り替わりやすい、無駄話好き」と判定された場合には、所定の値よりも低い関連度を有する広告データを検索する。
【０１２０】
〔５−７．検索（２）〕
また、上述してきた応答生成装置１００の検索部１３３は、広告文の文字数に基づいて、検索範囲を調整してもよい。具体的には、検索部１３３は、所定の文字数を設定し、判定部１３２によって「話題が切り替わりにくい、無駄話嫌い」と判定された場合には、かかる文字数より少ない文字数で構成される広告データを検索する。一方、検索部１３３は、判定部１３２によって「話題が切り替わりやすい、無駄話好き」と判定された場合には、かかる文字数より多い文字数で構成される広告データを検索する。
【０１２１】
これにより、応答生成装置１００は、無駄話嫌いなユーザに対して、長文から成る応答メッセージを出力させることにより不快感を与えたり、再生が途中で停止されるといった事象を防ぐことができる。対して、応答生成装置１００は、無駄話好きなユーザには、長文から成る応答メッセージを出力させることで、より会話を盛り上げることができる。なお、応答生成装置１００は、同一の広告対象について、長文の広告データと短文の広告データとが登録されている場合には、ユーザ特性に応じて、いずれかの広告データを出力してもよい。例えば、応答生成装置１００は、「無駄話嫌い」と判定されたユーザＵ０１に対して、商品Ａの短い広告を出力し、「無駄話好き」と判定されたユーザＵ０２に対して、商品Ａの長い広告を出力してもよい。
【０１２２】
〔５−８．検索（３）〕
また、上述してきた応答生成装置１００の検索部１３３は、位置情報を考慮した検索を行ってもよい。具体的には、検索部１３３は、判定部１３２によって判定されたユーザ特性を受け付けた際に、かかるユーザのユーザ端末１０のＧＰＳ装置から位置情報を取得する。そして、検索部１３３は、広告入札装置４０によって提示された広告データのうち、取得した位置情報と一致、または、取得した位置情報から所定の範囲内に所在する広告主の広告データを優先的に出力させる。なお、広告入札装置４０は、広告主から希望する広告配信場所を受け付けておき、検索部１３３によって取得された位置情報とのマッチングを行うことにより、検索部１３３は、マッチングで得られた広告データを出力制御部１３４に出力してもよい。また、対応する広告データが複数存在する場合には、検索部１３３は、その中から入札単価の高いものを優先して出力させてもよいし、かかるユーザが無駄話好きであれば、複数の広告データを順に出力させてもよい。
【０１２３】
〔５−９．追加情報〕
また、上述してきた応答生成装置１００の検索部１３３は、ユーザ属性に基づいて、所定の追加情報を生成し、検索によって得られた広告データと共に出力させてもよい。例えば、検索部１３３は、判定部１３２からユーザの性格を取得した際に、かかるユーザのユーザ属性として年齢を所定の記憶部から取得する。そして、検索部１３３は、そのユーザが高齢である場合には、検索によって得られた広告データに関する詳細な説明を生成し、広告データと共に出力させてもよい。
【０１２４】
また、検索部１３３は、ユーザ属性として趣味や関心を取得し、検索によって得られた広告データが、その趣味や関心と関係が深ければ、その広告データに関する追加情報を生成し、広告データと共に出力させてもよい。なお、検索部１３３は、予め広告主から受け付けている各種情報（例えば、製品情報等）に基づいて、追加情報を生成してもよいし、関連するウェブページから取得した情報に基づいて生成してもよい。
【０１２５】
これにより、応答生成装置１００は、ユーザに対して広告情報への関心を高めることができるので、広告効果を高めることができる。なお、検索部１３３は、このような情報の追加を、判定部１３２によって無駄話好きと判定されたユーザにのみ行ってもよいし、例えば、上述したようにユーザが高齢であれば、判定部１３２によって判定されたユーザ特性に関係なく情報を追加してもよい。
【０１２６】
また、応答生成装置１００は、他の情報を用いて、ユーザの会話の傾向を特定してもよい。例えば、スマートデバイス等近年のユーザ端末１０は、利用者の筋電（ＥＭＧ：electromyography）、目の動き、心拍数、汗の量等の生態情報を取得することができる。このため、応答生成装置１００は、ユーザ端末１０が利用者から取得した生態情報を考慮して、利用者の会話の傾向を特定してもよい。例えば、応答生成装置１００は、利用者の心拍数が多い場合、筋電の電位が上昇した場合、目が所定の方向を見ている場合には、うそをついていると判定し、一連の会話の流れにうそが含まれているものとして、会話の傾向を特定してもよい。また、応答生成装置１００は、汗の量が所定の閾値よりも多い場合は、せっかちであると判定してもよい。すなわち、応答生成装置１００は、ユーザの会話の傾向を特定することができるのであれば、利用者に関連する任意の情報を用いることができる。なお、応答生成装置１００は、上述した任意の情報に基づいて、ユーザの会話の傾向を動的に特定してもよく（例えば、会話が進むたびに特定しなおす）、静的に特定してもよい（例えば、所定の会話が行われた際に特定する）。
【０１２７】
〔５−１０．装置構成〕
上記実施形態では、応答生成装置１００と広告入札装置４０とが個々に存在する例を示したが、応答生成装置１００と広告入札装置４０とが一体化されていてもよい。この場合、応答生成装置１００は、広告入札装置４０の広告情報記憶部４２と、入札受付部４４と、提示部４５とを有する。
【０１２８】
〔５−１１．ユーザ端末以外の例〕
上記実施形態では、ユーザはユーザ端末１０を用いて、応答生成装置１００と会話を行う例を示した。しかし、ユーザ端末１０の有する応答生成装置１００との対話機能が、会話を行うロボットに搭載されていてもよい。これにより、かかるロボットがユーザに代わって応答生成装置１００と会話を行うことが実現できる。
【０１２９】
〔５−１２．プログラム〕
また、上述してきた各実施形態にかかる応答生成装置１００は、例えば図９に示すような構成のコンピュータ１０００によって実現される。以下、応答生成装置１００を例に挙げて説明する。図９は、応答生成装置１００の機能を実現するコンピュータ１０００の一例を示すハードウェア構成図である。コンピュータ１０００は、ＣＰＵ１１００、ＲＡＭ１２００、ＲＯＭ１３００、ＨＤＤ１４００、通信インターフェイス（Ｉ／Ｆ）１５００、入出力インターフェイス（Ｉ／Ｆ）１６００、及びメディアインターフェイス（Ｉ／Ｆ）１７００を有する。
【０１３０】
ＣＰＵ１１００は、ＲＯＭ１３００またはＨＤＤ１４００に格納されたプログラムに基づいて動作し、各部の制御を行う。ＲＯＭ１３００は、コンピュータ１０００の起動時にＣＰＵ１１００によって実行されるブートプログラムや、コンピュータ１０００のハードウェアに依存するプログラム等を格納する。
【０１３１】
ＨＤＤ１４００は、ＣＰＵ１１００によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス１５００は、通信網５０を介して他の機器からデータを受信してＣＰＵ１１００へ送り、ＣＰＵ１１００が生成したデータを、通信網５０を介して他の機器へ送信する。
【０１３２】
ＣＰＵ１１００は、入出力インターフェイス１６００を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。ＣＰＵ１１００は、入出力インターフェイス１６００を介して、入力装置からデータを取得する。また、ＣＰＵ１１００は、生成したデータを、入出力インターフェイス１６００を介して出力装置へ出力する。
【０１３３】
メディアインターフェイス１７００は、記録媒体１８００に格納されたプログラムまたはデータを読み取り、ＲＡＭ１２００を介してＣＰＵ１１００に提供する。ＣＰＵ１１００は、かかるプログラムを、メディアインターフェイス１７００を介して記録媒体１８００からＲＡＭ１２００上にロードし、ロードしたプログラムを実行する。記録媒体１８００は、例えばＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【０１３４】
例えば、コンピュータ１０００が実施形態にかかる応答生成装置１００として機能する場合、コンピュータ１０００のＣＰＵ１１００は、ＲＡＭ１２００上にロードされたプログラムを実行することにより、制御部１３０の機能を実現する。また、ＨＤＤ１４００には、判定情報記憶部１２０内のデータが格納される。コンピュータ１０００のＣＰＵ１１００は、これらのプログラムを、記録媒体１８００から読み取って実行するが、他の例として、他の装置から、通信網５０を介してこれらのプログラムを取得してもよい。
【０１３５】
〔５−１３．その他〕
上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【０１３６】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１３７】
また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０１３８】
〔６．効果〕
上述してきたように、実施形態にかかる応答生成装置１００は、判定部１３２と、出力制御部１３４とを有する。判定部１３２は、対話エージェントシステムとユーザとの会話の進め方の傾向を判定する。出力制御部１３４は、判定部１３２によって判定された会話の進め方の傾向に応じた応答メッセージを出力するよう制御する。
【０１３９】
これにより、実施形態にかかる応答生成装置１００は、ユーザの特性に応じた応答メッセージを検索し、出力制御することができるため、会話におけるユーザの満足度を高めることができる。例えば、応答生成装置１００は、無駄話嫌いな特性を有するユーザに対しては、話題が切り替わらないように会話の文脈に応じた応答メッセージを出力制御することができ、無駄話好きな特性を有するユーザに対しては、あえて会話の文脈から外れた応答メッセージを出力制御することにより会話の質を高めることができる。
【０１４０】
また、実施形態にかかる検索部１３３は、判定部１３２によって判定された会話の進め方の傾向に基づく検索範囲で、応答メッセージとして出力する広告情報を検索する。
【０１４１】
これにより、実施形態にかかる応答生成装置１００は、ユーザの特性に応じた応答メッセージを検索することができる。
【０１４２】
また、実施形態にかかる検索部１３３は、判定部１３２によってユーザとの話題が切り替わりやすい傾向にあると判定された場合には、判定部１３２によってユーザとの話題が切り替わりにくい傾向にあると判定された場合よりも広告情報の検索範囲を広げる。
【０１４３】
これにより、応答生成装置１００は、会話におけるユーザの満足度を高めることができる。例えば、応答生成装置１００は、話題が切り替わりにくく、無駄話嫌いな特性を有するユーザに対しては、会話の文脈に応じた応答メッセージを出力制御することができ、話題が切り替わりやすく、無駄話好きな特性を有するユーザに対しては、あえて会話の文脈から外れた応答メッセージを出力制御することにより会話の質を高めることができる。
【０１４４】
また、実施形態にかかる検索部１３３は、判定部１３２によってユーザとの話題が切り替わりやすい傾向にあると判定された場合に、メッセージが所定値より長い広告情報を広告情報の検索範囲に含める。
【０１４５】
これにより、実施形態にかかる応答生成装置１００は、会話におけるユーザの満足度を高めることができる。つまり、話題が切り替わりやすい傾向にあるユーザは、無駄話が好きであると考えられるので、応答生成装置１００は、あえてメッセージが所定値より長い広告情報を出力制御することにより、会話の質を高めることや、会話自体を盛り上げることができ、無駄話が好きなユーザの満足度を高めることができる。
【０１４６】
また、実施形態にかかる検索部１３３は、判定部１３２によってユーザとの話題が切り替わりにくい傾向にあると判定された場合に、メッセージが所定値より長い広告情報を前記広告情報の検索範囲から除外する。
【０１４７】
これにより、実施形態にかかる応答生成装置１００は、会話におけるユーザの満足度を高めることができる。つまり、話題が切り替わりにくい傾向にあるユーザは、無駄話が嫌いであると考えられるので、応答生成装置１００は、メッセージが所定値より長い広告情報を出力制御することにより、不快感を与えてしまうことがない。
【０１４８】
また、実施形態にかかる出力制御部１３４は、所定の入力メッセージに関するノードと所定の応答メッセージに関するノードとが関連付けられた判定情報に基づいて選択された応答メッセージを出力させ、判定部１３２は、ユーザとの会話におけるノードの使用経過に基づいて、当該ユーザとの会話の進め方の傾向を判定する。
【０１４９】
これにより、実施形態にかかる応答生成装置１００は、会話の内容を把握しなくとも、会話の流れだけでユーザの特性を判定することができる。
【０１５０】
また、実施形態にかかる判定部１３２は、ユーザとの会話において各ノードが使用された回数に基づいて、ユーザとの会話の進め方の傾向を判定する。
【０１５１】
これにより、実施形態にかかる応答生成装置１００は、会話の進め方の傾向を判定することができる。このため、応答生成装置１００は、会話の進め方の傾向に応じたユーザの特性を判定することができる。
【０１５２】
また、実施形態にかかる判定部１３２は、いずれかのノードが使用された回数が所定値を超える場合に、ユーザとの話題が切り替わりやすいと判定する。
【０１５３】
これにより、実施形態にかかる応答生成装置１００は、会話の進め方の傾向を判定することができる。このため、応答生成装置１００は、会話の進め方の傾向に応じたユーザの特性を判定することができる。
【０１５４】
また、実施形態にかかる判定部１３２は、ユーザとの会話において使用されたノードの総数に基づいて、ユーザとの会話の進め方の傾向を判定する。
【０１５５】
これにより、実施形態にかかる応答生成装置１００は、会話の進め方の傾向を判定することができる。このため、応答生成装置１００は、会話の進め方の傾向に応じたユーザの特性を判定することができる。
【０１５６】
また、実施形態にかかる判定部１３２は、出力制御部１３４によって応答メッセージが出力されてから新たな入力メッセージをユーザから受け付けるまでの時間に基づいて、ユーザとの会話の進め方の特性を判定する。
【０１５７】
これにより、実施形態にかかる応答生成装置１００は、会話の進め方の傾向を判定することができる。このため、応答生成装置１００は、会話の進め方の傾向に応じたユーザの特性を判定することができる。
【０１５８】
また、実施形態にかかる判定部１３２は、ユーザとの会話が終了するまでに要した時間に基づいて、前記ユーザとの会話の進め方の傾向を判定する。
【０１５９】
これにより、実施形態にかかる応答生成装置１００は、会話の進め方の傾向を判定することができる。このため、応答生成装置１００は、会話の進め方の傾向に応じたユーザの特性を判定することができる。
【０１６０】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１６１】
また、上述してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、判定部は、特定手段や特定回路に読み替えることができる。
【符号の説明】
【０１６２】
１０  ユーザ端末
２０  音声認識装置
３０  広告主端末
４０  広告入札装置
４２  広告情報記憶部
４４  入札受付部
４５  提示部
１００  応答生成装置
１２０  判定情報記憶部
１３０  制御部
１３２  判定部
１３３  検索部
１３４  出力制御部
【図１】
2018110026.tif 000003
【図２】
2018110026.tif 000004
【図３】
2018110026.tif 000005
【図４】
2018110026.tif 000006
【図５】
2018110026.tif 000007
【図６】
2018110026.tif 000008
【図７】
2018110026.tif 000009
【図８】
2018110026.tif 000010
【図９】
2018110026.tif 000011