(57)【特許請求の範囲】
【請求項１】
入力メッセージに対し、予め設定された対話ルールに従って応答メッセージを出力する対話エージェントシステムの前記対話ルールを変更する対話ルール変更装置であって、
前記入力メッセージに対応する処理手順が定められた検出ノードと、前記応答メッセージに対応する処理手順が定められた動作ノードと、前記検出ノードと前記動作ノードとの接続関係を示すエッジとから構成されるデータであり、前記各ノードに対してそのメッセージのカテゴリが付されたデータを前記対話ルールとして記憶する対話ルール記憶手段と、
ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて、前記対話ルールを変更する対話ルール変更手段と、
を備え、
前記対話ルール記憶手段は、
前記エッジに対して、当該エッジに関連付けられている遷移先の動作ノードへの遷移確率を対応付けて記憶し、
前記対話ルール変更手段は、
前記対話ルール記憶手段に記憶されている前記対話ルールに、前記ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように前記複数のエッジそれぞれの遷移確率を調整する対話ルール変更装置。
【請求項２】
前記ユーザ関心カテゴリが付された前記検出ノード及び前記動作ノードの少なくともいずれかを含む新規対話ルールを生成する対話ルール生成手段を備え、
前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールに対して前記対話ルール生成手段により生成された新規対話ルールを追加する、
請求項１に記載の対話ルール変更装置。
【請求項３】
前記カテゴリは、階層を有し、
前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールにおける前記ユーザ関心カテゴリの上位のカテゴリが付された検出ノード又は動作ノードに対して、前記対話ルール生成手段により生成された新規対話ルールを下位となるように追加する、
請求項２に記載の対話ルール変更装置。
【請求項４】
前記対話ルール生成手段は、前記対話ルール記憶手段に記憶された前記対話ルールにおける前記ユーザ関心カテゴリの上位のカテゴリが付されたノードの下位に接続されたノードを抽出し、抽出されたノードに付されたカテゴリを前記ユーザ関心カテゴリに変更するとともに、前記抽出されたノードに対応するメッセージを、前記ユーザ関心カテゴリと、前記上位のカテゴリとの双方に対応するメッセージに変更することによって新規対話ルールを生成する、
請求項３に記載の対話ルール変更装置。
【請求項５】
前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールにおける前記ユーザ関心カテゴリが付されている動作ノードと、複数のエッジを介して当該動作ノードの上位に間接的に接続されている検出ノードとを接続するエッジを、前記対話ルール記憶手段に記憶されている前記対話ルールに追加する、
請求項１から４のいずれかに記載の対話ルール変更装置。
【請求項６】
前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールにおける前記ユーザ関心カテゴリが付されている動作ノードに対して複数のエッジを介して上位に間接的に接続されている動作ノードに対応する応答メッセージを、前記ユーザ関心カテゴリの名称を含む応答メッセージに変更する、
請求項１から５のいずれかに記載の対話ルール変更装置。
【請求項７】
前記ユーザのウェブ上の行動履歴を記憶する行動履歴記憶手段と、
前記行動履歴記憶手段に記憶されている前記行動履歴に基づいて、前記ユーザ関心カテ
ゴリを決定する関心カテゴリ決定手段と、を備え、
前記対話ルール変更手段は、前記関心カテゴリ決定手段により決定されたユーザ関心カ
テゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて、前記対話ルール
を変更する、
請求項１から６のいずれかに記載の対話ルール変更装置。
【請求項８】
入力メッセージに対し、予め定められた対話ルールに従って応答メッセージを出力する対話エージェントシステムの前記対話ルールをコンピュータが変更する対話ルール変更方法であって、
前記コンピュータは、
前記入力メッセージに対応する処理手順が定められた検出ノードと、前記応答メッセージに対応する処理手順が定められた動作ノードと、前記検出ノードと前記動作ノードとの接続関係を示すエッジとから構成されるデータであり、前記各ノードに対してそのメッセージのカテゴリが付されたデータを前記対話ルールとして記憶する対話ルール記憶手段を備え、
前記対話ルール記憶手段は、
前記エッジに対して、当該エッジに関連付けられている遷移先の動作ノードへの遷移確率を対応付けて記憶し、
前記コンピュータが、
ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて、前記対話ルールを変更する工程
を実行し、
当該工程において、前記対話ルール記憶手段に記憶されている前記対話ルールに、前記ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように前記複数のエッジそれぞれの遷移確率を調整する対話ルール変更方法。
【請求項９】
入力メッセージに対し、予め定められた対話ルールに従って応答メッセージを出力する対話エージェントシステムの前記対話ルールの変更をコンピュータに実行させる対話ルール変更プログラムであって、
前記コンピュータは、
前記入力メッセージに対応する処理手順が定められた検出ノードと、前記応答メッセージに対応する処理手順が定められた動作ノードと、前記検出ノードと前記動作ノードとの接続関係を示すエッジとから構成されるデータであり、前記各ノードに対してそのメッセージのカテゴリが付されたデータを前記対話ルールとして記憶する対話ルール記憶手段を備え、
前記対話ルール記憶手段は、
前記エッジに対して、当該エッジに関連付けられている遷移先の動作ノードへの遷移確率を対応付けて記憶し、
当該対話ルール変更プログラムは、前記コンピュータに、
ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて、前記対話ルールを変更するステップ、
を実行させ、
当該ステップにおいて、前記対話ルール記憶手段に記憶されている前記対話ルールに、前記ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように前記複数のエッジそれぞれの遷移確率を調整させる対話ルール変更プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力メッセージに対し、予め設定された対話ルールに従って応答メッセージを出力する対話エージェントシステムの対話ルールを変更する対話ルール変更装置、対話ルール変更方法及び対話ルール変更プログラムに関する。
【背景技術】
【０００２】
近年、ユーザ端末からメッセージを受け付けたことに応じて、このメッセージに対応するメッセージをユーザ端末に出力する対話エージェントシステムが普及している。そして、このような対話エージェントシステムにおいて、ユーザ端末から受け付けたメッセージに対して多様なメッセージの出力を行ったり、このユーザ端末のユーザに適したメッセージの出力を行ったりする手法が提案されている。
【０００３】
例えば、特許文献１には、ユーザからのメッセージと、このメッセージに対応して出力するメッセージとの関係を知識構造（対話ルール）として記憶しておき、ユーザからメッセージを受け付けたことに応じて、このメッセージに含まれる単語に基づいて、対話ルールを変更する方法が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２２３７２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の方法では、ユーザが、対話ルールにおける所定のメッセージを変更したい場合、この所定のメッセージに直接関連するメッセージが対話エージェントシステムから出力されるまで、対話エージェントシステムとメッセージの交換を繰り返す必要がある。したがって、特許文献１に記載の方法では、所望するメッセージに対応する対話ルールを変更するのがユーザにとって煩雑である。
【０００６】
さらに、特許文献１に記載の方法では、ユーザが対話エージェントシステムとメッセージの交換を行うことで対話ルールが変更される。このため、メッセージ交換のやりとりにおいて、ユーザが自身の趣向に即していないメッセージを入力してしまい、その結果、ユーザの趣向に合わない対話ルールに変更される可能性がある。よって、特許文献１に記載の方法では、ユーザが、自身の趣向に即して対話ルールを変更できないおそれがある。
【０００７】
本発明は、ユーザに負担をかけることなく、当該ユーザの趣向に即して対話エージェントシステムの対話ルールを変更することができる対話ルール変更装置、対話ルール変更方法及び対話ルール変更プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
（１）入力メッセージに対し、予め設定された対話ルールに従って応答メッセージを出力する対話エージェントシステムの前記対話ルールを変更する対話ルール変更装置であって、前記入力メッセージに対応する処理手順が定められた検出ノードと、前記応答メッセージに対応する処理手順が定められた動作ノードと、前記検出ノードと前記動作ノードとの接続関係を示すエッジとから構成されるデータであり、前記各ノードに対してそのメッセージのカテゴリが付されたデータを前記対話ルールとして記憶する対話ルール記憶手段と、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて、前記対話ルールを変更する対話ルール変更手段と、を備える対話ルール変更装置。
【０００９】
（１）の対話ルール変更装置は、対話ルール変更手段により、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、各ノードに対応するメッセージのカテゴリとに基づいて、対話ルールを変更する。
【００１０】
このように、（１）の対話ルール変更装置は、ユーザの行動履歴に基づいたユーザ関心カテゴリによって対話ルールを変更するので、ユーザから対話ルールの変更操作を受け付けることを必要としない。さらに、ユーザの行動履歴に基づいたユーザ関心カテゴリは、ユーザの趣向に即しているため、（１）の対話ルール変更装置は、ユーザに負担をかけることなく、当該ユーザの趣向に即して対話エージェントシステムの対話ルールを変更することができる。
【００１１】
（２）前記ユーザ関心カテゴリが付された前記検出ノード及び前記動作ノードの少なくともいずれかを含む新規対話ルールを生成する対話ルール生成手段を備え、前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールに対して前記対話ルール生成手段により生成された新規対話ルールを追加する、（１）に記載の対話ルール変更装置。
【００１２】
（２）の対話ルール変更装置は、対話ルール生成手段により、ユーザ関心カテゴリが付された検出ノード及び動作ノードの少なくともいずれかを含む新規対話ルールを生成し、対話ルール変更手段により、対話ルール記憶手段に記憶されている対話ルールに対して生成された新規対話ルールを追加する。このようにすることで、（２）の対話ルール変更装置は、ユーザ関心カテゴリに対応する対話ルールを新たに追加して、ユーザの趣向に対応する対話ルールを増加させることができる。
【００１３】
（３）前記カテゴリは、階層を有し、前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールにおける前記ユーザ関心カテゴリの上位のカテゴリが付された検出ノード又は動作ノードに対して、前記対話ルール生成手段により生成された新規対話ルールを下位となるように追加する、（２）に記載の対話ルール変更装置。
【００１４】
（３）の対話ルール変更装置は、対話ルール変更手段により、対話ルール記憶手段に記憶されている対話ルールにおけるユーザ関心カテゴリの上位のカテゴリが付された検出ノード又は動作ノードに対して、対話ルール生成手段により生成された新規対話ルールを下位となるように追加する。このようにすることで、（３）の対話ルール変更装置は、ユーザ関心カテゴリの上位のカテゴリが付された検出ノード又は動作ノードからユーザ関心カテゴリに対応する対話に違和感なく遷移させることができる。
【００１５】
（４）前記対話ルール生成手段は、前記対話ルール記憶手段に記憶された前記対話ルールにおける前記ユーザ関心カテゴリの上位のカテゴリが付されたノードの下位に接続されたノードを抽出し、抽出されたノードに付されたカテゴリを前記ユーザ関心カテゴリに変更するとともに、前記抽出されたノードに対応するメッセージを、前記ユーザ関心カテゴリと、前記上位のカテゴリとの双方に対応するメッセージに変更することによって新規対話ルールを生成する、（３）に記載の対話ルール変更装置。
【００１６】
（４）の対話ルール変更装置は、対話ルール生成手段により、対話ルール記憶手段に記憶された対話ルールにおけるユーザ関心カテゴリの上位のカテゴリが付されたノードの下位に接続されたノードを抽出し、抽出されたノードに付されたカテゴリをユーザ関心カテゴリに変更するとともに、抽出されたノードに対応するメッセージを、ユーザ関心カテゴリと、上位のカテゴリとの双方に対応するメッセージに変更することによって新規対話ルールを生成する。このようにすることで、（４）の対話ルール変更装置は、既存のノードの構造を利用して、ユーザ関心カテゴリが付されたノードを効率よく生成することができる。
【００１７】
（５）前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールにおける前記ユーザ関心カテゴリが付されている動作ノードと、複数のエッジを介して当該動作ノードの上位に間接的に接続されている検出ノードとを接続するエッジを、前記対話ルール記憶手段に記憶されている前記対話ルールに追加する、（１）から（４）のいずれかに記載の対話ルール変更装置。
【００１８】
（５）の対話ルール変更装置は、対話ルール変更手段により、対話ルール記憶手段に記憶されている対話ルールにおけるユーザ関心カテゴリが付されている動作ノードと、複数のエッジを介して当該動作ノードの上位に間接的に接続されている検出ノードとを接続するエッジを、対話ルール記憶手段に記憶されている対話ルールに追加する。このようにすることで、（５）の対話ルール変更装置は、少ない対話回数で、ユーザの趣向に対応する対話に遷移させることができる。
【００１９】
（６）前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールにおける前記ユーザ関心カテゴリが付されている動作ノードに対して複数のエッジを介して上位に間接的に接続されている動作ノードに対応する応答メッセージを、前記ユーザ関心カテゴリの名称を含む応答メッセージに変更する、（１）から（５）のいずれかに記載の対話ルール変更装置。
【００２０】
（６）の対話ルール変更装置は、対話ルール変更手段により、対話ルール記憶手段に記憶されている対話ルールにおけるユーザ関心カテゴリが付されている動作ノードに対して複数のエッジを介して上位に間接的に接続されている動作ノードに対応する応答メッセージを、ユーザ関心カテゴリの名称を含む応答メッセージに変更する。ここで、ユーザ関心カテゴリの名称を含む応答メッセージが出力された場合、ユーザは、当該応答メッセージが出力されない場合に比べて、ユーザ関心カテゴリに対応するメッセージを入力する可能性が高い。よって、（６）の対話ルール変更装置は、ユーザ関心カテゴリに対応する動作ノードに遷移する確率を増加させることができる。
【００２１】
（７）前記対話ルール記憶手段は、前記エッジに対して、当該エッジに関連付けられている遷移先の動作ノードへの遷移確率を対応付けて記憶し、前記対話ルール変更手段は、前記対話ルール記憶手段に記憶されている前記対話ルールに、前記ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、前記ユーザ関心カテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように前記複数のエッジそれぞれの遷移確率を調整する、（１）から（６）のいずれかに記載の対話ルール変更装置。
【００２２】
（７）の対話ルール変更装置は、ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、ユーザ関心カテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように複数のエッジそれぞれの遷移確率を調整する。このようにすることで、（７）の対話ルール変更装置は、ユーザ関心カテゴリが付された動作ノードへの遷移確率を増加させて、ユーザと対話エージェントシステムとの間で、ユーザの趣向に対応する対話が行われやすいようにすることができる。
【００２３】
（８）前記ユーザのウェブ上の行動履歴を記憶する行動履歴記憶手段と、前記行動履歴記憶手段に記憶されている前記行動履歴に基づいて、前記ユーザ関心カテゴリを決定する関心カテゴリ決定手段と、を備え、前記対話ルール変更手段は、前記関心カテゴリ決定手段により決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて、前記対話ルールを変更する、（１）から（７）のいずれかに記載の対話ルール変更装置。
【００２４】
このように、（８）の対話ルール変更装置は、関心カテゴリ決定手段により、行動履歴記憶手段に記憶されている行動履歴に基づいて、ユーザ関心カテゴリを決定し、対話ルール変更手段により、関心カテゴリ決定手段により決定されたユーザ関心カテゴリと、各ノードに対応するメッセージのカテゴリとに基づいて、対話ルールを変更することができる。
【００２５】
（９）入力メッセージに対し、予め定められた対話ルールに従って応答メッセージを出力する対話エージェントシステムの前記対話ルールをコンピュータが変更する対話ルール変更方法であって、前記入力メッセージに対応する処理手順が定められた検出ノードと、前記応答メッセージに対応する処理手順が定められた動作ノードと、前記検出ノードと前記動作ノードとの接続関係を示すエッジとから構成されるデータであり、前記各ノードに対してそのメッセージのカテゴリが付されたデータである対話ルールを、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて変更する、対話ルール変更方法。
【００２６】
（１０）入力メッセージに対し、予め定められた対話ルールに従って応答メッセージを出力する対話エージェントシステムの前記対話ルールの変更をコンピュータに実行させる対話ルール変更プログラムであって、前記入力メッセージに対応する処理手順が定められた検出ノードと、前記応答メッセージに対応する処理手順が定められた動作ノードと、前記検出ノードと前記動作ノードとの接続関係を示すエッジとから構成されるデータであり、前記各ノードに対してそのメッセージのカテゴリが付されたデータでる対話ルールを、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、前記各ノードに対応するメッセージのカテゴリとに基づいて変更するステップ、を前記コンピュータに実行させる対話ルール変更プログラム。
【００２７】
これら対話ルール変更方法及び対話ルールプログラムによれば、（１）に係る発明と同様の効果を奏する。
【発明の効果】
【００２８】
本発明によれば、ユーザに負担をかけることなく、当該ユーザの趣向に即して対話エージェントシステムの対話ルールを変更することができる対話ルール変更装置、対話ルール変更方法及び対話ルール変更プログラムを提供することができる。
【図面の簡単な説明】
【００２９】
【図１】第１実施形態に係る対話ルール変更装置とその周辺装置との関係を示す図である。
【図２】第１実施形態に係る対話ルール変更装置の機能構成を示す図である。
【図３】第１実施形態に係る行動履歴ＤＢを示す図である。
【図４】第１実施形態に係るカテゴリ辞書ＤＢを示す図である。
【図５】第１実施形態に係るカテゴリＤＢを示す図である。
【図６】第１実施形態に係る対話ルールＤＢを示す図である。
【図７】第１実施形態に係る対話ルールの模式図である。
【図８】第１実施形態に係る対話ルール変更装置による、入力メッセージに対して予め定められた対話ルールに従って応答メッセージを出力する処理の流れを示すフローチャートである。
【図９】第２実施形態に係る対話ルール変更装置の機能構成を示す図である。
【図１０】第２実施形態に係る対話ルールＤＢを示す図である。
【図１１】第２実施形態に係る対話ルールの模式図である。
【図１２】第２実施形態に係る対話ルールが変更された例を示す図（その１）である。
【図１３】第２実施形態に係る対話ルールが変更された例を示す図（その２）である。
【図１４】第２実施形態に係る対話ルールが変更された例を示す図（その３）である。
【発明を実施するための形態】
【００３０】
以下、本発明の実施形態について図を参照しながら説明する。
【００３１】
［第１実施形態］
［機能構成］
図１は、第１実施形態に係る対話ルール変更装置１とその周辺装置との関係を示す図である。対話ルール変更装置１は、ＬＡＮ等の通信ネットワークにより、対話エージェントシステム２と複数のウェブサーバ３とに通信可能に接続されている。
【００３２】
対話ルール変更装置１は、入力メッセージに対して予め設定された対話ルールに従って応答メッセージを出力する対話エージェントシステム２の対話ルールを変更する。対話ルール変更装置１の詳細は、後述する。
【００３３】
対話エージェントシステム２は、ＬＡＮ等の通信ネットワークにより対話ルール変更装置１と通信可能に接続されているとともに、ＬＡＮやインターネット等の通信ネットワークにより複数のユーザ端末４と通信可能に接続されている。対話エージェントシステム２は、ユーザ端末４から入力メッセージを受け付ける。そして、対話エージェントシステム２は、予め設定された対話ルールに従って、受け付けた入力メッセージに対応する応答メッセージをこのユーザ端末４に対して出力する。
【００３４】
ウェブサーバ３は、検索サーバやミニブログサーバやブログサーバ等であり、ウェブ上で、複数のユーザ端末４に対して各種サービスを提供する。
【００３５】
なお、図１に示される矢印は、データの流れを示しており、矢印と併せて示される文字列は、データの内容を示している。例えば、対話ルール変更装置１から対話エージェントシステム２に向かう矢印は、対話ルールが対話ルール変更装置１から対話エージェントシステム２に送信（又は参照）されることを示している。また、対話エージェントシステム２から対話ルール変更装置１に向かう矢印は、対話ログが対話エージェントシステム２から対話ルール変更装置１に送信されることを示している。また、ウェブサーバ３から対話ルール変更装置１に向かう矢印は、行動履歴に係る情報がウェブサーバ３から対話ルール変更装置１に送信されることを示している。
【００３６】
図２は、第１実施形態に係る対話ルール変更装置１の機能構成を示す図である。
対話ルール変更装置１は、操作部１１と、表示部１２と、記憶部１３と、制御部１４と、を備える。
【００３７】
操作部１１は、例えば、キーボード及びポインティング・デバイス（マウス、トラッキングボール等）により構成され、操作者から直接的な入力を受け付ける。
表示部１２は、例えば、液晶ディスプレイやプラズマディスプレイ等の各種ディスプレイにより構成され、対話ルール変更装置１の機能に関する情報を表示する。
【００３８】
記憶部１３は、行動履歴記憶手段としての行動履歴ＤＢ１３１と、カテゴリ辞書情報記憶手段としてのカテゴリ辞書ＤＢ１３２と、カテゴリＤＢ１３３と、対話ルール記憶手段としての対話ルールＤＢ１３４とを備える。
【００３９】
行動履歴ＤＢ１３１は、ユーザ端末４に対するウェブサーバ３の利用履歴を行動履歴として記憶する。行動履歴には、ウェブサーバ３における検索履歴と、ブログ又はミニブログへの投稿内容と、ユーザ端末４がアクセスしたウェブページの内容との少なくともいずれかが含まれる。
【００４０】
図３は、第１実施形態に係る行動履歴ＤＢ１３１を示す図である。
図３に示すように、行動履歴ＤＢ１３１は、ユーザを識別するユーザＩＤと、ユーザの行動履歴の行動種別と、行動履歴の内容とを関連付けて記憶する。行動履歴の内容は、行動種別が「検索」の場合、検索キーワードを示し、行動種別が「ミニブログ」又は「ブログ」の場合、投稿内容を示し、「ウェブ閲覧」の場合、閲覧されたウェブページのスニペットを示している。なお、行動履歴ＤＢ１３１に記憶される行動履歴には、対話エージェントシステム２におけるユーザ端末４との対話ログや、メールのメッセージ本文や、ウェブショッピングにおける商品の購入履歴等、他の行動履歴も含まれる。
【００４１】
図４は、第１実施形態に係るカテゴリ辞書ＤＢ１３２を示す図である。
図４に示すように、カテゴリ辞書ＤＢ１３２は、カテゴリと、カテゴリに対応する単語とを関連付けてカテゴリ辞書情報として記憶する。
【００４２】
図５は、第１実施形態に係るカテゴリＤＢ１３３を示す図である。
図５に示すように、カテゴリは、複数の階層を有している。すなわち、カテゴリＤＢ１３３は、上位のカテゴリと、この上位のカテゴリより１つ下の階層のカテゴリである下位のカテゴリとを関連付けて記憶する。
【００４３】
図５に示すように、例えば、「カレー店：六本木」カテゴリの上位のカテゴリとして「六本木」カテゴリが存在し、「カレー店：神保町」カテゴリの上位のカテゴリとして、「神保町」カテゴリが存在する。さらに、「六本木」カテゴリ及び「神保町」カテゴリの上位のカテゴリとして、「地域」カテゴリが存在する。
【００４４】
対話ルールＤＢ１３４は、対話ルールを記憶する。
対話ルールは、入力メッセージに対応する処理手順が定められた検出ノードと、応答メッセージに対応する処理手順が定められた動作ノードと、検出ノードと動作ノードとの接続関係を示すエッジとから構成されるグラフ構造のデータである。
第１実施形態では、対話ルールＤＢ１３４に一の対話ルールのみ記憶されており、この対話ルールは、対話エージェントシステム２を介して複数のユーザ端末４のユーザに利用される。
【００４５】
図６は、第１実施形態に係る対話ルールＤＢ１３４を示す図である。
図６に示すように、対話ルールＤＢ１３４は、ノードに関連する情報を記憶するノードテーブル１３５と、エッジに関連する情報を記憶するエッジテーブル１３６とを備える。
【００４６】
ノードテーブル１３５は、ノードを識別するノードＩＤと、ノードの種別を示すノード種別と、メッセージに対応する処理手順を示す処理内容と、ノードに付されているカテゴリとを関連付けて記憶する。
【００４７】
つまり、対話ルールＤＢ１３４に記憶されている対話ルールでは、各ノード（検出ノード及び動作ノード）に対し、そのメッセージ（各ノードの処理手順に対応するメッセージ）に対応するカテゴリが付されている。ここで、メッセージにカテゴリが付されているとは、メッセージに対してカテゴリを示すカテゴリの情報（例えば、カテゴリの名称や、カテゴリを識別するカテゴリコード）が付されていることをいう。
【００４８】
エッジテーブル１３６は、接続元のノードのノードＩＤを示す接続元ノードＩＤと、接続先のノードのノードＩＤを示す接続先ノードＩＤとを関連付けて記憶する。
【００４９】
接続元ノードと接続先ノードとのいずれか一方は検出ノードであり、他方は動作ノードである。つまり、接続元ノードと接続先ノードとは、検出ノードと動作ノードとの接続関係、すなわち、エッジを示している。なお、対話エージェントシステム２は、第１実施形態の対話ルールに対応する検出ノードに対応する動作ノードが複数存在する場合、ランダムに一の動作ノードを特定し、当該動作ノードに遷移する。
【００５０】
図７は、第１実施形態に係る対話ルールの模式図である。
図７に示される破線ブロックは検出ノードを示しており、実線ブロックは動作ノードを示している。また、これらのブロックには、ノードＩＤが付されている。また、各ブロック同士を繋ぐ矢印はエッジを示しており、具体的には、始点（矢がない側）が接続元ノードを示し、終点（矢がある側）が接続先ノードを示している。例えば、ノードＩＤ「Ｎ１」のノードとノードＩＤ「Ｎ２」のノードとを接続する矢印は、接続元ノードがノードＩＤ「Ｎ１」の検出ノードであり、接続先ノードがノードＩＤ「Ｎ２」の動作ノードであることを示している。
【００５１】
図２に戻り、制御部１４は、対話ルール変更装置１に係る各機能を統括的に制御する。制御部１４は、集計部１４１と、関心カテゴリ決定手段としての関心カテゴリ決定部１４２と、対話ルール生成手段としての対話ルール生成部１４３と、対話ルール変更手段としての対話ルール変更部１４４とを備える。
【００５２】
集計部１４１は、複数のユーザそれぞれの行動履歴をカテゴリごとに集計する。
具体的には、集計部１４１は、行動履歴ＤＢ１３１に記憶されているユーザＩＤごとに以下の処理を行う。すなわち、集計部１４１は、行動履歴ＤＢ１３１に記憶されている行動履歴の形態素解析を行い、単語を抽出する。そして、集計部１４１は、抽出された単語をカテゴリ辞書ＤＢ１３２に記憶されているカテゴリに分類し、分類された単語をカテゴリごとに集計することで、行動履歴をカテゴリごとに集計する。なお、集計部１４１は、行動履歴から単語を抽出する場合において、一の行動履歴に同一の単語が複数含まれているとき、１個の単語のみを抽出するようにしてもよい。
【００５３】
また、集計部１４１は、行動履歴ＤＢ１３１に記憶されている行動履歴が、閲覧されたウェブページのスニペットである場合、文書分類器を用いて当該スニペットをカテゴリに分類するようにしてもよい。すなわち、予めスニペットと、当該スニペットに対応するカテゴリの組み合わせを教師データとして文書分類器の学習を行った後、集計部１４１は、閲覧されたウェブページのスニペットを、この文書分類器を用いてカテゴリに分類するようにしてもよい。
【００５４】
関心カテゴリ決定部１４２は、行動履歴ＤＢ１３１に記憶されている行動履歴に基づいて、ユーザＩＤごとに、ユーザの関心話題のカテゴリであるユーザ関心カテゴリを決定する。具体的には、関心カテゴリ決定部１４２は、ユーザＩＤごとに、集計部１４１により集計された集計値が相対的に高い１又は複数のカテゴリを、ユーザ関心カテゴリに決定する。
【００５５】
対話ルール生成部１４３は、複数のユーザそれぞれについて、関心カテゴリ決定部１４２により決定されたユーザ関心カテゴリが付された検出ノード及び動作ノードの少なくともいずれかを含む新規対話ルールを生成する。
【００５６】
具体的には、対話ルール生成部１４３は、対話ルールＤＢ１３４に記憶された対話ルールにおけるユーザ関心カテゴリの上位のカテゴリが付されたノードの下位に接続されたノードを抽出し、抽出されたノードに付されたカテゴリをユーザ関心カテゴリに変更するとともに、抽出されたノードに対応するメッセージを、ユーザ関心カテゴリと、上位のカテゴリとの双方に対応するメッセージに変更することによって新規対話ルールを生成する。
【００５７】
対話ルール生成部１４３の処理について以下に詳述する。
まず、対話ルール生成部１４３は、カテゴリＤＢ１３３を参照して、ユーザ関心カテゴリに対して１階層又は複数階層上位のカテゴリのうち、一の上位のカテゴリを特定する。そして、対話ルール生成部１４３は、対話ルールＤＢ１３４に記憶された対話ルールにおいて、特定された上位のカテゴリが付されたノード（検出ノード及び動作ノード）を特定し、このノードの下位に直接的又は間接的に接続された１又は複数のノードを抽出する。ここで、抽出とは、対話ルールＤＢ１３４に記憶されている対話ルールにおいて抽出対象となったノードに基づいて新たなノードを複製することをいい、抽出対象となったノードの内容が変更されるものではない。
【００５８】
ここで、特定された上位のカテゴリが、ユーザ関心カテゴリに対して１階層上位のカテゴリである場合、対話ルール生成部１４３は、当該上位のカテゴリが付されたノードから、１階層下位のノードまでを対象として１又は複数のノードを抽出する。
【００５９】
他方、特定された上位のカテゴリが、ユーザ関心カテゴリに対して複数階層上位のカテゴリである場合、対話ルール生成部１４３は、当該上位のカテゴリが付されたノードから、この階層分下位のノードまでを対象として複数のノードを抽出する。例えば、上位のカテゴリが、ユーザ関心カテゴリに対して３階層上位のカテゴリである場合、対話ルール生成部１４３は、当該上位のカテゴリが付されたノードから、３階層分下位のノードを抽出する。
【００６０】
続いて、対話ルール生成部１４３は、抽出されたノードの少なくとも一部について、ノードに付されたカテゴリをユーザ関心カテゴリに変更するとともに、抽出されたノードに対応するメッセージを、ユーザ関心カテゴリと、このユーザ関心カテゴリの上位のカテゴリとの双方に対応するメッセージに変更することによって、新規対話ルールを生成する。
【００６１】
ここで、特定された上位のカテゴリが、ユーザ関心カテゴリに対して１階層上位のカテゴリである場合、対話ルール生成部１４３は、当該上位のカテゴリが付されたノードから、１階層下位のノードに付されたカテゴリをユーザ関心カテゴリに変更する。
【００６２】
他方、特定された上位のカテゴリが、ユーザ関心カテゴリに対して複数階層上位のカテゴリである場合、対話ルール生成部１４３は、抽出された複数階層のノードのうち最下層のノードに付されているカテゴリをユーザ関心カテゴリに変更する。そして、対話ルール生成部１４３は、最下層のノードの１つ上位の階層のノードに付されているカテゴリをユーザ関心カテゴリの１つ上位のカテゴリに変更する。このように、対話ルール生成部１４３は、複数階層それぞれのノードに付されたカテゴリを、それぞれの階層に対応したカテゴリに変更する。
【００６３】
また、対話ルール生成部１４３は、カテゴリがユーザ関心カテゴリに変更されたノードのメッセージを以下のように変更する。まず、対話ルール生成部１４３は、このユーザ関心カテゴリに対応するユーザＩＤに関連付けられている行動履歴を行動履歴ＤＢ１３１から抽出する。そして、対話ルール生成部１４３は、抽出された行動履歴について形態素解析を行って単語を抽出し、抽出された単語から、ユーザ関心カテゴリと、このユーザ関心カテゴリの上位のカテゴリとの双方に対する共起率が相対的に高い単語を特定する。そして、対話ルール生成部１４３は、変更前のメッセージについて、共起率が相対的に高い単語を含むメッセージに変更する。なお、対話ルール生成部１４３は、共起率が高い単語を特定する場合に、行動履歴ＤＢ１３１に記憶されている行動履歴に限らず、ウェブ検索の検索結果やウェブページの内容に基づいて、共起率が高い単語を特定するようにしてもよい。
【００６４】
具体的な例について、図５〜図７を用いて説明を行う。例えば、ユーザ関心カテゴリが「カレー店：神保町」である場合、対話ルール生成部１４３は、上位のカテゴリとして「地域」を特定する。図５に示されているように、「地域」カテゴリは、「カレー店：神保町」カテゴリに対して２階層上位のカテゴリである。続いて、対話ルール生成部１４３は、当該上位のカテゴリ「地域」が付されたノードから２階層分下位のノードまでを対象として複数のノード（ノードＩＤが「Ｎ４」、「Ｎ６」、「Ｎ７」のノード）を抽出（複製）する。続いて、対話ルール生成部１４３は、抽出された複数階層のノードのうち最下層のノード（ノードＩＤが「Ｎ６」、「Ｎ７」のノード）に付されているカテゴリ「カレー：六本木」を、ユーザ関心カテゴリ「カレー：神保町」に変更する。ここで、抽出された複数階層のノードのうち最下層のノードのメッセージを、外部のグルメサイト等を「カレー」及び「神保町」で検索して、ユーザ関心カテゴリ「カレー：神保町」に対応する店名を含むメッセージに変更する。続いて、対話ルール生成部１４３は、最下層のノードの１つ上位の階層のノード（ノードＩＤが「Ｎ４」のノード）に付されているカテゴリ「六本木」を、ユーザ関心カテゴリの上位のカテゴリ「神保町」に変更する。
【００６５】
また、上記実施形態（第１実施形態）では、対話ルール生成部１４３は、対話ルールＤＢ１３４に記憶された対話ルールから、ノードを抽出する場合に、抽出されたノードにおいて、ユーザ関心カテゴリが付されたノードが、最下位となるように抽出することとしたが、これに限らない。例えば、ユーザ関心カテゴリが付されたノードの下位のノードを抽出し、当該下位のノードのメッセージ及びカテゴリを変更するようにしてもよい。
【００６６】
この場合について、図５〜図７を用いて説明を行う。例えば、ユーザ関心カテゴリが、「神保町」である場合、対話ルール生成部１４３は、この「神保町」の上位カテゴリとして「地域」を特定し、この「地域」の下位のカテゴリとして「六本木」を特定する。そして、対話ルール生成部１４３は、「六本木」が付されたノードの下位のノードを対象として複数のノード（ノードＩＤが「Ｎ４」、「Ｎ６」、「Ｎ７」のノード）を抽出（複製）する。続いて、対話ルール生成部１４３は、抽出された複数階層のノードのうちユーザ関心カテゴリが「六本木」のノード（ノードＩＤが「Ｎ４」のノード）に付されているカテゴリを、ユーザ関心カテゴリ「神保町」に変更する。ここで、このノード（ノードＩＤが「Ｎ４」のノード）の下位のノード（ノードＩＤが「Ｎ６」、「Ｎ７」のノード）のメッセージを、外部のグルメサイト等を「カレー」及び「神保町」で検索して、ユーザ関心カテゴリ「カレー：神保町」に対応する店名を含むメッセージに変更する。
【００６７】
対話ルール変更部１４４は、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、各ノード（検出ノード及び動作ノード）に対応するメッセージに付されたカテゴリとに基づいて、対話ルールＤＢ１３４に記憶された対話ルールを変更する。
【００６８】
具体的には、対話ルール変更部１４４は、対話ルールＤＢ１３４に記憶されている対話ルールに対して対話ルール生成部１４３により生成された新規対話ルールを追加する。ここで、対話ルール変更部１４４は、カテゴリＤＢ１３３を参照して、ユーザ関心カテゴリの上位のカテゴリを特定する。そして、対話ルール変更部１４４は、特定された上位のカテゴリが付された検出ノード又は動作ノードに対して対話ルール生成部１４３により生成された新規対話ルールが下位となるように、この新規対話ルールを追加する。
【００６９】
ここで、対話ルール変更部１４４は、ノードテーブル１３５に記憶されているノードＩＤと重複しないように、生成された新規対話ルールのノードＩＤを生成するとともに、生成されたノードＩＤに対応するエッジを生成する。また、対話ルール変更部１４４は、生成された新規対話ルールの最上位のノードが検出ノードである場合、特定された上位のカテゴリが付された動作ノードを接続元ノードとし、新規対話ルールの最上位のノードを接続先ノードとするエッジを生成する。また、対話ルール変更部１４４は、生成された新規対話ルールの最上位のノードが動作ノードである場合、特定された上位のカテゴリが付された検出ノードを接続元ノードとし、新規対話ルールの最上位のノードが接続先ノードとするエッジを生成する。そして、対話ルール変更部１４４は、生成された新規対話ルールと生成されたエッジとを対話ルールＤＢ１３４（ノードテーブル１３５及びエッジテーブル１３６）に記憶させる。
【００７０】
［フローチャート］
続いて、対話ルール変更装置１における処理の流れについて説明する。
図８は、第１実施形態に係る対話ルール変更装置１による、入力メッセージに対して予め定められた対話ルールに従って応答メッセージを出力する処理の流れを示すフローチャートである。
【００７１】
ステップＳ１において、制御部１４（集計部１４１）は、ユーザの行動履歴をカテゴリごとに集計する。具体的には、制御部１４（集計部１４１）は、行動履歴ＤＢ１３１に記憶されている行動履歴の形態素解析を行って単語を抽出し、抽出された単語をカテゴリ辞書ＤＢ１３２に記憶されているカテゴリに分類する。そして、制御部１４（集計部１４１）は、分類された単語をカテゴリごとに集計することで、行動履歴をカテゴリごとに集計する。ステップＳ１の集計処理は、複数のユーザの行動履歴それぞれに対して行われる。
【００７２】
ステップＳ２において、制御部１４（関心カテゴリ決定部１４２）は、複数のユーザそれぞれについて、ステップＳ１において集計されたカテゴリの集計値が相対的に高い１又は複数のカテゴリを、ユーザ関心カテゴリに決定する。
【００７３】
ステップＳ３において、制御部１４（対話ルール生成部１４３）は、複数のユーザそれぞれについて、ステップＳ２において決定されたユーザ関心カテゴリが付された検出ノード及び動作ノードの少なくともいずれかを含む新規対話ルールを生成する。具体的には、制御部１４（対話ルール生成部１４３）は、対話ルールＤＢ１３４に記憶された対話ルールにおけるユーザ関心カテゴリの上位のカテゴリが付されたノードの下位に接続されたノードを抽出し、抽出されたノードの少なくとも１つについて、当該ノードに付されたカテゴリをユーザ関心カテゴリに変更するとともに、当該ノードに対応するメッセージを、ユーザ関心カテゴリと上位のカテゴリとの双方に対応するメッセージに変更することによって新規対話ルールを生成する。ステップＳ３の処理は、ステップＳ２において決定された全てのユーザ関心カテゴリに対して行われる。
【００７４】
ステップＳ４において、制御部１４（対話ルール変更部１４４）は、対話ルールＤＢ１３４に記憶されている対話ルールの変更を行う。具体的には、制御部１４（対話ルール変更部１４４）は、カテゴリＤＢ１３３を参照してユーザ関心カテゴリの上位のカテゴリを特定し、特定された上位のカテゴリが付された検出ノード又は動作ノードに対して、ステップＳ３において生成された新規対話ルールが下位となるように、新規対話ルールを追加する。ステップＳ４の処理は、ステップＳ３において生成された全ての対話ルールに対して行われる。
【００７５】
以上、第１実施形態によれば、対話ルール変更装置１は、対話ルール変更部１４４により、ユーザのウェブ上の行動履歴に基づいて決定されたユーザ関心カテゴリと、各ノードに対応するメッセージのカテゴリとに基づいて、対話ルールを変更する。
【００７６】
このように、対話ルール変更装置１は、ユーザの行動履歴に基づいたユーザ関心カテゴリによって対話ルールを変更するので、ユーザから対話ルールの変更操作を受け付けることを必要としない。さらに、ユーザの行動履歴に基づいたユーザ関心カテゴリは、ユーザの趣向に即しているため、対話ルール変更装置１は、ユーザに負担をかけることなく、当該ユーザの趣向に即して対話エージェントシステム２の対話ルールを変更することができる。
【００７７】
また、対話ルール変更装置１は、対話ルール生成部１４３により、ユーザ関心カテゴリが付された検出ノード及び動作ノードの少なくともいずれかを含む新規対話ルールを生成し、対話ルール変更部１４４により、対話ルールＤＢ１３４に記憶されている対話ルールに対して生成された新規対話ルールを追加する。このようにすることで、対話ルール変更装置１は、ユーザ関心カテゴリに対応する対話ルールを新たに追加して、ユーザの趣向に対応する対話ルールを増加させることができる。
【００７８】
また、対話ルール変更装置１は、対話ルール生成部１４３により、対話ルールＤＢ１３４に記憶された対話ルールにおけるユーザ関心カテゴリの上位のカテゴリが付されたノードの下位に接続されたノードを抽出し、抽出されたノードに付されたカテゴリをユーザ関心カテゴリに変更するとともに、抽出されたノードに対応するメッセージを、ユーザ関心カテゴリと、上位のカテゴリとの双方に対応するメッセージに変更することによって新規対話ルールを生成する。このようにすることで、対話ルール変更装置１は、既存のノードの構造を利用して、ユーザ関心カテゴリが付されたノードを効率よく生成することができる。
【００７９】
また、対話ルール変更装置１は、対話ルール変更部１４４により、対話ルールＤＢ１３４に記憶されている対話ルールにおけるユーザ関心カテゴリの上位のカテゴリが付された検出ノード又は動作ノードに対して、対話ルール生成部１４３により生成された新規対話ルールを下位となるように追加する。このようにすることで、対話ルール変更装置１は、ユーザ関心カテゴリの上位のカテゴリが付された検出ノード又は動作ノードからユーザ関心カテゴリに対応する対話に違和感なく遷移させることができる。
【００８０】
また、対話ルール変更装置１は、複数のユーザの行動履歴それぞれに基づいて、対話ルールＤＢ１３４に記憶されている一の対話ルールの変更を行う。このようにすることで、対話ルール変更装置１は、効率的に対話ルールの規模を大きくすることができる。
【００８１】
また、対話ルール変更装置１は、関心カテゴリ決定部１４２により、行動履歴ＤＢ１３１に記憶されている行動履歴に基づいて、ユーザ関心カテゴリを決定し、対話ルール変更部１４４により、関心カテゴリ決定部１４２により決定されたユーザ関心カテゴリと、各ノードに対応するメッセージのカテゴリとに基づいて、対話ルールを変更することができる。
【００８２】
［第２実施形態］
［機能構成］
図９は、本発明の第２実施形態に係る対話ルール変更装置１Ａの機能構成を示す図である。
本実施形態に示される対話ルール変更装置１Ａは、対話ルールが複数のユーザそれぞれに対応して複数存在する点と、対話ルールのエッジに対して、当該エッジに関連付けられている遷移先（接続先）の動作ノードへの遷移確率を対応付けて記憶する点と、複数の対話ルールそれぞれに対して個別に対話ルールを変更しうる点とが、第１実施形態と異なり、その他の機能は、第１実施形態に示される対話ルール変更装置１と同様である。
【００８３】
対話ルール変更装置１Ａの記憶部１３Ａは、対話ルールＤＢ１３４Ａを備え、対話ルール変更装置１Ａの制御部１４Ａは、対話ルール変更部１４４Ａとを備える。
【００８４】
対話ルールＤＢ１３４Ａは、複数の対話ルールを記憶しており、これら複数の対話ルールそれぞれは、複数のユーザそれぞれに対応している。
【００８５】
図１０は、第２実施形態に係る対話ルールＤＢ１３４Ａを示す図である。
図１０に示すように、対話ルールＤＢ１３４Ａは、ノードに関連する情報を記憶するノードテーブル１３５Ａと、エッジに関連する情報を記憶するエッジテーブル１３６Ａとを記憶する。
【００８６】
ノードテーブル１３５Ａは、ユーザＩＤと、ノードＩＤと、ノード種別と、処理内容と、カテゴリとを関連付けて記憶する。
エッジテーブル１３６Ａは、ユーザＩＤと、接続元ノードＩＤと、接続先ノードＩＤと、接続元のノードＩＤから接続先ノードＩＤへの遷移確率とを関連付けて記憶する。すなわち、エッジテーブル１３６Ａは、エッジに対して、当該エッジに関連付けられている遷移先（接続先）の動作ノードへの遷移確率を対応付けて記憶する。
【００８７】
なお、第２実施形態では、一の対話ルールＤＢ１３４Ａに対してノードテーブル１３５Ａ及びエッジテーブル１３６Ａをそれぞれ１つずつ記憶させることとしたが、対話ルールＤＢ１３４Ａを複数設けたり、一の対話ルールＤＢ１３４Ａに対してノードテーブル１３５Ａ及びエッジテーブル１３６Ａを複数記憶させたり、ユーザ端末４に対して個別にノードテーブル１３５Ａ及びエッジテーブル１３６Ａを複数記憶させたりして複数のユーザそれぞれに対応するようにしてもよい。そして、対話ルール生成部１４３により生成された対話ルールを、一のユーザのみが利用できるように、当該ユーザに対応する対話ルールにのみ追加するようにしてもよい。
【００８８】
図１１は、第２実施形態に係る対話ルールの模式図である。
図１１に示されるように、第２実施形態に係る対話ルールには、第１実施形態に係る対話ルールに、遷移確率が付されている点で異なる。すなわち、各エッジに付されている数値は、遷移確率である。
【００８９】
対話ルール変更部１４４Ａは、第１実施形態において説明した機能に加えて、ユーザ関心カテゴリに関連付けられたユーザＩＤに対応する対話ルールの変更を行う機能を有する。
【００９０】
すなわち、対話ルール変更部１４４Ａは、対話ルールＤＢ１３４Ａに記憶されている対話ルールにおけるユーザ関心カテゴリが付されている動作ノードと、複数のエッジを介して当該動作ノードの上位に間接的に接続されている検出ノードとを接続するエッジを、対話ルールＤＢ１３４Ａに記憶されている対話ルールに追加する。
【００９１】
具体的には、対話ルール変更部１４４Ａは、カテゴリＤＢ１３３を参照して、ユーザ関心カテゴリに対して１階層又は複数階層上位のカテゴリを特定する。そして、対話ルール変更部１４４Ａは、特定された上位のカテゴリのいずれかが付されている検出ノードのうち、ユーザ関心カテゴリが付されているノードと間接的に接続されている検出ノードを特定する。そして、対話ルール変更部１４４Ａは、ユーザ関心カテゴリが付されているノードと、特定された検出ノードとを接続するエッジを生成するとともに、生成されたエッジと、当該ユーザ関心カテゴリに対応しているユーザＩＤとを対話ルールＤＢ１３４Ａに記憶させることによって、新たに生成されたエッジを対話ルールに追加する。また、対話ルール変更部１４４Ａは、新たに生成されたエッジが追加された後、このエッジの接続元ノードに関連付けられている下位のエッジの遷移確率が等しくなるように、遷移確率を変更する。ここで、対話ルール変更部１４４Ａは、同一のユーザ関心カテゴリが付されている動作ノードが複数存在する場合、一の動作ノードをランダムで選択し、エッジを生成する処理を行う。
【００９２】
具体的な例について、図５、図１０及び図１１を用いて説明を行う。例えば、図１１に示される対話ルールにおいて、ユーザ関心カテゴリに対応するユーザＩＤが「ｕ００１」、ユーザ関心カテゴリが「カレー店：六本木」である場合、対話ルール変更部１４４Ａは、上位のカテゴリとして「カレー」を特定する。そして、対話ルール変更部１４４Ａは、「カレー」カテゴリが付されている検出ノードであって、ユーザ関心カテゴリ「カレー店：六本木」が付されているノード（ノードＩＤ「Ｎ６」、「Ｎ７」のノード）と間接的に接続されている検出ノードとして、ノードＩＤ「Ｎ１」のノードを特定する。ここで、対話ルール変更部１４４Ａは、同一のユーザ関心カテゴリが付されている動作ノードが複数存在するため、一の動作ノードとしてノードＩＤ「Ｎ６」のノードを選択する。そして、対話ルール変更部１４４Ａは、ユーザ関心カテゴリ「カレー店：六本木」が付されているノード（ノードＩＤ「Ｎ６」のノード）と、特定された検出ノード（ノードＩＤ「Ｎ１」のノード）とを接続するエッジを生成し、生成されたエッジと、ユーザＩＤが「ｕ００１」とを関連付けて対話ルールＤＢ１３４Ａに記憶させることによって、新たに生成されたエッジを対話ルールに追加する。この場合、ノードが新たに追加された対話ルールは、図１２に示されるものとなる。
【００９３】
また、対話ルール変更部１４４Ａは、対話ルールＤＢ１３４Ａに記憶されている対話ルールにおけるユーザ関心カテゴリが付されている動作ノードに対して複数のエッジを介して上位に間接的に接続されている動作ノードに対応する応答メッセージを、当該ユーザ関心カテゴリの名称を含む応答メッセージに変更する。
【００９４】
具体的には、対話ルール変更部１４４Ａは、カテゴリＤＢ１３３を参照して、ユーザ関心カテゴリに対して１階層又は複数階層上位のカテゴリを特定する。そして、対話ルール変更部１４４Ａは、特定された上位のカテゴリのいずれかが付されている動作ノードを特定する。特定されたノードは、ユーザ関心カテゴリに対して、複数のエッジを介して間接的に上位に接続されている動作ノードとなる。そして、対話ルール変更部１４４Ａは、特定された動作ノードに対応する応答メッセージを、ユーザ関心カテゴリの名称を含む応答メッセージに変更する。なお、ユーザ関心カテゴリの名称を含むとは、ユーザ関心カテゴリの名称の全て又は一部を含むことをいう。
【００９５】
具体的な例について、図５、図１０及び図１１を用いて説明を行う。例えば、ユーザ関心カテゴリに対応するユーザＩＤが「ｕ００１」、ユーザ関心カテゴリが「カレー：キーマ」である場合、対話ルール変更部１４４Ａは、上位のカテゴリとして「カレー：種類」を特定する。続いて、対話ルール変更部１４４Ａは、「カレー：種類」カテゴリが付されている動作ノード（ノードＩＤ「Ｎ８」のノード）を、上位のカテゴリのいずれかが付されている動作ノードに特定する。続いて、対話ルール変更部１４４Ａは、図１３に示すように、この動作ノードの応答メッセージをユーザ関心カテゴリの名称を含む応答メッセージ（例えば、「どんなカレーが好き？私はキーマカレーが好き」）に変更する。
【００９６】
また、対話ルール変更部１４４Ａは、対話ルールＤＢ１３４Ａに記憶されている対話ルールに、ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、ユーザ関心カテゴリを示すカテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように複数のエッジそれぞれの遷移確率を調整する。
【００９７】
具体的な例について、図５、図１０及び図１１を用いて説明を行う。例えば、ユーザ関心カテゴリに対応するユーザＩＤが「ｕ００１」、ユーザ関心カテゴリが「六本木」である場合、対話ルール変更部１４４Ａは、上位のカテゴリとして「カレー」を特定する。続いて、対話ルール変更部１４４Ａは、「カレー」カテゴリが付されている検出ノード（ノードＩＤ「Ｎ１」のノード）を接続元ノードとする複数のエッジの遷移確率について、ユーザ関心カテゴリ「六本木」を示すカテゴリが付された動作ノード（ノードＩＤ「Ｎ３」のノード）を接続先ノードとするエッジの遷移確率が、他の動作ノードを接続先ノードとするエッジの遷移確率に比べて高くなるように調整する。例えば、図１４に示すように、対話ルール変更部１４４Ａは、接続元ノードがノードＩＤ「Ｎ１」のノードであり、接続先ノードがノードＩＤ「Ｎ３」のノードであるエッジの遷移確率を「０．８」、接続元ノードがノードＩＤ「Ｎ１」のノードであり、接続先ノードがノードＩＤ「Ｎ２」のノードであるエッジの遷移確率を「０．２」に調整する。
【００９８】
また、対話ルール変更部１４４Ａは、一のユーザに対して複数のユーザ関心カテゴリが決定されている場合において、同一の検出ノードを接続元ノードとした動作ノードであって、それぞれが異なるユーザ関心カテゴリが付された動作ノードが存在するとき、これら異なるユーザ関心カテゴリが付された動作ノードの遷移確率を調整する。すなわち、対話ルール変更部１４４Ａは、集計部１４１により集計された集計値が多いユーザ関心カテゴリの遷移確率が相対的に高くなるように遷移確率を調整する。
【００９９】
第２実施形態によれば、第１実施形態において説明した効果に加え、以下のような効果がある。
【０１００】
対話ルール変更装置１Ａは、対話ルール変更部１４４Ａにより、対話ルールＤＢ１３４Ａに記憶されている対話ルールにおけるユーザ関心カテゴリが付されている動作ノードと、複数のエッジを介して当該動作ノードの上位に間接的に接続されている検出ノードとを接続するエッジを、対話ルールＤＢ１３４Ａに記憶されている対話ルールに追加する。このようにすることで、対話ルール変更装置１Ａは、少ない対話回数で、ユーザの趣向に対応する対話に遷移させることができる。
【０１０１】
また、対話ルール変更装置１Ａは、対話ルール変更部１４４Ａにより、対話ルールＤＢ１３４Ａに記憶されている対話ルールにおけるユーザ関心カテゴリが付されている動作ノードに対して複数のエッジを介して上位に間接的に接続されている動作ノードに対応する応答メッセージを、ユーザ関心カテゴリの名称を含む応答メッセージに変更する。ここで、ユーザ関心カテゴリの名称を含む応答メッセージが出力された場合、ユーザは、当該応答メッセージが出力されない場合に比べて、ユーザ関心カテゴリに対応するメッセージを入力する可能性が高い。よって、対話ルール変更装置１Ａは、ユーザ関心カテゴリに対応する動作ノードに遷移する確率を増加させることができる。
【０１０２】
また、対話ルール変更装置１Ａは、ユーザ関心カテゴリの上位のカテゴリが付された検出ノードに対応する複数のエッジが記憶されている場合において、ユーザ関心カテゴリが付された動作ノードに対応するエッジが当該複数のエッジに含まれているとき、ユーザ関心カテゴリが付された動作ノードに対応するエッジの遷移確率が他のエッジの遷移確率に比べて高くなるように複数のエッジそれぞれの遷移確率を調整する。このようにすることで、対話ルール変更装置１Ａは、ユーザ関心カテゴリが付された動作ノードへの遷移確率を増加させて、ユーザと対話エージェントシステム２との間で、ユーザの趣向に対応する対話が行われやすいようにすることができる。
【０１０３】
なお、本実施形態（第１実施形態及び第２実施形態）において、上記対話ルール変更装置１及び１Ａ、対話エージェントシステム２、ウェブサーバ３及びユーザ端末４は、コンピュータ及びその周辺装置に適用される。本実施形態における各部は、コンピュータ及びその周辺装置が備えるハードウェア並びに当該ハードウェアを制御するソフトウェアによって構成される。
【０１０４】
上記ハードウェアには、制御部としてのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）の他、記憶部、通信装置、表示装置、入力装置及び出力装置が含まれる。記憶部としては、例えば、メモリ（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ＲＯＭ：Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ等）、ハードディスクドライブ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及び光ディスク（ＣＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｋ、ＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ等）ドライブが挙げられる。通信装置としては、例えば、各種有線及び無線インターフェース装置が挙げられる。表示装置としては、例えば、液晶ディスプレイやプラズマディスプレイ等の各種ディスプレイが挙げられる。入力装置としては、例えば、キーボード及びポインティング・デバイス（マウス、トラッキングボール、タッチパッド等）、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）等を利用した位置取得装置、タイマ、マイク等が挙げられる。出力装置としては、例えば、音声を出力するための音声合成装置が挙げられる。
【０１０５】
上記ソフトウェアには、上記ハードウェアを制御するコンピュータ・プログラムやデータが含まれる。コンピュータ・プログラムやデータは、記憶部により記憶され、制御部により適宜実行、参照される。また、コンピュータ・プログラムやデータは、通信回線を介して配布されることも可能であり、ＣＤ−ＲＯＭ等のコンピュータ可読媒体に記録して配布されることも可能である。
【０１０６】
以上、上記実施形態について説明したが、上記実施形態は例示に過ぎず、図面に示す構成要素、データ構造及びフローチャート等は適宜変更可能である。また、上記実施形態に記載された本発明の効果は、上記実施形態から生じる最も好適な効果を列挙したに過ぎず、上記実施形態に記載したものに限定されるものではない。
【０１０７】
上記実施形態では、集計部１４１が、カテゴリ辞書ＤＢ１３２に基づいて行動履歴に含まれる単語を分類することとしたが、文書分類器を用いて分類を行ってもよい。
【０１０８】
また、上記実施形態では、対話ルールを対話ルール変更装置１、１Ａに記憶することとしたが、これに限らず、対話エージェントシステム２等、他のシステムやサーバ等に記憶させるようにしてもよい。この場合、対話ルール変更装置１、１Ａは、他のシステムやサーバ等に記憶された対話ルールを変更するようにしてもよい。
【０１０９】
また、上記実施形態（第２実施形態）では、動作ノードに対する遷移確率を設定することとしたが、さらに、遷移確率を時間帯、地域別に設定できるようにしてもよい。すなわち、エッジテーブル１３６Ａに記憶されている遷移確率を、時間帯（例えば、日中、夕方、夜等）別に記憶させて、対話エージェントシステム２が、時間帯に応じて、対話ルールに適用する遷移確率を変更するようにしてもよい。例えば、深夜や早朝の時間帯である場合に、対話エージェントシステム２が、レストランの推薦に係るメッセージを出力せずにレシピに係るメッセージを出力するようにしてもよい。
【０１１０】
また、エッジテーブル１３６Ａに記憶されている遷移確率を、地域別に記憶させて、対話エージェントシステム２が、ユーザ端末４から位置を取得し、当該位置に基づいて対話ルールに適用する遷移確率を変更するようにしてもよい。また、エッジテーブル１３６Ａが、これら時間帯別、地域別に遷移確率を記憶し、対話エージェントシステム２が、これら遷移確率を時間帯及びユーザ端末の位置に基づいて適宜変更するようにしてもよい。例えば、ユーザ端末４が六本木に位置している場合に、対話エージェントシステム２が、神保町に係るメッセージを出力せずに六本木に係るメッセージを出力するようにしてもよい。
【符号の説明】
【０１１１】
１  対話ルール変更装置
１１  操作部
１２  表示部
１３、１３Ａ  記憶部
１４、１４Ａ  制御部
１３１  行動履歴ＤＢ
１３２  カテゴリ辞書ＤＢ
１３３  カテゴリＤＢ
１３４、１３４Ａ  対話ルールＤＢ
１４１  集計部
１４２  関心カテゴリ決定部
１４３  対話ルール生成部
１４４、１４４Ａ  対話ルール変更部
【図１】
0005393732.tif 000002
【図２】
0005393732.tif 000003
【図３】
0005393732.tif 000004
【図４】
0005393732.tif 000005
【図５】
0005393732.tif 000006
【図６】
0005393732.tif 000007
【図７】
0005393732.tif 000008
【図８】
0005393732.tif 000009
【図９】
0005393732.tif 000010
【図１０】
0005393732.tif 000011
【図１１】
0005393732.tif 000012
【図１２】
0005393732.tif 000013
【図１３】
0005393732.tif 000014
【図１４】
0005393732.tif 000015