以下、本開示により開示する実施の形態(以下、本実施の形態という)について説明する。なお、説明は以下の順序で行う。
1.本実施の形態(インターネットサイト上で商品を購入するときの一例)
2.変形例
<1.本実施の形態>
[通信システム1の構成例]
図1は、本実施の形態である通信システム1の構成例を示している。
この通信システム1は、ユーザ端末211乃至21N、インターネット等のネットワーク22、ショップサーバ231乃至23M、及び識別器共有サーバ24から構成される。
なお、以下において、ユーザ端末211乃至21Nをそれぞれ区別する必要がない場合、単に、ユーザ端末21nという。また、ショップサーバ231乃至23Mをそれぞれ区別する必要がない場合、単に、ショップサーバ23mという。
ユーザ端末21nは、ネットワーク22を介してショップサーバ23mにアクセスしたことに対応して、ショップサーバ23mからのGUI(Graphical User Interface)情報を受信する。そして、ユーザ端末21nは、ショップサーバ23mからのGUI情報に基づいて、ショップサーバ23mにおいて購入可能な商品(例えば、洋服等)の各パーツをそれぞれ表すパーツ画像を表示させる。なお、GUI情報とは、ユーザ端末21nによる表示を制御するための情報を表す。
また、ユーザ端末21nは、ユーザによるフィードバック操作に応じて、各パーツに対するユーザの嗜好を表すパーツ嗜好情報を生成し、ネットワーク22を介してショップサーバ23mにフィードバックさせる。なお、ユーザ端末21nの詳細は、図3乃至図6を参照して後述する。
ショップサーバ23mは、例えば、商品を販売するインターネットショップとして機能するサーバである。ショップサーバ23mは、ユーザ端末21nからのアクセスに応じて、例えば、販売する複数の商品毎のパーツ画像を表示させるためのGUI情報を生成し、ネットワーク22を介してユーザ端末21nに供給する。
また、ショップサーバ23mは、例えば、ユーザ端末21nからのパーツ嗜好情報に基づいて、複数の商品の中から、ユーザが所望する商品(例えば、ユーザが購入を望む商品等)を検索する。
すなわち、例えば、ショップサーバ23mは、ユーザ端末21nからのパーツ嗜好情報に基づいて、各商品とユーザの嗜好とが適合するか否かを識別するための識別器を生成し、生成した識別器に基づいて、ユーザが所望する商品を検索する。
そして、ショップサーバ23mは、検索により得られる検索結果を表示させるためのGUI情報を生成し、ネットワーク22を介してユーザ端末21nに供給する。
また、ショップサーバ23mは、例えば、他のショップサーバ23m'との間で識別器を共有する。なお、ショップサーバ23mの詳細は、図7乃至図13を参照して後述する。
識別器共有サーバ24は、ネットワーク22を介して、例えばショップサーバ231乃至23Mと相互に接続されている。ここで、識別器共有サーバ24は、任意のショップサーバ23mの構成部分に含まれるようにすることができる。
識別器共有サーバ24は、例えば、ショップサーバ23mにより生成される識別器を記憶(保持)する。識別器共有サーバ24に記憶される識別器は、適宜、複数のショップサーバ23mの間で共有される。
すなわち、例えば、識別器共有サーバ24は、図2に示されるように、ユーザ端末21nのユーザをそれぞれ一意に識別するためのユーザID毎に、検索対象とされる複数の商品から所望の商品を検索するための識別器を対応付けたテーブル24aを記憶している。
次に、図2は、識別器共有サーバ24に記憶されているテーブル24aの一例を示している。
このテーブル24aには、例えば、第1のユーザを一意に識別するためのユーザID「user1」に、可愛い系のワンピースを専門に販売するショップサーバ23m1において生成された識別器m1、大人系のワンピースを専門に販売するショップサーバ23m2において生成された識別器m2、及び可愛い系のキャミソールを専門に販売するショップサーバ23m3において生成された識別器m3等が対応付けて記憶されている。
また、テーブル24aには、例えば、第1のユーザとは異なる第2のユーザを一意に識別するためのユーザID「user2」に、可愛い系のワンピースを専門に販売するショップサーバ23m1'において生成された識別器m1'、大人系のワンピースを専門に販売するショップサーバ23m2'において生成された識別器m2'、及び可愛い系のキャミソールを専門に販売するショップサーバ23m3'において生成された識別器m3'が対応付けて記憶されている。
識別器m1は、検索対象とされる複数の商品「可愛い系のワンピース」から、第1のユーザが所望する商品を検索するためのものであり、例えば、「可愛い系のワンピース」を専門に販売するショップサーバ23m1及び23m1'の間で共有される。
具体的には、例えば、ショップサーバ23m1又はショップサーバ23m1'は、それぞれ、第1のユーザのユーザ端末21nからアクセスされた場合、識別器共有サーバ24に記憶された識別器m1に基づいて検索を行う。
そして、ショップサーバ23m1又はショップサーバ23m1'は、ユーザ端末21nからのフィードバックに基づいて、新たに識別器を生成した場合、生成した新たな識別器を、ネットワーク22を介して、識別器共有サーバ24に供給し、識別器m1として上書きにより記憶させる。
同様にして、識別器m2は、検索対象とされる複数の商品「大人系のワンピース」から、第1のユーザが所望する商品を検索するためのものであり、例えば、「大人系のワンピース」を専門に販売する複数のショップサーバ23m2及び23m2'の間で共有される。さらに、識別器m3は、検索対象とされる複数の商品「可愛い系のキャミソール」から、第1のユーザが所望する商品を検索するためのものであり、例えば、「可愛い系のキャミソール」を専門に販売する複数のショップサーバ23m3及び23m3'の間で共有される。これらのことは、識別器m1',m2'及びm3'についても同様である。
なお、例えば、ショップサーバ23m1が、ショップサーバ23m1'との間で識別器m1を共有する共有方法については、図12のフローチャートを参照して後述する。また、図2を参照して説明した識別器の共有の他、その他の共有方法については、図13のフローチャートを参照して後述する。
[ユーザ端末21nの構成例]
図3は、ユーザ端末21nの構成例を示している。
このユーザ端末21nは、通信部41、表示制御部42、表示画面43aを有する表示部43、制御部44、操作部45、及び記憶部46から構成される。
通信部41は、ショップサーバ23mからネットワーク22を介して供給されるGUI情報を、表示制御部42に供給する。
また、通信部41は、制御部44からのパーツ嗜好情報を、ネットワーク22を介して、ショップサーバ23mに供給する。
表示制御部42は、通信部41からのGUI情報に基づいて、表示部43の表示画面43aに、商品を購入する際にユーザにより参照される購入画面表示として、例えば、各商品のパーツ画像を表示させる。なお、表示画面43aに表示される購入画面表示の詳細は、図4を参照して後述する。
また、表示制御部42は、制御部44からの制御にしたがって、表示部43の表示画面43aに、ユーザによるフィードバック操作が行われる際に参照されるフィードバック画面表示として、例えば、複数のパーツ画像の他、ユーザからのフィードバック操作を受け付けるためのチェックボックス等を表示させる。なお、表示画面43aに表示されるフィードバック画面表示の詳細は、図5を参照して後述する。
表示部43は、例えばLCD(liquid crystal display)等であり、表示制御部42からの制御にしたがって、複数のパーツ画像やチェックボックス等を、表示画面43aに表示する。
なお、表示部43は、図3に示されるように、ユーザ端末21nの構成部分とされる他、ユーザ端末21nの構成部分に含めずに、独立して設けるようにしてもよい。この場合、ユーザ端末21n内の表示制御部42と、ユーザ端末21nの外部に設けられた表示部43とは、例えばケーブル等により接続される。
制御部44は、例えば、記憶部46に予め記憶されている制御用プログラムを実行することにより、通信部41及び表示制御部42を制御する。また、例えば、制御部44は、操作部45からの操作信号に基づいて、パーツ嗜好情報を生成し、通信部41に供給する。
操作部45は、ユーザにより操作されるボタン等により構成され、例えば、ユーザによるフィードバック操作が行われたことに応じて、そのフィードバック操作に対応する操作信号を、制御部44に供給する。
記憶部46は、制御部44により実行される制御用のプログラム等を予め記憶する。また、例えば、記憶部46は、ユーザ端末21nを使用するユーザのユーザIDや、その他のデータを記憶する。
[表示部43の表示画面の一例]
次に、図4は、商品を購入する際に参照される購入画面表示が表示されたときの表示画面43aの表示例を示している。
この表示画面43aには、後述する適合度軸61及びパーツ軸62に基づいて、商品としての洋服A,B,C,・・・の各パーツがそれぞれ表示された複数のパーツ画像811,812,813,821,822,823,831,832,833,・・・が行列(マトリクス)状に配置される。パーツ画像には、例えば、各パーツを撮像して得られる撮像画像や、その撮像画像を縮小して得られるサムネイル画像等が採用される。
ここで、適合度軸61は、例えば、複数の洋服それぞれと、ユーザの嗜好との適合の程度である対象適合度を、適合順位1,2,3,・・・で表す。この適合順位は、対象適合度が高い程、高くなる。
また、パーツ軸62は、例えば、洋服の各パーツの名称を表す。パーツ軸62には、洋服の購入時に重要視されるパーツの順序で、上から順に、例えば、正面62a、背面62b、及び胸元62cが配置される。なお、パーツの順序は、ユーザ操作に応じて変更可能である。また、各パーツの名称は、ユーザ操作に応じて、追加又は削除することができる。ユーザ操作における名称の追加や削除は、図14を参照して後述する。
図4の表示画面43aにおいて、適合度軸61上の適合順位「1」から図中下方向に、適合順位が1位である洋服Aのパーツ画像811,812,813、及び洋服Aの詳細ボタン101が並んで配置される。なお、詳細ボタン101は、洋服Aの詳細情報(例えば、洋服のサイズや価格等)を表示させる際に操作される。
同様にして、図4の表示画面43aには、例えば、適合度軸61上の適合順位「2」から図中下方向に、適合順位が2位である洋服Bのパーツ画像821,822,823、及び洋服Bの詳細ボタン102が並んで配置され、適合度軸61上の適合順位「3」から図中下方向に、適合順位が3位である洋服Cのパーツ画像831,832,833、及び洋服Cの詳細ボタン103が並んで配置される。
さらに、図4の表示画面43aにおいて、パーツ軸62上の正面62aから図中右方向に、洋服A,B,C,・・・それぞれの正面部分のパーツを表示するパーツ画像811,821,831,・・・が配置される。また、パーツ軸62上の背面62bから図中右方向に、洋服A,B,C,・・・それぞれの背面部分のパーツを表示するパーツ画像812,822,832,・・・が配置される。さらに、パーツ軸62上の胸元62cから図中右方向に、洋服A,B,C,・・・それぞれの胸元部分のパーツを表示するパーツ画像813,823,833,・・・が配置される。
例えば、ユーザは、操作部45を用いて、詳細ボタン101を押下する押下操作を行うことにより、対応する洋服Aの詳細情報を表示させることができる。このことは、詳細ボタン102及び103についても同様である。
また、ユーザは、詳細情報やパーツ画像を参照して、ユーザの嗜好に適合する洋服(例えば、気に入った洋服)を見つけた場合等には、その洋服を購入する手続を、表示画面43a上で行うことができる。
なお、表示画面43aには、図4に示したように、複数のパーツ画像811,812,813,821,822,823,831,832,833,・・・を表示させるようにしたが、パーツ画像の表示方法は、これに限定されない。
すなわち、例えば、表示画面43aには、図4に示される複数のパーツ画像のうち、所定数のパーツ画像のみを表示させるようにしてもよい。この場合、表示画面43aには、表示されていないパーツ画像を表示画面43a上に表示させるために、スクロールバーや、次のパーツ画像を表示させるためのページ送りボタン等が設けられる。
また、例えば、表示画面43aでは、スクロールバーを設けることに代えて、各パーツのパーツ画像毎に、パーツ画像を図中左右方向にスライド(移動)できるようにしてもよい。しかしながら、この場合、パーツ画像をスライドすることにより、例えば、適合度軸61上の適合順位「1」の下に、適合順位が「1」ではないパーツ画像が表示されることが生じ得るため、各パーツ画像毎に、適合度軸61上の適合順位を付加して表示させることが望ましい。
さらに、例えば、表示画面43aには、図4に示されるように、適合度軸61上の適合順位1,2,3,・・・に対応するパーツ画像をすべて表示させる他、適合順位nに対応するパーツ画像のみを表示させるように構成することができる。
また、例えば、表示画面43aには、図4に示されるように、パーツ軸62上の各パーツの名称に対応するパーツ画像をすべて表示させる他、任意のパーツの名称に対応するパーツ画像のみを表示させることができる。
その他、例えば、表示画面43aには、図4に示されるように、適合度軸61及びパーツ軸62を表示させるようにしたが、適合度軸61又はパーツ軸62の少なくとも一方を非表示とするようにしてもよい。
なお、上述したパーツ画像の表示、並びに、適合度軸61及びパーツ軸62の表示は、例えば、ユーザ操作に応じて変更される。
[ユーザによるフィードバック]
次に、図5は、ユーザによるフィードバック操作が行われる際に参照されるフィードバック画面表示が表示されたときの表示画面43aの表示例を示している。
なお、図5の表示画面43aは、図4の表示画面43aと同様に構成される部分については同一の符号を付すようにしたので、それらの説明は適宜省略する。
すなわち、図5の表示画面43aには、各パーツ画像の下に、ユーザのフィードバック操作により操作されるチェックボックスが配置されるとともに、詳細ボタン101乃至103に代えて、図中右下部分に検索ボタン121が配置される他は、図4の表示画面43aと同様に構成される。
パーツ画像811の下には、チェックボックスとして、適合ボックス81a1及び不適合ボックス81b1が配置される。この適合ボックス81a1は、パーツ画像811に表示されたパーツがユーザの嗜好に適合することを示す適合ラベルをパーツ画像811に付加する際に操作される。また、この不適合ボックス81b1は、パーツ画像811に表示されたパーツがユーザの嗜好に適合しないことを示す不適合ラベルをパーツ画像811に付加する際に操作される。
他のパーツ画像についても、パーツ画像811と同様にして、適合ボックス及び不適合ボックスが配置される。
すなわち、例えば、パーツ画像812の下には、適合ボックス81a2及び不適合ボックス81b2が、パーツ画像813の下には、適合ボックス81a3及び不適合ボックス81b3が、それぞれ配置される。また、パーツ画像821の下には、適合ボックス82a1及び不適合ボックス82b1が、パーツ画像822の下には、適合ボックス82a2及び不適合ボックス82b2が、パーツ画像823の下には、適合ボックス82a3及び不適合ボックス82b3が、それぞれ配置される。さらに、パーツ画像831の下には、適合ボックス83a1及び不適合ボックス83b1が、パーツ画像832の下には、適合ボックス83a2及び不適合ボックス83b2が、パーツ画像833の下には、適合ボックス83a3及び不適合ボックス83b3が、それぞれ配置される。
ユーザは、操作部45を用いて、表示画面43aに表示されたパーツ画像上のパーツを対象として、適合ラベル又は不適合ラベルの少なくとも一方を付加するフィードバック操作を行う。
すなわち、例えば、図5に示される場合、ユーザは、パーツ画像812上のパーツ、及びパーツ画像833上のパーツを含むような洋服に興味があり購入したいと思っている。
したがって、ユーザは、図5に示されるように、パーツ画像812の適合ボックス81a2、及びパーツ画像833の適合ボックス83a3に、それぞれ、チェック(レ点)を入れるためのフィードバック操作を行う。
また、例えば、ユーザは、パーツ画像832上のパーツを含むような洋服には興味がなく、購入しようとは思っていない。
したがって、ユーザは、図5に示されるように、パーツ画像832の不適合ボックス83b2に、チェックを入れるためのフィードバック操作を行う。
そして、ユーザは、適合ボックス81a2、適合ボックス83a3、及び不適合ボックス83b2にチェックを入れた状態で、操作部45を用いて、検索ボタン121を押下する押下操作を行う。
操作部45は、ユーザからのフィードバック操作、又はユーザからの押下操作に応じて、それぞれ対応する操作信号を制御部44に供給する。そして、制御部44は、操作部45からの操作信号に基づいて、パーツ画像812及びパーツ画像833に適合ラベルが、パーツ画像832に不適合ラベルが付加されたことを示すパーツ嗜好情報を生成し、通信部41に供給する。通信部41は、制御部44からのパーツ嗜好情報を、ネットワーク22を介してショップサーバ23mに供給する。
ショップサーバ23mでは、通信部41からネットワーク22を介して供給されるパーツ嗜好情報に基づいて、識別器を生成する。そして、ショップサーバ23mは、生成した識別器に基づいて、ユーザが所望する商品(例えば、購入を希望する商品)を検索する。
[ユーザ端末21nの動作説明]
次に、図6のフローチャートを参照して、ユーザ端末21nが行う表示制御処理について説明する。
この表示制御処理は、例えば、ユーザが、操作部45を用いて、インターネットショップとして機能するショップサーバ23mにおいて販売されている商品を表示画面43a上で閲覧するための操作を行ったときに開始される。このとき、制御部44は、操作部45からの操作信号に応じて、記憶部46に記憶されているユーザIDを読み出し、通信部41に供給する。
そして、ステップS1において、通信部41は、制御部44からの制御にしたがって、制御部44からのユーザIDを、ネットワーク22を介して、ショップサーバ23mに送信する。
これに対して、ショップサーバ23mは、通信部41からネットワーク22を介して供給されるユーザIDを用いて、検索対象とされた複数の商品の中から、所望の商品を検索するための識別器(以下、検索対象の識別器ともいう)が、識別器共有サーバ24に存在するか否かを判定する。
ショップサーバ23mは、検索対象の識別器が、識別器共有サーバ24に存在すると判定した場合、検索対象の識別器を用いて検索を行う。そして、ショップサーバ23mは、その検索の結果得られる検索結果を表示するためのGUI情報を生成し、ネットワーク22を介して通信部41に送信する。
また、ショップサーバ23mは、検索対象の識別器が、識別器共有サーバ24に存在しないと判定した場合、商品を検索する際に用いる検索キーの送信を要求するリクエスト信号を、ネットワーク22を介して通信部41に送信する。
ステップS2において、通信部41は、ユーザIDを送信したことに対応して、検索キーの送信を要求されたか否か、すなわち、ショップサーバ23mからネットワーク22を介して、リクエスト信号を受信したか、それともGUI情報を受信したかを判定する。
ステップS2において、通信部41は、ショップサーバ23mからネットワーク22を介して、リクエスト信号を受信したと判定した場合、受信したリクエスト信号を制御部44に供給して、処理はステップS3に進められる。
ステップS3では、制御部44は、表示制御部42を制御して、表示部43の表示画面43aに、検索キーの入力を促す入力画面表示を表示させる。なお、検索キーとしては、ユーザ端末21nに提示される複数の問合せ画像のうち、所望の商品に類似する商品が表示されたものとしてユーザにより入力(選択)された問合せ画像や、所望の商品に関連するものとしてユーザにより入力されたキーワード等が採用される。
そして、ユーザが、操作部45を用いて、検索キーを入力する入力操作を行ったことに対応して、操作部45は、ユーザの入力操作に対応する操作信号を、制御部44に供給する。
制御部44は、操作部45からの操作信号に基づいて、検索キーを判別し、通信部41に供給する。通信部41は、制御部44からの検索キーを、ネットワーク22を介して、ショップサーバ23mに送信する。
これに対して、ショップサーバ23mは、通信部41からネットワーク22を介して供給される検索キーに基づいて検索を行う。なお、検索キーが問合せ画像である場合、問合せ画像の画像特徴量に基づいて検索が行われ、検索キーがキーワードである場合、そのキーワードをメタ情報として用いるようにして検索が行われる。
ショップサーバ23mは、その検索により得られる検索結果を表示させるためのGUI情報を生成し、ネットワーク22を介して、通信部41に供給する。
そして、通信部41は、ショップサーバ23mからネットワーク22を介して供給されるGUI情報を、表示制御部42に供給して、処理をステップS4に進める。
また、ステップS2において、通信部41は、検索キーの送信を要求されなかったと判定した場合、すなわち、ショップサーバ23mからネットワーク22を介して、GUI情報を受信したと判定した場合、受信したGUI情報を表示制御部42に供給して、処理をステップS4に進める。
ステップS4では、表示制御部42は、通信部41からのGUI情報に基づいて、表示画面43aに、図4に示したような購入画面表示を表示させる。
また、制御部44は、操作部45からの操作信号に基づいて、ユーザによる画面変更操作が行われたと判定した場合、処理をステップS5に進め、表示制御部42を制御して、表示画面43aの画面表示を変更させる。
すなわち、ステップS5では、表示制御部42は、制御部44からの制御にしたがって、表示画面43aの表示を、購入画面表示から、図5に示したようなフィードバック画面表示に変更させる。
ステップS6では、制御部44は、操作部45からの操作信号に基づいて、ユーザによるラベル付けが行われたか否かを判定し、ラベル付けが行われたと判定するまで、ステップS6の処理を繰り返して行う。
すなわち、ステップS6では、制御部44は、操作部45からの操作信号に基づいて、ユーザが、表示画面43a上のフィードバック画面表示を参照してフィードバック操作を行い、検索ボタン121を押下する押下操作を行ったか否かを判定する。
ステップS6において、制御部44は、ユーザによるラベル付けが行われたと判定した場合、処理をステップS7に進め、操作部45からの操作信号に基づいて、パーツ嗜好情報を生成し、通信部41に供給する。
ステップS8では、通信部41は、制御部44からのパーツ嗜好情報を、ネットワーク22を介して、ショップサーバ23mに送信する。これに対して、ショップサーバ23mは、ネットワーク22を介して送信されてくるパーツ嗜好情報に基づく統計学習により識別器を生成し、生成した識別器を用いて検索を行う。そして、ショップサーバ23mは、その検索により得られる検索結果を表示させるためのGUI情報を生成し、ネットワーク22を介して通信部41に供給する。
ステップS9において、通信部41は、ショップサーバ23mからネットワーク22を介して供給されるGUI情報を、表示制御部42に供給する。表示制御部42は、通信部41からのGUI情報に基づいて、表示画面43a上のフィードバック画面表示を、新たな購入画面表示に更新して、処理をステップS5に戻し、それ以降、同様の処理が繰り返される。なお、この表示制御処理は、例えば、ユーザによる、表示制御処理の終了を示す終了操作が行われたときに終了される。
以上説明したように、表示制御処理によれば、表示画面43aに、図5に示したようなフィードバック画面表示を表示させるようにして、ユーザのフィードバック操作により、商品の各パーツにラベル付けが行われるようにした。
したがって、ユーザ端末21nは、ユーザのフィードバック操作により、商品そのものにラベル付けが行われる場合と比較して、より詳細なユーザの嗜好を、パーツ嗜好情報としてショップサーバ23mにフィードバックすることが可能となる。
このため、ショップサーバ23mでは、ユーザ端末21nからのパーツ嗜好情報が、比較的少量である場合でも、検索精度の高い識別器を生成することができるようになる。
すなわち、例えば、商品そのものにラベル付けが行われる場合には、商品の各パーツのうち、いずれのパーツにラベル付けが行われたのかが不明瞭である。したがって、この場合、識別器を生成する統計学習において、ラベル付けされた大量の画像データが、教師データとして必要とされる。
これに対して、商品の各パーツにラベル付けが行われる場合には、いずれのパーツにラベル付けが行われたのかが明瞭である。したがって、この場合、ラベル付けされた少量のパーツ画像を用いた統計学習により、検索精度の高い識別器を生成することが可能となる。
また、ショップサーバ23mでは、ユーザ端末21nからのパーツ嗜好情報が、比較的少量である場合でも、検索精度の高い識別器を生成できるので、ユーザによるフィードバック操作を少なくすることができ、ユーザの負担を軽減することが可能となる。
さらに、表示制御処理によれば、表示画面43aに、図4に示したような購入画面表示を表示させるようにしたので、商品全体を表示する商品画像を表示する場合と比較して、ユーザは、異なる商品どうしを、細かなパーツ単位で見比べることができる。
[ショップサーバ23mの構成例]
次に、図7は、ショップサーバ23mの構成例を示している。
このショップサーバ23mは、通信部141、初期画面生成部142、記憶部143、識別器生成部144、適合度算出部145、GUI更新部146、及び制御部147から構成される。
通信部141は、ユーザ端末21nからネットワーク22を介して供給されるユーザIDに基づいて、ショップサーバ23m'との間で共有される識別器を、識別器共有サーバ24からネットワーク22を介して読み出し、適合度算出部145に供給する。
また、通信部141は、識別器共有サーバ24に、ショップサーバ23m'との間で共有される識別器が存在しない場合、検索キーを要求するリクエスト信号を生成し、ネットワーク22を介してユーザ端末21nに送信する。
そして、通信部141は、リクエスト信号を送信したことに対応して、ユーザ端末21nからネットワーク22を介して供給される検索キーを、初期画面生成部142に供給する。
また、通信部141は、ユーザ端末21nからネットワーク22を介して供給されるパーツ嗜好情報を、識別器生成部144に供給する。さらに、通信部141は、初期画面生成部142又はGUI更新部146からのGUI情報を、ネットワーク22を介してユーザ端末21nに供給する。
初期画面生成部142は、アクセスしてきたユーザ端末21nに対して初期画面を表示させるためのGUIを生成する。すなわち、例えば、初期画面生成部142は、通信部141からの検索キーに基づいて検索を行い、その検索により得られる検索結果を表示させるためのGUI情報を生成し、通信部141に供給する。
記憶部143は、例えばハードディスク等であり、ショップサーバ23mにおいて販売される複数の商品毎に、複数のパーツ画像を予め記憶している。具体的には、例えば、記憶部143は、商品としての洋服における複数のパーツ画像(例えば、パーツ画像811乃至813、パーツ画像821乃至823、パーツ画像831乃至833,・・・)を予め記憶している。
また、記憶部143は、ショップサーバ23mにおいて販売される各商品の商品画像が記憶されているものとする。この商品画像は、初期画面生成部142において、検索キーに基づく検索が行われるとき等に用いられる。
識別器生成部144は、通信部141からのパーツ嗜好情報に基づき、例えばSVM(Support Vector Machine)を用いて識別器(関数)を生成し、適合度算出部145に供給する。なお、SVMの詳細については、図8を参照して後述する。
ここで、識別器生成部144は、上述のSVMの他、ベイズ分類器やブースティングアルゴリズム等を用いて識別器を生成してもよい。
適合度算出部145は、識別器生成部144からの識別器、又は通信部141からの識別器に基づいて、複数のパーツ画像毎に、パーツ画像に表示されるパーツと、ユーザの嗜好とが適合する程度を表すパーツ適合度を算出する。
そして、適合度算出部145は、複数のパーツ画像毎に算出したパーツ適合度に基づいて、検索対象とされる商品とユーザの嗜好とが適合する程度を表す対象適合度を算出して、GUI更新部146に供給する。
なお、適合度算出部145が行う処理の詳細は、図9乃至図11を参照して後述する。
GUI更新部146は、アクセスしてきたユーザ端末21nにおける表示画面43aのGUIを更新するためのGUI情報を生成する。
すなわち、例えば、GUI更新部146は、適合度算出部145からの対象適合度に基づいて、複数の商品から、ユーザが所望する商品を検索し、その検索により得られる検索結果を表示するためのGUI情報を生成して、通信部141に供給する。
制御部147は、通信部141、初期画面生成部142、識別器生成部144、適合度算出部145、及びGUI更新部146を制御する。
次に、図8は、識別器生成部144がSVMを用いた統計学習により識別器を生成する場合の一例を示している。
なお、図8において、例えば、識別器生成部144は、通信部141からのパーツ嗜好情報に基づいて、記憶部143から、適合ラベルが付加された4枚のパーツ画像(以下、ポジティブ画像ともいう)、及び不適合ラベルが付加された3枚のパーツ画像(以下、ネガティブ画像ともいう)を読み出す。
図8には、画像特徴量xを表すX軸、及び画像特徴量yを表すY軸の2軸により定義される座標平面が示されている。この座標平面上には、丸印で示される4個の座標として、4枚のポジティブ画像からそれぞれ抽出された4個の画像特徴量(x1,y1)乃至(x4,y4)が配置されている。
また、この座標平面上には、バツ印で示される3個の座標として、3枚のネガティブ画像からそれぞれ抽出された3個の画像特徴量(x5,y5)乃至(x7,y7)が配置されている。
識別器生成部144は、4枚のポジティブ画像から、それぞれ、4個の画像特徴量(x1,y1)乃至(x4,y4)を抽出し、3枚のネガティブ画像から、それぞれ、3個の画像特徴量(x5,y5)乃至(x7,y7)を抽出する。
また、識別器生成部144は、7個の画像特徴量(x1,y1)乃至(x7,y7)に基づいて、分離超平面を決定する。なお、分離超平面は、分離超平面の近傍に位置する、サポートベクトルと呼ばれる画像特徴量(図8の場合、画像特徴量(x1,y1)及び(x5,y5))と分離超平面との距離であるマージンを最大化するように決定される。
そして、識別器生成部144は、決定した分離超平面に基づいて、複数のパーツ画像毎のパーツ適合度を算出する識別器を生成し、適合度算出部145に供給する。
ここで、識別器生成部144は、説明を簡単にするために、図8を参照して説明したようにして1個の識別器を生成するようにした。
しかしながら、識別器生成部144は、複数の弱識別器を生成し、生成した複数の弱識別器からなる1個の識別器を生成するようにしてもよいし、異なるパーツのパーツ画像毎にパーツ適合度を算出する複数の識別器を生成するようにしてもよい。
次に、図9乃至図11を参照して、適合度算出部145が、対象(検索対象)nの各パーツ毎に複数のパーツ適合度Pinを算出し、算出した複数のパーツ適合度に基づいて、対象nの対象適合度rnを算出する場合の一例について説明する。
適合度算出部145は、識別器生成部144からの識別器に基づいて、複数のパーツ画像毎に、ユーザの嗜好とパーツとの適合の程度を表すパーツ適合度Pinを算出する。
すなわち、例えば、適合度算出部145は、画像特徴量(x1,y1)の座標点161と分離超平面との距離を、画像特徴量(x1,y1)に対応するパーツ画像のパーツ適合度として算出する。また、例えば、適合度算出部145は、画像特徴量(x5,y5)の座標点162と分離超平面との距離に-1を乗算して得られる乗算結果を、画像特徴量(x5,y5)に対応するパーツ画像のパーツ適合度として算出する。
そして、適合度算出部145は、次式(1)により、パーツ適合度Pinに基づいて、対象n毎の対象適合度rnを算出する。
rn = ΣwiPin ・・・(1)
なお、式(1)において、i=0,1,2,…、Iであり、n=0,1,2,3,4,…,N(ユーザ端末21nの添え字nとは異なる)である。また、ΣはwiとPinとの積和演算を表し、重みwi=exp(-ai)=1/eaiであるものとする。さらに、a>0であり、eは自然対数の底(ネイピア数)を表す。
具体的には、例えば、適合度算出部145は、図9に示されるように、パーツ画像821のパーツ適合度P01、パーツ画像822のパーツ適合度P11、及びパーツ画像823のパーツ適合度P21に基づいて、対象1の対象適合度r1(=w0P01+w1P11+w2P21)を算出する。なお、図9において、i=0,1,2であり、n=0,1,2,3,4,…,Nである。
適合度算出部145は、対象0,1,…,N毎に算出した対象適合度r0,r1,…,rNを、GUI更新部146に供給する。
GUI更新部146は、適合度算出部145からの対象適合度r0,r1,…,rNに基づいて、対象適合度が高い程、対応する適合度軸61上の適合順位が高くなるようにしてパーツ画像を表示させるためのGUI情報を生成し、通信部141に供給する。
次に、図10を参照して、一部のパーツ画像が存在しない場合の対処の一例について説明する。
適合度算出部145は、例えば、図10に示されるように、パーツ画像842が存在しない場合、通信部141又は識別器生成部144からの識別器を用いて、パーツ画像842のパーツ適合度P13を算出することができない。その理由としては、識別器は、パーツ画像842に基づいて、パーツ適合度P13を算出するからである。
この場合、例えば、適合度算出部145は、同じ背面部分のパーツが表示されたパーツ画像812,822,832,852,…それぞれのパーツ適合度P10,P11,P12,P14,…の平均値を、パーツ画像842のパーツ適合度P13として算出する。
したがって、例えば、パーツ画像842が存在しない場合でも、パーツ画像842のパーツ適合度P13を算出することができるので、対象3の対象適合度r3を算出することが可能となる。
その他、例えば、適合度算出部145は、存在しないパーツ画像842のパーツ適合度P13を便宜的に定数C(例えば0)として扱うようにして、対象3の対象適合度r3を算出するようにしてもよい。
なお、適合度算出部145は、上述したように、対象適合度rnを算出する際に、パーツの重要度iに応じて変化する重みwi(=exp(-ai))を用いるようにしたが、これに限定されない。
すなわち、例えば、ユーザ端末21nにおいて、適合ラベル及び不適合ラベルのいずれも付加されなかったパーツは、ユーザによる重要度iが低いものであるとして、対応するパーツの重みwiを0とするようにしてもよい。
ここで、図11において、パーツ画像811及びパーツ画像821には適合ラベル(黒枠で示す)が付加され、パーツ画像851には不適合ラベル(白枠で示す)が付加されている。したがって、正面部分のパーツを表示するパーツ画像において、適合ラベル又は不適合ラベルが3回だけ付加されている。
また、例えば、パーツ画像823及びパーツ画像833には適合ラベルが付加されている。したがって、胸元部分のパーツを表示するパーツ画像において、適合ラベル又は不適合ラベルが2回だけ付加されている。
しかしながら、図11において、実線で囲まれたパーツ画像812,822,832,842,852,・・・のいずれにも適合ラベル及び不適合ラベルが付加されていない。したがって、背面部分のパーツを表示するパーツ画像において、適合ラベル又は不適合ラベルが0回だけ付加されている。
適合度算出部145は、図11に示されるような場合、背面部分のパーツに対応する重みw1を0として、対象適合度rnを算出するようにしてもよい。
その他、例えば、適合度算出部145は、適合ラベル又は不適合ラベルが付加された回数kに応じて、対応する重みwiを、例えば重みwi'(=k×wi)に変更するようにして、対象適合度rnを算出することができる。
具体的には、例えば、図11に示されるような場合には、適合度算出部145は、重みw0を重みw0'(=3×w0)に、重みw1を重みw1'(=0×w1)に、重みw2を重みw2'(=2×w2)に、それぞれ変更するようにして、対象適合度rnを算出する。
[ショップサーバ23mの動作説明]
次に、図12のフローチャートを参照して、例えばショップサーバ23m1が行う第1の適合度算出処理について説明する。
なお、ショップサーバ23m1は、「可愛い系のワンピース」を専門に販売するショップサーバであり、同じく「可愛い系のワンピース」を専門に販売するショップサーバ23m1'との間で識別器m1を共有する。この識別器m1は、ショップサーバ23m1又はショップサーバ23m1'において生成され、識別器共有サーバ24に記憶される。
この第1の適合度算出処理は、例えば、ユーザ端末21nとの通信が開始されたときに開始される。
ステップS21において、通信部141は、例えば、第1のユーザが操作するユーザ端末21nからネットワーク22を介して送信されてくるユーザID「user1」を受信する。
ステップS22において、通信部141は、ネットワーク22を介して接続されている識別器共有サーバ24のテーブル24aを参照して、受信したユーザID「user1」に対応付けられた識別器m1が識別器共有サーバ24に記憶されているか否かを判定する。
ステップS22において、通信部141は、識別器m1が識別器共有サーバ24に記憶されていないと判定した場合、処理をステップS23に進める。そして、通信部141は、制御部147からの制御にしたがって、検索キーを要求するリクエスト信号を、ネットワーク22を介してユーザ端末21nに送信する。
ステップS24において、通信部141は、リクエスト信号を送信したことに対応して、ユーザ端末21nからネットワーク22を介して送信されてくる検索キーを受信し、初期画面生成部142に供給する。
ステップS25では、初期画面生成部142は、通信部141からの検索キーに基づいて、各商品の対象適合度を算出する。
すなわち、例えば、初期画面生成部142は、検索キーが問合せ画像である場合、問合せ画像から画像特徴量を抽出し、抽出した画像特徴量と、商品を表示する商品画像の画像特徴量との類似度を、対象適合度として算出する。
また、例えば、初期画面生成部142は、検索キーがキーワードである場合、そのキーワードをメタ情報として有する商品画像に表示された商品ほど、対象適合度が高くなるように、対象適合度を算出する。
そして、初期画面生成部142は、各商品毎に算出した対象適合度に基づいて、ユーザが所望する商品の検索を行い、その検索により得られる検索結果を表示させるためのGUI情報を生成し、通信部141に供給する。
ステップS26では、通信部141は、初期画面生成部142からのGUI情報を、ネットワーク22を介してユーザ端末21nに送信して、処理はステップS32に進められ、それ以降、ユーザによるフィードバック操作に応じて、より検索精度の高い検索を行なう。なお、ステップS32以降の処理は後述する。
また、ステップS22において、通信部141は、識別器m1が識別器共有サーバ24に記憶されていると判定した場合、ネットワーク22を介して、識別器共有サーバ24から識別器m1を読み出し、適合度算出部145に供給して、処理はステップS27に進められる。
ステップS27では、適合度算出部145は、通信部141からの識別器m1に基づいて、記憶部143に記憶されている複数のパーツ画像毎に、パーツ適合度を算出し、処理をステップS28に進める。
ステップS28では、適合度算出部145は、ステップS27の処理の処理で算出した、複数のパーツ画像毎のパーツ適合度に基づいて、検索対象とされる各商品の対象適合度を算出し、GUI更新部146に供給する。
ステップS29では、GUI更新部146は、適合度算出部145からの、各商品の対象適合度に基づいて、検索を行う。そして、ステップS30において、GUI更新部146は、ステップS29での検索により得られる検索結果を表示させるためのGUI情報を生成し、通信部141に供給する。
ステップS31では、通信部141は、GUI更新部146からのGUI情報を、ネットワーク22を介して、ユーザ端末21nに送信して、処理を、ステップS32に進める。
ステップS32では、通信部141は、ネットワーク22を介して、ユーザ端末21nからパーツ嗜好情報を受信するまで待機する。すなわち、ユーザ端末21nにおいて、ユーザによるラベル付けが行われて、図5の検索ボタン121が押下されることにより、ユーザ端末21nからパーツ嗜好情報が送信されてくるまで待機する。
そして、通信部141は、ネットワーク22を介して、ユーザ端末21nからパーツ嗜好情報を受信した場合、受信したパーツ嗜好情報を、識別器生成部144に供給して、処理をステップS33に進める。
ステップS33では、識別器生成部144は、通信部141からのパーツ嗜好情報に基づいて、ラベル付けされたパーツ画像を判別し、そのラベル付けされたパーツ画像に基づいて、新たな識別器m1を生成(学習)し、適合度算出部145に供給する。なお、新たな識別器m1は、識別器生成部144から通信部141、ネットワーク22を介して、識別器共有サーバ24に供給され、上書きにより記憶される。
ステップS34では、適合度算出部145は、識別器生成部144からの新たな識別器m1に基づいて、記憶部143に記憶されている複数のパーツ画像毎に、パーツ適合度を算出し、処理をステップS28に戻す。
そして、ステップS28では、適合度算出部145は、ステップS34の処理の処理で算出した、複数のパーツ画像毎のパーツ適合度に基づいて、各商品の対象適合度を算出し、GUI更新部146に供給して、処理をステップS29に進め、それ以降同様の処理が繰り返される。なお、この第1の適合度算出処理は、例えば、ユーザ端末21nとの通信が終了されたときに終了される。
以上説明したように、第1の適合度算出処理によれば、ユーザ端末21nからの、ラベル付けされた各パーツを表すパーツ嗜好情報に基づいて、識別器を生成するようにしたので、ラベル付けされた商品そのものを表す全体嗜好情報を用いる場合と比較して、少量のパーツ嗜好情報で識別器を生成することが可能となる。
また、ショップサーバ23m1は、ステップS27において、例えば、ショップサーバ23m1'により生成され、識別器共有サーバ24に記憶された識別器m1を用いるようにした。よって、ショップサーバ23m1は、最初から識別器を生成する必要がなく、より少ないユーザのフィードバック操作により、ユーザが所望の検索結果を得ることが可能となる。
ところで、第1の適合度算出処理では、ステップS22において、識別器共有サーバ24に識別器m1が記憶されていないと判定された場合、ステップS23乃至ステップS25において、検索キーに基づいて対象適合度を算出するようにした。
しかしながら、識別器m1が記憶されていない場合には、図13を参照して説明するように、検索キーに代えて、検索対象とされる各商品のカテゴリに類似するカテゴリに属する検索対象の識別器m2を用いるようにして、対象適合度を算出するようにしてもよい。
[ショップサーバ23mの他の動作説明]
次に、図13のフローチャートを参照して、例えばショップサーバ23m1が行う第2の適合度算出処理について説明する。
なお、この第2の適合度算出処理は、ステップS53及びステップS58の処理が新たに追加されている点で、第1の適合度算出処理と異なるが、それ以外の処理については、第1の適合度算出処理と同様である。
ステップS51及びステップS52では、それぞれ、図12のステップS21及びステップS22と同様の処理が行われる。ステップS52において、通信部141により、識別器m1が識別器共有サーバ24に記憶されていないと判定された場合、処理はステップS53に進められる。
ステップS53では、通信部141は、ネットワーク22を介して接続されている識別器共有サーバ24のテーブル24aを参照して、識別器m2が識別器共有サーバ24に記憶されているか否かを判定する。
すなわち、通信部141は、検索対象とされる各商品のカテゴリ「可愛い系のワンピース」と類似するカテゴリ、すなわち、例えばワンピースである点で共通する類似のカテゴリ「大人系のワンピース」の各商品に対して行われたフィードバック操作により生成された識別器m2が識別器共有サーバ24に記憶されているか否かを判定する。
ステップS53では、通信部141は、識別器m2が識別器共有サーバ24に記憶されていないと判定した場合、処理をステップS54に進め、ステップS54乃至ステップS57では、図12のステップS23乃至ステップS26と同様の処理が行われる。
なお、ステップS59乃至66においても、図12のステップS27乃至ステップS34と同様の処理が行われる。
また、ステップS53において、通信部141は、識別器m2が識別器共有サーバ24に記憶されていると判定した場合、ネットワーク22を介して、識別器共有サーバ24から識別器m2を読み出し、適合度算出部145に供給して、処理をステップS58に進める。
ステップS58では、適合度算出部145は、通信部141からの識別器m2に基づいて、記憶部143に記憶されている複数のパーツ画像毎に、パーツ適合度を算出し、処理をステップS60に進める。
ステップS60では、適合度算出部145は、ステップS58の処理で算出した、複数のパーツ画像毎のパーツ適合度に基づいて、各商品の対象適合度を算出し、GUI更新部146に供給して、処理をステップS61に進め、それ以降、同様の処理が繰り返される。なお、この第2の適合度算出処理は、例えば、ユーザ端末21nとの通信が終了されたときに終了される。
以上説明したように、第2の適合度算出処理によれば、識別器共有サーバ24に、識別器m1が存在しない場合でも、検索キーではなく、識別器m2を用いて検索を行なうことができるようになるので、検索キーを用いて検索を行う場合と比較して、よりユーザが望む商品を表示するためのGUI情報を生成することが可能となる。
第2の適合度算出処理では、識別器m1が記憶されていない場合、識別器m1に代えて、記憶済みの識別器m2を用いるようにしたが、その他、例えば、複数の識別器を用いるようにしてもよい。
すなわち、例えば、ショップサーバ23m1は、ワンピースである点で共通する対象「大人系のワンピース」の識別器m2の他、可愛い系である点で共通する対象「可愛い系のキャミソール」の識別器m3も用いるようにしてもよい。
この場合、例えば、識別器m2に基づき算出された対象適合度αと、識別器m3に基づき算出された対象適合度βとの平均値(α+β)/2に基づいて、検索が行われる。
したがって、例えば、対象適合度αが、ユーザの嗜好を適切に表していない場合でも、対象適合度βが、比較的、ユーザの嗜好に合致するものであるときには、対象適合度αを用いた検索結果と比較して、よりユーザの嗜好に合致した検索結果を得ることが可能となる。
以上のように、第1の適合度算出処理において、ショップサーバ23m1は、ショップサーバ23m1'との間で、識別器共有サーバ24に記憶済みの識別器m1を共有して用いるようにしている。また、第2の適合度算出処理において、ショップサーバ23m1は、識別器共有サーバ24に識別器m1が記憶されていない場合、識別器m1に代えて、検索対象とされる商品群に類似する商品群についての識別器m2を用いるようにしている。
ここで、ショップサーバ23m1は、アクセスしてきたユーザ端末21nの第1のユーザにおいて、第1のユーザのユーザID「user1」に対応付けられて記憶された識別器m1,m2,m3のみを用いるようにしたが、使用される識別器は、これに限定されない。
その他、例えば、第1のユーザが、所定の商品を購入して第2のユーザにプレゼントするような場合には、第1の適合度算出処理において、識別器m1に代えて識別器m1'を用いるようにし、第2の適合度算出処理において、識別器m1及びm2に代えて、識別器m1'及びm2'を用いるようにすることができる。
この場合、ショップサーバ23m1は、第2のユーザの嗜好に応じたGUI情報を生成し、第1のユーザに対応するユーザ端末21nの表示画面43aに、第2のユーザの嗜好に適した検索結果を表示させることができる。
したがって、第1のユーザは、表示画面43aに表示される購入画面表示を参照しながら、第2のユーザの嗜好に合った商品を購入することができる。なお、ユーザ端末21nにおいて、検索キーを入力する入力操作や、フィードバック操作が第1のユーザにより行われる場合、第1のユーザの嗜好ではなく、第2のユーザの嗜好を考慮して、入力操作やフィードバック操作が行われる。
また、例えば、ユーザID「user1」に対応する第1のユーザ、及びユーザID「user2」に対応する第2のユーザにおいて、ショップサーバ23m1から、同一の商品を共同で購入する場合には、識別器m1の他、識別器m1'も用いるようにしてもよい。
この場合、ショップサーバ23m1は、第1のユーザの嗜好と、第2のユーザの嗜好とを加味したGUI情報を生成し、ユーザ端末21nの表示画面43aに、第1のユーザの嗜好と、第2のユーザの嗜好とのいずれにも適した検索結果を表示させることができる。
したがって、第1のユーザは、表示画面43aに表示される購入画面表示を参照しながら、第1及び第2のユーザのいずれの嗜好にも合った商品を購入することができる。なお、ユーザ端末21nにおいて、検索キーを入力する入力操作や、フィードバック操作が第1のユーザにより行われる場合、第2のユーザの嗜好も考慮しつつ、入力操作やフィードバック操作が行われる。
[パーツ軸62の変更]
本実施の形態では、例えば、図4に示したように、パーツ軸62において、図中上から下方向に、正面62a、背面62b、及び胸元62cの順序で表示させるようにしたが、パーツの名称を表示する順序は、これに限定されない。
すなわち、例えば、ユーザ端末21nの操作部45を操作することにより、パーツの名称を表示する順序を変更することができる。この変更に応じて、パーツ画像の配置も変更される。
また、例えば、ユーザ端末21nは、各パーツにおいて、ラベル付けされた回数が多い順序で、各パーツの名称を表示するようにしてもよい。これは、ユーザのフィードバック操作において、一般的に、商品の購入において重要視しているパーツほど、多くのラベル付けが行われることによる。
具体的には、例えば、図11に示されるように、正面部分のパーツ画像、背面部分のパーツ画像、胸元部分のパーツ画像に、それぞれ、3個、0個、2個のラベルが付加されている場合、正面部分、胸元部分、背面部分の順で重要度が高いものとされる。そして、重要度が高い順に、各パーツ画像が再配置されることとなる。
また、例えば、図4の表示画面43aでは、正面部分、背面部分、及び胸元部分のパーツ画像を表示するようにしたが、パーツ画像に表示されるパーツは、正面部分、背面部分、及び胸元部分に限定されず、例えば、ユーザの変更操作に応じて、表示するパーツ画像を変更することができる。
次に、図14は、ユーザ操作に応じて、パーツ軸62上の名称を追加又は削除する場合の一例を示している。
なお、図14においては、ユーザ操作により、削除又は追加される対象を明確にするため、その符号にプライム(')を付加するようにしている。すなわち、図14では、例えば、パーツ軸62上の胸元62c'を削除又は追加する場合について説明する。
図14の表示画面43aにおいて、パーツ軸62上には、正面62a、背面62b、及び胸元62c'が表示されており、従って、パーツ画像811,821,831,812,822,832, 813',823',833',・・・が表示されている。
この状態から、例えば、パーツ軸62上の胸元62c'を削除する場合、ユーザは、操作部45を用いて、胸元62c'をドラッグしてゴミ箱181上でドロップする操作を行う。これにより、パーツ軸62上の胸元62c'は削除され、胸元部分を表示するパーツ画像813',823',833',・・・も削除される。
また、例えば、胸元62c'及びパーツ画像813',823',833',・・・を追加(復元)する場合、ユーザは、操作部45を用いて、パーツ画像811から、胸元部分のパーツ(パーツ画像811において、太線で囲まれた部分)を選択する。これにより、胸元62c'及びパーツ画像813',823',833',・・・が追加される。
なお、ユーザは、パーツ画像811から胸元部分のパーツを選択するようにしたが、パーツ画像811とは異なるパーツ画像(例えばパーツ画像812やパーツ画像821等)から、追加したいパーツを選択することができる。
また、図14の表示画面43aでは、例えばパーツ画像811を、パーツ軸62上に追加するパーツを選択するために用いる選択用画像として表示するようにしたが、パーツ画像811とは別に、新たに選択用画像を設けるようにしてもよい。
なお、選択用画像としては、1枚の選択用画像を採用する他、例えば、各パーツをそれぞれ表示する複数の選択用画像を採用するようにして、複数の選択用画像から、追加したいパーツを表示する選択用画像を、ユーザに選択させることができる。
その他、例えば、選択用画像として、3次元画像(立体画像)を採用するようにして、その3次元画像から、追加するパーツを選択するようにしてもよい。なお、3次元画像では、3次元画像内の商品を、ユーザ操作に応じて全方位に回転自在とされるため、各パーツを表示する複数の選択用画像(2次元画像)を用いることなく、1枚の3次元画像のみで、検索対象とされる商品のいずれのパーツも追加することが可能となる。
<2.変形例>
本実施の形態では、例えば、図4に示されるような購入画面表示と、図5に示されるようなフィードバック画面表示とを、それぞれ、別の表示画面43aとして表示させるようにしたが、購入画面表示及びフィードバック画面表示を同じ表示画面43aとして表示させるようにしてもよい。
すなわち、例えば、図4の表示画面43aを、図5に示される適合ボックス、不適合ボックス、及び検索ボタン121が新たに追加された表示画面43aとするようにしてもよい。
さらに、本実施の形態では、購入画面表示として、表示画面43aに、複数のパーツ画像を表示させるようにしたが、その他、例えば、複数のパーツ画像に代えて、各商品をそれぞれ表示する複数の商品画像を、対象適合度に応じて表示させるようにしてもよい。
すなわち、少なくともフィードバック操作が行われる場合に、複数のパーツ画像が表示画面43aに表示されていればよく、フィードバック操作が行われない場合には、複数のパーツ画像を表示しないようにしてもよい。
また、本実施の形態では、ユーザ端末21nは、図5に示される適合ボックスや不適合ボックスにチェックを入れるという明示的なフィードバック操作に基づいて、パーツ嗜好情報を生成するようにしたが、黙示的なフィードバック操作に基づいて、パーツ嗜好情報を生成するようにしてもよい。
すなわち、例えば、ユーザが、パーツ画像811を拡大して表示させるような操作が行われた場合には、パーツ画像811上のパーツに適合ラベルを付加するという黙示的なフィードバック操作が行われたものとして扱うようにして、パーツ嗜好情報を生成することができる。
さらに、本実施の形態では、ショップサーバ23mが検索し、ユーザ端末21nが、その検索により得られる検索結果を表示画面43aに表示させるようにしたが、ショップサーバ23m及びユーザ端末21nの各構成は、これに限定されない。
すなわち、例えば、ユーザ端末21n自身が検索し、その検索により得られる検索結果を表示画面43aに表示させるようにする。そして、ショップサーバ23mは、ユーザ端末21nからの要求に応じて、表示画面43aに表示させるためのパーツ画像を供給するようにしてもよい。
具体的には、例えば、ユーザ端末21nの表示制御部42は、対象適合度を算出するための機能ブロック(例えば、初期画面生成部142乃至GUI更新部146等)としても機能させるようにする。この場合、表示制御部42は、対象適合度を算出し、算出した対象適合度に基づいて検索を行う。そして、表示制御部42は、その検索により得られる検索結果を表示させるためのGUI情報を生成し、生成したGUI情報に基づいて、表示部43を制御する。
本実施の形態では、検索対象として洋服を採用するようにしたが、検索対象は、これに限定されない。すなわち、検索対象としては、複数の要素により構成されるものであれば、どのようなものも採用することができる。
具体的には、例えば、検索対象として靴を採用することができる。この場合、検索対象の各パーツとしては、例えば、靴の正面部分、側面部分、及び靴底部分等が採用される。
また、例えば、検索対象として建物を採用するようにしてもよい。この場合、例えば、建物の外観、エントランス、ラウンジ等を、建物の各パーツとして採用することができる。
その他、例えば、検索対象としては、関連する複数の物品により構成されるセットを採用することができる。この場合、関連する複数の物品が、それぞれ、検索対象の各パーツとされる。
すなわち、例えば、検索対象として、フォーク、スプーン、及びお皿からなる食器セットを採用することができる。この場合、例えば、食器セットの各パーツを表示するパーツ画像として、フォークを表示する第1のパーツ画像、スプーンを表示する第2のパーツ画像、及びお皿を表示する第3のパーツ画像を採用することができる。
その他、例えば、第1のパーツ画像に代えて、フォークの各パーツをそれぞれ表示する複数のサブパーツ画像を採用するようにしてもよい。このことは、第2のパーツ画像、及び第3のパーツ画像についても同様である。
また、例えば、検索対象としては、食器セットの他、リモートコントローラ及びテレビジョン受像機からなるテレビセットや、ソファ、チェア、テーブルからなる居間セット、スーツ、ワイシャツ、ネクタイ、及び革靴からなるスーツセット等が考えられる。
さらに、例えば、検索対象としては、静止画像を採用できる。この場合、例えば、静止画像上の各領域を、静止画像の各パーツとして採用することができる。
また、例えば、検索対象として、複数の画像により構成される動画像を採用できる。この場合、例えば、動画像における序盤のシーン、中盤のシーン、終盤のシーン等を、動画像の各パーツとして採用できる。そして、パーツ画像として、序盤のシーン、中盤のシーン、終盤のシーンをそれぞれ表す画像(例えば、シーンを構成する各画像のうち、シーンの内容を最も表す画像)が採用される。
さらに、例えば、検索対象としては、楽曲等を採用することもできる。この場合、例えば、表示画面43aには、楽曲の歌詞の一部分(パーツ)をそれぞれ文字として表示するパーツ画像が表示される。
また、表示画面43aには、パーツ画像の近くに、そのパーツ画像に表示される歌詞の一部分を音声として再生するための再生ボタン等を設けることができる。その他、表示画面43aには、パーツ画像として、対応する歌詞の各部分を音声として再生するための再生ボタン等を設けるようにしてもよい。
また、例えば、楽曲が、ギター、ドラム、及びベースをそれぞれ奏でて得られる複数の音により構成される場合には、ギターの音、ドラムの音、ベースの音をそれぞれ再生するための再生ボタン等を、パーツ画像として表示するようにしてもよい。
なお、検索対象として楽曲を採用する場合、ラベル付けされたパーツ画像に対応する音(例えば、ギターの音等)から抽出される音声特徴量に基づいて、識別器の生成を行なうようにしてもよい。
また、検索対象として、楽曲と動画像とにより構成されるミュージックビデオ(プロモーションビデオ)等を採用することができる。この場合、楽曲を採用したときに表示されるパーツ画像、又は動画像を採用したときに表示されるパーツ画像の少なくとも一方が、表示画面43aに表示される。
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、又は、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のコンピュータなどに、プログラム記録媒体からインストールされる。
[コンピュータの構成例]
図15は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
CPU(Central Processing Unit)201は、ROM(Read Only Memory)202、又は記憶部208に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)203には、CPU201が実行するプログラムやデータ等が適宜記憶される。これらのCPU201、ROM202、及びRAM203は、バス204により相互に接続されている。
CPU201にはまた、バス204を介して入出力インタフェース205が接続されている。入出力インタフェース205には、キーボード、マウス、マイクロホン等よりなる入力部206、ディスプレイ、スピーカ等よりなる出力部207が接続されている。CPU201は、入力部206から入力される指令に対応して各種の処理を実行する。そして、CPU201は、処理の結果を出力部207に出力する。
入出力インタフェース205に接続されている記憶部208は、例えばハードディスクからなり、CPU201が実行するプログラムや各種のデータを記憶する。通信部209は、インターネットやローカルエリアネットワーク等のネットワークを介して外部の装置と通信する。
また、通信部209を介してプログラムを取得し、記憶部208に記憶してもよい。
入出力インタフェース205に接続されているドライブ210は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等のリムーバブルメディア211が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータ等を取得する。取得されたプログラムやデータは、必要に応じて記憶部208に転送され、記憶される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを記録(記憶)する記録媒体は、図15に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini-Disc)を含む)、もしくは半導体メモリ等よりなるパッケージメディアであるリムーバブルメディア211、又は、プログラムが一時的もしくは永続的に格納されるROM202や、記憶部208を構成するハードディスク等により構成される。記録媒体へのプログラムの記録は、必要に応じてルータ、モデム等のインタフェースである通信部209を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線又は無線の通信媒体を利用して行われる。
なお、本明細書において、上述した一連の処理を記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本開示の実施の形態は、上述した本実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。