JP5422069B1 - アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム - Google Patents
アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム Download PDFInfo
- Publication number
- JP5422069B1 JP5422069B1 JP2013047533A JP2013047533A JP5422069B1 JP 5422069 B1 JP5422069 B1 JP 5422069B1 JP 2013047533 A JP2013047533 A JP 2013047533A JP 2013047533 A JP2013047533 A JP 2013047533A JP 5422069 B1 JP5422069 B1 JP 5422069B1
- Authority
- JP
- Japan
- Prior art keywords
- user
- representative
- hash
- item
- recommendation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 42
- 239000000203 mixture Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 238000005070 sampling Methods 0.000 description 10
- 230000010365 information processing Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】推薦リストを作成するユーザの数を絞り込み、必要とする記憶装置の容量を削減する。
【解決手段】アイテム推薦システム1であって、ユーザおよびアイテム毎の購買情報を取得する購買情報取得手段10と、各購買情報を用いて各ユーザのユーザ特徴量を算出するユーザ特徴量算出手段20と、ユーザ特徴量を用いて算出した代表判定値に基づいて所定の数の代表ユーザを判別し、該代表ユーザと代表判別値とを代表ユーザ記憶手段77に格納する代表ユーザ決定手段30と、各ユーザについて代表判定値を算出し、代表ユーザ記憶手段77の各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定する類似代表ユーザ発見手段40と、購買情報の各アイテムについて代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成する推薦リスト作成手段50とを有する。
【選択図】図1
【解決手段】アイテム推薦システム1であって、ユーザおよびアイテム毎の購買情報を取得する購買情報取得手段10と、各購買情報を用いて各ユーザのユーザ特徴量を算出するユーザ特徴量算出手段20と、ユーザ特徴量を用いて算出した代表判定値に基づいて所定の数の代表ユーザを判別し、該代表ユーザと代表判別値とを代表ユーザ記憶手段77に格納する代表ユーザ決定手段30と、各ユーザについて代表判定値を算出し、代表ユーザ記憶手段77の各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定する類似代表ユーザ発見手段40と、購買情報の各アイテムについて代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成する推薦リスト作成手段50とを有する。
【選択図】図1
Description
本発明は、ユーザにアイテムを推薦するアイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラムに関する。
アイテム推薦の手法はいくつも提案されているが、いずれの手法も推薦リストを作成する際に、ユーザとアイテムの組合せ分の推薦スコアを計算する必要がある。
例えば、非特許文献1記載の技術では、購買履歴(どのユーザがどのアイテムを購買したかの情報)を用いて各ユーザの各アイテムの購買確率を算出し、その値が高い順に各ユーザにアイテムのリストを提示する。この技術に基づく推薦システムでは、ユーザ一人一人に対して全てのアイテムの購買確率が計算されることになる。
特許文献1では、利用者に興味を持つ部分のテキストを指定させ、そこに含まれる単語の出現頻度に基づいてユーザの興味を推定し、ユーザの興味を表す単語に基づいてアイテムを検索し、ユーザの興味のあるアイテムを提示する。この場合、ユーザ一人一人の興味を示す単語が異なると、作成される推薦リストも異なる。
Resnick, P. et al., "GroupLens: An open architecture for collaborative filtering of netnews". CSCW ’94: Proceedings of the 1994 ACM conference on Computer supported cooperative work, ACM Press New York, 1994.
アイテム推薦の応答速度を高めるために、予め作成しておいた推薦リストを記憶装置に格納しておき、推薦を行う際に記憶装置から推薦リストを読み出すことで、アイテムの推薦を行うことが考えられる。この場合、記憶装置にはユーザ数分の推薦リストを格納できるだけの容量が必要になる。そのため、推薦システムを導入するE-Commerceサービスの利用者が莫大な数(たとえば100万人規模)になると、記憶装置に全ユーザの推薦リストを格納する場合、膨大な記憶装置が必要となる。
具体的には、特許文献1の手法を用いて商品を推薦する場合、一意に異なる興味キーワードの数分の推薦リストを記憶装置に格納することになる。興味キーワードはユーザ一人一人で異なる可能性があるため、記憶装置に格納する推薦リストの数は最悪の場合ユーザ数に比例する。また、非特許文献1の手法で商品を推薦する場合、ユーザ数分の推薦リストを記憶装置に保持することになる。
本発明は、上記の点に鑑みてなされたものであり、推薦リストを作成するユーザの数を絞り込み、必要とする記憶装置の容量を削減するアイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラムを提供することを目的とする。
上記目的を達成するため、請求項1記載の本発明は、アイテム推薦システムであって、ユーザおよびアイテム毎の購買情報を取得し、購買情報記憶手段に格納する購買情報取得手段と、前記購買情報記憶手段に格納された各購買情報を用いて各ユーザの購買に関するユーザ特徴量を算出し、ユーザ特徴量記憶手段に格納するユーザ特徴量算出手段と、代表ユーザの数が所定の数に達するまで、各ユーザを代表ユーザとするか否かを、前記ユーザ特徴量を用いて算出した代表判定値に基づいて判別し、代表ユーザとして判別した場合、該ユーザと、前記代表判別値とを代表ユーザ記憶手段に格納するとともに、代表ユーザとしない場合は、該ユーザと、該ユーザの代表判別値と一致する代表ユーザとを類似代表ユーザ記憶手段に格納する代表ユーザ決定手段と、類似代表ユーザ記憶手段に存在しない各ユーザについて、前記ユーザ特徴量を用いて代表判定値を算出し、前記代表ユーザ記憶手段に格納された各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定し、該ユーザと決定した代表ユーザとを類似代表ユーザ記憶手段に格納する類似代表ユーザ発見手段と、前記購買情報記憶手段に記憶された購買情報の各アイテムについて、代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶手段に格納する推薦リスト作成手段と、を有することを要旨とする。
請求項2記載の本発明は、アイテム推薦システムであって、アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する代表ユーザを取得し、該代表ユーザの推薦リストを前記推薦リスト記憶手段から抽出し、前記端末に提示する推薦処理手段を、さらに有することを要旨とする。
請求項3記載の本発明は、アイテム推薦システムであって、前記代表ユーザ決定手段は、前記所定の代表ユーザ数と、ユーザ特徴量のトピック数とを用いてハッシュパラメータを算出し、指定したハッシュコード数分、および前記ユーザ特徴量のトピック数分の組み合わせでトピックハッシュを生成し、前記ハッシュコード数分、前記ハッシュパラメータを用いてハッシュ乱数を生成し、前記ハッシュコード数分、乱数を発生してハッシュコードとし、前記トピック毎のユーザ特徴量と、トピックハッシュと、ハッシュ乱数と、ハッシュコードとを用いて、各ユーザの前記代表判定値であるハッシュ値を算出する、ハッシュパラメータ算出手段を有することを要旨とする。
請求項4記載の本発明は、コンピュータが行うアイテム推薦方法であって、ユーザおよびアイテム毎の購買情報を取得し、購買情報記憶部に格納する購買情報取得ステップと、前記購買情報記憶部に格納された各購買情報を用いて各ユーザの購買に関するユーザ特徴量を算出し、ユーザ特徴量記憶部に格納するユーザ特徴量算出ステップと、代表ユーザの数が所定の数に達するまで、各ユーザを代表ユーザとするか否かを、前記ユーザ特徴量を用いて算出した代表判定値に基づいて判別し、代表ユーザとして判別した場合、該ユーザと、前記代表判別値とを代表ユーザ記憶部に格納するとともに、代表ユーザとしない場合は、該ユーザと、該ユーザの代表判別値と一致する代表ユーザとを類似代表ユーザ記憶部に格納する代表ユーザ決定ステップと、類似代表ユーザ記憶部に存在しない各ユーザについて、前記ユーザ特徴量を用いて代表判定値を算出し、前記代表ユーザ記憶部に格納された各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定し、該ユーザと決定した代表ユーザとを類似代表ユーザ記憶部に格納する類似代表ユーザ発見ステップと、前記購買情報記憶部に記憶された購買情報の各アイテムについて、代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶部に格納する推薦リスト作成ステップと、を行うことを要旨とする。
請求項5記載の本発明は、アイテム推薦方法であって、アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する代表ユーザを取得し、該代表ユーザの推薦リストを前記推薦リスト記憶部から抽出し、前記端末に提示する推薦処理ステップを、さらに行うことを要旨とする。
請求項6記載の本発明は、アイテム推薦方法であって、前記代表ユーザ決定ステップは、前記所定の代表ユーザ数と、ユーザ特徴量のトピック数とを用いてハッシュパラメータを算出するステップと、指定したハッシュコード数分、および前記ユーザ特徴量のトピック数分の組み合わせでトピックハッシュを生成するステップと、前記ハッシュコード数分、前記ハッシュパラメータを用いてハッシュ乱数を生成するステップと、前記ハッシュコード数分、乱数を発生してハッシュコードとするステップと、前記トピック毎のユーザ特徴量と、トピックハッシュと、ハッシュ乱数と、ハッシュコードとを用いて、各ユーザの前記代表判定値であるハッシュ値を算出するステップと、を行うことを要旨とする。
請求項7記載の本発明は、前記アイテム推薦システムとしてコンピュータを機能させるためのアイテム推薦プログラムである。
本発明によれば、推薦リストを作成するユーザの数を絞り込み、必要とする記憶装置の容量を削減するアイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラムを提供することができる。
以下、本発明の実施の形態について、図面を参照して説明する。
図1は、本発明の一実施の形態におけるアイテム推薦システムの構成を示す。図示するアイテム推薦システム1は、購買情報処理部10、ユーザ特徴量算出部20、代表ユーザ決定部30、類似代表ユーザ発見部40、推薦リスト作成部50、推薦処理部60、記録部70、通信部80、および入出力部90を備える。通信部80は、ネットワーク3に接続されており、入出力部90は、入力装置や表示装置等の外部装置4に接続されている。
購買情報処理部10は、ユーザおよびアイテム毎の購買情報を取得し、購買情報テーブル71に格納する。ユーザ特徴量算出部20は、購買情報テーブル71に格納された各購買情報を用いて各ユーザの購買に関するユーザ特徴量(トピック比率)を算出し、ユーザ特徴量テーブル72に格納する。本実施形態では、ユーザ特徴量に後述するトピック比率を用いるものとする。
代表ユーザ決定部30は、代表ユーザの数が所定の数に達するまで、各ユーザを代表ユーザとするか否かを、ユーザ特徴量を用いて算出した代表判定値(ハッシュ値)に基づいて判別し、代表ユーザとして判別した場合、該ユーザと、代表判別値とを代表ユーザテーブル77に格納するとともに、代表ユーザとしない場合は、該ユーザと、該ユーザの代表判別値と一致する代表ユーザとを類似代表ユーザテーブル78に格納する。本実施形態では、代表判定値に後述するハッシュ値を用いるものとする。
また、代表ユーザ決定部30は、ハッシュパラメータ算出部31を備える。ハッシュパラメータ算出部31は、所定の代表ユーザ数と、ユーザ特徴量のトピック数とを用いてハッシュパラメータを算出し、指定したハッシュコード数分、およびユーザ特徴量のトピック数分の組み合わせでトピックハッシュを生成し、トピックハッシュ記憶手段74に格納し、ハッシュコード数分、ハッシュパラメータを用いてハッシュ乱数を生成してハッシュ乱数テーブル75に格納し、ハッシュコード数分、乱数を発生してハッシュコードとし、ハッシュコードテーブル76に格納し、トピック毎のユーザ特徴量と、トピックハッシュと、ハッシュ乱数と、ハッシュコードとを用いて、各ユーザの代表判定値であるハッシュ値を算出する。
類似代表ユーザ発見部40は、類似代表ユーザテーブル78に存在しない各ユーザについて、ユーザ特徴量を用いて代表判定値を算出し、代表ユーザテーブル77に格納された各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定し、該ユーザと決定した代表ユーザとを類似代表ユーザテーブル78に格納する。
推薦リスト作成部50は、購買情報テーブル71に記憶された購買情報の各アイテムについて、代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リストテーブル79に格納する。
推薦処理部60は、アイテム推薦リクエストを外部端末2から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する代表ユーザを取得し、該代表ユーザの推薦リストを推薦リストテーブル79から抽出し、外部端末2に提示する。
記録部70には、購買情報テーブル71、ユーザ特徴量テーブル72、アイテム混合比テーブル73、トピックハッシュテーブル74、ハッシュ乱数テーブル75、ハッシュコードテーブル76、代表ユーザテーブル77、類似代表ユーザテーブル78および推薦リストテーブル79が記憶される。以下に各テーブルについて説明する。
<購買情報テーブル71>
図2は、購買情報テーブル71の一例を示す図である。購買情報テーブル71には、E-Commerceサービスにおいて、購入されたアイテム(商品やサービスなど)および購入したユーザに関する購買情報が記憶される。図示する購買情報テーブル71には、ユーザIDフィールドと、アイテムIDフィールドとが含まれる。ユーザIDフィールドには、該購買に関するユーザを特定するユーザ識別子が、購買情報処理部10により設定される。アイテムIDフィールドには、該購買がいずれのアイテムに関するものかを特定するアイテム識別子が、購買情報処理部10により設定される。
図2は、購買情報テーブル71の一例を示す図である。購買情報テーブル71には、E-Commerceサービスにおいて、購入されたアイテム(商品やサービスなど)および購入したユーザに関する購買情報が記憶される。図示する購買情報テーブル71には、ユーザIDフィールドと、アイテムIDフィールドとが含まれる。ユーザIDフィールドには、該購買に関するユーザを特定するユーザ識別子が、購買情報処理部10により設定される。アイテムIDフィールドには、該購買がいずれのアイテムに関するものかを特定するアイテム識別子が、購買情報処理部10により設定される。
<ユーザ特徴量テーブル72>
図3は、ユーザ特徴量テーブル72の一例を示す図である。ユーザ特徴量テーブル72は、各ユーザと各トピックとの結びつき(関連性)の強さを示すものであって、ユーザおよびトピック毎にレコードが生成される。トピック(分類)は、購買情報テーブル71の購買レコードを所定の数にグルーピングした分類結果である。
図3は、ユーザ特徴量テーブル72の一例を示す図である。ユーザ特徴量テーブル72は、各ユーザと各トピックとの結びつき(関連性)の強さを示すものであって、ユーザおよびトピック毎にレコードが生成される。トピック(分類)は、購買情報テーブル71の購買レコードを所定の数にグルーピングした分類結果である。
図示するユーザ特徴量テーブル72には、ユーザIDフィールドと、トピックIDフィールドと、トピック比率フィールドとが含まれる。トピック比率フィールドには、該ユーザuの購買において、対応するトピックzが選択される確率であるトピック比率P(z|u)が、ユーザ特徴量算出部20により設定される。なお、本実施形態では、トピック比率をユーザ特徴量として用いる。
<アイテム混合比テーブル73>
図4は、アイテム混合比テーブル73の一例を示す図である。図示するアイテム混合比テーブル73には、トピックIDフィールドと、アイテムIDフィールドと、アイテム混合比フィールドとが含まれる。アイテム混合比フィールドには、該トピックzが選択された場合に、該アイテムiが購買される確率P(i|z)がユーザ特徴量算出部20により設定される。
図4は、アイテム混合比テーブル73の一例を示す図である。図示するアイテム混合比テーブル73には、トピックIDフィールドと、アイテムIDフィールドと、アイテム混合比フィールドとが含まれる。アイテム混合比フィールドには、該トピックzが選択された場合に、該アイテムiが購買される確率P(i|z)がユーザ特徴量算出部20により設定される。
<トピックハッシュテーブル74>
図5は、トピックハッシュテーブル74の一例を示す図である。図示するトピックハッシュテーブル74には、コードIDフィールドと、トピックIDフィールドと、トピックハッシュフィールドとが含まれる。コードIDフィールドには、ハッシュ値計算に利用する複数のハッシュコードのそれぞれを特定するIDが、代表ユーザ決定部30により設定される。トピックハッシュフィールドには、ハッシュ値計算に利用する次元がトピック数で各要素が乱数で初期化されたベクトルの要素値が、代表ユーザ決定部30により設定される。
図5は、トピックハッシュテーブル74の一例を示す図である。図示するトピックハッシュテーブル74には、コードIDフィールドと、トピックIDフィールドと、トピックハッシュフィールドとが含まれる。コードIDフィールドには、ハッシュ値計算に利用する複数のハッシュコードのそれぞれを特定するIDが、代表ユーザ決定部30により設定される。トピックハッシュフィールドには、ハッシュ値計算に利用する次元がトピック数で各要素が乱数で初期化されたベクトルの要素値が、代表ユーザ決定部30により設定される。
<ハッシュ乱数テーブル75>
図6は、ハッシュ乱数テーブル75の一例を示す図である。図示するハッシュ乱数テーブル75には、コードIDフィールドと、ハッシュ乱数フィールドとが含まれる。ハッシュ乱数フィールドには、該バケット(ハッシュテーブルのスロット/要素)の該コードに関するハッシュ乱数の値が、代表ユーザ決定部30により設定される。
図6は、ハッシュ乱数テーブル75の一例を示す図である。図示するハッシュ乱数テーブル75には、コードIDフィールドと、ハッシュ乱数フィールドとが含まれる。ハッシュ乱数フィールドには、該バケット(ハッシュテーブルのスロット/要素)の該コードに関するハッシュ乱数の値が、代表ユーザ決定部30により設定される。
<ハッシュコードテーブル76>
図7は、ハッシュコードテーブル76の一例を示す図である。図示するハッシュコードテーブル76は、コードIDフィールドと、ハッシュコードフィールドとが含まれる。ハッシュコードフィールドには、該バケットの該コードに関するハッシュコードの値が、代表ユーザ決定部30により設定される。
図7は、ハッシュコードテーブル76の一例を示す図である。図示するハッシュコードテーブル76は、コードIDフィールドと、ハッシュコードフィールドとが含まれる。ハッシュコードフィールドには、該バケットの該コードに関するハッシュコードの値が、代表ユーザ決定部30により設定される。
<代表ユーザテーブル77>
図8は、代表ユーザテーブル77の一例を示す図である。図示する代表ユーザテーブル77は、代表ユーザIDフィールドと、ハッシュ値フィールドとが含まれる。代表ユーザIDフィールドには、代表ユーザ決定部30が決定した代表ユーザのユーザIDが設定される。ハッシュ値フィールドは、後述する類似代表ユーザ発見時に利用するハッシュテーブルの値が、代表ユーザ決定部30により設定される。なお、本実施形態では、ハッシュ値フィールドに設定される値を、代表判定値として用いる。
図8は、代表ユーザテーブル77の一例を示す図である。図示する代表ユーザテーブル77は、代表ユーザIDフィールドと、ハッシュ値フィールドとが含まれる。代表ユーザIDフィールドには、代表ユーザ決定部30が決定した代表ユーザのユーザIDが設定される。ハッシュ値フィールドは、後述する類似代表ユーザ発見時に利用するハッシュテーブルの値が、代表ユーザ決定部30により設定される。なお、本実施形態では、ハッシュ値フィールドに設定される値を、代表判定値として用いる。
<類似代表ユーザテーブル78>
図9は、類似代表ユーザテーブル78の一例を示す図である。類似代表ユーザテーブル78は、各ユーザと、当該ユーザに類似する代表ユーザとを対応付けたテーブルである。図示する類似代表ユーザテーブル78は、ユーザIDフィールドと、代表ユーザIDフィールドとが含まれる。代表ユーザIDフィールドには、対応するユーザに類似する代表ユーザのユーザIDが、代表ユーザ決定部30により設定される。なお、代表ユーザの場合は、ユーザIDフィールドと代表ユーザIDフィールドに、同じユーザIDが設定される。
図9は、類似代表ユーザテーブル78の一例を示す図である。類似代表ユーザテーブル78は、各ユーザと、当該ユーザに類似する代表ユーザとを対応付けたテーブルである。図示する類似代表ユーザテーブル78は、ユーザIDフィールドと、代表ユーザIDフィールドとが含まれる。代表ユーザIDフィールドには、対応するユーザに類似する代表ユーザのユーザIDが、代表ユーザ決定部30により設定される。なお、代表ユーザの場合は、ユーザIDフィールドと代表ユーザIDフィールドに、同じユーザIDが設定される。
<推薦リストテーブル79>
図10は、推薦リストテーブル79の一例を示す図である。推薦リストテーブル79は、代表ユーザ毎に推薦するアイテムが設定されたテーブルである。図示する推薦リストテーブル79には、代表ユーザIDフィールドと、アイテムIDフィールドと、推薦スコアフィールドとが含まれる。推薦スコアフィールドには、推薦リスト作成部50が算出した、該代表ユーザへの該アイテムの推薦スコアが設定される。
図10は、推薦リストテーブル79の一例を示す図である。推薦リストテーブル79は、代表ユーザ毎に推薦するアイテムが設定されたテーブルである。図示する推薦リストテーブル79には、代表ユーザIDフィールドと、アイテムIDフィールドと、推薦スコアフィールドとが含まれる。推薦スコアフィールドには、推薦リスト作成部50が算出した、該代表ユーザへの該アイテムの推薦スコアが設定される。
上記説明したアイテム推薦システム1は、例えば、CPUと、メモリと、HDD等の外部記憶装置とを備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされたアイテム推薦システム1用のプログラムを実行することにより、アイテム推薦システム1の各機能が実現される。また、アイテム推薦システム1用のプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD−ROMなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
次に、本実施形態の具体的な処理について説明する。
図11は、本実施形態における購買情報更新時の処理のフローチャートである。なお、購買情報更新のタイミングは、たとえばシステム管理者が手動で管理・指示するようにしてもよいし、ユーザが何らかのアイテムを購買した場合に自動で更新するようにしてもよい。
ステップ110)購買情報処理部10は、該アイテム推薦システム1のE-Commerce処理部(不図示)、または図示しないE-Commerceシステムなどから購買情報(購買履歴情報)を取得する。E-Commerce処理部またはE-Commerceシステムは、商品やサービスなどのアイテムを販売するサービスを、ネットワーク3を介して外部端末2に提供する。
なお、購買情報処理部10は、システム管理者による指示を受け付けたタイミングで、E-Commerce処理部等から購買情報を取得してもよく、また、アイテムが購入されたタイミングでE-Commerce処理部等が、購買情報を購買情報処理部10に送信することとしてもよい。
ステップ120)購買情報処理部10は、取得した購入情報を購買情報テーブル71に登録する。すなわち、購入されたアイテム毎に、購入したユーザのユーザIDおよび購入されたアイテムのアイテムIDを、アイテムIDフィールドおよびユーザIDフィールドに設定したレコードを購買情報テーブル71に登録する。
図12は、本実施形態におけるトピック決定時の処理のフローチャートである。トピック決定のタイミングは、たとえばシステム管理者が手動で管理・指示するようにしてもよく、また、定期的に自動で行うこととしてもよい。
ステップ210)ユーザ特徴量算出部20は、推薦のためのパラメータであるトピック数K、トピック比率P(z|u)算出のための事前パラメータα、アイテム混合比P(i|z)算出のための事前パラメータηを設定する。これらパラメータには、予め定めた所定の値(定数)を用いる。トピック数Kは、購買情報テーブル71の各購買レコードをいくつのトピック(分類)にグルーピングするかを指定するものである。
ステップ220)ユーザ特徴量算出部20は、購買情報テーブル71を参照し、購買情報、すなわち各購買レコードのユーザu={um}mと、アイテムi={im}mとを取得する。
ステップ230)ユーザ特徴量算出部20は、各購買レコードのトピックz={zm}mを決定する。ステップ230の処理については、図13で後述する。
ステップ240)ユーザ特徴量算出部20は、ステップ210で設定したパラメータのトピック数Kおよびαと、ステップ230で決定した各購買レコードのトピックzと、 式1とを用いて、トピック比率P(z|u)を算出する。トピック比率P(z|u)は、ユーザuの購買で、トピックzが選択される確率を示すものである。なお、トピック比率P (z|u)は、ユーザ特徴量を示す指標の1つである。
ここでmは、購買情報テーブル71の各購買レコードを特定する変数である。ユーザ特徴量算出部20は、ユーザuおよびトピックz毎に、トピック比率P(z|u)を設定したレコードを生成し、ユーザ特徴量テーブル72に登録する。各購買レコードには、ユーザIDとアイテムIDとが含まれるため、ユーザ毎に結びつきの強いトピックがわかる。
ステップ250)ユーザ特徴量算出部20は、ステップ210で設定したパラメータηと、ステップ230で決定した各購買レコードのトピックzと 、式2とを用いて、トピックzが選択された場合にアイテムiが購買される確率であるアイテム混合比P(i|z)を算出する。
ここでNは、ユニークアイテム数である。ユーザ特徴量算出部20は、トピックz、アイテムi、アイテム混合比P(i|z)を設定したレコードを生成し、アイテム混合比テーブル73に登録する。これにより、あるトピックに結びつきの強いアイテムがわかる。
次に、上記の図12のステップ230の処理を詳細に説明する。
図13は、図12のステップ230の処理のフローチャートである。
ステップ231)ユーザ特徴量算出部20は、各購買レコードのトピックzm(m=1,・・・,M)を、最小値1、最大値Kの乱数で初期化する。
そしてステップ232を、所定の回数繰り返す。繰り返しの回数については、予め設定した任意の数でも構わないし、各購買レコードのトピックzが収束したらそこで打ち切るようにしてもよい。図13では、所定の回数(例えば、500回)繰り返す例を示し、回数jを0で初期化し、S232を行った後、回数jをインクリメントし、回数jが500になるまで、S232を繰り返し行う。
ステップ232)ユーザ特徴量算出部20は、各購買レコードのトピックzm(m=1,・・・,M)を更新する。このステップ232の処理については、図14を用いて詳細に説明する。
図14は、図10のステップ232の処理のフローチャートである。
ユーザ特徴量算出部20は、全ての各購買レコードm=1,・・・,Mについて、ステップ2321とステップ2322とを行う。すなわち、最初にmに1を設定し、ステップ2321およびステップ2322を行った後、mをインクリメントし、mがMになるまで、ステップ2321およびステップ2322を繰り返し行う。
すなわち、最初にkに1を設定し、ステップ2321を行った後、kをインクリメントし、kがKになるまでステップ2321を繰り返し行うことで、1からKの各トピック候補のサンプリング確率を算出し、その後、ステップ2322を行う。
ステップ2322)ユーザ特徴量算出部20は、ステップ2321で算出した該購買レコードのトピックzmの各トピック候補k=1,・・・,K へアサインされるサンプリング確率に基づき、乱数を発生させて、zmを更新する。具体的には、k=2,・・・,Kについて、式4に従ってサンプリング確率を更新する。
その後、最小値0、最大値1の小数の乱数を発生させて、その値をサンプリング確率が上回る最小のkにアサインする。具体例を挙げて説明すると、今K=3として、式3に基づき算出された各トピック候補のサンプリング確率がそれぞれP(zm=1)=1.6、P(zm=2)=0.4、P(zm=3)=2.0であったとする。つまり、それぞれのトピックに4:1:5の割合でサンプリングされるようにしたい。このとき、式4と式5とを用いてP(zm=1)=0.4、P(zm=2)=0.5、P(zm=3)=1.0とサンプリング確率を更新し、最小値0、最大値1の小数の乱数を発生させてその値をサンプリング確率が上回る最小のkにアサインする。すなわち、発生させた乱数の値をサンプリング確率が上回る最小のkを、該購買レコードのトピックzmとして決定する。
図15は、本実施形態における代表ユーザ決定時の処理のフローチャートである。代表ユーザ決定のタイミングは、たとえばシステム管理者が手動で管理・指示するようにしてもよく、また、定期的に自動で行うこととしてもよい。
ステップ310)代表ユーザ決定部30は、トピックハッシュテーブル74の全レコードを削除する。
ステップ320)代表ユーザ決定部30は、ハッシュ乱数テーブル75の全レコードを削除する。
ステップ320)代表ユーザ決定部30は、ハッシュ乱数テーブル75の全レコードを削除する。
ステップ330)代表ユーザ決定部30は、ハッシュコードテーブル76の全レコードを削除する。
ステップ340)代表ユーザ決定部30は、代表ユーザテーブル77の全レコードを削除する。
ステップ350)代表ユーザ決定部30は、ハッシュ値算出に利用するハッシュコードの数であるコード数C、コードパラメータρを設定する。これらパラメータは、予め定めた所定の値(定数)を用いる。
ステップ360)代表ユーザ決定部30は、ハッシュパラメータ算出部31を呼び出し、ハッシュパラメータβを算出する。なお、ステップ360については、図16で後述する。
ステップ370)代表ユーザ決定部30は、コード、トピックの各組合せ(c,z)について、最小0、分散1の正規分布から生成される乱数でトピックハッシュαczを決定し、該コード、該トピックのトピックハッシュ値を設定したレコードを生成し、トピックハッシュテーブル74に登録する。
ステップ380)代表ユーザ決定部30は、各コードcについて、最小0、最大βの小数乱数でハッシュ乱数bcを決定し、該コードの該ハッシュ乱数値に応じてレコードを生成し、ハッシュ乱数テーブル75に登録する。
ステップ390)代表ユーザ決定部30は、各コードcについて、最小0、最大ρの乱数rtcでハッシュコードを決定し、該バケット、該コードのハッシュコード値に応じてレコードを生成し、ハッシュコードテーブル76に登録する。
ステップ3A0)代表ユーザ決定部30は、生成したトピックハッシュと、ハッシュ乱数と、ハッシュコードとを用いて、購買情報テーブル71、ユーザ特徴量テーブル72を参照し、代表ユーザテーブル76と類似代表ユーザテーブル77を更新する。なお、ステップ3A0については、図17で後述する。
次に、上記の図15のステップ360の処理を詳細に説明する。
図16は、図15のステップ360の詳細な処理のフローチャートである。
ステップ361)ハッシュパラメータ算出部31は、ハッシュパラメータ算出係数Bを取得する。該ハッシュパラメータ算出係数Bは、予め与えておいた定数により設定される。
ステップ362)ハッシュパラメータ算出部31は、代表ユーザ数Wを取得する。該代表ユーザ数Wは、予め与えておいた定数により設定される。
ステップ363)ハッシュパラメータ算出部31は、トピック数Kを取得する。該パラメータは、予め与えておいた定数により設定される。
次に、上記の図15のステップ3A0の処理を詳細に説明する。
図17は、本発明の一実施の形態における図15のステップ3A0の詳細な処理のフローチャートである。
ステップ3A1)代表ユーザ決定部30は、購買情報テーブル71を参照し、ユーザIDフィールドに出現する全ユーザ集合Uを取得する。
ステップ3A2)代表ユーザ決定部30は、代表ユーザ集合を格納する一時変数Vを設定し、その値を空集合に設定する。
全ユーザ集合Uに含まれる各ユーザuについて、ステップ3A3〜3AAを行う。すなわち、全ユーザ集合Uに未処理のユーザuがあるか否かを判別し、未処理のユーザuがある場合は未処理のユーザuを選択し、選択したユーザuについてステップ3A3〜3AAの処理を行う。
ステップ3A3)代表ユーザ決定部30は、ユーザ特徴量テーブル72を参照しユーザuの各トピックzに対するトピック比率P(z|u)を取得する。
ここでfloor()は、引数を越えない最大の整数を返す関数とする。
ステップ3A5)代表ユーザ決定部30は、処理中の代表ユーザ集合V中の各代表ユーザvのハッシュ値hvと該ユーザuのhuとを比較し、該ユーザuのhuと一致する代表ユーザvのハッシュ値hvがある場合、ステップ3A6を行い、次のユーザの処理に移る。一方、いずれの代表ユーザvともハッシュ値が異なる場合、ステップ3A7、ステップ3A8、ステップ3A9、ステップ3AAを行う。
ステップ3A6)代表ユーザ決定部30は、ユーザIDフィールドの値がu、代表ユーザIDフィールドの値がvのレコードを生成し、類似代表ユーザテーブル78に登録する。
ステップ3A7)代表ユーザ決定部30は、ユーザuのhuと一致する代表ユーザvのハッシュ値hvが代表ユーザ集合Vの中に無い場合、代表ユーザ集合Vに該ユーザuを追加する(V←V∪{u})
ステップ3A8)代表ユーザ決定部30は、ユーザuの各バケットtに対するハッシュ値hutに応じて、代表ユーザIDフィールドをu、ハッシュ値フィールドhutのレコードを生成し、代表ユーザテーブル77に登録する。
ステップ3A8)代表ユーザ決定部30は、ユーザuの各バケットtに対するハッシュ値hutに応じて、代表ユーザIDフィールドをu、ハッシュ値フィールドhutのレコードを生成し、代表ユーザテーブル77に登録する。
ステップ3A9)代表ユーザ決定部30は、ユーザIDフィールドの値がu、代表ユーザIDフィールドの値がuのレコードを生成し、類似代表ユーザテーブル78に登録する。
ステップ3AA)代表ユーザ決定部30は、代表ユーザ集合Vの要素数と代表ユーザ数Wとを比較し、代表ユーザ集合Vの要素数と代表ユーザ数Wとが等しい場合、本処理を終了する。一方、代表ユーザ集合Vの要素数の方が代表ユーザ数Wよりも小さい場合、次のユーザの処理に移る。ステップ3AAを行うことで、代表ユーザ数をW以内に抑えることができる。
次に、本実施形態における類似代表ユーザ発見時の処理を詳細に説明する。
図18は、類似代表ユーザ発見時の処理のフローチャートである。類似代表ユーザ発見処理は、代表ユーザ決定処理の直後に自動で行われる。
ステップ410)類似代表ユーザ発見部40は、購買情報テーブル71を参照し、全ユーザ集合 U を取得する。
ステップ420)類似代表ユーザ発見部40は、類似代表ユーザテーブル78を参照し、ユーザIDフィールドに出現する全ユーザ集合を類似代表ユーザ発見済ユーザ集合U’として取得する。
ステップ430)類似代表ユーザ発見部40は、代表ユーザテーブル77を参照し、各代表ユーザと、対応するハッシュ値とを取得し、ハッシュ値マップとしてメモリに保持する。なお、本実施形態では、ステップ430により代表ユーザテーブル77をメモリに保持することでステップ460の高速化を図っているが、本処理を行うことなく、ステップ460で、直接、代表ユーザテーブル77を参照することとしてもよい。
そして、類似代表ユーザ発見部40は、類似代表ユーザが発見されていないユーザ集合U−U’に出現する各ユーザuについて、ステップ440〜470を行う。
ステップ440)類似代表ユーザ発見部40は、ユーザ特徴量テーブル72を参照し、ユーザuのトピック毎のトピック比率P(z|u)を取得する。
ここで、floor()は、引数を越えない最大の整数を返す関数とする。
ステップ460)類似代表ユーザ発見部40は、ハッシュ値マップとしてメモリに保持された代表ユーザ集合V中の各代表ユーザvのハッシュ値hvと該ユーザuのhuとを比較し、該ユーザuのhuと一致する代表ユーザvのハッシュ値hvが存在するか否かを判別する。該ユーザuのhuと一致する代表ユーザvのハッシュ値hvが存在する場合、ステップ480を行い、次のユーザの処理に移る。一方、いずれの代表ユーザvともハッシュ値が異なる場合、ステップ470およびステップ480を行い、次のユーザの処理に移る。
ステップ470)類似代表ユーザ発見部40は、全代表ユーザ中でユーザuのハッシュ値huと最も近いハッシュ値を持つ代表ユーザvを探索する。このとき、探索には、例えば文献1(Bentley, ”Multidimensional Binary Search Tree Used for Associative Searching”, 1975)記載の二分探索木等を用いる。
ステップ480)類似代表ユーザ発見部40は、ユーザIDフィールドの値に該ユーザのuを、代表ユーザIDフィールドの値がvのレコードを構成し、類似代表ユーザテーブル78に登録する。すなわち、ステップ460:YESの場合、代表ユーザIDフィールドには、該ユーザuのhuとハッシュ値hvが一致する代表ユーザvを設定し、ステップ460:NOの場合、代表ユーザIDフィールドvには、該ユーザuのhuとハッシュ値hvが最も近い代表ユーザvを設定する。
図19は、本発明の実施形態における推薦リスト作成時の処理のフローチャートである。推薦リスト作成のタイミングは、たとえばシステム管理者が手動で管理・指示することができるようにしてもよいし、定期的に自動で行ってもよい。
ステップ510)推薦リスト作成部50は、アイテム混合比テーブル73を参照し、各トピックzにおける各アイテムiのアイテム混合比P(i|z)を取得する。
ステップ520)推薦リスト作成部50は、代表ユーザテーブル77を参照し、代表ユーザIDフィールドに出現する全ての代表ユーザ集合Vを取得する。そして、取得した代表ユーザ集合Vに存在する各代表ユーザv について、ステップ530〜550を行う。すなわち、代表ユーザ集合Vの中に未処理の代表ユーザv があるか否かを判別し、未処理の代表ユーザv がある場合は未処理の代表ユーザv を選択し、選択した代表ユーザv にステップ530〜550を行う。
ステップ530)推薦リスト作成部50は、ユーザ特徴量テーブル72を参照し、ユーザIDフィールドの値がvのレコードから、代表ユーザvの各トピックzに対するトピック比率P(z|v)を取得する。
ステップ540)推薦リスト作成部50は、購買情報テーブル中に出現する全ての各アイテムiについて、取得したアイテム混合比とトピック比率とを用いて、アイテムiの代表ユーザvに対する推薦スコアP(i|v)を式9に従って算出する。
ステップ550)推薦リスト作成部50は、ステップ540で算出した各アイテムの推薦スコアP(i|v)に基づいて、代表ユーザvに対していずれのアイテムを推薦アイテムとするかを決定する。そして、推薦リスト作成部50は、決定した推薦アイテム毎に、ユーザIDフィールドにv、アイテムIDフィールドにi、推薦スコアフィールドにP(i|v)を設定したレコードを生成し、推薦リストテーブル79に登録する。なお、推薦リストテーブル79のレコードには、ユーザIDと推薦アイテムとが対応付けて記憶されるため、ユーザIDでレコードを抽出することで推薦リストが生成される。
推薦アイテムとするか否かの判断基準としては、例えば、推薦スコアの値が大きいものから順に予め設定した任意の件数のアイテムを推薦アイテムとして決定すること、または、推薦スコアに対して何らかの閾値を設けて、 推薦スコアがその閾値を超えるアイテムを推薦アイテムとして決定すること、などが考えられる。
図20は、本実施形態における推薦処理時の処理のフローチャートである。推薦処理は、例えば通信部80およびネットワーク3を通じて外部端末2からアイテム推薦システム1にアイテム推薦のリクエストが送信された場合に実行される。
ステップ610)推薦処理部60は、外部端末2からユーザuに関するアイテム推薦のリクエストを受信する。なお、このリクエストには、引数として対象となるユーザuのユーザIDが含まれている。
ステップ620)推薦処理部60は、類似代表ユーザテーブル78を参照し、リクエストで指定されたユーザIDの値uに対応する代表ユーザIDフィールドの値vを取得する。
ステップ630)推薦処理部60は、ステップ620で取得した代表ユーザvに対応する全ての推薦アイテムiを、推薦リストテーブル79から抽出して、該ユーザu用の推薦リストを生成し、リクエスト送信元の外部端末2に推薦リストを提示することで、該ユーザuにアイテムを推薦する。
以上説明した本実施形態では、非常にユーザ数の多いインターネット上のサービスでアイテムの推薦を行うために、購買情報および推薦処理の中間結果を元に予め指定した一定数の代表ユーザを選択し、各代表ユーザ用の推薦リストのみ作成し、代表でないユーザについては類似する代表ユーザの推薦リストを用いる。
具体的には、本実施形態では、推薦リストを予め作成し、記憶装置に格納しておく方式において、全ユーザの推薦リストを記憶装置に保持しておくのではなく、予め指定しておいた数の代表ユーザを選択し、該代表ユーザの推薦リストのみを記憶装置に保持しておき、代表でないユーザには最も類似する代表ユーザの推薦リストを用いる。
これにより、本実施形態では、推薦リストを記憶する記憶装置の容量を小規模化することができる。また、本実施形態では、従来の技術では不可能であった、非常にユーザ数の多いインターネット上のサービス上でのアイテムの推薦が行えるようになり、インターネット上のサービスの多数のユーザの購買が促進されるため、大幅な収益増につながる。
また、本実施形態では、記憶装置を小規模化することにより、アイテム推薦における計算コストおよび処理負荷を低減することができ、ユーザ数が膨大なシステムにおいても、より高速なアイテム推薦を実現することができる。
なお、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
1 :アイテム推薦システム
10:購買情報処理部
20:ユーザ特徴量算出部
30:代表ユーザ決定部
31:ハッシュパラメータ算出部
40:類似代表ユーザ発見部
50:推薦リスト作成部
60:推薦処理部
70:記憶部
71:購買情報テーブル
72:ユーザ特徴量テーブル
73:アイテム混合比テーブル
74:トピックハッシュテーブル
75:ハッシュ乱数テーブル
76:ハッシュコードテーブル
77:代表ユーザテーブル
78:類似代表ユーザテーブル
79:推薦リストユーザテーブル
80:通信部
90:入出力部
2 :外部端末
3 :ネットワーク
4 :外部装置
10:購買情報処理部
20:ユーザ特徴量算出部
30:代表ユーザ決定部
31:ハッシュパラメータ算出部
40:類似代表ユーザ発見部
50:推薦リスト作成部
60:推薦処理部
70:記憶部
71:購買情報テーブル
72:ユーザ特徴量テーブル
73:アイテム混合比テーブル
74:トピックハッシュテーブル
75:ハッシュ乱数テーブル
76:ハッシュコードテーブル
77:代表ユーザテーブル
78:類似代表ユーザテーブル
79:推薦リストユーザテーブル
80:通信部
90:入出力部
2 :外部端末
3 :ネットワーク
4 :外部装置
Claims (7)
- アイテム推薦システムであって、
ユーザおよびアイテム毎の購買情報を取得し、購買情報記憶手段に格納する購買情報取得手段と、
前記購買情報記憶手段に格納された各購買情報を用いて各ユーザの購買に関するユーザ特徴量を算出し、ユーザ特徴量記憶手段に格納するユーザ特徴量算出手段と、
代表ユーザの数が所定の数に達するまで、各ユーザを代表ユーザとするか否かを、前記ユーザ特徴量を用いて算出した代表判定値に基づいて判別し、代表ユーザとして判別した場合、該ユーザと、前記代表判別値とを代表ユーザ記憶手段に格納するとともに、代表ユーザとしない場合は、該ユーザと、該ユーザの代表判別値と一致する代表ユーザとを類似代表ユーザ記憶手段に格納する代表ユーザ決定手段と、
類似代表ユーザ記憶手段に存在しない各ユーザについて、前記ユーザ特徴量を用いて代表判定値を算出し、前記代表ユーザ記憶手段に格納された各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定し、該ユーザと決定した代表ユーザとを類似代表ユーザ記憶手段に格納する類似代表ユーザ発見手段と、
前記購買情報記憶手段に記憶された購買情報の各アイテムについて、代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶手段に格納する推薦リスト作成手段と、を有すること
を特徴とするアイテム推薦システム。 - 請求項1記載のアイテム推薦システムであって、
アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する代表ユーザを取得し、該代表ユーザの推薦リストを前記推薦リスト記憶手段から抽出し、前記端末に提示する推薦処理手段を、さらに有すること
を特徴とするアイテム推薦システム。 - 請求項1または2記載のアイテム推薦システムであって、
前記代表ユーザ決定手段は、
前記所定の代表ユーザ数と、ユーザ特徴量のトピック数とを用いてハッシュパラメータを算出し、
指定したハッシュコード数分、および前記ユーザ特徴量のトピック数分の組み合わせでトピックハッシュを生成し、
前記ハッシュコード数分、前記ハッシュパラメータを用いてハッシュ乱数を生成し、
前記ハッシュコード数分、乱数を発生してハッシュコードとし、
前記トピック毎のユーザ特徴量と、トピックハッシュと、ハッシュ乱数と、ハッシュコードとを用いて、各ユーザの前記代表判定値であるハッシュ値を算出する、ハッシュパラメータ算出手段を有すること
を特徴とするアイテム推薦システム。 - コンピュータが行うアイテム推薦方法であって、
ユーザおよびアイテム毎の購買情報を取得し、購買情報記憶部に格納する購買情報取得ステップと、
前記購買情報記憶部に格納された各購買情報を用いて各ユーザの購買に関するユーザ特徴量を算出し、ユーザ特徴量記憶部に格納するユーザ特徴量算出ステップと、
代表ユーザの数が所定の数に達するまで、各ユーザを代表ユーザとするか否かを、前記ユーザ特徴量を用いて算出した代表判定値に基づいて判別し、代表ユーザとして判別した場合、該ユーザと、前記代表判別値とを代表ユーザ記憶部に格納するとともに、代表ユーザとしない場合は、該ユーザと、該ユーザの代表判別値と一致する代表ユーザとを類似代表ユーザ記憶部に格納する代表ユーザ決定ステップと、
類似代表ユーザ記憶部に存在しない各ユーザについて、前記ユーザ特徴量を用いて代表判定値を算出し、前記代表ユーザ記憶部に格納された各代表判定値の中で最も類似する代表判定値の代表ユーザを該ユーザの代表ユーザとして決定し、該ユーザと決定した代表ユーザとを類似代表ユーザ記憶部に格納する類似代表ユーザ発見ステップと、
前記購買情報記憶部に記憶された購買情報の各アイテムについて、代表ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいて代表ユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶部に格納する推薦リスト作成ステップと、を行うこと
を特徴とするアイテム推薦方法。 - 請求項4記載のアイテム推薦方法であって、
アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する代表ユーザを取得し、該代表ユーザの推薦リストを前記推薦リスト記憶部から抽出し、前記端末に提示する推薦処理ステップを、さらに行うこと
を特徴とするアイテム推薦方法。 - 請求項4または5記載のアイテム推薦方法であって、
前記代表ユーザ決定ステップは、
前記所定の代表ユーザ数と、ユーザ特徴量のトピック数とを用いてハッシュパラメータを算出するステップと、
指定したハッシュコード数分、および前記ユーザ特徴量のトピック数分の組み合わせでトピックハッシュを生成するステップと、
前記ハッシュコード数分、前記ハッシュパラメータを用いてハッシュ乱数を生成するステップと、
前記ハッシュコード数分、乱数を発生してハッシュコードとするステップと、
前記トピック毎のユーザ特徴量と、トピックハッシュと、ハッシュ乱数と、ハッシュコードとを用いて、各ユーザの前記代表判定値であるハッシュ値を算出するステップと、を行うこと
を特徴とするアイテム推薦方法。 - 請求項1から3のいずれか一項に記載のアイテム推薦システムとしてコンピュータを機能させるためのアイテム推薦プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013047533A JP5422069B1 (ja) | 2013-03-11 | 2013-03-11 | アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013047533A JP5422069B1 (ja) | 2013-03-11 | 2013-03-11 | アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5422069B1 true JP5422069B1 (ja) | 2014-02-19 |
JP2014174783A JP2014174783A (ja) | 2014-09-22 |
Family
ID=50287262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013047533A Active JP5422069B1 (ja) | 2013-03-11 | 2013-03-11 | アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5422069B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611143A (zh) * | 2020-05-20 | 2020-09-01 | 浙江每日互动网络科技股份有限公司 | 数据处理方法及装置、电子设备和计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006506886A (ja) * | 2002-11-18 | 2006-02-23 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | プログラムの特性に基づいたクラスタリングを介したステレオタイプのプロファイルの作成 |
JP2007183859A (ja) * | 2006-01-10 | 2007-07-19 | Konica Minolta Holdings Inc | 情報検索システム、情報検索方法、及び情報管理装置 |
JP2007200099A (ja) * | 2006-01-27 | 2007-08-09 | Kirin Beverage Corp | アイテム選択支援装置、方法およびプログラム |
-
2013
- 2013-03-11 JP JP2013047533A patent/JP5422069B1/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006506886A (ja) * | 2002-11-18 | 2006-02-23 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | プログラムの特性に基づいたクラスタリングを介したステレオタイプのプロファイルの作成 |
JP2007183859A (ja) * | 2006-01-10 | 2007-07-19 | Konica Minolta Holdings Inc | 情報検索システム、情報検索方法、及び情報管理装置 |
JP2007200099A (ja) * | 2006-01-27 | 2007-08-09 | Kirin Beverage Corp | アイテム選択支援装置、方法およびプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611143A (zh) * | 2020-05-20 | 2020-09-01 | 浙江每日互动网络科技股份有限公司 | 数据处理方法及装置、电子设备和计算机可读存储介质 |
CN111611143B (zh) * | 2020-05-20 | 2023-06-30 | 每日互动股份有限公司 | 数据处理方法及装置、电子设备和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2014174783A (ja) | 2014-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7343568B2 (ja) | 機械学習のためのハイパーパラメータの識別および適用 | |
CN108304444B (zh) | 信息查询方法及装置 | |
US8046363B2 (en) | System and method for clustering documents | |
CN103593425B (zh) | 基于偏好的智能检索方法及*** | |
CN112100396B (zh) | 一种数据处理方法和装置 | |
JP4371382B2 (ja) | アクセス対象情報検索装置 | |
US20160283564A1 (en) | Predictive visual search enginge | |
CN104915426B (zh) | 信息排序方法、用于生成信息排序模型的方法及装置 | |
JP2002215659A (ja) | 情報検索支援方法および情報検索支援システム | |
JP7067884B2 (ja) | 分類装置、分類方法及び分類プログラム | |
JP5223865B2 (ja) | 知識発見支援システム、方法、及び、プログラム | |
CN110968802B (zh) | 一种用户特征的分析方法、分析装置及可读存储介质 | |
JP5622880B2 (ja) | アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム | |
JP2016509703A (ja) | ラベル付けされた主に非テキストのアイテムを検索するためのシステム及び方法 | |
JP5945206B2 (ja) | 商品推薦装置及び方法及びプログラム | |
JP5915274B2 (ja) | 情報検索方法、プログラムおよび情報検索装置 | |
KR100899930B1 (ko) | 연관 데이터 클래스 생성 방법 및 시스템 | |
JP5422069B1 (ja) | アイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラム | |
CN106294784B (zh) | 资源搜索方法及装置 | |
CN108170664B (zh) | 基于重点关键词的关键词拓展方法和装置 | |
JP5555238B2 (ja) | ベイジアンネットワーク構造学習のための情報処理装置及びプログラム | |
JP5883760B2 (ja) | 商品推薦装置及び方法及びプログラム | |
JP2004259083A (ja) | 情報検索方法、情報検索サーバ、及び情報検索プログラム | |
CN109614542B (zh) | 公众号推荐方法、装置、计算机设备及存储介质 | |
JP5589009B2 (ja) | 推薦クエリ抽出装置及び方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131122 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5422069 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |