(57)【特許請求の範囲】
【請求項１】
アイテムの属するカテゴリの階層構造における、複数のアイテムで構成されるリスト内の各アイテムの属するカテゴリ間の距離の合計を当該リストの多様性と定義し、当該多様性が最大となる前記リストを出力するコンピュータによって実行されるアイテム推薦方法であって、
複数のアイテムから構成される推薦リストと圏外リストを入力するステップと、
蓄積手段に格納された前記階層構造を参照し、前記推薦リストの多様性を算出するとともに、前記推薦リスト内のアイテムと前記圏外リスト内のアイテムを入れ替えた場合の前記推薦リストの多様性を算出するステップと、
前記推薦リストの多様性とアイテムを入れ替えた場合の前記推薦リストの多様性を比較し、前記多様性が最大となる組み合わせで前記推薦リスト内のアイテムと前記圏外リスト内のアイテムを入れ替えるステップと、
入れ替えた前記推薦リストを出力するステップと、
を有することを特徴とするアイテム推薦方法。
【請求項２】
前記算出するステップは、
前記圏外リストから前記推薦リストへ入れる第１のアイテムを選び、当該第１のアイテムのカテゴリから前記推薦リスト内の各アイテムのカテゴリへの距離の合計である第１のホップ数を算出するステップと、
前記推薦リスト内の各アイテムについて、当該アイテムのカテゴリから前記第１のアイテムを前記推薦リストに入れた場合の前記推薦リスト内の各アイテムのカテゴリへの距離の合計である第２のホップ数を算出するステップと、
前記第２のホップ数が最小となる第２のアイテムを選択するステップと、
前記推薦リストの第１の多様性を算出するとともに、前記推薦リストに前記第１のアイテムを入れて前記第２のアイテムをはずした場合の第２の多様性を算出するステップと、を有し、
前記入れ替えるステップは、前記第２の多様性が前記第１の多様性よりも大きい場合に、前記推薦リスト内の前記第２のアイテムと前記第１のアイテムとを入れ替えることを特徴とする請求項１記載のアイテム推薦方法。
【請求項３】
前記第２のアイテムを選択するステップは、前記推薦リスト内の各アイテムの属するカテゴリ数毎に前記第２のアイテムを選択し、
前記第２の多様性を算出するステップは、前記カテゴリ数毎に選択した第２のアイテムそれぞれの場合について前記第２の多様性を算出し、
前記入れ替えるステップは、前記第２の多様性のうち最大のものが前記第１の多様性よりも大きい場合に、前記最大となる第２の多様性を与える前記第２のアイテムと前記第１のアイテムとを入れ替えることを特徴とする請求項２記載のアイテム推薦方法。
【請求項４】
請求項１乃至３のいずれかに記載のアイテム推薦方法をコンピュータに実行させることを特徴とするアイテム推薦プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザに推薦するアイテムを選択する技術に関する。
【背景技術】
【０００２】
多くの電子商取引サイトにおいて、協調フィルタリングベースの推薦エンジンが導入され、商品の売上げに効果を上げている。一方、現状の推薦エンジンはユーザが過去に購入したアイテムに基づき、現在の潜在興味を予測する処理を行っていることから、過去にユーザが購入したアイテムと似通ったアイテムばかり推薦されることが多い。例えば、あるメタルロックのアイテムＡを購入したユーザには、現状の推薦エンジンは、同じメタルロックのアイテムや、同じアーチストの別のアイテムを推薦する。しかし、そうした推薦はユーザにとって飽きられやすく、推薦を利用する初期段階を経過すると、ユーザの満足度が落ちてしまうことが指摘されている。そのため、非特許文献１では、タクソノミ上のアイテムの分布を元に、推薦するアイテムを多様化させる技術を開発している。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Cai-Nicolas Ziegler, Sean M. McNee, Joseph A. Konstan, and Georg Lausen, "Improving Recommendation Lists Through Topic Diversification", Proc. WWW'05, 2005, p.22-32
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、現在のタクソノミに基づく推薦アイテムの多様化の技術では、アイテムかタクソノミ上で幅広く分布しているかどうかを、推薦リスト内のアイテムと推薦リスト外のアイテムを逐次入れ替えて分布をチェックし、分布が最大となるものを選択する、組み合わせ総当り処理を行っているため、推薦リスト内のアイテムの多様化に計算コストがかかり、実用化を阻害している。
【０００５】
本発明は、上記に鑑みてなされたものであり、ユーザに提示する推薦リスト内のアイテムを多様化することを目的とする。
【課題を解決するための手段】
【０００６】
第１の本発明に係るアイテム推薦方法は、アイテムの属するカテゴリの階層構造における、複数のアイテムで構成されるリスト内の各アイテムの属するカテゴリ間の距離の合計を当該リストの多様性と定義し、当該多様性が最大となる前記リストを出力するコンピュータによって実行されるアイテム推薦方法であって、複数のアイテムから構成される推薦リストと圏外リストを入力するステップと、蓄積手段に格納された前記階層構造を参照し、前記推薦リストの多様性を算出するとともに、前記推薦リスト内のアイテムと前記圏外リスト内のアイテムを入れ替えた場合の前記推薦リストの多様性を算出するステップと、前記推薦リストの多様性とアイテムを入れ替えた場合の前記推薦リストの多様性を比較し、前記多様性が最大となる組み合わせで前記推薦リスト内のアイテムと前記圏外リスト内のアイテムを入れ替えるステップと、入れ替えた前記推薦リストを出力するステップと、を有することを特徴とする。
【０００７】
上記アイテム推薦方法において、前記算出するステップは、前記圏外リストから前記推薦リストへ入れる第１のアイテムを選び、当該第１のアイテムのカテゴリから前記推薦リスト内の各アイテムのカテゴリへの距離の合計である第１のホップ数を算出するステップと、前記推薦リスト内の各アイテムについて、当該アイテムのカテゴリから前記第１のアイテムを前記推薦リストに入れた場合の前記推薦リスト内の各アイテムのカテゴリへの距離の合計である第２のホップ数を算出するステップと、前記第２のホップ数が最小となる第２のアイテムを選択するステップと、前記推薦リストの第１の多様性を算出するとともに、前記推薦リストに前記第１のアイテムを入れて前記第２のアイテムをはずした場合の第２の多様性を算出するステップと、を有し、前記入れ替えるステップは、前記第２の多様性が前記第１の多様性よりも大きい場合に、前記推薦リスト内の前記第２のアイテムと前記第１のアイテムとを入れ替えることを特徴とする。
【０００８】
上記アイテム推薦方法において、前記第２のアイテムを選択するステップは、前記推薦リスト内の各アイテムの属するカテゴリ数毎に前記第２のアイテムを選択し、前記第２の多様性を算出するステップは、前記カテゴリ数毎に選択した第２のアイテムそれぞれの場合について前記第２の多様性を算出し、前記入れ替えるステップは、前記第２の多様性のうち最大のものが前記第１の多様性よりも大きい場合に、前記最大となる第２の多様性を与える前記第２のアイテムと前記第１のアイテムとを入れ替えることを特徴とする。
【０００９】
第２の本発明に係るアイテム推薦プログラムは、上記アイテム推薦方法をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ユーザに提示する推薦リスト内のアイテムを多様化することができる。
【図面の簡単な説明】
【００１１】
【図１】タクソノミの例を示す図である。
【図２】本実施の形態におけるアイテム推薦装置の構成を示す機能ブロック図である。
【図３】上記アイテム推薦装置に蓄積されるタクソノミ情報の例を示す図である。
【図４】上記アイテム推薦装置に入力される推薦アイテム情報の例を示す図である。
【図５】本実施の形態におけるアイテム推薦装置の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を用いて説明する。
【００１３】
本実施の形態では、ユーザの興味に基づいて抽出されたアイテムについて、ユーザに推薦するアイテムのリスト（上位リストＬ）の多様度が最大となるように上位リストＬ内のアイテムと圏外リストＭ内のアイテムを入れ替える。多様度（以下、「Ｄｉｖｅｒｓｉｔｙ」と称する）とは、推薦リスト内のインスタンス（アイテム）がオントロジ上でどれだけ幅広く分布しているかを示す値である。本実施の形態では、Ｄｉｖｅｒｓｉｔｙの計算式を次式（１）と定義する。
【数１】
0005309182.tif 000002
【００１４】
ここで、Ｈ（ｉ）は、アイテムｉから見た上位リストＬ内の他アイテムへのホップ数、｜Ｃ（ｉ）｜は、アイテムｉの所属するクラス数である。ホップ数とは、タクソノミ（クラス構造）上での最短距離である。
【００１５】
図１に、タクソノミの例を示す。同図では、７つのクラス（カテゴリ）Ｃ１〜Ｃ７を有する階層構造のタクソノミ、および６つのインスタンス（アイテム）Ｉａ〜Ｉｃ，Ｉｘ〜Ｉｚを示している。クラスは、他のクラスと親子関係で結ばれて階層構造を構成し、インスタンスは、クラスを親とするノードである。例えば、クラスＣ２は、クラスＣ１を親クラス、クラスＣ４，Ｃ５を子クラスとする。インスタンスであるアイテムＩａは、クラスＣ４を親クラスとする。アイテムＩｂのように、複数のクラスＣ５，Ｃ６を親クラスするアイテムもあり、このときのアイテムＩｂのクラス数｜Ｃ（Ｉｂ）｜は、２である。
【００１６】
ホップ数は、あるアイテムからクラスを最短で辿って他アイテムへ到達するときに辿るクラスを数えることで求まる。例えば、アイテムＩａからアイテムＩｘへは、クラスＣ４−Ｃ２−Ｃ１−Ｃ３−Ｃ７と辿ることができるのでホップ数は４となる。このとき、アイテムＩａの親クラスＣ４はホップ数に含めない。
【００１７】
アイテムＩａ，Ｉｂ，Ｉｃが上位リストＬに含まれる場合のＤｉｖｅｒｓｉｔｙは次式で求められて２１となる。
【００１８】
{(2+4+3)/1}+{(2+3)/2}+{(4+1)/2}+{(3+1+3)/1}=21
例えば、左辺の第１項は、アイテムＩａから見たアイテムＩｂ，Ｉｃへのホップ数の合計をアイテムＩａの所属するクラス数で割ったものである。アイテムＩｂは、複数のクラスＣ５，Ｃ６に属しているので、それぞれ別アイテムとして計算する。したがって、左辺の第１項は、アイテムＩａからクラスＣ４−Ｃ２−Ｃ５を辿ってアイテムＩｂへ到達するホップ数２と、アイテムＩａからクラスＣ４−Ｃ２−Ｃ１−Ｃ３−Ｃ６を辿ってアイテムＩｂへ到達するホップ数４と、アイテムＩａからクラスＣ４−Ｃ２−Ｃ１−Ｃ３を辿ってアイテムＩｃへ到達するホップ数３とを合計したものをアイテムＩａの所属するクラス数１で割ったものとなる。左辺の第２項は、クラスＣ５に属しているアイテムＩｂから見たアイテムＩａ，Ｉｃへのホップ数を合計したものをアイテムＩｂの所属するクラス数２で割ったもの、左辺の第３項は、クラスＣ６に属しているアイテムＩｂから見たアイテムＩａ，Ｉｃへのホップ数を合計したものをアイテムＩｂの所属するクラス数２で割ったものである。左辺の第４項は、アイテムＩｃから見たアイテムＩａ，Ｉｃへのホップ数を合計したものである。
【００１９】
次に、本実施の形態におけるアイテム推薦装置について説明する。
【００２０】
図２は、本実施の形態におけるアイテム推薦装置の構成を示す機能ブロック図である。同図に示すアイテム推薦装置１は、入力部１１、算出部１２、入替部１３、タクソノミ蓄積部１４、および推薦アイテム蓄積部１５を備える。アイテム推薦装置１が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムはアイテム推薦装置１が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。
【００２１】
入力部１１は、推薦アイテム情報を入力し、入力した推薦アイテム情報を上位リストＬと圏外リストＭに分割して推薦アイテム蓄積部１５に蓄積させる。
【００２２】
算出部１２は、上位リストＬのＤｉｖｅｒｓｉｔｙおよび上位リストＬのアイテムと圏外リストＭのアイテムを入れ替えたときのＤｉｖｅｒｓｉｔｙを算出する。Ｄｉｖｅｒｓｉｔｙ算出の際には、Ｄｉｖｅｒｓｉｔｙが同じ、もしくは小さくなると見込まれる入れ替えの組合せはスキップする。Ｄｉｖｅｒｓｉｔｙ算出の詳細については後述する。
【００２３】
入替部１３は、算出部１２が算出したＤｉｖｅｒｓｉｔｙが最大になるように、上位リストＬのアイテムと圏外リストＭのアイテムを入れ替える。
【００２４】
タクソノミ蓄積部１４は、タクソノミ情報を蓄積する。図３に、タクソノミ情報の例を示す。タクソノミ情報には、タクソノミを構成するクラスの情報が含まれる。クラスの情報として、クラスを識別するクラスＩＤ、子クラス、親クラスの情報を有する。
【００２５】
推薦アイテム蓄積部１５は、推薦アイテム情報を蓄積する。図４に、推薦アイテム情報の例を示す。推薦アイテム情報は、アイテムのデータを含み、アイテムのデータは、アイテムを識別するアイテムＩＤ、親クラスの情報を有する。推薦アイテム蓄積部１５は、アイテムのデータを上位リストＬ、圏外リストＭに分けて蓄積する。
【００２６】
次に、本実施の形態のアイテム推薦装置の処理の流れについて説明する。ここでは、図１に示す例、つまり図３に示すタクソノミ情報がタクソノミ蓄積部１４に蓄積され、図４に示す推薦アイテム情報を入力する例を用いて説明する。
【００２７】
図５は、本実施の形態におけるアイテム推薦装置１の処理の流れを示すフローチャートである。
【００２８】
まず、入力部１１が推薦アイテム情報を入力し（ステップＳ１０１）、入力した推薦アイテム情報を上位リストＬと圏外リストＭに分割して推薦アイテム蓄積部１５に蓄積させる（ステップＳ１０２）。具体的には、アイテム推薦装置１内のメモリ等に保存した初期設定ファイルからリスト内アイテム数、圏外リストアイテム数を取得し、リスト内アイテム数と圏外リストアイテム数を合わせた数の推薦アイテム情報をユーザに推薦する度合いの高い順に入力する。そして、リスト内アイテム数を閾値として、取得した推薦アイテム情報の１番目から閾値までを上位リストＬ、閾値＋１以降を圏外リストＭとして推薦アイテム蓄積部１５に蓄積させる。例えば、リスト内アイテム数、圏外リストアイテム数がともに３の場合、つまり、上位リストＬのアイテム数、圏外リストＭのアイテム数はともに３の場合、６つのアイテムＩａ〜Ｉｃ，Ｉｘ〜Ｉｚを入力し、アイテムＩａ〜Ｉｃを上位リストＬ、アイテムＩｘ〜Ｉｚを圏外リストＭとして推薦アイテム蓄積部１５に蓄積させる。なお、推薦アイテム情報は、別の推薦アイテム抽出処理により、ユーザの興味に基づいて、ユーザが興味を示すと思われる順にアイテムを並べて抽出される。
【００２９】
推薦アイテム情報の入力が終了すると、圏外リストＭ内のすべてのアイテムについて圏外リストＭの１番目から順に以下の処理を繰り返す。以下、ｉｉ番目（初期値ｉｉ＝１）のアイテムＭ（ｉｉ）が処理対象の圏外リストＭのアイテムとして説明する。
【００３０】
まず、算出部１２は、タクソノミ蓄積部１４を参照して、上位リストＬに圏外リストＭのｉｉ番目のアイテムＭ（ｉｉ）を追加した場合の、ホップ数Ｈ（Ｌ）、クラス数Ｃ｛Ｍ（ｉｉ）｝を算出する（ステップＳ１０３，Ｓ１０４）。上位リストＬに圏外リストＭのｉｉ番目のアイテムを追加したリストを｛Ｌ＋Ｍ（ｉｉ）｝と表す。ホップ数Ｈ（Ｌ）は、アイテムＭ（ｉｉ）から見た、上位リストＬ内の他のアイテムとのホップ数の合計である。クラス数Ｃ｛Ｍ（ｉｉ）｝は、アイテムＭ（ｉｉ）が属するクラスの数である。例えば、アイテムＩａ〜Ｉｃが上位リストＬに存在し、圏外リストＭのアイテムＩｘを上位リストＬに追加した場合、アイテムＩｘからアイテムＩａへのホップ数は４、アイテムＩｘからアイテムＩｂへのホップ数は４と２、アイテムＩｘからアイテムＩｃへのホップ数は１であり、ホップ数の合計は１１となる。アイテムＩｘのクラス数は１である。
【００３１】
続いて、算出部１２は、除去するアイテムをＬ（ｉ）とし、ｉ＝１から順に、リスト｛Ｌ＋Ｍ（ｉｉ）｝から上位リストＬのｉ番目のアイテムＬ（ｉ）を除去した場合の、アイテムＬ（ｉ）から見たリスト｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝の各アイテムへのホップ数の合計Ｈ｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝、クラス数Ｃ｛Ｌ（ｉ）｝を算出する（ステップＳ１０５，Ｓ１０６）。この処理を上位リストＬ内のすべてのアイテムについて処理を行う（ステップＳ１０７）。
【００３２】
例えば、アイテムＩａ〜Ｉｃが上位リストＬに存在し、圏外リストＭのアイテムＩｘを上位リストＬに追加したときに、各アイテムＩａ〜Ｉｃを順にＬ（ｉ）として除去した場合の、アイテムＬ（ｉ）から見たリスト｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝内の各アイテムへのホップ数の合計、Ｌ（ｉ）のクラス数は次表１となる。
【表１】
0005309182.tif 000003
【００３３】
そして、上位リストＬのアイテムのクラス数ごとにホップ数の合計が最小のものをピックアップする（ステップＳ１０８）。例えば上記の表１の場合、クラス数が１のアイテムでホップ数が最小のものはアイテムＩｃであり、クラス数が２のアイテムはアイテムＩｂのみであるので、アイテムＩｂ，Ｉｃがピックアップされる。なお、クラス数、ホップ数が同じ場合は、ランクが高いもの、つまりユーザに推薦する度合いが高いものをピックアップする。
【００３４】
ここで、ピックアップした全てのアイテムについて、Ｈ（Ｌ）＝＜Ｈ｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝、かつ、Ｃ｛Ｍ（ｉｉ）｝＞＝Ｃ｛Ｌ（ｉ）｝が成り立つ場合は、ｉｉを１つ進めてステップＳ１０３に戻る（ステップＳ１０９）。上記の条件を満たすアイテムＬ（ｉ）を圏外リストＭのアイテム（ｉｉ）と入れ替えた場合は、Ｄｉｖｅｒｓｉｔｙが小さくなることは明らかである。したがって、ピックアップした全てのアイテムが上記の条件を満たす場合は、Ｄｉｖｅｒｓｉｔｙを計算することなく、ｉｉを１つ進めて次の圏外リストＭ内のアイテムＭ（ｉｉ）について処理する。
【００３５】
そして、算出部１２は、上位リストＬのＤｉｖｅｒｓｉｔｙ｛Ｌ｝、アイテムＭ（ｉｉ）とステップＳ１０８でピックアップしたアイテムＬ（ｉ）とを入れ替えた場合のＤｉｖｅｒｓｉｔｙ｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝を算出する（ステップＳ１１０）。なお、ステップＳ１０９の条件を満たしたアイテムＬ（ｉ）はＤｉｖｅｒｓｉｔｙ｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝算出の対象外とする。
【００３６】
例えば、アイテムＩａ，アイテムＩｂ，アイテムＩｃが上位リストＬに含まれる場合のＤｉｖｅｒｓｉｔｙ｛Ｌ｝は２１となる。アイテムＩｘとアイテムＩｂを入れ替えた場合、アイテムＩｘとアイテムＩｃを入れ替えた場合それぞれのＤｉｖｅｒｓｉｔｙは次表２となる。
【表２】
0005309182.tif 000004
【００３７】
ここで、Ｄｉｖｅｒｓｉｔｙ｛Ｌ｝が、算出したＤｉｖｅｒｓｉｔｙ｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝のうちの最大のものよりも大きい場合は、ｉｉを１つ進めてステップＳ１０３に戻り、次のアイテムＭ（ｉｉ）について処理を行う（ステップＳ１１１）。
【００３８】
そして、入替部１３は、算出したＤｉｖｅｒｓｉｔｙ｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝が最大となるアイテムＬ（ｉ）をアイテムＭ（ｉｉ）と入れ替える（ステップＳ１１２）。上記表２では、アイテムＩｃを入れ替えた場合のＤｉｖｅｒｓｉｔｙが最大であり、Ｄｉｖｅｒｓｉｔｙ｛Ｌ｝＝２１よりも大きいので、上位リストＬからアイテムＩｃをはずしてアイテムＩｘを入れて、推薦アイテム蓄積部１５の情報を更新する。上位リストＬからはずしたアイテムは推薦対象としないため、上位リストＬ、圏外リストＭのいずれにも戻さない。この時点で、上位リストＬは、アイテムＩａ，Ｉｂ，Ｉｘからなり、圏外リストＭは、アイテムＩｙ，Ｉｚからなる。
【００３９】
圏外リストＭにまだアイテムが残っている場合は、ｉｉを１つ進めてステップＳ１０３に戻り、次のアイテムＭ（ｉｉ）について処理を行う（ステップＳ１１３）。圏外リストＭの全てのアイテムについて処理した場合は、上位リストＬのアイテムをユーザに推薦する推薦アイテムとして出力する。
【００４０】
以上説明したように、本実施の形態によれば、複数のアイテムで構成されるリストのＤｉｖｅｒｓｉｔｙの計算式を、アイテムの属するクラスから別のアイテムの属するクラスへのタクソノミ上の距離の合計を表す式（１）のように定義し、上位リストＬ内のアイテムと圏外リストＭ内のアイテムとをＤｉｖｅｒｓｉｔｙが最大となるように入れ替えることにより、ユーザに多様性のあるおすすめアイテムを提示することが可能となる。その結果、サービスを利用するユーザがそのサービスの提示する様々なアイテムを知るきっかけを与えることができ、ユーザのサービスへの飽きを抑えられる。また、多様なアイテムを推薦できるので、ユーザの購買意欲を高め売上げを増加させることができる。
【００４１】
本実施の形態によれば、圏外リストＭ内のアイテムＭ（ｉｉ）を上位リストＬのアイテムＬ（ｉ）と入れ替えた場合のＤｉｖｅｒｓｉｔｙの算出において、上位リストＬのアイテムＬ（ｉ）を圏外リストＭ内のアイテムＭ（ｉｉ）とを入れ替えた場合の、アイテムＬ（ｉ）から見たリスト｛Ｌ＋Ｍ（ｉｉ）−Ｌ（ｉ）｝の各アイテムへのホップ数の合計を算出し、アイテムＬ（ｉ）のクラス数ごとに、ホップ数の合計が最小のものだけについてＤｉｖｅｒｓｉｔｙを算出し、算出したＤｉｖｅｒｓｉｔｙのうち最大のものと上位リストＬのＤｉｖｅｒｓｉｔｙと比較して、アイテムＭ（ｉｉ）と入れ替えるか否かを判定することにより、すべての組合せについてＤｉｖｅｒｓｉｔｙを算出することなく、Ｄｉｖｅｒｓｉｔｙが最大となるようにアイテムの入れ替えが可能となる。
【符号の説明】
【００４２】
１…アイテム推薦装置
１１…入力部
１２…算出部
１３…入替部
１４…タクソノミ蓄積部
１５…推薦アイテム蓄積部
【図１】
0005309182.tif 000005
【図２】
0005309182.tif 000006
【図３】
0005309182.tif 000007
【図４】
0005309182.tif 000008
【図５】
0005309182.tif 000009