JP2008287550A - Recommendation device in consideration of order of purchase, recommendation method, recommendation program and recording medium with the program recorded thereon - Google Patents
Recommendation device in consideration of order of purchase, recommendation method, recommendation program and recording medium with the program recorded thereon Download PDFInfo
- Publication number
- JP2008287550A JP2008287550A JP2007132593A JP2007132593A JP2008287550A JP 2008287550 A JP2008287550 A JP 2008287550A JP 2007132593 A JP2007132593 A JP 2007132593A JP 2007132593 A JP2007132593 A JP 2007132593A JP 2008287550 A JP2008287550 A JP 2008287550A
- Authority
- JP
- Japan
- Prior art keywords
- recommendation
- gap
- model
- markov model
- user
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 62
- 238000007781 pre-processing Methods 0.000 claims abstract description 22
- 238000012545 processing Methods 0.000 claims description 38
- 238000004364 calculation method Methods 0.000 abstract description 21
- 239000000047 product Substances 0.000 description 108
- 230000000052 comparative effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 10
- 238000002790 cross-validation Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 239000006227 byproduct Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
本発明は、購買履歴を入力として、ユーザが次に購入する商品を予測することで、ユーザに商品をリコメンドするリコメンド技術に係り、特に、オンラインストア等において商品をリコメンド対象として提示するリコメンド技術に関する。 The present invention relates to a recommendation technology for recommending a product to a user by predicting a product to be purchased next by using a purchase history as an input, and more particularly, to a recommendation technology for presenting a product as a recommendation target in an online store or the like. .
一般に、商品またはサービス(以下、単に商品という)を販売するオンラインストア等の多くの商品提供者(販売者)は、オンラインストア等を利用するユーザの購買行動に影響を与えるように商品をリコメンド対象として提示する(リコメンドする)。リコメンド(recommendation)は、ユーザへの商品の直接的または間接的な提示であり、ユーザが所望する商品の情報に対して迅速にアクセスできるように利便性を向上させる目的と、商品提供者の収益を増加させる目的とを有している。リコメンドは、多くのオンラインストアで用いられている。 In general, many product providers (sellers) such as online stores that sell products or services (hereinafter simply referred to as products) recommend products so as to influence the purchasing behavior of users who use online stores. Present as (recommend). A recommendation is a direct or indirect presentation of a product to the user, with the purpose of improving convenience so that the user can quickly access information on the desired product, and the revenue of the product provider. For the purpose of increasing. Recommendations are used in many online stores.
従来、様々なリコメンド技術が知られている(例えば非特許文献1および非特許文献2参照)。商品提供者にとって、オンラインストア等で商品を購買したことのあるユーザに次回も商品を購入してもらうために、ユーザにどのような商品をリコメンドしたらよいかを予測することは重要である。ユーザが次に購入する商品は、ユーザのその時点の興味を最も表していると考えられる。そのため、ユーザの購買の予測精度が高い手法は、ユーザの興味の予測精度が高い手法であると言える。しかしながら、非特許文献1に記載されたリコメンド手法は、商品が購入された順序(以下、順序情報という)を考慮していない。このため、予測精度が低い。
Conventionally, various recommendation techniques are known (see, for example, Non-Patent
一方、非特許文献2に記載されたリコメンド手法は、順序情報を考慮して最大エントロピーモデルが適用されている。なお、最大エントロピーモデルとは、最大エントロピー原理を用いて求められた確率モデルのことを指す。この非特許文献2に記載されたリコメンド手法では、ユーザが直前に購入した商品のみを考慮するものである。これは、ユーザが直前に、つまり、最近購入した商品には、ユーザの現在の興味に関する多くの情報が含まれていると考えられるためである。また、このように順序情報を考慮した従来のリコメンド技術では、マルコフモデルや最大エントロピーモデルが適用されている。
しかしながら、非特許文献2に記載されたリコメンド手法では、ユーザが直前に購入した商品以外の情報を考慮していない。つまり、ユーザが昔に購入した商品にもある程度は含まれると考えられるユーザの現在の興味に関する情報が無視されていることになる。その結果、予測精度が低いという問題がある。
However, in the recommendation method described in Non-Patent
また、順序情報を考慮した従来のリコメンド技術で用いられるマルコフモデルは、パラメータの推定および更新を高速に行うことができるが、予測精度が低いという問題点がある。また、順序情報を考慮した従来のリコメンド技術で用いられる最大エントロピーモデルは、予測精度は高いが、パラメータの推定および更新に多くの計算量を必要とするという問題点がある。 In addition, the Markov model used in the conventional recommendation technique considering order information can estimate and update parameters at high speed, but has a problem of low prediction accuracy. In addition, the maximum entropy model used in the conventional recommendation technique considering order information has a problem that the prediction accuracy is high, but a large amount of calculation is required for parameter estimation and update.
そこで、本発明は、以上のような問題点に鑑みてなされたものであり、購買順序を考慮しつつ、計算コストが低く、かつ、予測精度の高いリコメンド技術を提供することを目的とする。 Therefore, the present invention has been made in view of the above problems, and an object thereof is to provide a recommendation technique with low calculation cost and high prediction accuracy in consideration of the purchase order.
前記課題を解決するために、本発明に係るリコメンド装置は、商品またはサービスを示す販売対象を購買したことのある複数のユーザの購買順序に基づいて、それぞれのユーザに対して、前記販売対象に属する個別対象のいずれかをリコメンド対象として提示するリコメンド装置であって、前記ユーザが過去に購入した1以上の個別対象に関する情報を含む購買履歴情報を用いて、前記ユーザごとに、前記個別対象の購買履歴を抽出したデータを示す処理用データを作成する前処理手段と、前記作成された処理用データを用いて、前記ユーザが前記個別対象を購入する確率を示す事前確率を推定する事前確率推定手段と、前記作成された処理用データを用いて、前記ユーザが所定の個別対象を購入したときにその前に購入した個別対象が特定の個別対象である確率を示すギャップマルコフモデルを推定するギャップマルコフモデル推定手段と、前記推定された事前確率と前記推定されたギャップマルコフモデルとを最大エントロピー原理により結合したモデルを示す結合モデルを構築し、構築した結合モデルの未知パラメータを示す重みを推定する重み推定手段と、前記作成された処理用データと、前記推定された事前確率と、前記推定されたギャップマルコフモデルと、前記推定された重みとを用いて、前記結合モデルから計算されるユーザの購入する確率が最大となる前記個別対象を選択してリコメンド対象として提示するリコメンド手段とを備えることを特徴とする。 In order to solve the above-mentioned problem, the recommendation device according to the present invention is based on the purchase order of a plurality of users who have purchased a sales target indicating a product or a service. A recommendation device for presenting any of the individual objects belonging to the recommendation object, the purchase apparatus including purchase history information including information on one or more individual objects purchased by the user in the past, Pre-processing means for creating processing data indicating data from which purchase history is extracted, and prior probability estimation for estimating a prior probability indicating the probability that the user will purchase the individual object using the created processing data Using the means and the created processing data, when the user purchases a predetermined individual object, the individual object purchased before that is specified Gap Markov model estimation means for estimating a Gap Markov model indicating the probability of being an individual object, and a combined model indicating a model in which the estimated prior probability and the estimated gap Markov model are combined based on a maximum entropy principle. , Weight estimation means for estimating a weight indicating an unknown parameter of the constructed coupled model, the created processing data, the estimated prior probability, the estimated gap Markov model, and the estimated weight And recommending means for selecting and presenting the individual object having the highest probability of purchase by the user calculated from the combined model as a recommendation object.
また、前記課題を解決するために、本発明に係るリコメンド方法は、商品またはサービスを示す販売対象を購買したことのある複数のユーザの購買順序に基づいて、それぞれのユーザに対して、前記販売対象に属する個別対象のいずれかをリコメンド対象として提示するリコメンド装置のリコメンド方法であって、前処理手段によって、前記ユーザが過去に購入した1以上の個別対象に関する情報を含む購買履歴情報を用いて、前記ユーザごとに、前記個別対象の購買履歴を抽出したデータを示す処理用データを作成する前処理ステップと、事前確率推定手段によって、前記作成された処理用データを用いて、前記ユーザが前記個別対象を購入する確率を示す事前確率を推定する事前確率推定ステップと、ギャップマルコフモデル推定手段によって、前記作成された処理用データを用いて、前記ユーザが所定の個別対象を購入したときにその前に購入した個別対象が特定の個別対象である確率を示すギャップマルコフモデルを推定するギャップマルコフモデル推定ステップと、重み推定手段によって、前記推定された事前確率と前記推定されたギャップマルコフモデルとを最大エントロピー原理により結合したモデルを示す結合モデルを構築し、構築した結合モデルの未知パラメータを示す重みを推定する重み推定ステップと、リコメンド手段によって、前記作成された処理用データと、前記推定された事前確率と、前記推定されたギャップマルコフモデルと、前記推定された重みとを用いて、前記結合モデルから計算されるユーザの購入する確率が最大となる前記個別対象を選択してリコメンド対象として提示するリコメンドステップとを有することを特徴とする。 In order to solve the above-mentioned problem, the recommendation method according to the present invention is based on the purchase order of a plurality of users who have purchased a sales target indicating a product or service, and the sales method is performed for each user. A recommendation method for a recommendation device that presents one of individual objects belonging to an object as a recommendation object, using purchase history information including information on one or more individual objects purchased by the user in the past by a preprocessing unit. For each user, a preprocessing step for creating processing data indicating data obtained by extracting the purchase history of the individual object, and the user using the processing data created by the prior probability estimation means, the user Prior probability estimation step that estimates the probability of purchasing an individual object, and Gap Markov model estimation means Thus, using the created processing data, when the user purchases a predetermined individual object, a gap for estimating a gap Markov model indicating the probability that the individual object purchased before that user is a specific individual object A Markov model estimation step and a weight estimation means construct a coupled model indicating a model in which the estimated prior probability and the estimated gap Markov model are coupled by the maximum entropy principle, and an unknown parameter of the constructed coupled model is set. Using the weight estimation step for estimating the weight to be shown, and the processing data created by the recommendation means, the estimated prior probability, the estimated gap Markov model, and the estimated weight, Select the individual target that maximizes the probability of purchase by the user calculated from the combined model And having a recommendation step of presenting a recommendation-receiving Te.
かかる構成のリコメンド装置、または、かかる手順のリコメンド方法によれば、リコメンド装置は、第1段階として、購買履歴情報を用いてユーザごとに処理用データを作成する。ここで、購買履歴情報は、例えば、どのユーザがどのタイミングに何を購買したのかを示す情報である。購買履歴情報は、例えば、オンラインストアの商品を販売対象とする場合に、オンライン処理のログの形式で取得することができる。また、処理用データは、ユーザごとに、何をどんな順序で購買したのかを示すデータである。そして、リコメンド装置は、処理用データを用いる第2段階として、事前確率とギャップマルコフモデルとをそれぞれ推定する。ここで、事前確率は、例えば、これまでに売れた全種類の商品のうち、特定の種類の商品がいずれかのユーザに購入された確率を、商品別(種類別)に求めた確率を意味する。また、ギャップマルコフモデルは、例えば、いずれかのユーザが何回目かの購入タイミングで商品を購入したときに、その数回前に、特定の種類の商品を購入したときの確率を、商品別(種類別)に求めた確率を意味する。これにより、ユーザが昔に購入した商品にもある程度は含まれると考えられるユーザの現在の興味に関する情報を取り込むことが可能となる。また、推定方法には、例えば、最大事後確率(MAP:Maximum A Posteriori)推定を用いることができる。 According to the recommendation device having such a configuration or the recommendation method of such a procedure, the recommendation device creates processing data for each user using the purchase history information as the first stage. Here, the purchase history information is, for example, information indicating what user has purchased what at which timing. The purchase history information can be acquired, for example, in the form of an online processing log when a product in an online store is to be sold. The processing data is data indicating what is purchased in what order for each user. Then, the recommendation device estimates the prior probability and the Gap Markov model as the second stage using the processing data. Here, the prior probability means, for example, the probability of obtaining the probability that a specific type of product was purchased by any user among all types of products sold so far, by product (by type). To do. In addition, the Gap Markov model, for example, when a user purchases a product at several purchase timings, the probability of purchasing a specific type of product several times before is calculated by product ( This means the probability obtained by type). As a result, it is possible to capture information on the current interest of the user, which is considered to be included to some extent in the products purchased by the user in the past. As the estimation method, for example, maximum posterior probability (MAP: Maximum A Posteriori) estimation can be used.
そして、リコメンド装置は、第3段階として、事前確率とギャップマルコフモデルとを最大エントロピー原理により結合した結合モデルの未知パラメータを示す重みを推定する。これにより、結合モデルは、最大エントロピーモデルによる予測精度の高さと、マルコフモデルによる計算コストの低さとを合わせもつ特徴を有することとなる。そして、リコメンド装置は、第4段階として、処理用データおよび事前に推定した各パラメータを用いて、結合モデルから計算されるユーザの購入する確率が最大となる個別対象をリコメンドする。したがって、あるユーザについてその時点の興味を最も表していると考えられる商品を精度よく、低コストの計算で求めることができる。 Then, as a third stage, the recommendation device estimates a weight indicating an unknown parameter of a combined model obtained by combining the prior probability and the Gap Markov model by the maximum entropy principle. As a result, the combined model has a feature that combines a high prediction accuracy by the maximum entropy model and a low calculation cost by the Markov model. Then, as a fourth stage, the recommendation device recommends an individual object that maximizes the probability of purchase by the user calculated from the combined model, using the processing data and each parameter estimated in advance. Therefore, it is possible to accurately obtain a product that is considered to represent the interest at that point in time for a certain user with high accuracy and low cost.
また、本発明に係るリコメンド装置は、前記重み推定手段が、経験分布による事前分布の対数尤度と、前記結合モデルと前記事前分布の対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第1条件と、ギャップマルコフモデルの対数尤度と、前記結合モデルと前記ギャップマルコフモデルの対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第2条件とを用いて、前記結合モデルを構築し、対象とする全ユーザについての前記処理用データから、対象とする全個別対象の購入確率の対数尤度を最大化することで前記重みを推定することが好ましい。 In the recommendation apparatus according to the present invention, the weight estimation unit may expect an expected combination model expressed by a product of a logarithmic likelihood of a prior distribution based on an empirical distribution and a log likelihood of the combined model and the prior distribution. The first condition indicating that the values are equal, the log likelihood of the Gap Markov model, and the expected value for the combined model represented by the product of the combined model and the log likelihood of the Gap Markov model. And constructing the combined model using the second condition shown, and maximizing the log likelihood of the purchase probability of all target individual targets from the processing data for all target users Is preferably estimated.
また、本発明に係るリコメンド方法は、前記重み推定ステップが、経験分布による事前分布の対数尤度と、前記結合モデルと前記事前分布の対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第1条件と、ギャップマルコフモデルの対数尤度と、前記結合モデルと前記ギャップマルコフモデルの対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第2条件とを用いて、前記結合モデルを構築し、対象とする全ユーザについての前記処理用データから、対象とする全個別対象の購入確率の対数尤度を最大化することで前記重みを推定することが好ましい。 In the recommendation method according to the present invention, the weight estimation step is expected for a combined model expressed by a product of a logarithmic likelihood of a prior distribution based on an empirical distribution and a log likelihood of the combined model and the prior distribution. The first condition indicating that the values are equal, the log likelihood of the Gap Markov model, and the expected value for the combined model represented by the product of the combined model and the log likelihood of the Gap Markov model. And constructing the combined model using the second condition shown, and maximizing the log likelihood of the purchase probability of all target individual targets from the processing data for all target users Is preferably estimated.
かかる構成のリコメンド装置、または、かかる手順のリコメンド方法によれば、推定された結合モデルは、購買順序を考慮した最大エントロピーモデルによる予測精度よりも高い予測精度を実現することが可能である。 According to the recommendation apparatus having such a configuration or the recommendation method of such a procedure, the estimated combined model can achieve higher prediction accuracy than the prediction accuracy based on the maximum entropy model considering the purchase order.
また、本発明に係るリコメンドプログラムは、前記したリコメンド方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。 In addition, the recommendation program according to the present invention causes a computer to execute the above-described recommendation method. By being configured in this way, a computer in which this program is installed can realize each function based on this program.
また、本発明に係るコンピュータ読み取り可能な記録媒体は、前記したリコメンドプログラムが記録されたことを特徴とする。このように構成されることにより、この記録媒体を装着されたコンピュータは、この記録媒体に記録されたプログラムに基づいた各機能を実現することができる。 A computer-readable recording medium according to the present invention is characterized in that the above-mentioned recommendation program is recorded. By being configured in this way, a computer equipped with this recording medium can realize each function based on a program recorded on this recording medium.
本発明によれば、購買順序を考慮しつつ、計算コストが低く、かつ、予測精度の高いリコメンド技術を提供することができる。その結果、ユーザが所望する商品の情報に対して迅速にアクセスできるようになると共に、商品提供者の収益を増加させることが可能となる。 According to the present invention, it is possible to provide a recommendation technique with low calculation cost and high prediction accuracy while considering the purchase order. As a result, it becomes possible to quickly access information on the product desired by the user, and increase the profit of the product provider.
以下、図面を参照して本発明のリコメンド装置およびリコメンド方法を実施するための最良の形態(以下「実施形態」という)について詳細に説明する。 The best mode for carrying out the recommendation device and the recommendation method of the present invention (hereinafter referred to as “embodiment”) will be described below in detail with reference to the drawings.
図1は、本発明の実施形態に係るリコメンド装置の構成を示すブロック図である。リコメンド装置1は、商品またはサービスを示す販売対象(商品群)を購買したことのある複数のユーザの購買順序に基づいて、それぞれのユーザに対して、販売対象(商品群)に属する個別対象(商品)のいずれかをリコメンド対象として提示する(リコメンドする)ものである。リコメンド装置1は、図1に示すように、演算手段2と、入力手段3と、記憶手段4と、出力手段5とを備えており、これら各手段2〜5はバスライン6に接続されている。
FIG. 1 is a block diagram showing a configuration of a recommendation device according to an embodiment of the present invention. The
演算手段2は、例えば、CPU(Central Processing Unit)およびRAM(Random Access Memory)から構成される主制御装置である。この演算手段2は、図1に示すように、前処理部(前処理手段)21と、拡張マルコフモデル推定部(拡張マルコフモデル推定手段)22と、重み推定部(重み推定手段)23と、リコメンド部(リコメンド手段)24と、メモリ25とを含んで構成される。なお、各部21〜24の詳細な説明は後記する。
The computing means 2 is a main control device composed of, for example, a CPU (Central Processing Unit) and a RAM (Random Access Memory). As shown in FIG. 1, the
入力手段3は、例えば、キーボード、マウス、ディスクドライブ装置などから構成される。この入力手段3は、例えば、データとして購買履歴ログ(購買履歴情報)を入力し、記憶手段4に格納する。
The
購買履歴ログ(購買情報)は、ユーザが過去に購入した1以上の個別対象(商品)に関する情報を含んでいる。この購買履歴ログは、例えば、表1に示すように、商品の購買ごとに(売買成立ごとに)、ユーザ番号と、商品番号と、購買時刻とを記録したログである。表1の例では、ユーザ番号が「1」であるユーザは、商品番号が「3」,「1」,「6」の商品を購入したことが分かる。 The purchase history log (purchase information) includes information on one or more individual objects (products) purchased by the user in the past. For example, as shown in Table 1, the purchase history log is a log in which a user number, a product number, and a purchase time are recorded for each purchase of a product (for each sale). In the example of Table 1, it can be seen that the user with the user number “1” has purchased the products with the product numbers “3”, “1”, and “6”.
記憶手段4は、例えば、一般的なハードディスク装置などから構成され、演算手段2で用いられる各種プログラムや各種データ等を記憶する。この記憶手段4は、プログラムとして、前処理プログラム41と、拡張マルコフモデル推定プログラム42と、重み推定プログラム43と、リコメンドプログラム44とをプログラム格納部40aに記憶する。そして、演算手段2は、これらのプログラム41〜44を記憶手段4から読み込んでメモリ25に展開して実行することで、前記した前処理部21、拡張マルコフモデル推定部22、重み推定部23、リコメンド部24の各機能を実現する。
The
また、記憶手段4は、購買履歴ログ45と、入力データ(処理用データ)46と、事前確率47と、ギャップマルコフモデル48と、重み49とをデータ格納部40bに記憶する。ここで、購買履歴ログ45は、入力手段3から入力されるデータであり、例えば、前記した表1に示したものである。入力データ46は、演算手段2の前処理部21の演算処理結果を示すデータである。事前確率47とギャップマルコフモデル48とは、演算手段2の拡張マルコフモデル推定部22の演算処理結果を示すデータである。重み49は、演算手段2の重み推定部23の演算処理結果を示すデータである。
In addition, the
出力手段5は、例えば、グラフィックボード(出力インタフェース)およびそれに接続されたモニタである。モニタは、例えば、液晶ディスプレイ等から構成され、演算処理結果(例えば、リコメンドする商品の情報等)を表示する。 The output means 5 is, for example, a graphic board (output interface) and a monitor connected thereto. The monitor is composed of, for example, a liquid crystal display or the like, and displays a calculation processing result (for example, information on recommended products).
次に、演算手段2の各部の構成の詳細を説明する。
<前処理部>
図2は、前処理部の構成を示す機能ブロック図である。前処理部21は、購買履歴ログ45を用いて、ユーザごとに、商品(個別対象)の購買系列(購買履歴)を抽出したデータを示す入力データ(処理用データ)を作成するものであり、図2に示すように、購買履歴ログ読込部211と、入力データ書込部212とを備えている。
Next, the detail of the structure of each part of the calculating means 2 is demonstrated.
<Pre-processing section>
FIG. 2 is a functional block diagram illustrating the configuration of the preprocessing unit. The pre-processing unit 21 uses the
購買履歴ログ読込部211は、購買履歴ログ45から、各購買のユーザ、時刻、商品の情報を読み込み、入力データ書込部212に出力する。
入力データ書込部212は、購買履歴ログ45に含まれる商品の購買ごとのユーザ番号、商品番号、購買時刻に基づいて、ユーザごとに、購入商品の購買系列を算出するものである。また、入力データ書込部212は、ユーザごとに算出した購買系列を、入力データ(処理用データ)46として、記憶手段4(図1参照)に書き込む。なお、書き込まれた入力データ46は、拡張マルコフモデル推定部22と、重み推定部23と、リコメンド部24で利用される。
The purchase history
The input
以下では、ユーザ集合Uは式(1)で定義され、商品集合Sは式(2)で定義されるものとする。式(1)において、nはユーザ番号(単にユーザともいう)、Nはユーザ数を示す。式(2)において、jは商品番号(単に商品ともいう)、Vは商品数を示す。 In the following, it is assumed that the user set U is defined by equation (1) and the product set S is defined by equation (2). In Expression (1), n represents a user number (also simply referred to as a user), and N represents the number of users. In Expression (2), j represents a product number (also simply referred to as a product), and V represents the number of products.
あるユーザnがk番目に購入した商品xn,kは式(3)に示すように商品集合Sに含まれ、そのときのユーザnの購買系列unkは、式(4)で表される。式(4)で示した購買系列unkは、ユーザnがk番目の商品xn,kを購入する前に購入した(k−1)個の商品による系列である。この購買系列unkは、入力データ書込部212によって、購買履歴ログ45から算出される。
A product x n, k purchased by a user n in the k-th order is included in the product set S as shown in Equation (3), and a purchase sequence unk of the user n at that time is expressed by Equation (4). . The purchase sequence unk shown in Expression (4) is a sequence of (k−1) items purchased before the user n purchases the k-th item x n, k . This purchase sequence unk is calculated from the
ここで、入力データ(処理用データ)46の具体例について表2を参照して説明する。入力データは、表2に示されるように、各ユーザの購入商品の購買系列で構成される。 A specific example of the input data (processing data) 46 will be described with reference to Table 2. As shown in Table 2, the input data is composed of purchase series of purchased products of each user.
例えば、表1に示す購買履歴ログ45によれば、ユーザ番号が「1」であるユーザ(n=1)は、商品番号「3」の商品に続いて商品番号「1」の商品を購入している。これにより、表2に示すように、ユーザ番号nが「1」の購買系列の要素である「x1,1」は、商品番号「3」の商品を示し、同様に「x1,2」は、商品番号「1」の商品を示すこととなる。
For example, according to the
<拡張マルコフモデル推定部>
図3は、拡張マルコフモデル推定部の構成を示す機能ブロック図である。
拡張マルコフモデル推定部22は、図3に示すように、入力データ読込部221と、事前確率推定部222と、ギャップマルコフモデル推定部223と、拡張マルコフモデル書込部224とを備えている。
入力データ読込部221は、入力データ46を読み込み、事前確率推定部222およびギャップマルコフモデル推定部223に出力する。
<Extended Markov model estimation unit>
FIG. 3 is a functional block diagram illustrating a configuration of the extended Markov model estimation unit.
As shown in FIG. 3, the extended Markov
The input
≪事前確率推定部≫
事前確率推定部(事前確率推定手段)222は、前処理部21(図1参照)で作成された入力データ46を用いて、ユーザが商品(個別対象)を購入する確率を示す事前確率を推定するものである。
本実施形態では、事前確率推定部222は、式(5)に示す事前確率P^(i)の計算を行う。なお、本明細書において、記号「^(ハット)」は直前の文字の上に記載されることを意味する。
最大事後確率(MAP:Maximum A Posteriori)推定によると、商品iを購入する事前確率P^(i)は、式(5)で推定される。式(5)において、δは、データ数が少ない場合に計算を安定化させる役割を持つハイパーパラメータであり、leave-one-out交差検定法により推定することができる。
≪A priori probability estimation part≫
The prior probability estimation unit (prior probability estimation means) 222 estimates the prior probability indicating the probability that the user purchases a product (individual target) using the
In the present embodiment, the prior
According to the maximum posterior probability (MAP: Maximum A Posteriori) estimation, the prior probability P ^ (i) for purchasing the product i is estimated by the equation (5). In Expression (5), δ is a hyperparameter that plays a role of stabilizing the calculation when the number of data is small, and can be estimated by a leave-one-out cross-validation method.
事前確率推定部222は、事前確率推定部222で推定された事前確率P^(i)を拡張マルコフモデル書込部224に出力する。
Prior
≪ギャップマルコフモデル推定部≫
ギャップマルコフモデル推定部(ギャップマルコフモデル推定手段)223は、前処理部21(図1参照)で作成された入力データ46を用いて、ユーザが所定の商品(個別対象)を購入したときにその前に購入した商品(個別対象)が特定の商品(個別対象)である確率を示すギャップマルコフモデルを推定するものである。
本実施形態では、ギャップマルコフモデル推定部223は、式(6)に示すlギャップマルコフモデルPl(jl|i)の計算を行う。lギャップマルコフモデルPl(jl|i)は、商品iを購入したl個前の商品がjである確率を表す。MAP推定によると、lギャップマルコフモデルは、式(6)で推定される。ギャップマルコフモデル推定部223は、推定されたlギャップマルコフモデルを拡張マルコフモデル書込部224に出力する。
≪Gap Markov model estimation part≫
The gap Markov model estimation unit (gap Markov model estimation means) 223 uses the
In the present embodiment, the gap Markov model estimation unit 223 calculates the l gap Markov model P l (j l | i) shown in Expression (6). The l-gap Markov model P l (j l | i) represents the probability that the l-th previous product that purchased the product i is j. According to the MAP estimation, the l-gap Markov model is estimated by Equation (6). The gap Markov model estimation unit 223 outputs the estimated l-gap Markov model to the extended Markov
前記した式(5)に示した事前確率および式(6)に示したlギャップマルコフモデルにおけるパラメータは、それぞれ単純な和のみで計算できる。そのため、これらの推定に必要な計算量は少なく、また、新たなデータが増えたときに、これらの更新は容易に行うことができる。 The prior probabilities shown in equation (5) and the parameters in the l-gap Markov model shown in equation (6) can be calculated by simple sums. Therefore, the amount of calculation required for these estimations is small, and when new data increases, these updates can be easily performed.
拡張マルコフモデル書込部224は、式(5)に示した事前確率を事前確率47として記憶手段4(図1参照)に格納する。また、拡張マルコフモデル書込部224は、式(6)に示したギャップマルコフモデルをギャップマルコフモデル48として記憶手段4(図1参照)に格納する。なお、格納された事前確率47およびギャップマルコフモデル48は、重み推定部23およびリコメンド部24で利用される。
The extended Markov
<重み推定部>
図4は、重み推定部の構成を示す機能ブロック図である。重み推定部23は、拡張マルコフモデル推定部22(図1参照)で推定された事前確率47とギャップマルコフモデル48とを最大エントロピー原理により結合したモデルを示す結合モデルを構築し、構築した結合モデルの未知パラメータを示す重みを推定するものである。なお、この結合モデルのことを拡張マルコフモデルともいう。
<Weight estimation unit>
FIG. 4 is a functional block diagram showing the configuration of the weight estimation unit. The
重み推定部23は、図4に示すように、入力データ読込部231と、拡張マルコフモデル読込部232と、ギャップ重み推定部233と、重み書込部234とを備えている。
入力データ読込部231は、入力データ46を読み込み、ギャップ重み推定部233に出力する。
拡張マルコフモデル読込部232は、事前確率47とギャップマルコフモデル48を読み込み、ギャップ重み推定部233に出力する。
As shown in FIG. 4, the
The input
The extended Markov
≪ギャップ重み推定部≫
ギャップ重み推定部233は、入力データ46と、事前確率47と、ギャップマルコフモデル48とを用いて、式(7)および式(8)の制約のもと、エントロピーを最大化することにより、事前確率47と、ギャップマルコフモデル48とを最大エントロピー原理により結合して式(9)に示す結合モデルを構築し、その重みを推定する。なお、以下では、対数は自然対数、すなわち、対数logの底は「e」であるものとする。また、式(9)において、商品iを購入するl個前に購入した商品をjlとする。また、Lは、k番目の商品を購入するまでに購入した商品の個数を示す。
≪Gap weight estimation part≫
The gap
式(7)の左辺は、「経験分布による事前分布の対数尤度」である。また、式(7)の右辺は、「モデルP(確率)」と、「事前分布の対数尤度」との積であらわしたもの(これはモデルPについての期待値に相当する)を示す。そして、式(7)の左辺が、式(7)の右辺と等しいと仮定すること(第1条件)が「制約」を意味する。 The left side of Expression (7) is “log likelihood of prior distribution based on experience distribution”. The right side of Expression (7) indicates a product of “model P (probability)” and “log likelihood of prior distribution” (this corresponds to an expected value for model P). Then, assuming that the left side of Expression (7) is equal to the right side of Expression (7) (first condition) means “constraint”.
式(8)の左辺は、「ギャップマルコフモデルの対数尤度」である。また、式(8)の右辺は、「モデルP(確率)」と、「ギャップマルコフモデルの対数尤度」との積であらわしたもの(これはモデルPについての期待値に相当する)を示す。そして、式(8)の左辺が、式(8)の右辺と等しいと仮定すること(第2条件)が「制約」を意味する。 The left side of Equation (8) is “log likelihood of Gap Markov model”. In addition, the right side of the equation (8) represents a product of “model P (probability)” and “log likelihood of Gap Markov model” (this corresponds to an expected value for model P). . Then, assuming that the left side of Expression (8) is equal to the right side of Expression (8) (second condition) means “constraint”.
この場合、式(9)に示す結合モデルは、式(10)に示すように展開することができる。式(10)において、Zは式(11)で示される正規化項であり、αは式(12)で示される未知パラメータ(以下、重みともいう)である。なお、本明細書において、αに添字を付す場合には、個別のパラメータを指し、αに添字を付さない場合には、L個のパラメータの集合を指す。 In this case, the combined model shown in Equation (9) can be developed as shown in Equation (10). In Expression (10), Z is a normalization term represented by Expression (11), and α is an unknown parameter (hereinafter also referred to as weight) represented by Expression (12). In the present specification, when subscript is added to α, it indicates an individual parameter, and when α is not subscripted, it indicates a set of L parameters.
未知パラメータαは、式(13)に示す対数尤度Jを、例えば、準ニュートン法などの最適化手法を用い最大化することにより、大域的最適解を得ることができる。 For the unknown parameter α, a global optimal solution can be obtained by maximizing the log likelihood J shown in Equation (13) using an optimization method such as a quasi-Newton method.
式(13)に示す対数尤度Jは、対象とする全ユーザについての購買系列unk、つまり、入力データ(処理用データ)から求められる、対象とする全商品(全個別対象)xn,kの購入確率の対数尤度を示す。したがって、ギャップ重み推定部233は、式(13)に示す対数尤度Jを最大化することで重みαを推定する。
The log likelihood J shown in the equation (13) is the purchase series u nk for all target users, that is, all target products (all individual targets) x n, obtained from input data (processing data) . Indicates the log likelihood of the purchase probability of k . Therefore, the gap
また、本実施形態では、ギャップ重み推定部233は、過学習を抑えるため、未知パラメータαの事前分布として平均0の正規分布を用いることとする。なお、学習に用いなかったデータに対する汎化誤差が大きくなってしまう現象は過学習と呼ばれている。ここで、予め定められた学習データのうち、拡張マルコフモデル推定部22によって事前確率およびギャップマルコフモデルの推定に用いた学習データを、未知パラメータαの推定に用いると、過学習する可能性がある。そのため、交差検定法により、未知パラメータαを推定する。すなわち、予め定められた学習データを分割し、事前確率およびギャップマルコフモデルの推定に用いなかったデータの対数尤度を準ニュートン法などの最適化手法を用い最大化することにより、重みαを推定する。
In the present embodiment, the gap
重み書込部234は、ギャップ重み推定部233で推定された重みαを重み49として記憶手段4(図1参照)に格納する。なお、格納された重み49は、リコメンド部24で利用される。
The
<リコメンド部>
図5は、リコメンド部の構成を示す機能ブロック図である。
リコメンド部24は、入力データ(処理用データ)46と、推定された事前確率47と、推定されたギャップマルコフモデル48と、推定された重み49とを用いて、結合モデル(拡張マルコフモデル)から計算されるユーザの購入する確率が最大となる商品(個別対象)を選択してリコメンド対象として提示するものである。
<Recommendation>
FIG. 5 is a functional block diagram showing the configuration of the recommendation unit.
The
リコメンド部24は、図5に示すように、入力データ読込部241と、拡張マルコフモデル読込部242と、重み読込部243と、最大商品選択部244と、リコメンド出力部245とを備えている。
As shown in FIG. 5, the
入力データ読込部241は、入力データ46を読み込み、最大商品選択部244に出力する。
拡張マルコフモデル読込部242は、事前確率47とギャップマルコフモデル48とを読み込み、最大商品選択部244に出力する。
重み読込部243は、重み49を読み込み、最大商品選択部244に出力する。
The input
The extended Markov model reading unit 242 reads the
The
最大商品選択部244は、式(14)に示す演算を実行する。ここで、ユーザnの購買履歴unを式(15)とする。なお、Knは、ユーザnの購入商品数である。
The maximum
本実施形態では、最大商品選択部244は、式(14)から計算されるユーザnの購入する確率が、最も高い商品を選択する。すなわち、最大商品選択部244は、ユーザuが購入した商品の商品集合S(商品番号 1≦i≦V)の中から、式(14)で示される確率が最大になる商品(商品番号)
を選択する。
In the present embodiment, the maximum
Select.
リコメンド出力部245は、最大商品選択部244で選択された商品番号を出力することで、当該商品番号の商品をリコメンド対象として提示する。このリコメンド対象は、出力手段5に出力される。
The
[リコメンド装置の動作]
図1に示したリコメンド装置1の動作について図6を参照(適宜図1参照)して説明する。図6は、リコメンド装置の動作を示すフローチャートである。リコメンド装置1は、前処理部21によって、購買履歴ログ45を用いて、入力データを生成する(ステップS1:前処理ステップ)。そして、リコメンド装置1は、拡張マルコフモデル推定部22によって、拡張マルコフモデル推定処理を実行する(ステップS2:拡張マルコフモデル推定ステップ)。続いて、リコメンド装置1は、重み推定部23によって、ステップS2で推定された事前確率47とギャップマルコフモデル48とを用いて、重み推定処理を実行する(ステップS3:重み推定ステップ)。そして、リコメンド装置1は、リコメンド部24によって、結合モデル(拡張マルコフモデル)から計算されるユーザの購入する確率が最大となる商品(個別対象)を選択してリコメンドする(ステップS4:リコメンドステップ)。
[Recommendation unit operation]
The operation of the
次に、前記したステップS2の拡張マルコフモデル推定処理と、前記したステップS3の重み推定処理について図7および図8をそれぞれ参照して説明する。図7は、拡張マルコフモデル推定処理を示すフローチャートであり、図8は、重み推定処理を示すフローチャートである。 Next, the extended Markov model estimation process in step S2 and the weight estimation process in step S3 will be described with reference to FIGS. 7 and 8, respectively. FIG. 7 is a flowchart showing the extended Markov model estimation process, and FIG. 8 is a flowchart showing the weight estimation process.
まず、前記したステップS2の拡張マルコフモデル推定処理では、図7に示すように、
拡張マルコフモデル推定部22は、入力データ読込部221によって、記憶手段4(図1参照)から、入力データ46を読み込む(ステップS21)。そして、拡張マルコフモデル推定部22は、事前確率推定部222によって、事前確率を推定し(ステップS22)、拡張マルコフモデル推定部22は、ギャップマルコフモデル推定部223によって、ギャップマルコフモデルを推定する(ステップS23)。そして、拡張マルコフモデル推定部22は、拡張マルコフモデル書込部224によって、推定された事前確率とギャップマルコフモデルとを記憶手段4(図1参照)に格納する(ステップS24)。なお、ステップS22の処理と、ステップS23の処理との実行順序は、任意であり、処理を並列に実行してもよい。
First, in the extended Markov model estimation process in step S2, as shown in FIG.
The extended Markov
次に、前記したステップS3の重み推定処理では、図8に示すように、重み推定部23は、入力データ読込部231によって、記憶手段4(図1参照)から、入力データ46を読み込む(ステップS31)。また、重み推定部23は、拡張マルコフモデル読込部232によって、記憶手段4(図1参照)から、事前確率47とギャップマルコフモデル48を読み込む(ステップS32)。続いて、重み推定部23は、ギャップ重み推定部233によって、入力データ46と、事前確率47と、ギャップマルコフモデル48とを用いて、結合モデルの未知パラメータαを推定する(ステップS33)。そして、重み推定部23は、重み書込部234によって、推定されたパラメータαを重み49として記憶手段4(図1参照)に格納する(ステップS34)。なお、ステップS31の処理と、ステップS32の処理との実行順序は、任意であり、処理を並列に実行してもよい。
Next, in the weight estimation process of step S3 described above, as shown in FIG. 8, the
なお、リコメンド装置1は、一般的なコンピュータに、前記した各ステップを実行させるリコメンドプログラムを実行することで実現することもできる。このプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
The
本実施形態によれば、購買順序を考慮しつつ、計算コストが低く、かつ、予測精度の高い商品をユーザにリコメンドすることができる。その結果、ユーザが所望する商品の情報に対して迅速にアクセスできるようになると共に、商品提供者の収益を増加させることが可能となる。 According to the present embodiment, it is possible to recommend a product having a low calculation cost and a high prediction accuracy to the user in consideration of the purchase order. As a result, it becomes possible to quickly access information on the product desired by the user, and increase the profit of the product provider.
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、リコメンド装置1を構成する装置は、1台に限定されることはなく、複数の装置に機能を分散配置してもよい。例えば、演算手段2の前処理部21、拡張マルコフモデル推定部22、重み推定部23、リコメンド部24や、記憶手段4のデータ格納部40bを、別々の装置として構成してもよい。これにより、各装置への負荷が分散され、高速な処理が実現可能となる。
As mentioned above, although embodiment of this invention was described, this invention is not limited to this, It can implement in the range which does not change the meaning. For example, the number of devices constituting the
本発明の効果を確認するために、本実施形態に係るリコメンド装置1に、音楽配信サービスの購買履歴ログを入力する場合の商品の予測精度と、動画配信サービスの購買履歴ログを入力する場合の商品の予測精度とを求めた。
In order to confirm the effect of the present invention, when the purchase history log of the music distribution service is input to the
<設定>
音楽配信サービスの購買履歴ログ(以下、音楽データという)は、2005年4月1日から2005年6月30日までの音楽配信サービスにおける購買履歴を示すログである。この音楽データにおいて、ユーザ数は「2,104」、商品数(楽曲数)は「561」、購買数は「15,216」であった。
動画配信サービスの購買履歴ログ(以下、動画データという)は、2007年1月1日の動画配信サービスにおける購買履歴を示すログである。この動画データにおいて、ユーザ数は「3,085」、商品数は「1,569」、購買数は「25,363」であった。
<Setting>
The purchase history log of the music distribution service (hereinafter referred to as music data) is a log indicating the purchase history of the music distribution service from April 1, 2005 to June 30, 2005. In this music data, the number of users was “2,104”, the number of products (number of songs) was “561”, and the number of purchases was “15,216”.
The purchase history log of the moving image distribution service (hereinafter referred to as moving image data) is a log indicating the purchase history of the moving image distribution service on January 1, 2007. In this moving image data, the number of users was “3,085”, the number of products was “1,569”, and the number of purchases was “25,363”.
なお、音楽データおよび動画データから、売上数が「10」未満の商品を省くと共に、購買数が「5」未満であるユーザを省いた。また、あるユーザが同じ商品を2回以上購入した場合、その商品に関する2回目以降の購買を購買履歴から省いた。また、各ユーザが最後に購入した商品をテストデータとして用いると共に、それ以前の購買履歴を学習データとして用いた。ここで、ユーザが最後に購入した商品が、学習データに含まれていないものである場合には、その商品をテストデータから省いた。 Note that, from music data and moving image data, products whose sales number is less than “10” are omitted, and users whose purchase number is less than “5” are omitted. Further, when a user purchases the same product twice or more, the second and subsequent purchases regarding the product are omitted from the purchase history. In addition, the product purchased last by each user is used as test data, and the previous purchase history is used as learning data. Here, when the product purchased last by the user is not included in the learning data, the product is omitted from the test data.
実施例(Our Method)を以下の6つのモデル(比較例1〜比較例6)と比較した。
比較例1:1次マルコフモデル(1stMarkov)
比較例2:2次マルコフモデル(2ndMarkov)
比較例3:3次マルコフモデル(3rdMarkov)
比較例4:ギャップマルコフモデルがそれぞれ独立と仮定したモデル(GapMarkov)
比較例5:購買順序を考慮した最大エントロピーモデル(MaxEnt(seq))
比較例6:購買順序を考慮しない最大エントロピーモデル(MaxEnt)
The Example (Our Method) was compared with the following six models (Comparative Examples 1 to 6).
Comparative Example 1: 1st order Markov model (1stMarkov)
Comparative Example 2: Second-order Markov model (2ndMarkov)
Comparative Example 3: Third-order Markov model (3rdMarkov)
Comparative example 4: Gap Markov model assuming that each is independent (GapMarkov)
Comparative Example 5: Maximum entropy model considering purchase order (MaxEnt (seq))
Comparative Example 6: Maximum entropy model (MaxEnt) without considering the purchase order
ここで、事前確率およびギャップマルコフモデルにおけるハイパーパラメータは、leave-one-out交差検定法により求めた。すなわち、本実施形態のリコメンド装置1では、前記した式(5)におけるハイパーパラメータ“δ”と、式(6)におけるハイパーパラメータ“δ”とを、leave-one-out交差検定法により求めた。
また、最大エントロピーモデルにおけるパラメータの事前分布は、分散が「1」の正規分布とした。すなわち、本実施形態のリコメンド装置1では、前記した式(12)における未知パラメータ(重み)αの事前分布は、分散が「1」の正規分布とした。
また、本実施形態のリコメンド装置1では、重みαを10重交差検定法により求めた。
Here, the prior probability and the hyperparameter in the Gap Markov model were obtained by the leave-one-out cross-validation method. That is, in the
The parameter prior distribution in the maximum entropy model is a normal distribution with a variance of “1”. That is, in the
In the
<結果(正答率)>
このときの各手法の実験結果(正答率)を表3に示す。
<Result (correct answer rate)>
Table 3 shows the experimental results (correct answer rate) of each method at this time.
比較例4(GapMarkov)、比較例5(MaxEnt(seq))、実施例(Our Method)において、l個前までの購買履歴を用いた手法(l=1,…,10)で実験し、最もよい正答率となったときの値を表示し、そのときのlを括弧内に表示している。つまり、表3では、例えば、実施例(Our Method)の場合には、音楽データはl=8の場合に正答率が最もよく、動画データはl=9の場合に正答率が最もよいことを示している。 In Comparative Example 4 (GapMarkov), Comparative Example 5 (MaxEnt (seq)), and Example (Our Method), an experiment was performed using a method (l = 1,..., 10) using the purchase history up to the previous one. The value when the correct answer rate is obtained is displayed, and l at that time is displayed in parentheses. That is, in Table 3, for example, in the case of the Example (Our Method), music data has the best correct answer rate when l = 8, and video data has the best correct answer rate when l = 9. Show.
表3に示すように、音楽データおよび動画データのいずれでも、実施例(Our Method)の正答率が最も高かった。比較例4(GapMarkov)の正答率が実施例(Our Method)の正答率に比べて低くなった理由は、「ギャップマルコフモデルがそれぞれ独立である」という仮定が適切ではないためであると考えられる。 As shown in Table 3, the correct answer rate of the Example (Our Method) was the highest in both music data and moving image data. The reason why the correct answer rate of Comparative Example 4 (GapMarkov) is lower than the correct answer rate of Example (Our Method) is considered to be because the assumption that “the Gap Markov model is independent” is not appropriate. .
また、表3に示すように、比較例3(3rdMarkov)は、すべてのデータセットにおいて、比較例1(1stMarkov)や比較例2(2ndMarkov)に比べて正答率が低くなっている。これは、高次になるとパラメータ数がデータ数に比べて多くなり、頑健な推定ができていないためであると考えられる。 Further, as shown in Table 3, in Comparative Example 3 (3rdMarkov), the correct answer rate is lower in all data sets than in Comparative Example 1 (1stMarkov) and Comparative Example 2 (2ndMarkov). This is thought to be because the number of parameters increases compared to the number of data at higher orders, and robust estimation cannot be performed.
また、比較例5(MaxEnt(seq))と比較例6(MaxEnt)とを比較すると、すべてのデータセットにおいて、比較例5(MaxEnt(seq))は、比較例6(MaxEnt)に比べて正答率が高くなっている。これは、購買順序を考慮することは、正答率を上げるために重要であることを示唆している。 Further, when Comparative Example 5 (MaxEnt (seq)) and Comparative Example 6 (MaxEnt) are compared, Comparative Example 5 (MaxEnt (seq)) is correct in comparison with Comparative Example 6 (MaxEnt) in all data sets. The rate is high. This suggests that considering the purchase order is important for increasing the correct answer rate.
<重みαとギャップlとの関係>
また、本実施例でリコメンド装置1により推定された重みαとギャップlとの関係を図9に示す。図9において、musicは、音楽データを示し、movieは、動画データを示している。なお、αl(l=1〜10)は、lギャップマルコフモデルの重みを示し、αl(l=0)は、事前確率の重みを示す。図9のグラフに示すように、全データセットともに、ギャップが小さいギャップマルコフモデルの重みが大きい。これは、最近の履歴が購買予測に関する大きな情報を与えるという直感と一致している。
<Relationship between weight α and gap l>
FIG. 9 shows the relationship between the weight α estimated by the
<d日前までのデータで推定した重みαを用いた正答率>
音楽データについて、d日前までのデータで推定した重みαを用いて、事前確率、ギャップマルコフモデルのみを更新したときの正答率を図10に示す。ここで、事前確率およびギャップマルコフモデルにおけるハイパーパラメータ“δ”もd日前までのデータで推定したものを用いた。なお、図10の縦軸は、正答率(accuracy)であり単位は%である。
<Accuracy rate using weight α estimated from data up to d days ago>
For music data, FIG. 10 shows the correct answer rate when only the prior probability and the Gap Markov model are updated using the weight α estimated from data up to d days ago. Here, the prior probability and the hyperparameter “δ” in the Gap Markov model were also estimated using data up to d days ago. In addition, the vertical axis | shaft of FIG. 10 is a correct answer rate (accuracy), and a unit is%.
図10に示すように、実施例(Our Method)は、比較例6(MaxEnt)、比較例4(GapMarkov)および比較例1(1stMarkov)と比べて、正答率(accuracy)が高い。また、実施例(Our Method)は、過去何日のデータを用いるかによって正答率(accuracy)が変動する。そのため、実施例(Our Method)は、比較例5(MaxEnt(seq))よりも正答率が高い場合と、低い場合とがあって、平均すると、比較例5(MaxEnt(seq))と同程度の性能であると言える。なお、実施例(Our Method)は、過去のデータとして、例えば30日前までのデータで推定した重みを用いた場合には、正答率が、比較例5(MaxEnt(seq))の正答率よりも約1%上回った。 As shown in FIG. 10, the example (Our Method) has a higher accuracy (accuracy) than Comparative Example 6 (MaxEnt), Comparative Example 4 (GapMarkov) and Comparative Example 1 (1stMarkov). Further, in the example (Our Method), the accuracy rate (accuracy) varies depending on how many days of data are used. Therefore, the Example (Our Method) has a case where the correct answer rate is higher than that of Comparative Example 5 (MaxEnt (seq)) and is lower than that of Comparative Example 5; It can be said that it is performance. In the example (Our Method), when the weight estimated using data up to 30 days ago is used as past data, the correct answer rate is higher than the correct answer rate of Comparative Example 5 (MaxEnt (seq)). About 1% higher.
これらの結果から、以下のことが理解できる。すなわち、図1に示す購買履歴ログ45に新規のデータを追加した場合、つまり、入力データ(処理用データ)46が追加された場合に、事前確率47、ギャップマルコフモデル48、重み49を、それぞれ更新する必要がある。このうち、事前確率47およびギャップマルコフモデル48よりも、重み49の方がパラメータの更新に多くの計算量が必要である。したがって、重みαを1カ月に1回程度の割合で更新し、かつ、事前確率とギャップマルコフモデルをそれよりも短い間隔で更新するようにしても、重みαを頻繁に更新したときと同様な高い予測精度を実現できる。そのため、重みαを1カ月に1回程度の割合で更新することで、長期スパンの計算コストを効果的に抑制することが可能となる。
From these results, the following can be understood. That is, when new data is added to the
1 リコメンド装置
2 演算手段
3 入力手段
4 記憶手段
5 出力手段
6 バスライン
21 前処理部(前処理手段)
22 拡張マルコフモデル推定部
23 重み推定部(重み推定手段)
24 リコメンド部(リコメンド手段)
25 メモリ
40a プログラム格納部
41 前処理プログラム
42 拡張マルコフモデル推定プログラム
43 重み推定プログラム
44 リコメンドプログラム
40b データ格納部
45 購買履歴ログ
46 入力データ
47 事前確率
48 ギャップマルコフモデル
49 重み
211 購買履歴ログ読込部
212 入力データ書込部
221 入力データ読込部
222 事前確率推定部(事前確率推定手段)
223 ギャップマルコフモデル推定部(ギャップマルコフモデル推定手段)
224 ギャップマルコフモデル書込部
231 入力データ読込部
232 拡張マルコフモデル読込部
233 ギャップ重み推定部
234 重み書込部
241 入力データ読込部
242 拡張マルコフモデル読込部
243 重み読込部
244 最大商品選択部
245 リコメンド出力部
DESCRIPTION OF
22 extended Markov
24 recommendation section (recommendation means)
25 memory 40a
223 Gap Markov model estimation unit (gap Markov model estimation means)
224 Gap Markov
Claims (6)
前記ユーザが過去に購入した1以上の個別対象に関する情報を含む購買履歴情報を用いて、前記ユーザごとに、前記個別対象の購買履歴を抽出したデータを示す処理用データを作成する前処理手段と、
前記作成された処理用データを用いて、前記ユーザが前記個別対象を購入する確率を示す事前確率を推定する事前確率推定手段と、
前記作成された処理用データを用いて、前記ユーザが所定の個別対象を購入したときにその前に購入した個別対象が特定の個別対象である確率を示すギャップマルコフモデルを推定するギャップマルコフモデル推定手段と、
前記推定された事前確率と前記推定されたギャップマルコフモデルとを最大エントロピー原理により結合したモデルを示す結合モデルを構築し、構築した結合モデルの未知パラメータを示す重みを推定する重み推定手段と、
前記作成された処理用データと、前記推定された事前確率と、前記推定されたギャップマルコフモデルと、前記推定された重みとを用いて、前記結合モデルから計算されるユーザの購入する確率が最大となる前記個別対象を選択してリコメンド対象として提示するリコメンド手段と、
を備えることを特徴とするリコメンド装置。 A recommendation device that presents, as a recommendation target, one of the individual targets belonging to the sales target to each user based on the purchase order of a plurality of users who have purchased the sales target indicating a product or service. And
Preprocessing means for creating processing data indicating data obtained by extracting the purchase history of the individual object for each user using purchase history information including information on one or more individual objects purchased by the user in the past; ,
A prior probability estimating means for estimating a prior probability indicating a probability that the user purchases the individual object using the generated processing data;
Gap Markov model estimation that uses the created processing data to estimate a Gap Markov model indicating the probability that an individual object purchased before the user purchases a predetermined individual object is a specific individual object Means,
A weight estimation means for constructing a combined model indicating a model obtained by combining the estimated prior probability and the estimated gap Markov model by a maximum entropy principle, and estimating a weight indicating an unknown parameter of the combined model;
Using the generated processing data, the estimated prior probability, the estimated gap Markov model, and the estimated weight, the probability of purchase by the user calculated from the combined model is the maximum. Recommending means for selecting the individual object to be presented as a recommendation object;
A recommendation device comprising:
経験分布による事前分布の対数尤度と、前記結合モデルと前記事前分布の対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第1条件と、
ギャップマルコフモデルの対数尤度と、前記結合モデルと前記ギャップマルコフモデルの対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第2条件とを用いて、前記結合モデルを構築し、
対象とする全ユーザについての前記処理用データから、対象とする全個別対象の購入確率の対数尤度を最大化することで前記重みを推定する、
ことを特徴とする請求項1に記載のリコメンド装置。 The weight estimation means includes
A first condition indicating that a logarithmic likelihood of a prior distribution based on an empirical distribution and an expected value for a combined model expressed by a product of the combined model and the log likelihood of the prior distribution are equal;
Using the logarithmic likelihood of the Gap Markov model and the second condition indicating that an expected value of the coupled model represented by a product of the coupled model and the log likelihood of the Gap Markov model is equal. Build
From the processing data for all target users, the weight is estimated by maximizing the log likelihood of the purchase probability of all target individual targets.
The recommendation device according to claim 1.
前処理手段によって、前記ユーザが過去に購入した1以上の個別対象に関する情報を含む購買履歴情報を用いて、前記ユーザごとに、前記個別対象の購買履歴を抽出したデータを示す処理用データを作成する前処理ステップと、
事前確率推定手段によって、前記作成された処理用データを用いて、前記ユーザが前記個別対象を購入する確率を示す事前確率を推定する事前確率推定ステップと、
ギャップマルコフモデル推定手段によって、前記作成された処理用データを用いて、前記ユーザが所定の個別対象を購入したときにその前に購入した個別対象が特定の個別対象である確率を示すギャップマルコフモデルを推定するギャップマルコフモデル推定ステップと、
重み推定手段によって、前記推定された事前確率と前記推定されたギャップマルコフモデルとを最大エントロピー原理により結合したモデルを示す結合モデルを構築し、構築した結合モデルの未知パラメータを示す重みを推定する重み推定ステップと、
リコメンド手段によって、前記作成された処理用データと、前記推定された事前確率と、前記推定されたギャップマルコフモデルと、前記推定された重みとを用いて、前記結合モデルから計算されるユーザの購入する確率が最大となる前記個別対象を選択してリコメンド対象として提示するリコメンドステップと、
を有することを特徴とするリコメンド方法。 Recommendation of a recommendation device that presents, as a recommendation target, one of the individual objects belonging to the sales target to each user based on the purchase order of a plurality of users who have purchased the sales target indicating goods or services A method,
Preprocessing means creates processing data indicating data obtained by extracting the purchase history of the individual object for each user, using purchase history information including information on one or more individual objects purchased by the user in the past. Preprocessing steps to
A prior probability estimating step of estimating a prior probability indicating a probability that the user purchases the individual object by using the created processing data by a prior probability estimating unit;
Gap Markov model indicating the probability that an individual object purchased before the user purchases a predetermined individual object by the gap Markov model estimation means using the generated processing data is a specific individual object Gap Markov model estimation step for estimating
A weight for estimating a weight indicating an unknown parameter of the constructed coupled model by constructing a coupled model indicating a model obtained by combining the estimated prior probability and the estimated gap Markov model by the maximum entropy principle by weight estimation means An estimation step;
User purchase calculated from the combined model using the created processing data, the estimated prior probability, the estimated gap Markov model, and the estimated weight by a recommendation means A recommendation step of selecting the individual object with the highest probability of being presented and presenting it as a recommendation object;
A recommending method characterized by comprising:
経験分布による事前分布の対数尤度と、前記結合モデルと前記事前分布の対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第1条件と、
ギャップマルコフモデルの対数尤度と、前記結合モデルと前記ギャップマルコフモデルの対数尤度との積で表した結合モデルについての期待値とが等しいことを示す第2条件とを用いて、前記結合モデルを構築し、
対象とする全ユーザについての前記処理用データから、対象とする全個別対象の購入確率の対数尤度を最大化することで前記重みを推定する、
ことを特徴とする請求項3に記載のリコメンド方法。 The weight estimation step includes:
A first condition indicating that a logarithmic likelihood of a prior distribution based on an empirical distribution and an expected value for a combined model expressed by a product of the combined model and the log likelihood of the prior distribution are equal;
Using the logarithmic likelihood of the Gap Markov model and the second condition indicating that an expected value of the coupled model represented by a product of the coupled model and the log likelihood of the Gap Markov model is equal. Build
From the processing data for all target users, the weight is estimated by maximizing the log likelihood of the purchase probability of all target individual targets.
The recommendation method according to claim 3.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007132593A JP4847916B2 (en) | 2007-05-18 | 2007-05-18 | RECOMMENDATION DEVICE, RECOMMENDATION METHOD, RECOMMENDATION PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007132593A JP4847916B2 (en) | 2007-05-18 | 2007-05-18 | RECOMMENDATION DEVICE, RECOMMENDATION METHOD, RECOMMENDATION PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008287550A true JP2008287550A (en) | 2008-11-27 |
JP4847916B2 JP4847916B2 (en) | 2011-12-28 |
Family
ID=40147203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007132593A Expired - Fee Related JP4847916B2 (en) | 2007-05-18 | 2007-05-18 | RECOMMENDATION DEVICE, RECOMMENDATION METHOD, RECOMMENDATION PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4847916B2 (en) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011048738A (en) * | 2009-08-28 | 2011-03-10 | Activecore Inc | Recommend device, recommend method, and recommend program |
JP2012203821A (en) * | 2011-03-28 | 2012-10-22 | Yahoo Japan Corp | Search ranking generation device and method |
JP2015076076A (en) * | 2013-10-11 | 2015-04-20 | カルチュア・コンビニエンス・クラブ株式会社 | Customer data analysis system |
CN108230058A (en) * | 2016-12-09 | 2018-06-29 | 阿里巴巴集团控股有限公司 | Products Show method and system |
JP2019003261A (en) * | 2017-06-12 | 2019-01-10 | パナソニックIpマネジメント株式会社 | Information presentation system |
WO2020179861A1 (en) * | 2019-03-05 | 2020-09-10 | Social Good Foundation株式会社 | Information processing device, information processing method, and method for generating learned model |
CN111784480A (en) * | 2020-07-22 | 2020-10-16 | 中国银行股份有限公司 | Bank product recommendation method and device, storage medium and electronic equipment |
JP6821092B1 (en) * | 2019-03-11 | 2021-01-27 | 三菱電機株式会社 | Data management equipment, data management system, data management method and program |
JP2021511611A (en) * | 2018-01-25 | 2021-05-06 | オカド・イノベーション・リミテッド | Recommended equipment and methods |
JP7041299B1 (en) | 2021-03-18 | 2022-03-23 | ヤフー株式会社 | Information processing equipment, information processing methods and information processing programs |
US12045785B2 (en) | 2019-03-05 | 2024-07-23 | Socialgood, Inc. | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002279279A (en) * | 2001-03-22 | 2002-09-27 | Just Syst Corp | Commodity recommendation system, commodity recommendation method and commodity recommendation program |
JP2004054439A (en) * | 2002-07-17 | 2004-02-19 | Nippon Telegr & Teleph Corp <Ntt> | Method, device and program for supporting formulation of marketing strategy based on analysis of customer behavior |
JP2007287139A (en) * | 2006-04-14 | 2007-11-01 | Mitsubishi Electric Research Laboratories Inc | Computer-implemented method and system for recommending product to consumer |
JP2007317082A (en) * | 2006-05-29 | 2007-12-06 | Nippon Telegr & Teleph Corp <Ntt> | Recommendation device, recommendation method, recommendation program, and recording medium for recording this program |
JP2008027358A (en) * | 2006-07-25 | 2008-02-07 | Silver Egg Technology Kk | Recommend device, recommend method and program |
-
2007
- 2007-05-18 JP JP2007132593A patent/JP4847916B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002279279A (en) * | 2001-03-22 | 2002-09-27 | Just Syst Corp | Commodity recommendation system, commodity recommendation method and commodity recommendation program |
JP2004054439A (en) * | 2002-07-17 | 2004-02-19 | Nippon Telegr & Teleph Corp <Ntt> | Method, device and program for supporting formulation of marketing strategy based on analysis of customer behavior |
JP2007287139A (en) * | 2006-04-14 | 2007-11-01 | Mitsubishi Electric Research Laboratories Inc | Computer-implemented method and system for recommending product to consumer |
JP2007317082A (en) * | 2006-05-29 | 2007-12-06 | Nippon Telegr & Teleph Corp <Ntt> | Recommendation device, recommendation method, recommendation program, and recording medium for recording this program |
JP2008027358A (en) * | 2006-07-25 | 2008-02-07 | Silver Egg Technology Kk | Recommend device, recommend method and program |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011048738A (en) * | 2009-08-28 | 2011-03-10 | Activecore Inc | Recommend device, recommend method, and recommend program |
JP2012203821A (en) * | 2011-03-28 | 2012-10-22 | Yahoo Japan Corp | Search ranking generation device and method |
JP2015076076A (en) * | 2013-10-11 | 2015-04-20 | カルチュア・コンビニエンス・クラブ株式会社 | Customer data analysis system |
CN108230058A (en) * | 2016-12-09 | 2018-06-29 | 阿里巴巴集团控股有限公司 | Products Show method and system |
JP2019003261A (en) * | 2017-06-12 | 2019-01-10 | パナソニックIpマネジメント株式会社 | Information presentation system |
US11816721B2 (en) | 2018-01-25 | 2023-11-14 | Ocado Innovation Limited | Recommendation apparatus and method |
JP7206295B2 (en) | 2018-01-25 | 2023-01-17 | オカド・イノベーション・リミテッド | Recommended equipment and methods |
JP2021511611A (en) * | 2018-01-25 | 2021-05-06 | オカド・イノベーション・リミテッド | Recommended equipment and methods |
JPWO2020179861A1 (en) * | 2019-03-05 | 2021-03-11 | Social Good Foundation株式会社 | Information processing device, information processing method and trained model generation method |
WO2020179861A1 (en) * | 2019-03-05 | 2020-09-10 | Social Good Foundation株式会社 | Information processing device, information processing method, and method for generating learned model |
US12045785B2 (en) | 2019-03-05 | 2024-07-23 | Socialgood, Inc. | Information processing apparatus, information processing method, and non-transitory computer-readable storage medium |
JP6821092B1 (en) * | 2019-03-11 | 2021-01-27 | 三菱電機株式会社 | Data management equipment, data management system, data management method and program |
US11363003B2 (en) | 2019-03-11 | 2022-06-14 | Mitsubishi Electric Corporation | Data management device, data management system, data management method, and program |
CN111784480A (en) * | 2020-07-22 | 2020-10-16 | 中国银行股份有限公司 | Bank product recommendation method and device, storage medium and electronic equipment |
JP7041299B1 (en) | 2021-03-18 | 2022-03-23 | ヤフー株式会社 | Information processing equipment, information processing methods and information processing programs |
JP2022143937A (en) * | 2021-03-18 | 2022-10-03 | ヤフー株式会社 | Information processing apparatus, information processing method, and information processing program |
Also Published As
Publication number | Publication date |
---|---|
JP4847916B2 (en) | 2011-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4847916B2 (en) | RECOMMENDATION DEVICE, RECOMMENDATION METHOD, RECOMMENDATION PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM | |
JP4465417B2 (en) | Customer segment estimation device | |
JP4751242B2 (en) | RECOMMENDATION DEVICE, RECOMMENDATION METHOD, RECOMMENDATION PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM | |
Griffin et al. | In search of lost mixing time: adaptive Markov chain Monte Carlo schemes for Bayesian variable selection with very large p | |
US20200074498A1 (en) | Systems and methods for improving social media advertising efficiency | |
US10984343B2 (en) | Training and estimation of selection behavior of target | |
KR102049777B1 (en) | Item recommendation method and apparatus based on user behavior | |
WO2012049987A1 (en) | Product recommendation system and product recommendation method | |
JP4847919B2 (en) | RECOMMENDATION DEVICE, RECOMMENDATION METHOD, RECOMMENDATION PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM | |
US9858592B2 (en) | Generating apparatus, generation method, information processing method and program | |
US11301763B2 (en) | Prediction model generation system, method, and program | |
JP2009110341A (en) | Prediction apparatus using time information, prediction method, prediction program, and recording medium recording the program | |
JP2015114988A (en) | Processing device, processing method, and program | |
US11049041B2 (en) | Online training and update of factorization machines using alternating least squares optimization | |
US20170213236A1 (en) | Estimation of Causal Impact of Digital Marketing Content | |
JP2015187773A (en) | Data analysis device, data analysis program, and data analysis method | |
JP2015114987A (en) | Processing device, processing method, and program | |
US20150294326A1 (en) | Generating apparatus, selecting apparatus, generation method, selection method and program | |
WO2016092767A1 (en) | Grouping system, grouping method, and grouping program | |
US20230259510A1 (en) | Equilibrium solution searching method and information processing apparatus | |
JP4879796B2 (en) | RF analysis / RF prediction program | |
JP7201001B2 (en) | Assortment support device, assortment support method, and program | |
JP2022091337A (en) | Information processing device and information processing method | |
JP2018077636A (en) | Program and combination extraction system | |
JP6727997B2 (en) | Estimating apparatus, estimating method, and estimating program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090715 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110712 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110810 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110902 |
|
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: 20111011 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111014 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141021 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
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 |
|
LAPS | Cancellation because of no payment of annual fees |