【文献】
神嶌 敏弘,転移学習 ,人工知能学会誌,日本,(社)人工知能学会,2010年 7月 1日,第25巻第4号,P.572〜580
【文献】
元田 浩,データマイニングの基礎 ,株式会社オーム社 竹生 修己,2006年12月20日,第1版,P.51〜72
(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、非特許文献2に記載の手法のように、対象のECサイトとは異なる他のECサイトのデータを用いた場合には、対象のECサイトと他のECサイトとの性質の相違などが影響して、対象のECサイトのデータのみを用いて構築したモデルに比べて予測精度が劣化する場合がある、という問題がある。
【0009】
本発明は上記事情に鑑みてなされたものであり、購買予測の対象となる商品を取り扱う対象サイトとは異なる他のサイトのデータを用いた場合でも、対象商品の購買予測の精度を向上させることができる購買予測装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0010】
上記目的を達成するために、本発明の購買予測装置は、
商品に関する情報を示す商品情報及び該商品が購買されたか否かを示す購買情報を含み、かつ購買予測の対象となる商品を取り扱う対象サイトから収集された
対象サイトのデータ集合と、前記商品情報及び前記購買情報を含み、かつ前記対象サイトとは異なる他のサイトから収集された
他サイトのデータ集合とを取得する取得手段と、
前記取得手段により取得された前記
対象サイトのデータ集合及び前記
他サイトのデータ集合の両方を含むように
第1のデータ集合を抽出し、該第1のデータ集合と前記対象サイトのデータ集合とに共通して含まれる第2のデータ集合を抽出し、前記第1のデータ集合から前記商品に対する購買予測を行うための第1モデルを学習すると共に、
前記第2のデータ集合から前記商品に対する購買予測を行うための第2モデルを学習し、前記
第1のデータ集合および第2のデータ集合の抽出を複数回繰り返すことにより、前記第1モデルと前記第2モデルとの組を複数生成する生成手段と、
前記生成手段により生成された前記第1モデルと前記第2モデルとの組
の各組について、前記第1モデル及び前記第2モデル各々に前記対象サイトデータを適用した場合の予測誤差が小さいモデルを選択する選択手段と、
前記選択手段により選択された複数のモデル各々に前記対象サイトデータを適用した場合の予測誤差に基づいて、前記複数のモデルを選択及び統合した購買予測モデルを構築する構築手段と、
前記構築手段により構築された前記購買予測モデルに、前記購買予測の対象となる商品の商品情報を適用して、前記対象となる商品が購買されるか否かを予測する予測手段と、
を含んで構成されている。
【0011】
本発明の購買予測装置によれば、取得手段が、商品に関する情報を示す商品情報及びその商品が購買されたか否かを示す購買情報を含み、かつ購買予測の対象となる商品を取り扱う対象サイトから収集された複数の対象サイトデータと、商品情報及び購買情報を含み、かつ対象サイトとは異なる他のサイトから収集された複数の他サイトデータとを取得する。
【0012】
そして、生成手段が、取得手段により取得された対象サイトデータ及び他サイトデータの両方を含むように抽出された複数のデータを用いて、商品に対する購買予測を行うための第1モデルを学習すると共に、第1モデルの学習に用いた複数のデータに含まれる対象サイトデータを用いて商品に対する購買予測を行うための第2モデルを学習し、複数のデータの抽出を複数回繰り返すことにより、第1モデルと第2モデルとの組を複数生成する。また、選択手段が、生成手段により生成された第1モデルと第2モデルとの組毎に、第1モデル及び第2モデル各々に対象サイトデータを適用した場合の予測誤差が小さいモデルを選択する。
【0013】
そして、構築手段が、選択手段により選択された複数のモデル各々に対象サイトデータを適用した場合の予測誤差に基づいて、複数のモデルを選択及び統合した購買予測モデルを構築し、予測手段が、構築手段により構築された購買予測モデルに、購買予測の対象となる商品の商品情報を適用して、対象となる商品が購買されるか否かを予測する。
【0014】
このように、対象サイトデータ及び他サイトデータを用いて学習された第1モデルと、対象サイトデータを用いて学習された第2モデルとの予測誤差が小さいモデルを選択して購買予測モデルを構築するため、精度向上につながる他サイトデータのみを利用することができ、購買予測の対象となる商品を取り扱う対象サイトとは異なる他のサイトのデータを用いた場合でも、対象商品の購買予測の精度を向上させることができる。
【0015】
また、本発明の購買予測方法は、
取得手段と、生成手段と、選択手段と、構築手段と、予測手段とを含む購買予測装置における購買予測方法であって、
前記取得手段は、商品に関する情報を示す商品情報及び該商品が購買されたか否かを示す購買情報を含み、かつ購買予測の対象となる商品を取り扱う対象サイトから収集された
対象サイトのデータ集合と、前記商品情報及び前記購買情報を含み、かつ前記対象サイトとは異なる他のサイトから収集された
他サイトのデータ集合とを取得する取得手段と、
前記生成手段は、前記取得手段により取得された前記
対象サイトのデータ集合及び前記
他サイトのデータ集合の両方を含むように
第1のデータ集合を抽出し、該第1のデータ集合と前記対象サイトのデータ集合とに共通して含まれる第2のデータ集合を抽出し、前記第1のデータ集合から前記商品に対する購買予測を行うための第1モデルを学習すると共に、
前記第2のデータ集合から前記商品に対する購買予測を行うための第2モデルを学習し、前記
第1のデータ集合および第2のデータ集合の抽出を複数回繰り返すことにより、前記第1モデルと前記第2モデルとの組を複数生成する生成手段と、
前記選択手段は、前記生成手段により生成された前記第1モデルと前記第2モデルとの組
の各組について、前記第1モデル及び前記第2モデル各々に前記対象サイトデータを適用した場合の予測誤差が小さいモデルを選択し、
前記構築手段は、前記選択手段により選択された複数のモデル各々に前記対象サイトデータを適用した場合の予測誤差に基づいて、前記複数のモデルを選択及び統合した購買予測モデルを構築し、
前記予測手段は、前記構築手段により構築された前記購買予測モデルに、前記購買予測の対象となる商品の商品情報を適用して、前記対象となる商品が購買されるか否か
を予測する方法である。
【0016】
また、本発明の購買予測プログラムは、コンピュータを、上記の購買予測装置を構成する各手段として機能させるためのプログラムである。
【発明の効果】
【0017】
以上説明したように、本発明の購買予測装置、方法、及びプログラムによれば、対象サイトデータ及び他サイトデータを用いて学習された第1モデルと、対象サイトデータを用いて学習された第2モデルとの予測誤差が小さいモデルを選択して購買予測モデルを構築するため、精度向上につながる他サイトデータのみを利用することができ、購買予測の対象となる商品を取り扱う対象サイトとは異なる他のサイトのデータを用いた場合でも、対象商品の購買予測の精度を向上させることができる、という効果が得られる。
【発明を実施するための形態】
【0019】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0020】
第1の実施の形態に係る購買予測装置10は、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、後述する購買予測処理ルーチンを実行するためのプログラムを記憶したROM(Read Only Memory)とを備えたコンピュータで構成されている。このコンピュータは、機能的には、
図1に示すように、購買予測モデル第1処理部12と、購買予測モデル第2処理部14と、購買予測部16とを含んだ構成で表すことができる。さらに、購買予測モデル第1処理部12は、モデル生成部12aとモデル選択部12bとを含んだ構成で表すことができる。
【0021】
購買予測モデル第1処理部12は、購買予測の対象となる商品を取り扱うECサイト(以下、「対象ECサイト」という)から収集された商品・購買情報20と、対象ECサイトとは異なる他のECサイト(以下、「他ECサイト」という)から収集された商品・購買情報22を受け付ける。
【0022】
図2に示すように、対象ECサイトの商品・購買情報20及び他ECサイトの商品・購買情報22のデータ構造は、商品毎の価格、その商品と同じカテゴリの商品の平均価格、・・・等の商品に関する情報を示す商品情報と、その商品が購買されたか否かを示す購買情報とを含む。
【0023】
モデル生成部12aでは、受け付けた対象ECサイトの商品・購買情報20の集合D
T、及び他ECサイトの商品・購買情報22の集合D
Sから、復元抽出によってデータ集合D'
i,S+Tを抽出する。ここで、Tは対象ECサイトのデータ、Sは他ECサイトのデータを表し、S+Tは両サイトのデータを合わせたものであることを意味する。すなわち、データ集合D'
i,S+TはECサイトの商品・購買情報20及び他ECサイトの商品・購買情報22の両方を含む。iはi個目のモデル生成に用いるデータ集合であることを表す。復元抽出とは、ある集合からランダムに要素を取り出す試行を繰り返す際、一度取り出した要素が、その後の試行において取り出される候補となるようなサンプリング法である。データ集合D'
i,S+Tの要素数は、対象ECサイトの商品・購買情報20の集合D
Tと同じ要素数とする。
【0024】
また、モデル生成部12aは、データ集合D'
i,S+Tと対象ECサイトの商品・購買情報20の集合D
Tとに共通して含まれるデータの集合をD'
i,Tとして抽出する。
【0025】
また、モデル生成部12aは、抽出した二つのデータ集合D'
i,S+T及びD'
i,T各々について、CARTアルゴリズム(参考文献「“Classification and Regression Trees”, Leo Breiman, J. H. Friedman, R. A. Olshen, and C. J. Stone., Monterey Workshop, 1984」を参照)を用いて、説明変数を商品情報、目的変数を購買情報として学習し、モデルf^
i,S+T及びf^
i,Tをそれぞれ生成する。モデルf^
i,S+T及びf^
i,Tは、共に商品情報を入力とし、その商品が購買されるか否かの二値情報を出力する関数となる。
【0026】
モデル選択部12bは、モデル生成部12aで生成された二つのモデルf^
i,S+T及びf^
i,Tについて、対象ECサイトの商品・購買情報20の集合D
Tを用いて予測誤差を計算する。予測誤差は、例えば下記(1)式により計算することができる。
【0028】
ここで、D及び|D|は予測に用いるデータ及びその個数であり、x
i及びy
iはそれぞれ説明変数及び目的変数である。I( )は引数が真であれば1を、偽であれば0を返す関数である。二つのモデルf^
i,S+T及びf^
i,Tに対す予測誤差はそれぞれErr(f^
i,S+T,D
T) 及びErr(f^
i,T,D
T)であり、この予測誤差が小さいモデルをモデルf^
iとして選択する。
【0029】
なお、既存技術であるTrBagg(非特許文献2)では、モデルf^
iとして、データ集合D'
i,S+Tから学習したモデルをそのまま使うのに対し、本実施の形態では、データ集合D'
i,S+TだけでなくD'
i,Tからもモデルを生成し、どちらのモデルの精度が良いかを判別した上で、モデルf^
iとして採用している。
【0030】
購買予測モデル第1処理部12は、モデル生成部12a及びモデル選択部12bでの処理をN回繰り返し、結果として複数の異なるモデル集合F={f^
1,・・・,f^
N}を構築し、購買予測モデル第2処理部14へ送出する。
【0031】
購買予測モデル第2処理部14は、購買予測モデル第1処理部12で構築されたモデル集合F={f^
1,・・・,f^
N}の各モデルを選択及び統合して、最終的な購買予測モデルF
*を構築する。
【0032】
具体的には、対象ECサイトの商品・購買情報20の集合D
Tについて、CARTアルゴリズムを用いることにより、モデルf^
0を生成し、モデル集合F={f^
1,・・・,f^
N}に追加する。モデルf^
0が追加されたモデル集合Fの全ての要素(各モデル)に対し、対象ECサイトの商品・購買情報20の集合D
Tに対する予測誤差を計算する。予測誤差の計算は、モデル選択部12bと同様に、(1)式を用いて計算することができる。
【0033】
各モデルについて予測誤差が計算されると、その予測誤差の昇順にモデル集合Fの要素を並べ替え、F
sort=<f^
i0,・・・,f^
iN>とする。また、e、F'、及びF
*を、e=Err(f^
i0,D
T)、F'←{f^
i0}、及びF
*←{f^
i0}のように初期化し、モデルf^
it(t=1,・・・,N)について、F'←F'∪{f^
i0}とし、モデル集合F'の予測誤差e'を計算する。なお、データxに対するモデル集合F'による予測を下記(2)式により定義する。すなわち、モデル集合F'に含まれる各モデルによる予測結果として最も多く現れたものを、モデル集合F'による予測結果と定義する。
【0035】
(2)式によるモデル集合F'の予測を用いて予測誤差e'=Err(F',D
T)を計算し、e'≦eとなった場合に、F
*←F
*∪F'とし、また、e=e'とする。この処理によって最終的な購買予測モデルに含まれるモデルが選択される。モデル集合F
*⊆F'が学習の結果構築された最終的な購買予測モデルであり、これを購買予測部16へ送出する。
【0036】
購買予測部16は、購買予測モデル第2処理部14で構築された購買予測モデルF
*と、予測を行いたい対象ECサイトの商品情報24の集合D
unknownを受け取り、下記(3)式により、商品情報に対応した商品の購買予測を行って、対象ECサイトの購買予測26として出力する。
【0038】
図2に示すように、対象ECサイトの商品情報24のデータ構造は、商品毎の価格、その商品と同じカテゴリの商品の平均価格、・・・等の商品に関する情報を示す商品情報を含む。また、対象ECサイトの購買予測26のデータ構造は、商品が購買されるか否かを示す商品毎の購買予測を含む。
【0039】
次に、
図3を参照して、本実施の形態の購買予測装置10において実行される購買予測処理ルーチンについて説明する。
【0040】
ステップ100で、対象ECサイトの商品・購買情報20の集合D
T、及び他ECサイトの商品・購買情報22の集合D
Sを取得する。
【0041】
次に、ステップ200で、購買予測モデル構築に関する第1処理を実行する。ここで、
図4を参照して、購買予測モデル構築に関する第1処理ルーチンについて説明する。
【0042】
ステップ202で、変数iに0をセットし、次に、ステップ204で、変数iを1インクリメントする。次に、ステップ206で、i個目のモデル生成に用いるデータ集合として、上記ステップ100で取得した対象ECサイトの商品・購買情報20の集合D
T、及び他ECサイトの商品・購買情報22の集合D
Sから、復元抽出によってデータ集合D'
i,S+Tを抽出する。また、データ集合D'
i,S+Tと対象ECサイトの商品・購買情報20の集合D
Tとに共通して含まれるデータの集合をD'
i,Tとして抽出する。
【0043】
次に、ステップ208で、上記ステップ206で抽出された二つのデータ集合D'
i,S+T及びD'
i,T各々について、CARTアルゴリズムを用いて、説明変数を商品情報、目的変数を購買情報として学習し、モデルf^
i,S+T及びf^
i,Tをそれぞれ生成する。
【0044】
次に、ステップ210で、上記ステップ208で生成された二つのモデルf^
i,S+T及びf^
i,Tについて、対象ECサイトの商品・購買情報20の集合D
Tを用いて、(1)式により予測誤差Err(f^
i,S+T,D
T) 及びErr(f^
i,T,D
T)を計算する。
【0045】
次に、ステップ212で、上記ステップ210で計算された予測誤差Err(f^
i,S+T,D
T) が予測誤差Err(f^
i,T,D
T)より小さいか否かを判定する。Err(f^
i,S+T,D
T)<Err(f^
i,T,D
T)の場合は、対象ECサイトの商品・購買情報20の集合D
T、及び他ECサイトの商品・購買情報22の集合D
Sの両方を用いて学習されたモデルf^
i,S+Tの方が、データ集合D
Tのみで学習されたモデルf^
i,Tより精度が良いことを示しているため、ステップ214へ移行して、モデルf^
i,S+Tをモデルf^
iとして選択する。一方、Err(f^
i,S+T,D
T)>Err(f^
i,T,D
T)の場合は、モデルf^
i,Tの方がモデルf^
i, S+Tより精度が良いことを示しているため、ステップ216へ移行して、モデルf^
i,Tをモデルf^
iとして選択する。
【0046】
次に、ステップ218で、変数iが予め定めた所定数Nとなったか否かを判定する。iが所定数Nに到達していない場合には、ステップ204へ戻り、処理を繰り返す。i=Nとなった場合には、ステップ220へ移行して、上記ステップ214または216で選択された複数の異なるモデルf^
iにより、モデル集合F={f^
1,・・・,f^
N}を構築し、後段の処理へ送出し、購買予測処理ルーチンへリターンする。
【0047】
次に、ステップ300で、購買予測モデル構築に関する第2処理を実行する。ここで、
図5を参照して、購買予測モデル構築に関する第2処理ルーチンについて説明する。
【0048】
ステップ302で、対象ECサイトの商品・購買情報20の集合D
Tについて、CARTアルゴリズムを用いることにより、モデルf^
0を生成し、モデル集合F={f^
1,・・・,f^
N}に追加する。
【0049】
次に、ステップ304で、モデル集合Fの全ての要素(各モデル)に対し、対象ECサイトの商品・購買情報20の集合D
Tに対する予測誤差を(1)式を用いて計算する。そして、予測誤差の昇順にモデル集合Fの要素を並び替え、F
sort=<f^
i0,・・・,f^
iN>とする。
【0050】
次に、ステップ306で、e、F'、及びF
*を、e=Err(f^
i0,D
T)、F'←{f^
i0}、及びF
*←{f^
i0}のように初期化する。
【0051】
次に、ステップ308で、変数tに0をセットし、次に、ステップ310で、変数tを1インクリメントする。次に、ステップ312で、モデルf^
it(t=1,・・・,N)について、F'←F'∪{f^
i0}とし、モデル集合F'による予測結果を(2)式で定義した上で、モデル集合F'の予測誤差e'を計算する。
【0052】
次に、ステップ314で、上記ステップ312で計算されたモデル集合F'の予測誤差e'が、現在のモデル集合F
*の予測誤差e以下か否かを判定する。e'≦eの場合には、モデルf^
itをモデル集合F'に追加した方が精度が良いことを示しているため、ステップ316へ移行して、F
*←F
*∪F'とし、また、e=e'とする。一方、e'>eの場合は、モデルf^
itをモデル集合F'に追加しても精度が向上しないことを示しているため、モデルf^
itをモデル集合F'に追加することなく、ステップ310へ戻る。
【0053】
次に、ステップ318で、変数tがNとなったか否かを判定することにより、モデル集合Fに含まれる全てのモデルについて処理が終了したか否かを判定する。未処理のモデルf^
itが存在する場合には、ステップ310へ戻り、処理を繰り返す。i=Nとなった場合には、ステップ320へ移行して、上記ステップ316で更新された現在のモデル集合F
*を最終的な購買予測モデルとして後段の処理へ送出し、購買予測処理ルーチンへリターンする。
【0054】
次に、ステップ400で、予測を行いたい対象ECサイトの商品情報24の集合D
unknownを取得する。次に、ステップ500で、上記ステップ320で送出された購買予測モデルF
*と、上記ステップ400で取得した対象ECサイトの商品情報24の集合D
unknownとを用いて、(3)式により、商品情報に対応した商品の購買予測を行って、対象ECサイトの購買予測26として出力し、購買予測処理を終了する。
【0055】
ここで、本実施の形態の有効性を実験で示す。ここでは、ECサイト4サイトの購買ログ(商品情報及び購買情報)を用いて実験を行った。データ数はそれぞれAサイト4304件、Bサイト14442件、Cサイト4756件、Dサイト4700件である。本実験では、データ数が最も多いBサイトを対象ECサイトとする予測は行わず、A、C、Dサイトそれぞれを対象ECサイトとして、各サイトの商品について購買予測を行った。
【0056】
予測の際には、予測対象であるECサイト以外のECサイトのデータについて、取りうる全ての組み合わせでデータを結合し、他ECサイトの商品・購買情報22として利用した。具体的にはサイトAを対象ECサイトとして予測を行う場合には、他ECサイトの商品・購買情報22として、Bサイト、Cサイト、Dサイト、BサイトとCサイト、BサイトとDサイト、CサイトとDサイト、BサイトとCサイトとDサイトをそれぞれ結合したものの計7データを利用した。また、対象ECサイトの商品・購買情報20の件数を1/1、1/2、1/4、1/8、1/16、1/32と削減することによって性能劣化への影響を確認した。よって、1サイトあたり42件の購買予測モデルが得られた。
【0057】
図6〜8は、サイトA、C、及びD各々を対象ECサイトとした場合における、本実施の形態の購買予測装置と、非特許文献1で挙げられた既存手法とについて、上述の42モデルを生成し、精度比較を行った結果である。対象ECサイトをサイトCとした場合において、既存手法と比較して本実施の形態の精度が9モデルにおいて劣化しているものの、19モデルで精度が改善している。サイトA及びサイトD各々を対象ECサイトとした場合における予測では精度がそれぞれ28モデル、25モデルで改善し、精度の劣化は生じなかった。
【0058】
以上説明したように、本実施の形態の購買予測装置によれば、対象ECサイトのデータと他ECサイトのデータとを用いて学習されたモデルが、対象ECサイトのデータのみで学習されたモデルよりも精度が悪い場合には、そのモデルを棄却するため、精度向上につながる他ECサイトのデータのみを利用することができ、他ECサイトのデータを用いた場合でも、対象ECサイトの商品の購買予測の精度を向上させることができる。
【0059】
なお、上述の購買予測装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
【0060】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。