【文献】
山内 慎也,質問応答システムにおけるユーザ対話を用いた回答候補の絞り込み,電子情報通信学会技術研究報告NLC2008−19〜23,2008年11月 3日,Vol.108 No.283,pp.23-28
(58)【調査した分野】(Int.Cl.,DB名)
上記対話文提供部は、上記ユーザの興味情報に代えて、直近の発言情報を上記ウェブサイトから抽出し、当該発言情報から上記挿入キーワードを生成し、当該発言情報から生成した挿入キーワードを上記キーワード変換部に供給して上記キーワード変換を実行させ、上記キーワード変換部より出力された関連キーワードを最終的な上記挿入キーワードとして生成することを特徴とする請求項3に記載の商品情報提供システム。
上記対話文提供部は、上記ユーザの興味情報に代えて、上記商品提示部により提示された商品の中からユーザにより取り置きされた商品の説明文を上記商品情報記憶部から抽出し、当該商品の説明文から上記挿入キーワードを生成し、当該商品の説明文から生成した挿入キーワードを上記キーワード変換部に供給して上記キーワード変換を実行させ、上記キーワード変換部より出力された関連キーワードを最終的な上記挿入キーワードとして生成することを特徴とする請求項3に記載の商品情報提供システム。
上記対話文提供手段は、上記ユーザの興味情報に代えて、直近の発言情報を上記ウェブサイトから抽出し、当該発言情報から上記挿入キーワードを生成し、当該発言情報から生成した挿入キーワードを上記キーワード変換手段に供給して上記キーワード変換を実行させ、上記キーワード変換手段より出力された関連キーワードを最終的な上記挿入キーワードとして生成することを特徴とする請求項9に記載の商品情報提供用プログラム。
上記対話文提供手段は、上記ユーザの興味情報に代えて、上記商品提示手段により提示された商品の中からユーザにより取り置きされた商品の説明文を上記商品情報記憶部から抽出し、当該商品の説明文から上記挿入キーワードを生成し、当該商品の説明文から生成した挿入キーワードを上記キーワード変換手段に供給して上記キーワード変換を実行させ、上記キーワード変換手段より出力された関連キーワードを最終的な上記挿入キーワードとして生成することを特徴とする請求項9に記載の商品情報提供用プログラム。
上記商品提示手段は、上記キーワード生成手段により順次生成される1以上の検索キーワードを記憶する検索キーワード記憶部に記憶されている上記1以上の検索キーワードを用いたOR検索により、上記商品情報記憶部の中から当該OR検索の検索条件に合致する商品を抽出してユーザに提示するようになされ、
上記対話文提供手段は、上記検索キーワード記憶部から抽出した何れかの検索キーワードを上記キーワード変換手段に供給して上記キーワード変換を実行させ、上記キーワード変換手段より出力された関連キーワードを最終的な上記挿入キーワードとして生成することを特徴とする請求項9〜11の何れか1項に記載の商品情報提供用プログラム。
【背景技術】
【0002】
インターネット上には様々なショッピングサイトが存在する。ユーザは、これらのショッピングサイトを利用することで、店頭に出向く必要もなく好きな商品を購入することができる。この便利さがうけて、現在ではショッピングサイトが多くのユーザに広く利用されている。
【0003】
様々な商品を販売しているモールのようなショッピングサイトでは、様々な商品がジャンル別に分類して表示されている。そのため、ユーザが好みのジャンルを選択して商品一覧を表示させることにより、好みに合った商品を容易に探すことができるようになっている。
【0004】
また、サイト内の情報をキーワードにより検索できるようになされたショッピングサイトも多い。このような検索機能を備えたショッピングサイトでは、商品に関連したキーワードを用いてサイト内を検索することにより、ユーザの好みに合った商品をより簡単に探すことができるようになっている。
【0005】
このような形態のショッピングサイトは、ユーザの買いたい商品が明確となっている場合には適している。ユーザが自らの意思で選択したジャンルや検索窓に入力したキーワードをもとにして該当する商品の情報を提供する、いわゆるPULL型の情報提供をベースとしているからである。
【0006】
しかし、ユーザの買いたい商品が明確に決まっていない場合や、商品検索時に自らの好みが曖昧な場合などは、ジャンルを選択したりキーワードを入力して検索したりすること自体が困難である。そのため、PULL型の情報提供の仕組みではユーザに有益な情報を提供することができないという問題があった。
【0007】
これに対して、ユーザの個人情報や過去の購買履歴に関する情報などに基づいて、ユーザが欲すると思われる商品の情報を提供する、いわゆるPUSH型の情報提供の仕組みを採用したシステムも存在する。このようなPUSH型の情報提供を採用したシステムでは、ユーザの個人情報や購買履歴情報などからユーザの嗜好をどれだけ的確に推定できるかが鍵となる。
【0008】
従来、ユーザの様々な取引先における取引履歴を基に、ユーザが選択した商品に対して組合せがよく、かつユーザの多面的な嗜好性にあった商品の情報を提供することを可能にしたシステムが提案されている(例えば、特許文献1参照)。この特許文献1に記載のシステムでは、情報の提供者が予め商品同士を関連付けする情報を登録しなくても、ユーザが選択した商品に対して組合せのよい商品を判定し、さらにユーザの多面的な嗜好性として、平均的嗜好性、目的別嗜好性、最近の嗜好性を加味し、ユーザに適した商品情報を提供するようにしている。
【0009】
また、商品情報を記憶したデータベースからの商品情報検索時において、チャットを用いてユーザの嗜好に合った商品を推薦するシステムも提案されている(例えば、特許文献2参照)。この特許文献2に記載のシステムでは、ユーザと他者とのインターネット上での文字による会話を可能にするチャットインタフェースを備える。そして、ユーザと他者とのチャットの内容を分析しながらユーザの嗜好情報をリアルタイムに更新し、ユーザの嗜好に合った商品をチャットの内容に合わせて変化させながら推薦商品として表示するようにしている。
【0010】
さらに、広告等の有効性を高めるために、自然言語による会話の中からユーザのよりパーソナルな情報を抽出し、当該パーソナルな情報に基づいて商品等を提案するシステムも提案されている(例えば、特許文献3参照)。この特許文献3に記載のシステムでは、会話エンジンと会話エージェントとが協働・連携して、ユーザと自然言語によるテキスト文での会話を実現する。ここで、会話エンジンは、自然言語解析の結果、会話エージェントから受信したテキスト文にユーザの個人情報が含まれていることが認識された場合に、当該個人情報をユーザデータベースに登録する。これにより、登録した個人情報に基づいて個別のユーザに的確な商品等をダイレクトに提案することができるようにしている。
【0011】
しかしながら、上記特許文献1〜3に記載のシステムは何れも、システム側に設定された所定のアルゴリズムに基づいてユーザの嗜好性を推定する内容となっている。したがって、ユーザの多面的な嗜好性を考慮したり、チャットの内容からユーザの嗜好性を検出したり、自然言語による会話の中からユーザの個人情報を抽出したりすることができたとしても、ユーザの意思とは関係のない情報提供側の論理で商品の提案が行われる。そのため、提案される商品がユーザにとって好みの商品や興味を引く商品であるとは限らないという問題があった。
【0012】
このように、一方的に押し付けた提案になりがちなPUSH型の情報提供の問題点に鑑みて、ユーザのニーズに沿った商品の提案ができるようにするために、より対面販売に近い感覚でユーザが商品購入を行うことができるように対話の流れを制御するシステムが提案されている(例えば、特許文献4参照)。この特許文献4に記載のシステムでは、要望調査モードとして、ユーザの商品に対する要望を引き出すように対話内容の流れを制御する。そして、ユーザの商品に対する要望の対話履歴と商品知識とをもとに、ユーザの商品に対する要望を表す特徴量にマッチする商品を推定するようにしている。
【0013】
ここで、要望調査モード時に使用する特徴量は、ユーザの商品に対する機能・品質を含む要望を表わす特徴量である。具体的な処理としては、当該要望を表わす特徴量が所定量に満たない場合は、ユーザの商品に対する要望を引き出す対話となるように対話内容の流れを制御する。そして、要望調査モードに移行後、所定時間を超えたタイミングで要望調査モードを終了し、推薦商品を提示する。一方、当該要望を表わす特徴量が所定量を満たす場合は、ユーザの商品に対する要望の対話履歴と商品知識とをもとに、特徴量にマッチする商品を推定している。
【発明を実施するための形態】
【0023】
以下、本発明の一実施形態を図面に基づいて説明する。
図1は、本実施形態による商品情報提供システムの機能構成例を示すブロック図である。
図1に示すように、本実施形態の商品情報提供システム100は、その機能構成として、対話テンプレート記憶部1、商品情報記憶部2、対話文提供部3、キーワード生成部4、商品提示部5、ユーザ情報管理部6、ユーザ情報記憶部7、関連キーワード記憶部8、キーワード変換部9、対話ログ管理部10および対話ログ記憶部11を備えている。
【0024】
商品情報提供システム100が備える対話文提供部3、キーワード生成部4、商品提示部5、ユーザ情報管理部6、キーワード変換部9および対話ログ管理部10の各機能は、ハードウェア、DSP(Digital Signal Processor)、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、これらの各機能は、実際にはコンピュータのCPU、RAM、ROMなどを備えて構成され、RAMやROM、ハードディスクまたは半導体メモリ等の記録媒体に記憶された商品情報提供用プログラムが動作することによって実現される。
【0025】
本実施形態の商品情報提供システム100は、インターネット等の通信ネットワークに接続可能になされたサーバ装置で構成されており、当該通信ネットワークを介してクライアント端末200およびソーシャルネットワーキングサービス(SNS)を提供するサーバ装置(以下、SNSサーバ300という)と接続されている。クライアント端末200は、その機能構成として、ユーザインタフェース部(UI部)21を備えている。
【0026】
UI部21は、ユーザが商品情報提供システム100と対話をするためのユーザインタフェースを提供するためのものである。具体的には、UI部21は、商品情報提供システム100が生成する対話画面をディスプレイに表示させるとともに、当該対話画面を通じてユーザから商品情報提供システム100に対して所望の応答や指示を行うためのユーザインタフェースを提供する。
【0027】
対話テンプレート記憶部1は、UI部21を通じてユーザに対話文を提供する際に使用する複数種類の対話テンプレートを記憶する。本実施形態では、対話テンプレート記憶部1に記憶する対話テンプレートとして、定型対話のテンプレート、置換対話のテンプレート、自由発言のテンプレートおよび視点変換のテンプレートを備えている。
【0028】
定型対話のテンプレートは、あらかじめ決められた文言による対話文を生成するためのテンプレートである。置換対話のテンプレートは、あらかじめ決められた文言の中に対話文提供部3が生成する挿入キーワードを挿入することによって対話文を生成するためのテンプレートである。自由発言のテンプレートは、ユーザに対してテキスト文の入力による自由発言を促す対話文を生成するためのテンプレートである。視点変換のテンプレートは、ユーザに対して視点を変えた商品検索を促す対話文を生成するためのテンプレートである。
【0029】
図2は、対話テンプレート記憶部1に記憶される対話テンプレートのデータベース(DB)の一例を示す図である。
図2に示すように、対話テンプレートDBは、レコードID、対話シナリオID、対話テキスト、検索キーワード、応答テキスト、応答への応答テキストを項目として含んでいる。このうち、レコードIDは、対話テンプレートDBを構成する各レコードに対して付与される昇順の番号である。
【0030】
対話シナリオIDは、ユーザに対話文を順次提供していく際に使用する対話テンプレートのシーケンスを特定するためのIDである。
図2の例において、対話シナリオIDの先頭にあるアルファベットは、対話テンプレートの種類を示している。Aは定型対話のテンプレート、Bは置換対話のテンプレート、Cは自由発言のテンプレート、Dは視点変換のテンプレートである。
【0031】
また、対話シナリオIDの末尾にある数字がシナリオ番号に相当する。対話文提供部3が対話文を生成する際には、このシナリオ番号の昇順に従ってレコードが1つずつ順次取得される。シナリオ番号の末尾までレコードが取得されると、再びシナリオ番号の先頭に戻って次のレコードが取得される。
【0032】
対話テキストの項目には、ユーザに提示する対話文の文言がテキスト文として記述されている。置換対話のテンプレートの場合、文言の中に置換対象タグ[n](n=1,2,・・・)が埋め込まれている。この置換対象タグ[n]が、対話文提供部3により生成される挿入キーワードに置換されて対話文が生成されるようになっている。
【0033】
検索キーワードは、定型対話のテンプレートに対して設定されている。定型対話のテンプレートに基づいて生成された対話文に対してユーザが肯定の応答をした場合に、
図2の対話テンプレートDBに設定されている検索キーワードがキーワード生成部4により抽出され、新たな検索キーワードとして生成されるようになっている。
【0034】
応答テキストは、対話テキストから生成された対話文に対してユーザが肯定または否定の応答するための選択肢として使われる回答文の文言がテキスト文として記述されている。また、応答への応答テキストは、ユーザが肯定または否定の応答をした場合に、更にその応答としてシステムがユーザに提示する対話文の文言がテキスト文として記述されている。
【0035】
なお、
図2に示す対話テンプレートDBでは、複数種類の対話テンプレートを対話シナリオのシーケンスに沿った順番で各レコードに格納する例を示しているが、この構造に限定されるものではない。例えば、複数の対話テンプレートをその種類毎にグルーピングし、種類毎に分けてレコードに格納する構造としてもよい。このようにしても、対話シナリオIDの末尾にあるシナリオ番号に従って、複数の対話テンプレートを対話シナリオのシーケンスに沿って順次取得していくことが可能である。
【0036】
また、
図2に示す対話テンプレートDBでは、対話シナリオIDの末尾にあるシナリオ番号が全て異なる数字で示されているが、同じ数字の対話シナリオIDが複数あってもよい。シナリオ番号の同じレコードが複数ある場合、対話文提供部3がシーケンスに従って1つの対話文を生成する際には、同じシナリオ番号が付された複数のレコードの中から何れか1つのレコードをランダムに、あるいは所定のルールに従って取得する。
【0037】
商品情報記憶部2は、UI部21によりディスプレイに表示される対話画面を通じてユーザに提案する商品の情報を記憶する。商品情報記憶部2に記憶する商品情報は、例えば、商品名、商品属性(色、サイズ、男性用か女性用かの性別など)、商品画像、商品の説明文、価格などを含んでいる。
【0038】
図3は、UI部21によりディスプレイに表示される対話画面の一例を示す図である。
図3に示すように、本実施形態の対話画面は、対話エリア31、検索条件エリア35、商品一覧エリア37、ピンボードエリア38および自由発言エリア39を備えている。
【0039】
対話エリア31の中には仮想店員32が表示され、対話文提供部3により生成される対話文33が仮想店員32からの発言として(吹き出しとして)提示されるようになっている。吹き出しの中には、対話テンプレートDBの対話テキストや応答への応答テキストから生成される対話文33が表示されるとともに、対話テンプレートDBの応答テキストから生成される肯定および否定の回答文34が表示されている。回答文34は、UI部21を通じて操作可能なボタンとなっている。
【0040】
検索条件エリア35には、ユーザに提示する商品を検索する際の検索キーワードが設定されている。この検索キーワードは、後述するようにキーワード生成部4により生成されるものである。検索条件エリア35に複数の検索キーワードが設定されている場合、本実施形態ではそれら複数の検索キーワードを用いたOR検索を行う。
【0041】
検索条件エリア35には、UI部21を通じて操作可能な編集ボタン36が表示されている。編集ボタン36を操作することにより、設定されている検索キーワードの詳細画面を表示させ、不要となった検索キーワードを削除することができるようになっている。また、個々の検索キーワードに対して所望の重みを設定することも可能である。検索キーワードに重みを設定した場合、OR検索の結果として商品一覧エリア37に表示される商品一覧において、大きな重みを設定した検索キーワードに合致する商品ほど上位の位置に表示されるようになる。
【0042】
商品一覧エリア37には、検索条件エリア35に設定されている1以上の検索キーワードを用いたOR検索により抽出された商品が一覧として表示される。
図3の例では、OR検索の検索条件に合致する複数の商品の画像が一覧表示されている。なお、ログイン時や検索キーワードの削除時など、検索キーワードの数が0の場合もある。その場合は全商品の一部が一覧として表示さる。ユーザがUI部21を通じて所望の商品画像を選択すると、その商品に関する詳細な情報(商品属性や説明文など)が表示されるようになっている。
【0043】
ピンボードエリア38には、UI部21を通じてユーザにより指定された取り置き商品の画像が表示される。取り置き商品とは、興味はあるけれども購入するかどうかをまだ迷っているときにユーザにより指定される商品のことであり、ショッピングカートにはまだ入れられていない状態の商品である。商品の取り置きは、例えば、商品一覧エリア37に表示された商品一覧の中から所望の商品画像をピンボードエリア38にドラッグ操作することによって行うことが可能である。
【0044】
自由発言エリア39は、ユーザがUI部21を通じて所望のテキスト文を自由発言として入力するためのエリアである。この自由発言エリア39にテキスト文を入力して発言ボタン40を押下することにより、商品情報提供システム100に対してユーザの自由発言を入力することが可能である。
【0045】
図3に示す対話画面には、以上説明した各エリアの他に、タイムラインボタン41およびカートボタン42が表示されている。タイムラインボタン41を押下すると、それまでに行われた対話応答のログがタイムラインとして一覧表示されるようになっている。
【0046】
図4は、当該タイムラインが表示された状態の画面例を示す図である。
図4に示す例では、対話エリア31に表示された過去の対話文33が時系列で表示されている。各々の対話文33にはリプレイボタン43が表示されている。ユーザがこのリプレイボタン43を押下すると、その対話文が対話エリア31に再び表示されるようになっている。
【0047】
カートボタン42は、商品をショッピングカートに入れることを指示するためのボタンである。本実施形態では、ピンボードエリア38に商品画像が貼り付けられている状態でカートボタン42を押下することにより、ピンボードエリア38上の商品をショッピングカードに移すことができるようになっている。
【0048】
図1に戻って説明を続ける。対話文提供部3は、対話テンプレート記憶部1に記憶されている複数種類の対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、UI部21を通じてユーザに提供する。
図2で説明したように、本実施形態では、対話テンプレートDBの対話シナリオIDに従って、複数種類の対話テンプレートを順次読み出して対話文を生成し、ユーザに提供する。対話文のユーザに対する提示は、
図3に示したように対話画面に表示させた仮想店員32からの発言として行うようにする。
【0049】
定型対話のテンプレートを使用する場合、対話文提供部3は、対話テンプレート記憶部1の対話テンプレートDBから取得した対話テキストをそのまま対話文33として生成し、仮想店員32が発言する態様でユーザに提示する。このとき対話文提供部3は、対話テンプレートDBの対話テキストと同じレコードから取得した応答テキストを用いて回答文34を生成し、対話文33と一緒に回答の選択肢としてユーザに提示する。
【0050】
そして、ユーザが回答文34の何れかを押下して対話に応答した場合、対話文提供部3は、対話テンプレートDBの同じレコードから取得した応答への応答テキストを用いて、仮想店員32が応答として発言する対話文33を生成し、ユーザに提示する。これで1セットの対話(1レコードの対話シナリオIDに関する対話)が終了する。なお、ユーザが何れの回答文34も押下しない場合は、所定時間の経過をもってタイムアウトとし、その対話文33に関する吹き出しを対話エリア31から消去する。
【0051】
また、置換対話のテンプレートを使用する場合、対話文提供部3は、対話テンプレート記憶部1の対話テンプレートDBから取得した対話テキストに埋め込まれている置換対象タグ[n]の部分を、対話文提供部3が生成した挿入キーワードで置換することによって対話文33を生成し、仮想店員32が発言する態様でユーザに提示する。このとき対話文提供部3は、対話テンプレートDBの対話テキストと同じレコードから取得した応答テキストを用いて回答文34を生成し、対話文33と一緒に回答の選択肢としてユーザに提示する。ユーザが回答文34の何れかを押下して対話に応答した場合、または対話に応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。
【0052】
対話文提供部3が置換対象タグ[n]に対する挿入キーワードを生成する方法として、本実施形態では5つの方法を用意している。対話文提供部3が1つの対話文を生成する際は、5つの方法の中から何れか1つを任意に選択して実施する。あるいは、個々の対話シナリオIDに対して、どの生成方法を適用するかをあらかじめ定めておいてもよい。
【0053】
置換対象タグ[n]に対する挿入キーワードを生成する5つの方法とは、(1)SNSからのプロフィール取得、(2)SNSからの特徴語取得、(3)ピンボードからの共通特徴取得、(4)SNSからのプロフィール取得と関連キーワードへの変換、(5)現在設定中の検索キーワードの関連キーワードへの変換、の5つである。以下、これらを1つずつ説明する。
【0054】
(1)SNSからのプロフィール取得
対話文提供部3は、ユーザが使用しているSNSサーバ300にインターネットを介してアクセスし、当該SNSサーバ300に登録されているプロフィール情報からユーザの興味情報を抽出し、当該興味情報から挿入キーワードを生成する。例えば、対話文提供部3は、Facebook graph API(Facebookは登録商標。以下同様)でユーザの“interests”や“activities”を興味情報として取得し、その中からランダムに取得した1つのキーワードを置換対象タグ[n]に対する挿入キーワードとして生成する。
【0055】
(2)SNSからの特徴語取得
対話文提供部3は、ユーザが使用しているSNSサーバ300にインターネットを介してアクセスし、当該SNSサーバ300から直近の発言情報を抽出し、当該発言情報から挿入キーワードを生成する。例えば、対話文提供部3は、Facebook graph APIでユーザの直近の発言情報(テキスト文)をm件取得して結合する。そして、結合したテキスト文から特徴語を抽出し、これを置換対象タグ[n]に対する挿入キーワードとして生成する。
【0056】
ここで、テキスト文から抽出する特徴語とは、例えば、そのテキスト文の中に頻出する単語である。あるいは、そのテキスト文の中で使われている単語のうち他のユーザがあまり使用していない単語である。後者の場合、例えば、複数のユーザに対する対話文を生成する際に頻出単語として抽出した特徴語をデータベースとして保存しておく。そして、このデータベースに登録されていない単語を、他のユーザがあまり使用していない特徴語としてテキスト文から抽出する。あるいは、多くのドキュメントに出現する語(一般的な語)は値が低くなり、特定のドキュメントにしか出現しない語は値が高くなるような指標を用いて、その指標がある閾値より大きいものを特徴語として抽出するようにしてもよい。
【0057】
(3)ピンボードからの共通特徴取得
対話文提供部3は、ピンボードエリア38に取り置きされた商品の説明文を商品情報記憶部2から取得し、当該商品の説明文から挿入キーワードを生成する。例えば、対話文提供部3は、ピンボードエリア38に取り置きされた商品の説明テキスト文を全て結合する。そして、結合したテキスト文から特徴語を抽出し、これを置換対象タグ[n]に対する挿入キーワードとして生成する。ここで、テキスト文から抽出する特徴語は、上述の特徴語と同様である。
【0058】
(4)SNSからのプロフィール取得と関連キーワードへの変換
この方法では、関連キーワード記憶部8およびキーワード変換部9を使用する。関連キーワード記憶部8は、一のキーワードとそれに対する関連キーワードとを対応付けて関連キーワード情報として記憶する。ここで、1つのキーワードに対して1つの関連キーワードを対応付けてもよいし、1つのキーワードに対して複数の関連キーワードを対応付けてもよい。
【0059】
キーワード変換部9は、一のキーワードを入力して、それを関連キーワード記憶部8に記憶されている関連キーワード情報に基づいて関連キーワードに変換する。ここで、関連キーワード記憶部8の関連キーワード情報において、キーワード変換部9に入力された1つのキーワードに対して複数の関連キーワードが対応付けられている場合、キーワード変換部9は複数の関連キーワードの中から何れか1つをランダムに選択する。
【0060】
対話文提供部3は、(1)SNSからのプロフィール取得のところで説明した方法によって、SNSサーバ300からユーザの興味情報を取得してキーワードを生成する。さらに、対話文提供部3は、当該生成したキーワードをキーワード変換部9に供給してキーワード変換を実行させ、キーワード変換部9より出力された関連キーワードを最終的に置換対象タグ[n]に対する挿入キーワードとして生成する。
【0061】
ここでは、まずSNSサーバ300からのプロフィール取得によってキーワードを生成し、それを関連キーワードに変換する例について説明したが、本発明はこれに限定されない。例えば、(2)SNSからの特徴語取得、または(3)ピンボードからの共通特徴取得のとこで説明した方法によってキーワードを生成し、それを関連キーワードに変換することによって挿入キーワードを生成するようにしてもよい。
【0062】
(5)現在設定中の検索キーワードの関連キーワードへの変換
対話文提供部3は、検索条件エリア35に設定されている1以上の検索キーワードの中から何れか1つをランダムに抽出する。そして、抽出した検索キーワードをキーワード変換部9に供給してキーワード変換を実行させ、キーワード変換部9より出力された関連キーワードを置換対象タグ[n]に対する挿入キーワードとして生成する。なお、検索条件エリア35に設定されている1以上の検索キーワードは、ユーザ情報記憶部7に記憶されている(詳しくは後述する)。
【0063】
対話文提供部3は、自由発言のテンプレートを使用する場合、対話テンプレート記憶部1の対話テンプレートDBから取得した対話テキストをそのまま対話文33として生成し、仮想店員32が発言する態様でユーザに提示する。このときも対話文提供部3は、対話テンプレートDBの対話テキストと同じレコードから取得した応答テキストを用いて回答文34を生成し、対話文33と一緒に回答の選択肢としてユーザに提示する。
【0064】
ここで、ユーザが肯定の回答文34を押下して対話に応答した場合、対話文提供部3は、その後ユーザにより入力された自由発言のテキスト文からキーワードを抽出し、抽出したキーワードを置換対象タグ[n]に対する挿入キーワードとして用いることにより、置換対話の対話文33を生成して提供する。一方、自由発言を促す対話に対してユーザが否定の回答文34を押下して応答した場合、および当該対話に対して何ら応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。
【0065】
なお、テキスト文からのキーワードの抽出は、例えば以下のようにして行う。すなわち、対話文提供部3は、自由発言として入力されたテキスト文を形態素解析してあらかじめ設定した品詞(例えば、名詞および形容詞)を抽出し、その中から何れか1つまたは複数個をランダムに選択して検索キーワードとする。
【0066】
また、対話文提供部3は、視点変換のテンプレートを使用する場合、対話テンプレート記憶部1の対話テンプレートDBから取得した対話テキストをそのまま対話文33として生成し、仮想店員32が発言する態様でユーザに提示する。このとき対話文提供部3は、対話テンプレートDBの対話テキストと同じレコードから取得した応答テキストを用いて回答文34を生成し、対話文33と一緒に回答の選択肢としてユーザに提示する。ユーザが回答文34の何れかを押下して対話に応答した場合、または対話に応答しなかった場合の処理については、定型対話のテンプレートを使用する場合と同様である。
【0067】
キーワード生成部4は、対話文提供部3により提供された対話文に対してユーザが肯定の応答をした場合に、当該対話文から検索キーワードを生成する(その生成方法の詳細は後述する)。そして、検索キーワードを生成した旨を商品提示部5に通知するとともに、ユーザ情報管理部6を介してユーザ情報記憶部7に検索キーワードを記憶させる。商品提示部5は、キーワード生成部4により生成された検索キーワードを用いて商品情報記憶部2を検索し、検索キーワードに合致する商品を抽出してユーザに提示する。
【0068】
本実施形態では、商品提示部5は、繰り返しの対話を通じてキーワード生成部4により順次生成されて検索条件エリア35に設定された1以上の検索キーワードを用いたOR検索により、商品情報記憶部2の中から当該OR検索の検索条件に合致する商品を抽出してユーザに提示する。すなわち、検索条件に合致した商品を商品一覧エリア37に表示させる。
【0069】
上述したように、キーワード生成部4により生成された検索キーワードは、ユーザ情報管理部6を介してユーザ情報記憶部7に順次記憶される(つまり、ユーザ情報記憶部7は、特許請求の範囲の検索キーワード記憶部に相当等する)。商品提示部5は、キーワード生成部4により新たに1つの検索キーワードが生成されたときに、その新たな検索キーワードも含めてユーザ情報記憶部7に記憶された1以上の検索キーワードを用いてOR検索を行い、その検索でヒットした商品を商品一覧エリア37に表示させる。
【0070】
すなわち、対話文提供部3により提供された何らかの対話文に対してユーザが肯定の応答をすると、当該対話文から1つの検索キーワードがキーワード生成部4により生成されて、検索条件エリア35に追加設定される(ユーザ情報記憶部7に追加登録される)。そして、当該設定された1以上の検索キーワードを用いたOR検索が商品提示部5により実行されて、商品一覧エリア37に一覧表示される。このように、本実施形態では、対話文に対してユーザが肯定の応答をすると、商品一覧エリア37の表示内容がダイナミックに変わるようになっている。
【0071】
ここで、キーワード生成部4による検索キーワードの生成方法について詳しく説明する。例えば、対話文提供部3により定型対話のテンプレートから生成された対話文に対してユーザが肯定の応答をした場合、キーワード生成部4は、当該記定型対話のテンプレートによりあらかじめ定められたキーワード(対話テンプレートDBに登録されているもの)を抽出し、これを検索キーワードとして生成する。
【0072】
また、対話文提供部3により置換対話のテンプレートから生成された対話文に対してユーザが肯定の応答をした場合、キーワード生成部4は、対話文提供部3が生成して対話文の文言中に挿入した挿入キーワードを検索キーワードとして生成する。
【0073】
また、キーワード生成部4は、対話文提供部3により自由発言のテンプレートから生成された対話文に対してユーザが肯定の応答をしてテキスト文を入力した場合には、当該テキスト文の中から検索キーワードを生成する。具体的には、上述したように、対話文提供部3によってテキスト文の中からキーワードが抽出されて置換対話の対話文が改めて生成され、その対話文に対してユーザが肯定の応答をしたときに、置換対話の対話文に挿入されたキーワード(つまり、テキスト文から抽出されたキーワード)を検索キーワードとして生成する。
【0074】
また、キーワード生成部4は、対話文提供部3により視点変換のテンプレートから生成された対話文に対してユーザが肯定の応答をした場合には、検索条件エリア35に設定されている(つまり、ユーザ情報記憶部7に記憶されている)1以上の検索キーワードを用いたOR検索とは異なる検索条件を生成する。この場合、新たな検索キーワードは追加しない。
【0075】
上述したように、ユーザ情報記憶部7に記憶されている1以上の検索キーワードを用いたOR検索が、通常の検索条件として設定されている。これに対して、視点変換の対話文に対してユーザが肯定の応答をした場合、キーワード生成部4は、上述のOR検索とは異なる一過性の検索条件を生成する。例えば、ユーザ情報記憶部7に記憶されている1以上の検索キーワードに設定されている重みを任意に変更した検索条件を生成する。あるいは、ピンボードエリア38に取り置きされた商品の説明文から特徴語を抽出し、抽出した特徴語を一過性の検索キーワードとして生成するようにしてもよい。
【0076】
キーワード生成部4により一過性の検索条件が生成された場合、商品提示部5はその一過性の検索条件に従って商品情報記憶部2を検索し、その検索条件に合致する商品を抽出して商品一覧エリア37に表示させる。ただし、この場合はあくまでも一過性の検索なので、商品一覧エリア37に表示中の商品一覧を更新するのではなく、表示中の商品一覧の上に一過性の商品一覧をオーバーレイ表示したり、別画面を立ち上げてポップアップ表示したりするのが好ましい。また、ここで表示する商品は、一過性の検索条件に合致する商品の中から更に特定したk個(例えば、k=3)の商品であるとする。
【0077】
ユーザ情報管理部6は、本実施形態の商品情報提供システム100を利用するユーザの情報をユーザ情報記憶部7に記憶させて管理する。本実施形態の商品情報提供システム100は、ユーザがUI部21を通じてログインをすることによって利用可能となる。ユーザ情報管理部6は、そのログインに必要なユーザIDやパスワードを管理する。
【0078】
また、ユーザ情報管理部6は、キーワード生成部4により生成される検索キーワードをユーザIDに関連付けてユーザ情報記憶部7に記憶させる。また、UI部21を通じて検索キーワードの削除が行われた場合、ユーザ情報管理部6はユーザ情報記憶部7から該当する検索キーワードを削除する。また、UI部21を通じて検索キーワードに対する重みの設定が変更された場合、ユーザ情報管理部6は変更された重みをユーザ情報記憶部7に記憶させる。
【0079】
また、UI部21を通じて所望の商品がピンボードエリア38に取り置きされた場合、ユーザ情報管理部6は、その取り置きされた商品の情報を商品情報記憶部2から取得し、ユーザIDに関連付けてユーザ情報記憶部7に記憶させる。また、UI部21を通じてカートボタン42が押下された場合、ユーザ情報管理部6は、ピンボードエリア38に取り置きされている商品をショッピングカートに移すようにユーザ情報記憶部7の情報を更新する。
【0080】
対話ログ管理部10は、対話文提供部3により提示された対話文と、その対話文に対してUI部21を通じて行われたユーザによる応答と、その対話文からキーワード生成部4により生成された検索キーワードとを対応付けて対話応答ログとして対話ログ記憶部11に記憶させる。
図4を用いて上述したように、対話ログ記憶部11に記憶された対話応答ログは対話文提供部3により利用され、タイムラインボタン41の押下により画面表示させることができ、リプレイボタン43の押下により対話文の再表示が可能となっている。
【0081】
なお、タイムラインには、ユーザが何ら応答しなかった対話文33を表示させることも可能である。例えば、商品情報提供システム100の対話ログ記憶部11に記憶されている対話応答ログを利用せずに、クライアント端末200側のキャッシュメモリに対話の履歴を保持し、それを利用してライムラインに対話文33を表示する。
【0082】
図5は、対話ログ記憶部11に記憶される対話応答ログDBの一例を示す図である。
図5に示すように、対話応答ログDBは、対話ID、対話シナリオID、ユーザID、応答種別、パラメータ1、パラメータ2を項目として含んでいる。このうち、対話IDは、対話応答ログDBを構成する各レコードに対して付与される昇順の番号である。
【0083】
対話シナリオIDは、
図2に示したものと同じである。ユーザIDは、ユーザを一意に特定するためのログインIDである。応答種別は、対話文に対してユーザが肯定の応答をしたのか否定の応答をしたのかを種別を表すものである。本実施形態では、対話文に対してユーザが肯定も否定もせずにそのまま無視した場合(タイムアウトとなった場合)、その対話文は対話応答ログに登録されない。
【0084】
パラメータ1およびパラメータ2は、その対話文に関連した検索キーワードである。例えば、定型対話の場合は対話テンプレートDBに記憶されている検索キーワードであり、これがパラメータ1として記憶される。また、置換対話の場合は対話文提供部3により生成された挿入キーワードであり、これがパラメータ1として記憶される。ただし、関連キーワードへのキーワード変換により挿入キーワードが生成された場合は、変換前の元キーワードがパラメータ1として、変換後の関連キーワードがパラメータ2として記憶される。
【0085】
上述したキーワード生成部4は、対話ログ記憶部11に記憶された対話応答ログDBを利用して検索キーワードの生成を制御している。すなわち、キーワード生成部4は、例えば所定の時間間隔毎にバッチ処理を起動させ、対話応答ログDBに記憶されている対話文について、対話シナリオIDごとに肯定の応答数と否定の応答数とを集計する。そして、肯定の応答数に比べて否定の応答数が所定数以上多くなった場合、その対話文に対応付けられた検索キーワードは以降の対話の中で検索キーワードとして生成しないようにする。
【0086】
図6は、対話応答ログDBの集計結果の一例を示す図である。
図6の例では、対話シナリオID“XXX1”の対話文に対して肯定の応答数が4、否定の応答数が2となっている。一方、対話シナリオID“XXX2”の対話文に対して肯定の応答数が3、否定の応答数が15となっている。
【0087】
前者の場合、“XXX1”の対話文は肯定の応答数が否定の応答数を上回っているので、バッチ処理が行われた以降もパラメータ1とパラメータ2とのセットで検索キーワードの生成が行われる。一方、後者の場合、“XXX2”の対話文は肯定の応答数に比べて否定の応答数が所定数j(例えば、j=5)以上多くなっているので、“XXX2”の対話文においてそれ以降はパラメータ1の“犬”というキーワードは検索キーワードとして生成しない。
【0088】
次に、上記のように構成した本実施形態による商品情報提供システム100およびクライアント端末200の動作について説明する。
図7は、クライアント端末200の動作例を示すフローチャートである。また、
図8〜
図11は、商品情報提供システム100の動作例を示すフローチャートである。なお、
図7に示すフローチャートは、ユーザがクライアント端末200から商品情報提供システム100のサーバ装置にアクセスしてログインをしたときに開始する。
【0089】
まず、
図7を用いてクライアント端末200の動作を説明する。まず、クライアント端末200は、商品情報提供システム100に対して対話取得API(Application Programming Interface)の呼び出しを行う(ステップS1)。この対話取得APIの呼び出しを商品情報提供システム100が受け取ると、所定のシナリオに従って対話文33およびその対話文33に対する応答の選択肢となる回答文34が商品情報提供システム100にて生成され、クライアント端末200に送信される。クライアント端末200では、UI部21を通じて、商品情報提供システム100から受信した対話文33および回答文34を、対話エリア31において仮想店員32の吹き出し中に表示させる(ステップS2)。
【0090】
クライアント端末200は、この対話文33に対してユーザが肯定の応答をしたか否かを判定する(ステップS3)。ここでは、UI部21を通じて肯定の回答文34を選択する操作が行われたか否かを判定する。ユーザにより肯定の応答が行われた場合、クライアント端末200は、その応答が、自由発言を促す対話文33に対するものであったか否かを判定する(ステップS4)。
【0091】
ここで、自由発言を促す対話文33に対する肯定の応答であった場合、クライアント端末200は、自由発言エリア39をハイライトさせてユーザに自由発言の入力を促す。その後、ユーザが自由発言エリア39にテキスト文を入力して発言ボタン40を押下したタイミングで、クライアント端末200は、商品情報提供システム100に対して置換対話の対話取得APIの呼び出しを行う(ステップS5)。
【0092】
この対話取得APIの呼び出しを商品情報提供システム100が受け取ると、ユーザにより入力された自由発言のテキスト文からキーワードが抽出される。そして、そのキーワードを挿入キーワードとして置換対話の対話文33および回答文34が生成され、クライアント端末200に送信される。その後、処理はステップS2に戻り、クライアント端末200では、UI部21を通じて、商品情報提供システム100から受信した置換対話の対話文33および回答文34が、対話エリア31において仮想店員32の吹き出し中に表示される。
【0093】
一方、ステップS4において、対話文33に対してユーザにより行われた肯定の応答が、自由発言を促す対話文33に対するものではないと判定された場合、クライアント端末200は、商品情報提供システム100に対して商品検索APIおよび対話応答ログAPIの呼び出しを行う(ステップS6)。
【0094】
商品検索APIの呼び出しを商品情報提供システム100が受け取ると、商品情報提供システム100にて商品の検索が行われ、その検索結果がクライアント端末200に送信される。クライアント端末200では、商品情報提供システム100から送られてくる検索結果をUI部21を通じて表示させる(ステップS7)。そして、処理はステップS13に進む。
【0095】
このステップS7において、商品情報提供システム100から受信した検索結果が、定型対話または置換対話の対話文に対してユーザが肯定の応答をした結果として送られてきたものである場合は、商品一覧エリア37に表示中の商品一覧が更新して表示される。一方、検索結果が、視点変換の対話文に対してユーザが肯定の応答をした結果として送られてきたもの(一過性の商品一覧)である場合は、商品一覧エリア37に表示中の商品一覧の上に、一過性の商品一覧がオーバーレイ表示される。
【0096】
上記ステップS3において、ユーザにより肯定の応答が行われていないと判断した場合、クライアント端末200は、対話文33に対してユーザが否定の応答をしたか否か、つまりUI部21を通じて否定の回答文34を選択する操作が行われたか否かを更に判定する(ステップS8)。ユーザにより否定の応答が行われた場合、クライアント端末200は、商品情報提供システム100に対して対話応答ログAPIの呼び出しを行う(ステップS9)。そして、処理はステップS13に進む。
【0097】
一方、ユーザにより否定の応答も行われていないと判断した場合、クライアント端末200は、ステップS2で対話エリア31に対話文を表示してから、ユーザによる何の応答もなく所定時間のタイムアウトが生じたか否かを判定する(ステップS10)。タイムアウトが生じた場合、処理はステップS1に戻る。
【0098】
一方、タイムアウトが生じていない場合、クライアント端末200は、UI部21を通じてユーザによりその他の操作が行われたか否かを判定する(ステップS11)。その他の操作とは、商品一覧エリア37の中から何れかの商品をピンボードエリア38に取り置きする操作、タイムラインボタン41を押下して過去の対話応答ログを表示させる操作、タイムライン上でリプレイボタン43を押下して対話文を再表示させる操作、編集ボタン36を押下して検索キーワードを編集する操作、カートボタン42を押下してピンボードエリア38に取り置きされている商品をショッピングカートに移動させる操作などである。
【0099】
これらの操作のうち何れかの操作が行われた場合、クライアント端末200は、商品情報提供システム100に対してその操作内容に応じたAPIの呼び出しを行う(ステップS12)。そして、処理はステップS13に進む。ステップS13において、クライアント端末200は、ログオフの操作が行われたか否かを判定する。ログオフの操作が行われていない場合、所定はステップS1に戻る。一方、ログオフの操作が行われた場合、
図7に示すフローチャートの処理は終了する。
【0100】
次に、
図8〜
図11を用いて商品情報提供システム100の動作を説明する。
図8は、対話取得APIの呼び出しが行われたときの動作例を示すフローチャートである。まず、対話文提供部3は、対話テンプレート記憶部1に記憶されている対話テンプレートDBから1つのレコード(対話テンプレート)を所定のシナリオに沿って読み出す(ステップS21)。
【0101】
そして、対話文提供部3は、読み出した対話テンプレートが置換対話のテンプレートか否かを判定する(ステップS22)。読み出した対話テンプレートが置換対話のテンプレートであった場合、対話文提供部3は、置換対話のテンプレートの対話テキストに埋め込まれている置換対象タグ[n]に対する挿入キーワードを生成する(ステップS23)。
【0102】
上述したように、挿入キーワードを生成する方法は5つ用意されているので、対話文提供部3はこの5つの方法の中から何れか1つを任意に選択して挿入キーワードを生成する。あるいは、ステップS21で読み出したレコードの対話シナリオIDに対してあらかじめ定めされた方法を適用して挿入キーワードを生成する。
【0103】
続いて、対話文提供部3は、ステップS21で読み出した対話テンプレートの対話テキストに埋め込まれている置換対象タグ[n]の部分を、ステップS22で生成した挿入キーワードで置換することによって対話文を生成する(ステップS24)。そして、このようにして生成した対話文と、同じ対話テンプレートの応答テキストを用いて生成した回答文とを、対話取得APIの呼び出しに対するレスポンスとしてクライアント端末200に送信する(ステップS25)。これにより、
図8に示すフローチャートの処理は終了する。
【0104】
上記ステップS22において、ステップS21で読み出した対話テンプレートが置換対話のテンプレートではないと対話文提供部3にて判断した場合、対話文提供部3は、その対話テンプレートの対話テキストをそのまま対話文として生成するとともに、応答テキストを用いて回答文を生成し、対話取得APIの呼び出しに対するレスポンスとしてクライアント端末200に送信する(ステップS25)。これにより、
図8に示すフローチャートの処理は終了する。
【0105】
図9は、商品検索APIの呼び出しが行われたときの動作例を示すフローチャートである。まず、キーワード生成部4は、商品検索APIの呼び出しが、視点変換の対話文に対してユーザが肯定の応答をした結果としてクライアント端末200から送られてきたものか否かを判定する(ステップS31)。
【0106】
ここで、商品検索APIの呼び出しが視点変換の対話文に基づくものでない場合、つまり、定型対話または置換対話に基づくものである場合、キーワード生成部4は、対話文から検索キーワードを生成してユーザ情報記憶部7に記憶させることにより、検索条件エリア35に現在設定中の検索キーワードに新たな検索キーワードを1つ追加する(ステップS32)。
【0107】
そして、商品提示部5は、追加された検索キーワードを含めて検索条件エリア35に設定された1以上の検索キーワードを用いたOR検索により、商品情報記憶部2の中から当該OR検索の検索条件に合致する商品を抽出する(ステップS33)。さらに、商品提示部5は、以上の検索により抽出した商品の一覧を、商品検索APIの呼び出しに対するレスポンスとしてクライアント端末200に送信する(ステップS34)。これにより、
図9に示すフローチャートの処理は終了する。
【0108】
上記ステップS31において、商品検索APIの呼び出しが視点変換の対話文に基づくものであるとキーワード生成部4にて判断した場合、キーワード生成部4は、検索条件エリア35に設定されている(つまり、ユーザ情報記憶部7に記憶されている)1以上の検索キーワードを用いたOR検索とは異なる一過性の検索条件を生成する(ステップS35)。
【0109】
そして、商品提示部5は、キーワード生成部4により生成された一過性の検索条件に合致する商品を商品情報記憶部2の中から抽出する(ステップS36)。さらに、商品提示部5は、以上の検索により抽出したk個の商品を、商品検索APIの呼び出しに対するレスポンスとしてクライアント端末200に送信する(ステップS37)。これにより、
図9に示すフローチャートの処理は終了する。
【0110】
図10は、対話応答ログAPIの呼び出しが行われたときの動作例を示すフローチャートである。対話応答ログAPIの呼び出しが行われた場合、対話ログ管理部10は、
図5のように、対話文提供部3により提示された対話文の対話シナリオIDと、その対話文に対してUI部21を通じて行われたユーザによる肯定または否定の応答の種別と、キーワード生成部4により生成された検索キーワード(パラメータ1,2)とを対応付けて、対話応答ログとして対話ログ記憶部11に記憶させる(ステップS41)。これにより、
図10に示すフローチャートの処理は終了する。
【0111】
図11は、キーワード生成部4により所定の時間間隔毎に実行されるバッチ処理の動作例を示すフローチャートである。バッチ処理が起動すると、キーワード生成部4は、対話ログ記憶部11の対話応答ログDBに記憶されている各々の対話文について、対話シナリオIDごとに肯定の応答数と否定の応答数とを集計する(ステップS51)。
【0112】
そして、キーワード生成部4は、肯定の応答数に比べて否定の応答数が所定数j以上多くなっている対話シナリオIDが存在するか否かを判定する(ステップS52)。そのような対話シナリオIDが存在する場合、キーワード生成部4は、その対話シナリオIDのレコードを記憶することにより、当該対話シナリオIDに対応付けてパラメータ1,2として記憶されている検索キーワードは以降の対話の中で検索キーワードとして生成しないようにする(ステップS53)。これにより、
図11に示すフローチャートの処理は終了する。
【0113】
以上詳しく説明したように、本実施形態の商品情報提供システム100では、定型対話、置換対話、自由発言、視点変換など複数種類の対話テンプレートを所定のシナリオに沿って順次読み出して対話文を生成し、ユーザに提供する。ここで、置換対話の対話文を提供する際には、5つの生成方法のうち何れかを適用して様々な観点から挿入キーワードを生成し、対話文の中に組み込んでいる。
【0114】
そして、定型対話、置換対話の対話文に対してユーザが肯定の応答をした場合(自由発言の対話文に対して肯定の応答をした上で入力したテキスト文中のキーワードから生成された置換対話の対話文に対してユーザが肯定の応答をした場合を含む)、当該対話文から検索キーワードを生成して商品情報記憶部2を検索し、当該検索キーワードに合致する商品を抽出してユーザに商品一覧として提示するようにしている。また、視点変換の対話文に対してユーザが肯定の応答をした場合には、一過性の検索条件を生成して商品情報記憶部2を検索し、当該一過性の検索条件に合致する商品を抽出してユーザに提示するようにしている。
【0115】
このように構成した本実施形態の商品情報提供システム100によれば、システム側に設定された所定のアルゴリズムに基づいてユーザの嗜好性をシステムが勝手に推定した結果として商品が提案されるのではなく、商品情報提供システム100とユーザとの間の繰り返しの対話の中でユーザが肯定の応答をしたときの対話文から検索キーワードが生成され、当該検索キーワードに合致する商品がユーザに提案されることとなる。つまり、ユーザが肯定の応答をすることによって興味を示した事柄に沿った商品が提案されることとなるので、提案される商品はユーザにとって好みの商品や興味を引く商品である可能性が高くなる。
【0116】
また、このような商品の提案は、複数種類の対話テンプレートを利用した様々な内容の対話を通じて行われる。また、置換対話の場合は、商品検索のための検索キーワード(置換対象タグ[n]に対する挿入キーワード)も様々な観点から生成される。そのため、ユーザの買いたい商品が当初からはっきりしていない場合などでも、商品情報提供システム100とユーザとの対話を通じてよりユーザの嗜好に合った商品を提案することができる。
【0117】
さらに、本実施形態では、SNSのプロフィール情報や発言情報などから抽出したキーワードのみならず、それに対する関連キーワードも利用して検索キーワードが生成され、商品の検索が実行される。これにより、ユーザにとって想定外の良い商品との出会いを促すことができる。つまり、ユーザにとって関心度が高く、かつ、ユーザ自身では辿り着けない商品の提案も行うことができる。
【0118】
以上により、ユーザは、買いたい商品を明確に決めずにモールを歩きながら好みの商品を見つけるような感覚の買い物を、本実施形態の商品情報提供システム100が提供するショッピングサイト上で実現することができる。
【0119】
なお、上記実施形態では、対話テンプレート記憶部1が定型対話、置換対話、自由発言、視点変換の4種類の対話テンプレートを備える構成について説明したが、本発明はこれに限定されない。すなわち、この中の何れか2種類あるいは3種類の対話テンプレートを備える構成であってもよい。ただし、4種類を用いるのが最も好ましい。
【0120】
また、上記実施形態では、置換対話の対話テンプレートを用いる場合に、置換対象タグ[n]に対する挿入キーワードを生成する方法として5つの方法を用いる構成について説明したが、本発明はこれに限定されない。すなわち、この中の少なくとも1つを用いる構成であってもよい。ただし、5つの方法を適宜用いるのが最も好ましい。
【0121】
また、上記実施形態では、自由発言の対話テンプレートを用いる場合、ユーザが肯定の応答をしてテキスト文を入力したときに、そのテキスト文から抽出したキーワードを用いて置換対話の対話文を生成して提供し、ユーザがこれに肯定の応答をした場合に検索キーワードを生成する例について説明したが、本発明はこれに限定されない。例えば、置換対話の対話文は生成せず、自由発言のテキスト文から抽出したキーワードをそのまま検索キーワードとして生成するようにしてもよい。
【0122】
また、上記実施形態では、検索条件エリア35に設定中の検索キーワードをユーザ情報記憶部7に記憶する例について説明したが、本発明はこれに限定されない。例えば、ユーザ情報記憶部7とは別に、検索キーワードを専用で記憶する検索キーワード記憶部を設けるようにしてもよい。または、ユーザ毎に設定されている検索キーワードをユーザのクライアント端末200に記憶させ、その検索キーワードを商品情報提供システム100がクライアント端末200から取得して利用するようにしてもよい。
【0123】
また、上記実施形態では、関連キーワード記憶部8およびキーワード変換部9を商品情報提供システム100のサーバ装置が備える構成について説明したが、これとは別のサーバ装置が備える構成としてもよい。
【0124】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。