JP5622880B2 - Item recommendation system, item recommendation method, and item recommendation program - Google Patents
Item recommendation system, item recommendation method, and item recommendation program Download PDFInfo
- Publication number
- JP5622880B2 JP5622880B2 JP2013047529A JP2013047529A JP5622880B2 JP 5622880 B2 JP5622880 B2 JP 5622880B2 JP 2013047529 A JP2013047529 A JP 2013047529A JP 2013047529 A JP2013047529 A JP 2013047529A JP 5622880 B2 JP5622880 B2 JP 5622880B2
- Authority
- JP
- Japan
- Prior art keywords
- item
- recommendation
- purchase information
- selection rate
- candidate
- 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
Images
Classifications
-
- G06F17/30—
Description
本発明は、ユーザにアイテムを推薦するアイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラムに関する。 The present invention relates to an item recommendation system for recommending items to a user, an item recommendation method, and an item recommendation program.
アイテム推薦の手法はいくつも提案されているが、いずれの手法も推薦リストを作成する際に、ユーザとアイテムの組合せ分の推薦スコアを計算する必要がある。 A number of item recommendation methods have been proposed. In any method, when creating a recommendation list, it is necessary to calculate a recommendation score for a combination of a user and an item.
例えば、非特許文献1記載の技術では、購買履歴(どのユーザがどのアイテムを購買したかの情報)を用いて各ユーザの各アイテムの購買確率を算出し、その値が高い順に各ユーザにアイテムのリストを提示する。この技術に基づく推薦システムでは、ユーザ一人一人に対して全てのアイテムの購買確率が計算されることになる。
For example, in the technique described in Non-Patent
特許文献1では、利用者に興味を持つ部分のテキストを指定させ、そこに含まれる単語の出現頻度に基づいてユーザの興味を推定し、ユーザの興味を表す単語に基づいてアイテムを検索し、ユーザの興味のあるアイテムを提示する。この場合、興味とアイテムの一致度を全てのアイテムについて計算する必要がある。
In
背景技術のように、推薦リスト作成のために、ユーザとアイテムの組合せ分の推薦スコアを計算する場合、アイテム数が増えれば増えるほど計算コストが増大する。 As in the background art, when calculating a recommendation score for a combination of a user and an item for creating a recommendation list, the calculation cost increases as the number of items increases.
具体的には、上記の特許文献1の手法を用いてアイテムを推薦する場合、興味キーワードとアイテムの組合せ数分の推薦スコアを算出することになる。非特許文献1の手法を用いてアイテムを推薦する場合、ユーザとアイテム数分の推薦スコアを算出することになる。
Specifically, when an item is recommended using the method of the above-described
本発明は、上記の点に鑑みてなされたものであり、推薦スコアを算出するアイテムの数を絞り込み、アイテム推薦における計算コストおよび処理負荷を低減するアイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラムを提供することを目的とする。 The present invention has been made in view of the above points. An item recommendation system, an item recommendation method, and an item recommendation program for reducing the calculation cost and processing load in item recommendation by narrowing down the number of items for calculating a recommendation score. The purpose is to provide.
上記目的を達成するため、請求項1記載の本発明は、アイテム推薦システムであって、
アイテム毎の購買情報を取得し、購買情報記憶手段に格納する購買情報取得手段と、
前記購買情報記憶手段に格納された各購買情報の分類を決定し、決定した各購買情報の分類を用いて、分類毎に各アイテムのアイテム選択率を算出し、アイテム選択率記憶手段に格納するアイテム選択率算出手段と、
前記分類毎に算出された各アイテムのアイテム選択率を用いて、分類毎に、各分類に属するアイテムの中でアイテム選択率が高いアイテムを候補アイテムとして抽出し、全ての分類でそれぞれ抽出された候補アイテムを候補アイテム記憶手段に格納する候補アイテム決定手段と、
前記アイテム選択率と前記購買情報記憶部に記憶された購買情報とを用いて、候補アイテム記憶手段に格納された各候補アイテムについて、ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいてユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶手段に格納する推薦リスト作成手段と、を有することを要旨とする。
In order to achieve the above object, the present invention according to
Purchase information acquisition means for acquiring purchase information for each item and storing it in the purchase information storage means;
The classification of each purchase information stored in the purchase information storage means is determined, the item selection rate of each item is calculated for each classification using the determined classification of the purchase information, and stored in the item selection rate storage means Item selection rate calculation means,
Using the item selection rate of each item calculated for each category, for each category, an item with a high item selection rate among the items belonging to each category is extracted as a candidate item, and extracted for each category. Candidate item determining means for storing candidate items in the candidate item storage means;
For each candidate item stored in the candidate item storage means, a recommendation score is calculated for each user using the item selection rate and the purchase information stored in the purchase information storage unit, and the user is based on the recommendation score. The gist of the present invention is to include a recommendation list creating unit that selects a recommended item for each recommendation, generates a recommendation list, and stores the recommendation list in the recommendation list storage unit.
請求項2記載の本発明は、アイテム推薦システムであって、アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する推薦リストを前記推薦リスト記憶手段から抽出し、前記端末に提示する推薦処理手段を、さらに有することを要旨とする。
The present invention according to
請求項3記載の本発明は、コンピュータが行うアイテム推薦方法であって、
アイテム毎の購買情報を取得し、購買情報記憶部に格納する購買情報取得ステップと、
前記購買情報記憶部に格納された各購買情報の分類を決定し、決定した各購買情報の分類を用いて、分類毎に各アイテムのアイテム選択率を算出し、アイテム選択率記憶部に格納するアイテム選択率算出ステップと、
前記分類毎に算出された各アイテムのアイテム選択率を用いて、分類毎に、各分類に属するアイテムの中でアイテム選択率が高いアイテムを候補アイテムとして抽出し、全ての分類でそれぞれ抽出された候補アイテムを候補アイテム記憶部に格納する候補アイテム決定ステップと、
前記アイテム選択率と前記購買情報記憶部に記憶された購買情報とを用いて、候補アイテム記憶部に格納された各候補アイテムについて、ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいてユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶部に格納する推薦リスト作成ステップと、を行うことを要旨とする。
The present invention according to claim 3 is an item recommendation method performed by a computer,
A purchase information acquisition step of acquiring purchase information for each item and storing it in a purchase information storage unit;
The classification of each purchase information stored in the purchase information storage unit is determined, the item selection rate of each item is calculated for each category using the determined classification of the purchase information, and stored in the item selection rate storage unit An item selection rate calculation step;
Using the item selection rate of each item calculated for each category, for each category, an item with a high item selection rate among the items belonging to each category is extracted as a candidate item, and extracted for each category. A candidate item determination step of storing the candidate item in the candidate item storage unit;
For each candidate item stored in the candidate item storage unit, a recommendation score is calculated for each user using the item selection rate and the purchase information stored in the purchase information storage unit, and the user is based on the recommendation score. The gist is to perform a recommendation list creation step of generating a recommendation list by selecting a recommended item for each recommendation and storing the recommendation list in a recommendation list storage unit.
請求項4記載の本発明は、アイテム推薦方法であって、アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する推薦リストを前記推薦リスト記憶部から抽出し、前記端末に提示する推薦処理ステップを、さらに行うことを要旨とする。 The present invention according to claim 4 is an item recommendation method, wherein when an item recommendation request is received from a terminal, a recommendation list corresponding to a user specified by the item recommendation request is extracted from the recommendation list storage unit, The gist is to further perform the recommendation processing step presented to the terminal.
請求項5記載の本発明は、前記アイテム推薦システムとしてコンピュータを機能させるためのアイテム推薦プログラムであることを要旨とする。 The gist of the present invention described in claim 5 is an item recommendation program for causing a computer to function as the item recommendation system.
本発明によれば、推薦スコアを算出するアイテムの数を絞り込み、アイテム推薦における計算コストおよび処理負荷を低減するアイテム推薦システム、アイテム推薦方法およびアイテム推薦プログラムを提供することができる。 According to the present invention, it is possible to provide an item recommendation system, an item recommendation method, and an item recommendation program that reduce the number of items for calculating a recommendation score and reduce the calculation cost and processing load in item recommendation.
以下、本発明の実施の形態について、図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明の一実施の形態におけるアイテム推薦システム1の構成を示す。図示するアイテム推薦システム1は、購買情報処理部10、アイテム選択率算出部20、候補アイテム決定部30、推薦リスト作成部40、推薦処理部50、記録部60、通信部70、および入出力部80を備える。通信部70は、ネットワーク3に接続されており、入出力部80は、入力装置や表示装置等の外部装置4に接続されている。
FIG. 1 shows a configuration of an
購買情報処理部10は、E-Commerce(電子商取引)サービスなどにおけるアイテム毎の購買情報を取得し、購買情報テーブル61に格納する。アイテム選択率算出部20は、購買情報テーブル61に格納された各購買情報のトピック(分類)を決定し、決定した各購買情報の分類を用いてトピック毎に各アイテムのアイテム選択率を算出し、アイテム選択率テーブル63に格納する。
The purchase
候補アイテム決定部30は、トピック毎に算出された各アイテムのアイテム選択率を用いてトピック毎に候補アイテムを抽出し、全てのトピックでそれぞれ抽出された候補アイテムを候補アイテムテーブル64に格納する。推薦リスト作成部40は、アイテム選択率と購買情報テーブル61に記憶された購買情報とを用いて、候補アイテムテーブル64に格納された各候補アイテムについて、ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいてユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リストテーブル65に格納する。
The candidate
推薦処理部50は、アイテム推薦リクエストを外部端末2から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する推薦リストを推薦リストテーブル65から抽出し、外部端末2に提示する。
When the
記録部60には、購買情報テーブル61、トピック比率テーブル62、アイテム選択率テーブル63、候補アイテムテーブル64および推薦リストテーブル65が記憶される。以下に各テーブルについて説明する。
The
<購買情報テーブル61>
図2は、購買情報テーブル61の一例を示す図である。購買情報テーブル61には、E-Commerceサービスにおいて、購入されたアイテム(商品やサービスなど)および購入したユーザに関する購買情報が記憶される。図示する購買情報テーブル61には、ユーザIDフィールドと、アイテムIDフィールドとが含まれる。ユーザIDフィールドには、該購買に関するユーザを特定するユーザ識別子が、購買情報処理部10により設定される。アイテムIDフィールドには、該購買がいずれのアイテムに関するものかを特定するアイテム識別子が、購買情報処理部10により設定される。
<Purchase information table 61>
FIG. 2 is a diagram illustrating an example of the purchase information table 61. The purchase information table 61 stores purchase information related to purchased items (such as products and services) and purchased users in the E-Commerce service. The purchase information table 61 shown in the figure includes a user ID field and an item ID field. In the user ID field, the purchase
<トピック比率テーブル62>
図3は、トピック比率テーブル62の一例を示す図である。トピック比率テーブル62は、各ユーザと各トピックとの結びつき(関連性)の強さを示すものであって、ユーザおよびトピック毎にレコードが生成される。トピック(分類)は、購買情報テーブル61の購買レコードを所定の数にグルーピングした分類結果である。
<Topic ratio table 62>
FIG. 3 is a diagram illustrating an example of the topic ratio table 62. The topic ratio table 62 indicates the strength of connection (relevance) between each user and each topic, and a record is generated for each user and topic. The topic (classification) is a classification result obtained by grouping purchase records in the purchase information table 61 into a predetermined number.
図示するトピック比率テーブル62には、ユーザIDフィールドと、トピックIDフィールドと、トピック比率フィールドとが含まれる。トピック比率フィールドには、該ユーザuの購買において、対応するトピックzが選択される確率P(z|u)が、アイテム選択率算出部20により設定される。
The topic ratio table 62 shown in the figure includes a user ID field, a topic ID field, and a topic ratio field. In the topic ratio field, the probability P (z | u) that the corresponding topic z is selected in the purchase of the user u is set by the item selection
<アイテム選択率テーブル63>
図4は、アイテム選択率テーブル63の一例を示す図である。図示するアイテム選択率テーブル63には、トピックIDフィールドと、アイテムIDフィールドと、アイテム選択率フィールドとが含まれる。アイテム選択率フィールドには、該トピックzが選択された場合に、該アイテムiが購買される確率P(i|z)がアイテム選択率算出部20により設定される。
<Item selection rate table 63>
FIG. 4 is a diagram illustrating an example of the item selection rate table 63. The item selection rate table 63 shown in the figure includes a topic ID field, an item ID field, and an item selection rate field. In the item selection rate field, when the topic z is selected, the probability P (i | z) that the item i is purchased is set by the item selection
<候補アイテムテーブル64>
図5は、候補アイテムテーブル64の一例を示す図である。図示する候補アイテムテーブル64には、アイテムIDフィールドが含まれる。候補アイテムテーブル64のアイテムIDフィールドに設定されるアイテムIDは、推薦リスト作成時に推薦の候補となるアイテムの集合(推薦スコア算出の対象となるアイテムの集合)であり、候補アイテム決定部30により設定される。
<Candidate item table 64>
FIG. 5 is a diagram illustrating an example of the candidate item table 64. The candidate item table 64 shown in the figure includes an item ID field. The item ID set in the item ID field of the candidate item table 64 is a set of items that are candidates for recommendation at the time of creating the recommendation list (a set of items for which a recommendation score is to be calculated), and is set by the candidate
<推薦リストテーブル65>
図6は、推薦リストテーブル65の一例を示す図である。推薦リストテーブル65は、ユーザ毎に推薦するアイテムが設定されたテーブルである。図示する推薦リストテーブル65には、ユーザIDフィールドと、アイテムIDフィールドと、推薦スコアフィールドとが含まれる。推薦スコアフィールドには、推薦リスト作成部40が算出した、該ユーザへの該アイテムの推薦スコアが設定される。
<Recommendation list table 65>
FIG. 6 is a diagram illustrating an example of the recommendation list table 65. The recommendation list table 65 is a table in which items recommended for each user are set. The recommendation list table 65 shown in the figure includes a user ID field, an item ID field, and a recommendation score field. In the recommendation score field, the recommendation score of the item for the user calculated by the recommendation
上記説明したアイテム推薦システム1は、例えば、CPUと、メモリと、HDD等の外部記憶装置とを備えた汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされたアイテム推薦システム1用のプログラムを実行することにより、アイテム推薦システム1の各機能が実現される。また、アイテム推薦システム1用のプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD−ROMなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
As the
次に、本実施形態の具体的な処理について説明する。 Next, specific processing of this embodiment will be described.
図7は、本実施形態における購買情報更新時の処理のフローチャートである。なお、購買情報更新のタイミングは、たとえばシステム管理者が手動で管理・指示するようにしてもよいし、ユーザが何らかのアイテムを購買した場合に自動で更新するようにしてもよい。 FIG. 7 is a flowchart of processing when purchasing information is updated in the present embodiment. Note that the purchase information update timing may be manually managed / instructed by a system administrator, for example, or may be automatically updated when a user purchases some item.
ステップ110)購買情報処理部10は、該アイテム推薦システム1のE-Commerce処理部(不図示)、または図示しないE-Commerceシステムなどから購買情報(購買履歴情報)を取得する。E-Commerce処理部またはE-Commerceシステムは、商品やサービスなどのアイテムを販売するサービスを、ネットワーク3を介して外部端末2に提供する。
Step 110) The purchase
なお、購買情報処理部10は、システム管理者による指示を受け付けたタイミングで、E-Commerce処理部等から購買情報を取得してもよく、また、アイテムが購入されたタイミングでE-Commerce処理部等が、購買情報を購買情報処理部10に送信することとしてもよい。
Note that the purchase
ステップ120)購買情報処理部10は、取得した購入情報を購買情報テーブル61に登録する。すなわち、購入されたアイテム毎に、購入したユーザのユーザIDおよび購入されたアイテムのアイテムIDを、アイテムIDフィールドおよびユーザIDフィールドに設定したレコードを購買情報テーブル61に登録する。
Step 120) The purchase
図8は、本実施形態におけるアイテム選択率算出時の処理のフローチャートである。アイテム選択率算出のタイミングは、たとえばシステム管理者が手動で管理・指示するようにしてもよく、また、定期的に自動で行うこととしてもよい。 FIG. 8 is a flowchart of processing when calculating the item selection rate in the present embodiment. The timing for calculating the item selection rate may be manually managed / instructed by a system administrator, for example, or may be automatically performed periodically.
ステップ210)アイテム選択率算出部20は、推薦のためのパラメータであるトピック数K、トピック比率P(z|u)算出のための事前パラメータα、アイテム選択率P(i|z)算出のための事前パラメータηを設定する。これらパラメータには、予め定めた所定の値(定数)を用いる。トピック数Zは、購買情報テーブル61の各購買レコードをいくつのトピック(分類)にグルーピングするかを指定するものである。
Step 210) The item selection
ステップ220)アイテム選択率算出部20は、購買情報テーブル61を参照し、購買情報、すなわち各購買レコードのユーザu={um}mと、アイテムi={im}mとを取得する。
Step 220) The item selection
ステップ230)アイテム選択率算出部20は、各購買レコードのトピックz={zm}mを決定する。ステップ230の処理については、図9で後述する。
Step 230) The item selection
ステップ240)アイテム選択率算出部20は、ステップ210で設定したパラメータのトピック数Kおよびαと、ステップ230で決定した各購買レコードのトピックzと、 式1とを用いて、トピック比率P(z|u)を算出する。トピック比率P(z|u)は、ユーザuの購買で、トピックzが選択される確率を示すものである。
ここでmは、購買情報テーブル61の各購買レコードを特定する変数である。アイテム選択率算出部20は、ユーザuおよびトピックz毎に、トピック比率P(z|u)を設定したレコードを生成し、トピック比率テーブル62に登録する。各購買レコードには、ユーザIDとアイテムIDとが含まれるため、ユーザ毎に結びつきの強いトピックがわかる。
Here, m is a variable that identifies each purchase record in the purchase information table 61. The item selection
ステップ250)アイテム選択率算出部20は、ステップ210で設定したパラメータηと、ステップ230で決定した各購買レコードのトピックzと 、式2とを用いて、トピックzが選択された場合にアイテムiが購買される確率であるアイテム選択率P(i|z)を算出する。
ここでNは、ユニークアイテム数である。アイテム選択率算出部20は、トピックz、アイテムi、アイテム選択率P(i|z)を設定したレコードを生成し、アイテム選択率テーブル63に登録する。これにより、あるトピックに結びつきの強いアイテムがわかる。
Here, N is the number of unique items. The item selection
次に、上記の図8のステップ230の処理を詳細に説明する。 Next, the processing of step 230 in FIG. 8 will be described in detail.
図9は、図8のステップ230の処理のフローチャートである。 FIG. 9 is a flowchart of the process in step 230 of FIG.
ステップ231)アイテム選択率算出部20は、各購買レコードのトピックzm(m=1,・・・,M)を、最小値1、最大値Kの乱数で初期化する。
Step 231) The item selection
そしてステップ232を、所定の回数繰り返す。繰り返しの回数については、予め設定した任意の数でも構わないし、各購買レコードのトピックzが収束したらそこで打ち切るようにしてもよい。図9では、所定の回数(例えば、500回)繰り返す例を示し、回数jを0で初期化し、S232を行った後、回数jをインクリメントし、回数jが500になるまで、S232を繰り返し行う。 Step 232 is repeated a predetermined number of times. The number of repetitions may be an arbitrary number set in advance, or may be terminated when the topic z of each purchase record converges. FIG. 9 shows an example in which a predetermined number of times (for example, 500 times) is repeated. After the number j is initialized to 0 and S232 is performed, the number j is incremented. .
ステップ232)アイテム選択率算出部20が、各購買レコードのトピックzm(m=1,・・・,M)を更新する。このステップ232の処理については、図10を用いて詳細に説明する。
Step 232) The item selection
図10は、図9のステップ232の処理のフローチャートである。 FIG. 10 is a flowchart of the process in step 232 of FIG.
アイテム選択率算出部20は、全ての各購買レコードm=1,・・・,Mについて、ステップ2321とステップ2322とを行う。すなわち、最初にmに1を設定し、ステップ2321およびステップ2322を行った後、mをインクリメントし、mがMになるまで、ステップ2321およびステップ2322を繰り返し行う。
The item selection
ステップ2321)アイテム選択率算出部20は、該購買レコードのトピックzmの各トピック候補k=1,・・・, Kへアサインされるサンプリング確率を、式3により算出する。
すなわち、最初にkに1を設定し、ステップ2321を行った後、kをインクリメントし、kがKになるまでステップ2321を繰り返し行うことで、1からKの各トピック候補のサンプリング確率を算出し、その後、ステップ2322を行う。 That is, first set k to 1, and after performing step 2321, increment k and repeat step 2321 until k becomes K, thereby calculating the sampling probability of each topic candidate from 1 to K. Thereafter, step 2322 is performed.
ステップ2322)アイテム選択率算出部20は、ステップ2321で算出した該購買レコードのトピックzmの各トピック候補k=1,・・・, K へアサインされるサンプリング確率に基づき、乱数を発生させて、zmを更新する。具体的には、k=2,・・・, K について、式4に従ってサンプリング確率を更新する。
さらに、k=1,・・・, K について、サンプリングを式5のように更新する。
その後、最小値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として決定する。
Thereafter, a decimal random number having a minimum value of 0 and a maximum value of 1 is generated, and that value is assigned to the minimum k having a higher sampling probability. A specific example will be described. Now, assuming that K = 3, the sampling probabilities of the topic candidates calculated based on Expression 3 are P (z m = 1) = 1.6, P (z m = 2) = 0.4, P Assume that (z m = 3) = 2.0. In other words, we want to sample each topic at a 4: 1: 5 ratio. At this time, using Equations 4 and 5, P (z m = 1) = 0.4, P (z m = 2) = 0.5, P (z m = 3) = 1.0 and the sampling probability are updated, and the minimum value A decimal random number of 0 and
図11は、候補アイテム決定時の処理のフローチャートである。候補アイテム決定のタイミングは、たとえばシステム管理者が手動で指示・管理することができるようにしてもよいし、推薦リスト作成時の直前に自動で行ってもよい。 FIG. 11 is a flowchart of processing when a candidate item is determined. The candidate item determination timing may be instructed and managed manually by a system administrator, for example, or may be automatically performed immediately before the recommendation list is created.
ステップ310)候補アイテム決定部30は、候補アイテム集合をC←{}のように初期化する。
Step 310) The candidate
そして、候補アイテム決定部30は、全てのトピックk=1,・・・,Kについて、ステップ320、330、340を行う。すなわち、最初にkに1を設定し、ステップ320、330、340を行った後、kをインクリメントし、kがKになるまで320、330、340を繰り返し行う。
And the candidate
ステップ320)候補アイテム決定部30は、アイテム選択率テーブル63のトピックIDフィールドの値がkのレコードを参照し、各アイテムi=1,・・・,Iに関するトピックkのアイテム選択率P(i|z)を取得する。ここで、Iはユニークアイテム数を指す。
Step 320) The candidate
ステップ330)候補アイテム決定部30は、アイテムi=1,・・・,Iをトピックk に関するアイテム選択率P(i|z)の降順にソートし、上位N件Ckを取得する。
Step 330) The candidate
そして、Ckに含まれる各アイテムi について、それぞれステップ340を行う。すなわち、Ckに含まれる各アイテムi の中に未処理のアイテムi があるか否かを判別し、未処理のアイテムiがある場合は未処理のアイテムi を選択し、選択したアイテムi にステップ340の処理を行う。 Then, step 340 is performed for each item i included in C k . That is, it is determined whether or not there is an unprocessed item i in each item i included in C k. If there is an unprocessed item i, the unprocessed item i is selected, and the selected item i is selected. The process of step 340 is performed.
ステップ340)候補アイテム決定部30は、候補アイテム集合Cに、Ckに含まれる各アイテムiを追加する(すなわちC←C∪(i)とする)。
Step 340) The candidate
そして、全てのトピックk=1,・・・,Kについて、ステップ320、330、340を行った後、候補アイテム決定部30は、候補アイテム集合Cに含まれる各アイテムiについて、ステップ350を行う。すなわち、集合Cに含まれる各アイテムiの中に未処理のアイテムiがあるか否かを判別し、未処理のアイテムiがある場合は未処理のアイテムiを選択し、選択したアイテムiにステップ350の処理を行う。
Then, after performing steps 320, 330, and 340 for all the topics k = 1,..., K, the candidate
ステップ350)候補アイテム決定部30は、アイテムIDフィールドの値に集合Cに含まれる各アイテムiを設定したレコードを、候補アイテムテーブル64に登録する。
Step 350) The candidate
本実施形態では、このような図11の処理を行うことで、トピック毎に算出したアイテム選択率を用いて、どのユーザの推薦リストにも出現する可能性の無いアイテムを足切りし、候補アイテムの数を絞り込む。これにより、以下に述べる推薦スコアを算出するアイテム数を削減し、推薦リスト作成処理のコストを減らすことができる。 In the present embodiment, by performing the processing of FIG. 11 as described above, the item selection rate calculated for each topic is used to cut off items that may not appear in any user's recommendation list, and candidate items Narrow down the number of. Thereby, the number of items for calculating the recommendation score described below can be reduced, and the cost of the recommendation list creation process can be reduced.
図12は、本実施形態における推薦リスト作成時の処理のフローチャートである。推薦リスト作成のタイミングは、たとえばシステム管理者が手動で管理・指示することができるようにしてもよいし、定期的に自動で行ってもよい。 FIG. 12 is a flowchart of processing when creating a recommendation list in the present embodiment. The recommendation list creation timing may be manually managed and instructed by a system administrator, for example, or may be automatically performed periodically.
ステップ410)推薦リスト作成部40は、候補アイテムテーブル64を参照し、候補アイテム集合Cを取得する。
Step 410) The recommendation
そして、推薦リスト作成部40は、取得した全ての候補アイテムi∈Cについて、ステップ420を行う。すなわち、候補アイテム集合C中に未処理のアイテムがあるか否かを判別し、未処理のアイテムがある場合は未処理のアイテムiを選択し、選択したアイテムiにステップ420の処理を行う。
Then, the recommendation
ステップ420)推薦リスト作成部40は、アイテム選択率テーブル63を参照し、各アイテムiに関するアイテム選択率P(i|z)(z=1,・・・,K)を取得する。そして、推薦リスト作成部40は、候補アイテム集合C中の全てのアイテムについて、アイテム選択率P(i|z)を取得した後、ステップ430を行う。
Step 420) The recommendation
ステップ430)推薦リスト作成部40は、購買情報テーブル61を参照し、全ユーザ集合Uを取得する。
Step 430) The recommendation
そして、推薦リスト作成部40は、全ての各ユーザu∈Uについて、ステップ440、450、460を行う。すなわち、全ユーザ集合Uの中に未処理のユーザuがあるか否かを判別し、未処理のユーザがある場合は未処理のユーザuを選択し、選択したユーザuにステップ440の処理を行う。
Then, the recommendation
ステップ440)推薦リスト作成部40は、トピック比率テーブル62を参照し、ユーザuに関するトピック比率P(z|u) (z=1,・・・,K)を取得する。
Step 440) The recommendation
そして、推薦リスト作成部40は、ステップ410で取得した候補アイテム集合Cの全ての各候補アイテムi∈Cについて、ステップ450を行う。すなわち、候補アイテム集合C中に未処理のアイテムがあるか否かを判別し、未処理のアイテムがある場合は未処理のアイテムiを選択し、選択したアイテムiについてステップ450の処理を行う。
Then, the recommendation
ステップ450)推薦リスト作成部40は、ステップ420で取得したアイテム選択率と、ステップ440で取得したトピック比率とを用いて、アイテムiのユーザuに対する推薦スコアP(i|u)を式6に従って算出する。
そして、推薦リスト作成部40は、候補アイテム集合C中の全てのアイテムについて、推薦スコアP(i|u)を算出した後、ステップ460を行う。
Then, after calculating the recommendation score P (i | u) for all items in the candidate item set C, the recommendation
ステップ460)推薦リスト作成部40は、ステップ450にて算出した各アイテムの推薦スコアP(i|u)(i∈C)に基づいて、該ユーザuに対していずれのアイテムを推薦アイテムとするかを決定する。そして、推薦リスト作成部40は、決定した推薦アイテム毎に、ユーザIDフィールドにu、アイテムIDフィールドにi、推薦スコアフィールドにP(i|u)を設定したレコードを生成し、推薦リストテーブル65に登録する。なお、推薦リストテーブル65のレコードには、ユーザIDと推薦アイテムとが対応付けて記憶されるため、ユーザIDでレコードを抽出することで推薦リストが生成される。
Step 460) Based on the recommendation score P (i | u) (i∈C) of each item calculated in step 450, the recommendation
推薦アイテムとするか否かの判断基準としては、例えば、推薦スコアの値が大きいものから順に予め設定した任意の件数のアイテムを推薦アイテムとして決定すること、または、推薦スコアに対して何らかの閾値を設けて、 推薦スコアがその閾値を超えるアイテムを推薦アイテムとして決定すること、などが考えられる。 As a criterion for determining whether or not to be a recommended item, for example, an arbitrary number of items set in advance in descending order of recommended score values are determined as recommended items, or some threshold is set for the recommended score. For example, it may be possible to determine an item whose recommended score exceeds the threshold as a recommended item.
上記ステップ440、450、460の処理を、未処理のユーザがなくなるまで繰り返し行う。以上説明した図12の処理により、推薦リストテーブル65には各ユーザに対して推薦するアイテム(推薦リスト)が設定される。 Steps 440, 450, and 460 are repeated until there are no unprocessed users. By the processing of FIG. 12 described above, items (recommendation list) recommended for each user are set in the recommendation list table 65.
図13は、本実施形態における推薦処理時の処理のフローチャートである。推薦処理は、例えば通信部70およびネットワーク3を通じて外部端末2からアイテム推薦システム1にアイテム推薦のリクエストが送信された場合に実行される。
FIG. 13 is a flowchart of processing during recommendation processing in the present embodiment. The recommendation process is executed, for example, when an item recommendation request is transmitted from the
ステップ510)推薦処理部50は、外部端末2からユーザuに関するアイテム推薦のリクエストを受信する。なお、このリクエストには、引数として対象となるユーザuのユーザIDが含まれている。
Step 510) The
ステップ520)推薦処理部50は、リクエストで指定されたユーザIDに対応する全ての推薦アイテムiを推薦リストテーブル65から抽出して、該ユーザu用の推薦リストを生成し、リクエスト送信元の外部端末2に推薦リストを提示することで、該ユーザuにアイテムを推薦する。
Step 520) The
以上説明した本実施形態では、非常にアイテム数の多いインターネット上のサービスでアイテムの推薦を行うために、推薦処理の中間結果(トピック毎のアイテム選択率など)を用いて、どのユーザの推薦リストにも出現しないアイテムを足切りし、候補アイテムを絞り込んでおくことによって、候補アイテムに関する推薦スコアのみを計算し、高速に推薦リストを作成する。すなわち推薦スコアを算出するアイテムおよびユーザの組み合わせの数を削減することで、高速に推薦リストを作成することができる。 In the present embodiment described above, in order to recommend an item with an Internet service with a very large number of items, which user's recommendation list is used by using an intermediate result of recommendation processing (such as an item selection rate for each topic). By cutting off items that do not appear in the list and narrowing down candidate items, only the recommendation score for the candidate item is calculated, and a recommendation list is created at high speed. That is, a recommendation list can be created at high speed by reducing the number of combinations of items for calculating recommendation scores and users.
これにより、本実施形態では、各ユーザへの推薦アイテムとして選択される上位のアイテムを維持しつつ、アイテム数およびユーザ数が非常に多いインターネット上のサービスにおいて、アイテムの推薦を高速に行えるようになる。すなわち、アイテム推薦における計算コストおよび処理負荷を低減することができる。これにより、インターネット上の大規模なサービスの購買が促進されるため、大幅な収益増につながる。 As a result, in this embodiment, while maintaining the top items selected as recommended items for each user, the items can be recommended at high speed in services on the Internet with a large number of items and users. Become. That is, the calculation cost and processing load in item recommendation can be reduced. This facilitates the purchase of large-scale services on the Internet, leading to a significant increase in revenue.
なお、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。 In addition, this invention is not limited to the said embodiment, Many deformation | transformation are possible within the range of the summary.
1 :アイテム推薦システム
10:購買情報処理部
20:アイテム選択率算出部
30:候補アイテム決定部
40:推薦リスト作成部
50:推薦処理部
60:記憶部
61:購買情報テーブル
62:トピック比率テーブル
63:アイテム選択率テーブル
64:候補アイテムテーブル
65:推薦リストユーザテーブル
70:通信部
80:入出力部
2 :外部端末
3 :ネットワーク
4 :外部装置
1: Item recommendation system 10: Purchase information processing unit 20: Item selection rate calculation unit 30: Candidate item determination unit 40: Recommendation list creation unit 50: Recommendation processing unit 60: Storage unit 61: Purchase information table 62: Topic ratio table 63 : Item selection rate table 64: Candidate item table 65: Recommendation list user table 70: Communication unit 80: Input / output unit 2: External terminal 3: Network 4: External device
Claims (5)
アイテム毎の購買情報を取得し、購買情報記憶手段に格納する購買情報取得手段と、
前記購買情報記憶手段に格納された各購買情報の分類を決定し、決定した各購買情報の分類を用いて、分類毎に各アイテムのアイテム選択率を算出し、アイテム選択率記憶手段に格納するアイテム選択率算出手段と、
前記分類毎に算出された各アイテムのアイテム選択率を用いて、分類毎に、各分類に属するアイテムの中でアイテム選択率が高いアイテムを候補アイテムとして抽出し、全ての分類でそれぞれ抽出された候補アイテムを候補アイテム記憶手段に格納する候補アイテム決定手段と、
前記アイテム選択率と前記購買情報記憶部に記憶された購買情報とを用いて、候補アイテム記憶手段に格納された各候補アイテムについて、ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいてユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶手段に格納する推薦リスト作成手段と、を有すること
を特徴とするアイテム推薦システム。 An item recommendation system,
Purchase information acquisition means for acquiring purchase information for each item and storing it in the purchase information storage means;
The classification of each purchase information stored in the purchase information storage means is determined, the item selection rate of each item is calculated for each classification using the determined classification of the purchase information, and stored in the item selection rate storage means Item selection rate calculation means,
Using the item selection rate of each item calculated for each category, for each category, an item with a high item selection rate among the items belonging to each category is extracted as a candidate item, and extracted for each category. Candidate item determining means for storing candidate items in the candidate item storage means;
For each candidate item stored in the candidate item storage means, a recommendation score is calculated for each user using the item selection rate and the purchase information stored in the purchase information storage unit, and the user is based on the recommendation score. An item recommendation system comprising: a recommendation list creation unit that selects a recommended item for each recommendation, generates a recommendation list, and stores the recommendation list in a recommendation list storage unit.
アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する推薦リストを前記推薦リスト記憶手段から抽出し、前記端末に提示する推薦処理手段を、さらに有すること
を特徴とするアイテム推薦システム。 The item recommendation system according to claim 1,
When the item recommendation request is received from the terminal, the recommendation list corresponding to the user specified in the item recommendation request is extracted from the recommendation list storage unit, and is further provided with a recommendation processing unit that is presented to the terminal. Item recommendation system.
アイテム毎の購買情報を取得し、購買情報記憶部に格納する購買情報取得ステップと、
前記購買情報記憶部に格納された各購買情報の分類を決定し、決定した各購買情報の分類を用いて、分類毎に各アイテムのアイテム選択率を算出し、アイテム選択率記憶部に格納するアイテム選択率算出ステップと、
前記分類毎に算出された各アイテムのアイテム選択率を用いて、分類毎に、各分類に属するアイテムの中でアイテム選択率が高いアイテムを候補アイテムとして抽出し、全ての分類でそれぞれ抽出された候補アイテムを候補アイテム記憶部に格納する候補アイテム決定ステップと、
前記アイテム選択率と前記購買情報記憶部に記憶された購買情報とを用いて、候補アイテム記憶部に格納された各候補アイテムについて、ユーザ毎に推薦スコアを算出し、該推薦スコアにもとづいてユーザ毎に推薦する推薦アイテムを選択して推薦リストを生成し、推薦リスト記憶部に格納する推薦リスト作成ステップと、を行うこと
を特徴とするアイテム推薦方法。 An item recommendation method performed by a computer,
A purchase information acquisition step of acquiring purchase information for each item and storing it in a purchase information storage unit;
The classification of each purchase information stored in the purchase information storage unit is determined, the item selection rate of each item is calculated for each category using the determined classification of the purchase information, and stored in the item selection rate storage unit An item selection rate calculation step;
Using the item selection rate of each item calculated for each category, for each category, an item with a high item selection rate among the items belonging to each category is extracted as a candidate item, and extracted for each category. A candidate item determination step of storing the candidate item in the candidate item storage unit;
For each candidate item stored in the candidate item storage unit, a recommendation score is calculated for each user using the item selection rate and the purchase information stored in the purchase information storage unit, and the user is based on the recommendation score. An item recommendation method comprising: selecting a recommended item for each recommendation, generating a recommendation list, and storing the recommendation list in a recommendation list storage unit.
アイテム推薦リクエストを端末から受け付けると、当該アイテム推薦リクエストで指定されたユーザに対応する推薦リストを前記推薦リスト記憶部から抽出し、前記端末に提示する推薦処理ステップを、さらに行うこと
を特徴とするアイテム推薦方法。 The item recommendation method according to claim 3,
When an item recommendation request is received from a terminal, a recommendation list corresponding to the user specified in the item recommendation request is extracted from the recommendation list storage unit, and a recommendation processing step of presenting to the terminal is further performed. Item recommendation method.
An item recommendation program for causing a computer to function as the item recommendation system according to claim 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013047529A JP5622880B2 (en) | 2013-03-11 | 2013-03-11 | Item recommendation system, item recommendation method, and item recommendation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013047529A JP5622880B2 (en) | 2013-03-11 | 2013-03-11 | Item recommendation system, item recommendation method, and item recommendation program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014174781A JP2014174781A (en) | 2014-09-22 |
JP5622880B2 true JP5622880B2 (en) | 2014-11-12 |
Family
ID=51695936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013047529A Active JP5622880B2 (en) | 2013-03-11 | 2013-03-11 | Item recommendation system, item recommendation method, and item recommendation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5622880B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6178366B2 (en) * | 2015-07-02 | 2017-08-09 | Necパーソナルコンピュータ株式会社 | Information processing system, information processing method, and program |
EP3147853A1 (en) * | 2015-09-23 | 2017-03-29 | Mastercard International Incorporated | Transaction control |
CN109101511A (en) * | 2017-06-20 | 2018-12-28 | 平安科技(深圳)有限公司 | Products Show method, equipment and computer readable storage medium |
JP7325923B2 (en) * | 2017-08-16 | 2023-08-15 | 穂光 田中 | Flower Bed Ordering System, Flower Bed Ordering Program, and Flower Bed Ordering Method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176398A (en) * | 2007-01-16 | 2008-07-31 | Sony Corp | Information processing apparatus and method, and program |
JP5331159B2 (en) * | 2011-05-17 | 2013-10-30 | 日本電信電話株式会社 | Product recommendation method, product recommendation device, and product recommendation program |
-
2013
- 2013-03-11 JP JP2013047529A patent/JP5622880B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014174781A (en) | 2014-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109190043B (en) | Recommendation method and device, storage medium, electronic device and recommendation system | |
JP7343568B2 (en) | Identifying and applying hyperparameters for machine learning | |
JP5449628B2 (en) | Determining category information using multistage | |
WO2020048084A1 (en) | Resource recommendation method and apparatus, computer device, and computer-readable storage medium | |
US9727906B1 (en) | Generating item clusters based on aggregated search history data | |
Vandic et al. | Dynamic facet ordering for faceted product search engines | |
JP5442547B2 (en) | Content recommendation apparatus and method | |
CN105740268A (en) | Information pushing method and apparatus | |
CN112100396B (en) | Data processing method and device | |
JP5622880B2 (en) | Item recommendation system, item recommendation method, and item recommendation program | |
JP2018518764A (en) | Object search method, apparatus and server | |
JP2018045553A (en) | Selection device, selection method, and selection program | |
JP5219890B2 (en) | Product information providing apparatus, product information providing method and program | |
CN110297967B (en) | Method, device and equipment for determining interest points and computer readable storage medium | |
JP2016153972A (en) | Extraction device, extraction method and extraction program | |
JP5945206B2 (en) | Product recommendation device, method and program | |
JP6509590B2 (en) | User's emotion analysis device and program for goods | |
KR102170535B1 (en) | Apparatus and method for searching based on user preference using sentiment analysis | |
CN111787042A (en) | Method and device for pushing information | |
JP6141378B2 (en) | Human resource search server | |
JP5422069B1 (en) | Item recommendation system, item recommendation method, and item recommendation program | |
CN110717109B (en) | Method, device, electronic equipment and storage medium for recommending data | |
JP7088656B2 (en) | Information processing equipment, information processing methods and information processing programs | |
JP5883760B2 (en) | Product recommendation device, method and program | |
JP6034584B2 (en) | Patent search support device, patent search support method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140703 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140715 |
|
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: 20140918 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140922 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5622880 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |