説明

顧客セグメント推定装置

【課題】従来技術ではマーケティング・アクションを考慮した顧客状態定義ができなかった。また、マーケティング・アクションが短期的および長期的にどのような効果を持つかを顧客状態のパラメータとして持つことができなかった。
【解決手段】アクションで条件づけられた顧客状態遷移確率と短期報酬を得るために、顧客状態とマーケティング・アクションを対にした複合状態を用いた隠れマルコフモデル(HMM)で顧客行動をモデル化する。推定された隠れマルコフモデルのパラメータ(複合状態間の遷移確率と複合状態ごとの報酬の分布)を更に、マーケティング・アクションで条件づけられた顧客状態間の遷移確率と顧客状態ごとの報酬の分布に変換する。より詳細に購買特性をモデル化するために、顧客状態ベクトルの要素の中に必ず購買間隔時間を含め、顧客状態が購買間隔時間に関する確率分布の情報を持つようにする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、顧客セグメント推定装置に関する。更に詳しくは、マーケティング・アクションを考慮した顧客セグメント推定装置、方法、およびプログラムに関する。
【背景技術】
【0002】
個人顧客をターゲットとしたダイレクト・マーケティングにおいて、個々の顧客から生涯にわたって得られる利益の合計値(顧客生涯価値:Customer Equity)を最大化したいという要求がある。そのために、(i)顧客の行動特性は時間が経つとどう変化するか、(ii)顧客の行動特性を企業にとって利益が高くなるように誘導する(最適なマーケティング・アクションを選択する)にはどうしたらよいか、を知ることはマーケティングの重要な課題である。
【0003】
従来、顧客生涯価値を最大化するようなマーケティング・アクションの最大化手法としては、マルコフ決定過程(Markov Decision Process:以下、MDPと略す)を用いたものと、強化学習(Reinforcement learning:以下、RLと略す)を用いたものとがあり、顧客層を意識した大局的なマーケティング戦略を考える上ではMDPを用いる手法に利点がある。
【0004】
MDPを用いる場合、マルコフ性を持った顧客状態を定義する必要がある。しかし、マルコフ性を持つ顧客状態の定義は人間にとって自明ではない。そのため、顧客購買データおよびマーケティング・アクション・データを入力するだけでマルコフ性を満たすような顧客状態定義が得られるツールが必要である。そのツールの機能としては、顧客状態数Mを指定すると自動的にM個の顧客状態が定義される。その顧客状態はマルコフ性を満たす。あるいは、M個の離散状態で顧客状態を表現できる中では最もマルコフ性が強いそれぞれの顧客状態間の遷移確率および顧客状態からの報酬分布が与えられる。そして遷移確率と報酬分布は、マーケティング・アクションによって条件づけられている必要がある。
【0005】
従来技術を用いてマルコフ性を持った顧客状態を学習する場合、隠れマルコフモデル(以下、HMMと略す)を用いる。その例としては、Ramaswamy,1997(非特許文献1)や、Netzer et al.,2005(非特許文献2)がある。
【0006】
【非特許文献1】Netzer, O., J. M. Lattin, and V. Srinivasan (2005, July). A Hidden Markov Model of Customer Relationship Dynamics. Standford GSB Research Paper. Available at SSRN: http://ssrn.com/abstract=776765.
【非特許文献2】Ramaswamy,V.(1997). Evolutionary preference segmentation with panel survey data: An application to new products. International Journal of Research in Marketing 14,57−80.
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上記の従来技術ではマーケティング・アクションを考慮した顧客状態定義ができないか、MDPに入力可能なパラメータが得られなかった。非特許文献1においてはマーケティング・アクションの短期的・長期的効果が考慮されてはいるものの、その関数形に制限が存在し、実用的にMDPに入力することができなかった。非特許文献2においてはそもそもマーケティング・アクションの効果が顧客状態定義に反映されなかった。
【0008】
本発明は、上記課題に鑑み、MDPに入力可能なマーケティング・アクションを考慮したマルコフ性を持った顧客状態を定義し、マーケティング・アクションがどのような効果を持つかを調べるための顧客状態のパラメータを求めることを目的とする。
【課題を解決するための手段】
【0009】
本発明の一つの態様では、以下のような解決手段を提供する。
【0010】
マーケティング・アクションに反応する顧客セグメントを推定するための装置であって、複数の顧客の購買記録を蓄積した顧客購買データと前記顧客それぞれに対するマーケティング・アクション・データとを受け付ける入力部と、前記顧客購買データと前記マーケティング・アクション・データとを対にした特徴ベクトルの時系列データを生成する特徴ベクトル生成部と、前記特徴ベクトルの時系列データと前記顧客セグメントの数とから、顧客の購買特性を分類した顧客状態と前記マーケティング・アクションの効果に基づいた分類であるアクション状態とを対にした複合状態ごとに、隠れマルコフモデルの分布パラメータを出力するHMMパラメータ推定部と、前記分布パラメータを顧客セグメントごとのパラメータ情報に変換する状態・行動分解部と、を備える装置を提供する。
【0011】
すなわち、本装置は、企業が行うマーケティング・アクションに対する顧客セグメント(顧客の分類、例えば、高利益顧客層、中利益顧客層、低利益顧客層等に分類する)を推定するために、まず、複数の顧客の購買記録を蓄積した顧客購買データと顧客それぞれに対する過去のマーケティング・アクション・データとを入力として受け付ける。そして、(i)特徴ベクトル生成部が、その入力された顧客購買データと前記マーケティング・アクション・データとを対にした特徴ベクトルの時系列データを生成する。次に(ii)HMMパラメータ推定部が、(i)で出力された特徴ベクトルの時系列データと、顧客セグメントの数(追加入力される)とから、顧客の購買特性を分類した「顧客状態」とマーケティング・アクションの効果に基づいた分類である「アクション状態」とを対にした「複合状態」ごとに、隠れマルコフモデル(HMM)の分布パラメータを出力する。最後に、(iii)状態・行動分解部が、前記分布パラメータを顧客セグメントごとのパラメータ情報(顧客セグメント情報)に変換する。この出力された顧客セグメント情報は、MDPパラメータとして利用できる。
【0012】
また、本発明の追加態様としては、前記の顧客購買データは、顧客番号、該顧客の購買日時、および該購買日時に該顧客が引き起こしたトランザクション・ベクトルを含む。また、前記の特徴ベクトルの時系列データは、一回の購買トランザクションで発生した売り上げと利益(報酬)を含んだ情報ならびに購買間隔時間と、関連するマーケティング・アクションとを対にしたベクトル・データである。前記のマーケティング・アクション・データは、対象となった顧客番号、該マーケティング・アクション・データの影響を受けた推定される購買日時、および該購買日時に行われたマーケティング・アクション・ベクトルを含む。
【0013】
更に、前記の分布パラメータは、前記の複合状態ごとに異なる売り上げ/利益、購買間隔時間(Inter−purchase time)、およびマーケティング・アクションに関する確率分布と、記複合状態間の遷移をあらわす連続時間マルコフ過程の遷移レートとを含む。また、前記の顧客セグメント情報は、顧客状態間の遷移確率と短期的報酬を含む。状態・行動分解部は、マーケティング・アクションの意思決定間隔(例えば、キャンペーンを1ヶ月おきにやるとすると、1ヶ月)を入力として受け付ける。
【0014】
本発明は、上記の機能を備えた装置を提供する他、別の態様として、その制御方法、およびそれをコンピュータ上で実現するコンピュータ・プログラムとして提供することができる。
【0015】
本発明の要点を言い換えると、前述の課題に対して、主に次のアイデアを使うことで解決する。すなわち、アクションで条件づけられた顧客状態遷移確率と短期報酬を得るために、顧客状態とマーケティング・アクションを対にした複合状態を用いた隠れマルコフモデル(HMM)で顧客行動をモデル化する。推定された隠れマルコフモデルのパラメータ(複合状態間の遷移確率と複合状態ごとの報酬の分布)を更に、マーケティング・アクションで条件づけられた顧客状態間の遷移確率と顧客状態ごとの報酬の分布に変換する。
【0016】
更に、より詳細に購買特性をモデル化するために、顧客状態ベクトルの要素の中に必ず購買間隔時間(Inter−purchase time)を含め、顧客状態が購買間隔時間に関する確率分布の情報を持つようにする。そして、実際には以下の3つの手順を組み合せることで問題を解決する。
【0017】
(A)顧客の状態と、そのとき企業が行ったマーケティング・アクションとを合せた(対にした)特徴ベクトルの時系列データを生成する。
【0018】
(B)生成された特徴ベクトルの時系列データを入力として、観測結果とするような隠れマルコフモデルのパラメータを出力する。得られた出力は、顧客の状態とマーケティング・アクションとを組み合せた複合状態ごとに定義されるパラメータと、複合状態間の遷移確率である。つまり、顧客がどう変化したかだけでなく、企業が自分達のとる行動をどう変えていったかという情報が組み込まれている。
【0019】
(C)得られたHMMのパラメータを入力として、マーケティング・アクションによって条件づけられた顧客状態間の遷移確率および短期的報酬を計算する。これはMDPのパラメータとして使うことができるため、長期的な利益の最大化に利用可能である。
【0020】
(A)において企業のアクション・データを入力しない限りは、(B)における複合状態が企業の行動変化情報を含まず、従って(C)においてマーケティング・アクションごとに異なる遷移確率情報とならないことに注意する。また(C)が存在しない場合には(B)までで得られたパラメータは自分達の行動がどう変化するか(企業からすれば今後の自分達の行動は最適化しながら選択していくものである)という余分な情報となっており、有用な用途がない。ゆえに、本発明では、(A),(B),(C)の3つを組み合せることが特徴である。
【発明の効果】
【0021】
本発明によれば、顧客状態によって、マーケティング・アクションが短期的および長期的にどのような効果を持つかを調べ、その顧客状態に最適なマーケティング・アクションの選定を行うことができる。
【発明を実施するための最良の形態】
【0022】
以下、本発明の実施形態について、図を参照しながら説明する。
【0023】
[全体像]
図1は、本発明の一つの実施形態に係る顧客セグメント推定装置10の機能構成を示した図である。図示するように、本装置10は、3つの計算部を有し、それぞれ特徴ベクトル生成部11、HMMパラメータ推定部12、状態・行動分解部13と呼ぶ。また、符号21〜26で示す部分は、それぞれの計算部の入力、出力となるデータまたはデータを格納する記憶部である。
【0024】
なお、この図では、記憶部である顧客購買データ21とマーケティング・アクション・データ22は、本装置10内に位置しているが、これらのデータを外部からネットワークを介して入力するようにしてもよい。また、顧客セグメント数24は、操作員によって入力するか、または外部のシステムから入力するようにしてもよい。本装置10には、特に図示していないが、キーボードやマウスなどの入力部、LCDやCRTのような表示部、ネットワーク・インタフェースとして通信部などを備えていてもよい。以下、特徴ベクトル生成部11、HMMパラメータ推定部12、状態・行動分解部13について、その概要を、図1を基に、図2〜図8を併用して説明する。
【0025】
<特徴ベクトル生成部11>
特徴ベクトル生成部11は、元のデータを本発明における隠れマルコフモデルに適用するために、加工する部分である。特徴ベクトル生成部11は、顧客購買データ21とマーケティング・アクション・データ22とから、一回のトランザクションで発生した売り上げ/利益等の情報と購買間隔時間、そしてそれに関連するマーケティング・アクションを対としたベクトル・データを生成する。この結果、特徴ベクトルの時系列データ23が生成される。
【0026】
図2は、利益・売り上げ・メール応答率等の顧客の行動を縦軸に、マーケティング・アクション(企業が行った行動)を横軸に、顧客の行動とマーケティング・アクションを組にしたベクトルの時系列データの概念を示した図である。この例では、1月のサンプル(●で示す)が、2月のサンプル(○で示す)にそれぞれどう変化したかを示している。
【0027】
<HMMパラメータ推定部12>
HMMパラメータ推定部12は、本発明における購買モデルの分布パラメータを、特徴ベクトルの時系列データから推定する部分である。その際に、外部から要求する顧客セグメント数24を指定する。あるいは、指定した値を初期値として顧客セグメント数自体の最適化もできる。分布パラメータ25は、状態・行動対と呼ばれる離散の複合状態に関して、(i)それらの複合状態ごとに異なる(売り上げ/利益,購買間隔時間,マーケティング・アクション)に関する確率分布、(ii)それらの複合状態間の遷移をあらわす連続時間マルコフ過程の遷移レートを含んでいる。
【0028】
図3は、このような特徴ベクトルの時間変化を離散の複合状態間の遷移で表現した図である。複合状態は、顧客の行動とマーケティング・アクションとの組をいくつかの種類に分類したもので、ここではz、z,zであらわされる。複合状態について詳しくは後述する。なお、ここまでの処理では、「企業の行動がどう変化したか」という無意味な情報が含まれている。
【0029】
<状態・行動分解部13>
状態・行動分解部13は、HMMパラメータ推定部12で得られた複合状態ごとの分布パラメータ25を、顧客本来の特性を意味する顧客セグメントごとのパラメータ(顧客セグメント情報26)に変換する部分である。状態・行動分解部13では、入力としてマーケティング・アクションの意思決定間隔27(例えばキャンペーンを行うならその間隔)を受け付け、顧客セグメントごとの(i)(売り上げ/利益,購買間隔時間)に関する確率分布、(ii)顧客セグメント間の遷移確率を出力する。更に、(i)および(ii)のパラメータは、マーケティング・アクションの関数となっている。状態・行動分解部13に得られたパラメータはMDPに入力可能である。またMDPに入力せず、どの顧客セグメントがどのようなアクションに反応しやすいのかを調べる用途にも使える。
【0030】
図4〜図8は、状態・行動分解部13における処理を概念的に説明したものである。図4は、複合状態を各軸方向に分解し、離散の顧客状態とアクション状態に定義することを示した図である。ここでは、複合状態z、z、zが、顧客状態s,s,sとアクション状態d,d,dに分解されることを示している。顧客状態、アクション状態、複合状態については、以下に説明する。
【0031】
顧客状態sは、顧客がいくらくらいのお金を店で使いそうか、何日後くらいに来店しそうか、といった顧客の特性を、数種類に分類したうちの一つである。例えば、顧客の特性として、売り上げと購買頻度の組を与えられたときに、これを4つに分類するとする。この場合、s=(売り上げが高く、来店頻度も高い)、s=(売り上げが高いが、来店頻度は低い)、s=(売り上げが低いが、来店頻度は高い)、s=(売り上げが低く、来店頻度も低い)といった四種類に分類することが考えられる。実際には、このような分類は主観ではなく、データに基づいて決定される必要がある。
【0032】
アクション状態dは、マーケティング・アクションとして取れる変数の組を、その効果に基づいて数種類に分類したときの一つである。例えば、マーケティング・アクションの例として価格の設定を考えたときに、その効果に基づいて3つに分類するとする。そのとき、価格がd=安い、d=普通、d=高い、のような三種類に分類することが考えられる。アクション状態も主観ではなく、データに基づいて決定される必要がある。
【0033】
複合状態zは、顧客の特性と企業がとるマーケティング・アクションとの組を、数種類に分類したときの一つである。例えば、顧客の特性が購買金額で、マーケティング・アクションが価格だとして顧客の特性と企業の行動との組をあらわす状態(複合状態)としては、z1=(売り上げが高い顧客に高い価格を提示している)、z=(売り上げが高い顧客に安い価格を提示している)、z=(売り上げが低い顧客に高い価格を提示している)、z=(売り上げが低い顧客に安い価格を提示している)、といった分類例が考えられる。このような分類もデータに基づいて、特にその後の顧客の特性の変化に基づいて決定される必要がある。
【0034】
図5は、異なる顧客状態とアクション状態の組み合せた任意の複合状態が、既知の各複合状態に所属する割合を計算することによって求められることを示した図である。ここでは例として、異なる顧客状態とアクション状態の組み合わせである(s,d)が、各複合状態z,z,zにどれだけの確率で所属するかが統計的処理によって求められている。求められた確率は、z(s,d)に対して30%,z(s、d)に対して25%,z(s,d)に対して45%となっている。
【0035】
図6は、複合状態への所属確率を用いて、任意のアクションのもとで任意の顧客状態間の遷移確率が計算されることを示した図である。この図では、顧客状態sにアクション状態dのアクションを行うと、それぞれどの顧客状態に変化するかの確率を計算する。(s,d)と書いてある楕円60は、顧客状態sにアクション状態dのアクションを行うことを意味している。横に長い楕円61,62,63は、顧客状態s,s,sを意味している。顧客状態はアクションの情報を含まないので、横軸には特に分布はなく均一に広がっている。従って、(s,d)の中に存在する点が、s,s,sの楕円の中のどの点に変化しそうかを計算することが目的である。
【0036】
計算には、複合状態間の遷移確率と顧客状態sにアクション状態dを行うことが複合状態zに所属する確率を用いる。ここで、複合状態間遷移確率は、HMMパラメータ推定部12により計算済みである。また、顧客状態s1にアクション状態dを行うことが複合状態zに所属する確率は、全てのzについて図5で示した方法で計算される。例えば、顧客状態sにアクション状態dのアクションを行いsに変化する確率は、全ての複合状態zについて、複合状態zから複合状態zが生成される確率と顧客状態sにアクション状態dを行うことが複合状態zに所属する確率とを掛けた値を足し合わせて計算される。
【0037】
図7は、複合状態への所属確率を用いて、任意のアクションのもとで任意の顧客状態間から得られる報酬(利益)が計算されることを示した図である。この図では、顧客状態sにアクション状態dのアクションを行うと、どれくらいの利益の分布が得られるのかを計算する。各顧客状態から得られる利益の分布の違いはわかっており、それは左側の分布形状に反映されている。従って、それぞれの分布がどれだけの割合で混ざるべきかがわかれば所望の分布が得られる。混合割合は顧客状態sにアクション状態dを行うことが複合状態zに所属する確率として、図5で示した方法で計算される。従ってこの混合割合を用いることで、中央部に示した非対称な形の分布が得られる。
【0038】
図8は、得られた遷移確率と報酬分布とがMDPパラメータになっていることを示した図である。ここでは、顧客状態sに対してアクションaを行った場合、s、sに遷移する確率、sに留まる確率、および報酬(利益)の分布が求まることになる。
【0039】
[詳細な説明]
以下、前述した特徴ベクトル生成部11、HMMパラメータ推定部12、および状態・行動分解部13における、更に具体的な計算方法の詳細を説明する。
【0040】
[特徴ベクトル生成部11]
特徴ベクトル生成部11には顧客購買データとマーケティング・アクション・データとが入力される。顧客購買データは、顧客番号を示すインデクスc∈C(なおCは顧客の集合)、顧客cのn回目の購買日時を示すtc,n、日時tc,nに顧客cが引き起こした報酬ベクトルrc,nを含む。顧客cによる購買トランザクションの回数をNとして、1≦n≦Nとする。rc,nには必要に応じてどのような要素も指定することができる。例えば、その日に買った全商品の売り上げ合計値によるスカラー量でもよいし、商品カテゴリAの売り上げ合計値と商品カテゴリBの売り上げ合計値とを並べて2次元のベクトルにしてもよい。売り上げでなく粗利や、プロモーション・プログラムのポイント消費量等でもよい。以降、報酬ベクトルrc,nは単に報酬と記述する。
【0041】
マーケティング・アクション・データは、
(i)そのマーケティング・アクションの対象となった顧客番号c∈C
(ii)そのマーケティング・アクションの影響を受けたと考えられる購買日時tc,n
(iii)上記日時tc,nに行われたマーケティング・アクション・ベクトルac,n
を含む。これらの情報のどれかが欠けている場合には、必要に応じて情報を補間しておく。ac,nとしては例えば、その顧客にオファーした商品の割引率や会員プログラムにより顧客に与えたボーナスポイントの数値、およびそれらを組み合せたベクトル値を用いる。また「何もしない」というアクションも、それに対応したアクション・ベクトル値(例:全ての要素が0)を定義することで定義されうる。以降はマーケティング・アクション・ベクトルac,nは単にアクションと記述する。
【0042】
特徴ベクトル生成部11は、以上の入力データから次の時系列ベクトル時系列データ23を生成し出力する。
(i)顧客番号c
(ii)顧客cによるn回目のトランザクションにおける特徴ベクトルvc,n=(rc,n,τc,n,ac,nT
【0043】
( )は、転置ベクトルをあらわす。また、τc,n=tc,n+1−tc,nであり、τc,nはn回目の購買間隔時間を意味する。rc,nおよびac,nについては1≦n≦Nであり、τc,nについては1≦n≦N−1である。つまり特徴ベクトルとは(報酬,購買間隔時間,アクション)を組にしたベクトルのことである。これ以降{rc,1,rc,2,・・・,rc,Nc}を、
【数1】

と書く。同様にして、
【数2】

を定義する。
【0044】
[HMMパラメータ推定部12]
<モデルと概要>
HMMパラメータ推定部12は入力データ
【数3】

に対して、顧客セグメント数Mを指定した上でモデルパラメータQとΘを推定し、出力する。
【0045】
パラメータQ={qij;1≦i,j≦M}は、生成行列と呼ばれる連続時間マルコフ過程のパラメータであり、M×M行列である。このパラメータは複合状態と呼ばれる潜在状態間の遷移の度合いを示す。複合状態とは、潜在的な顧客セグメントと潜在的なマーケティング・アクションのセグメントを対にした状態のことである。パラメータΘ={Θ;1≦m≦M}は各複合状態に対して割り当てられる、特徴ベクトルの分布を示すパラメータである。Θは複合状態mが持つ分布パラメータを意味する。このパラメータは、特徴ベクトルの分布に何を用いるかによって異なる。本発明は特徴ベクトルの分布を限定しないが、例として特徴ベクトルが正規分布の場合の例を後述する。
【0046】
HMMパラメータ推定部12は、学習データの対数尤度を次の式(1)(2)であらわすモデルパラメータQ,Θを求める。このパラメータの導出法は複数あり、本特許は個々のパラメータの導出法に制約されない。対数尤度を最大化するようなパラメータを求める場合は最尤推定を用いることになり、実際にはEMアルゴリズム(Expectation Maximization Algorithm)を用いる。この例についてのみ後述する。パラメータの事後分布における期待値を求めるならばベイズ推定となり、この場合は変分ベイズ法を用いる。またMCMC(モンテカルロ・マルコフ連鎖)と呼ばれるサンプリング手法によってもHMMのパラメータは推定できる。
【0047】
【数4】

【0048】
式(1)(2)において、zc,nは顧客cのn番目の特徴ベクトルvc,nを生成した複合状態であり、1≦zc,n≦Mの範囲の値をとる。また、
【数5】

【0049】
を意味する。式(1)は存在しうる全ての潜在状態時系列に関する特徴ベクトルの出力確率の期待値を現している。P(zc,n+1|zc,n,τc,n,Q)は生成行列Qが与えられた状況下で、顧客cが時刻tc,nでの購買後、τc,n時間たった後に潜在状態zc,nからzc,n+1に遷移する確率を表している。F(・|Θ)は潜在状態mにおいて指定された特徴ベクトルが出力される確率密度関数である。
【0050】
P(zc,1|tc,1)は顧客cの時刻tc,1における初期状態確率である。顧客の購買回数が十分多ければ初期状態確率の影響はほぼ無視される。簡単のため、初期状態は全ての顧客c∈Cに対して最初の購買日時tc,1の際には同一であるとする。
【0051】
<アルゴリズム>
ここではHMMパラメータの実際の推定方法の一例として、最尤推定を基にしたEMアルゴリズムを示す。この推定方法はあくまで本発明適用の一例である。枠組最尤推定を用いる場合には、対数尤度を式(3)のように変形する。
【0052】
【数6】

【0053】
αc,n+1(j)は前向き確率と呼び、特徴ベクトルvc,1,vc,2,・・・,vc,nが与えられた条件のもとで顧客cが時刻tc,n+1に潜在状態jにいる確率P(j|vc,1,・・・,vc,n)をあらわす。
【数7】

を満たす。βc,n(i)は後ろ向き確率と呼び、潜在状態iから特徴ベクトル
【数8】

が生成される確率
【数9】

をあらわす。αc,n+1(j),βc,n(i)は式(5)(7)を用いて再帰的に計算することができる。
【0054】
EMアルゴリズムを用いるために、Jensenの不等式を用いて式(3)の下限をとる。このとき、新たに潜在変数
【数10】

が導入されるが、これは区間[tc,n,tc,n+1]において潜在状態iから潜在状態jへの遷移確率が起きた確率をあらわす。上記潜在変数を導入した上で推定アルゴリズムは以下のように記述される。
【0055】
<E−step:>
【0056】
【数11】

【0057】
<M−step:>
【数12】

【0058】
1.パラメータQ,Θまたは潜在変数
【数13】

の適当な初期値を設定する。
2.上記のE−stepとM−stepをパラメータが収束するまで繰り返す。
<実施例>
【0059】
実際には、上述の推定アルゴリズムは、特徴ベクトルの分布や潜在状態間の遷移確率のモデルを何にするか決めないと実現されない。しかしこの分布の選定は使用者の裁量で自由に決めることができる。そこで特徴ベクトルに正規分布を用いる場合の一例だけを示す。特徴ベクトルに正規分布を用いる場合は、購買間隔時間が正の実数にしかならないことを考慮して、購買間隔時間は対数正規分布に、他の特徴ベクトル量は正規分布に従うように潜在状態を決定する。つまり、
【0060】
【数14】

とし、パラメータΘは実際にはΘm={μ;Σ}としてモデル化する。更に、
【数15】

【0061】
と表記する。また、潜在状態の遷移確率は連続時間のマルコフ過程に対応したものでなければいけない。しかし計算時間とあるべき顧客セグメントの性質を考慮して式(17)のような近似をする。これは、購買間隔時間τにくらべてそれほど急速に潜在状態が変化しないという仮定のもとに成り立つ式である。隣接する購買データ間で急速に顧客状態が変化するような顧客セグメントが学習されると実用上役にたたないため、このような仮定を設ける。
【0062】
【数16】

ただし、Q={qij;1≦i,j≦M}に対して、
【0063】
【数17】

【0064】
というパラメータ表記を行っている。以上の仮定を用いると、上述のM−stepにおける式(14)は式(19)(20)に対応し、式(15)は式(21)(22)に対応する。
【0065】
【数18】

【0066】
式(21)は個別のλごとに1次元のNewton−Raphson法を用いて解く必要があるが、実用上は
【数19】

を利用して式(23)により計算すればよい。
【0067】
【数20】

【0068】
式(23)を用いる場合はパラメータの局所解付近で尤度が単調増加せず振動するので、振動が始まったら繰り返しアルゴリズムを停止するか、振動が始まった後にNewton−Raphson法を用いる。
【0069】
[状態・行動分解部13]
状態・行動分解部13は、HMMパラメータ推定部12が出力したパラメータQ,Θを変形し、意思決定の間隔を示す期間を入力し、M種類の離散顧客状態とM種類の離散アクション状態で規定される離散時間マルコフ決定過程のパラメータを出力する。顧客状態(=報酬,購買間隔時間)もアクション状態も本質的には連続値であるが、それらのパラメータを有限離散個の状態で規定されるパラメータの線形結合であらわすことで、現実にMDPで解けるようにする。出力されるパラメータは次の通りである。
【0070】
・顧客状態sから報酬r・購買間隔時間τが生成される確率分布P(r,τ|s)のパラメータ
・アクション状態dからアクション・ベクトルaが生成される確率分布P(a|d)のパラメータ
・顧客状態sとアクション状態dの組(s,d)が複合状態zに所属する確率λ(i,j)
・顧客状態sの顧客にアクション状態dに所属するアクションを行ったときτ時間後に顧客状態sに遷移する確率Pτ(s|s,d
・顧客状態sの顧客にアクション状態dに所属するアクションを行ったときに報酬r・購買間隔時間τが観測される確率分布P(r,τ|s,d)のパラメータ
ただし、Pτ(s|s,d)におけるτはキャンペーンの実施間隔を考慮し(つまりMDPで最適化する時間間隔を考慮し)、手動で与えるものとする。
【0071】
状態・行動分解部13のポイントは、i番目の顧客状態sおよびj番目の顧客状態dの組み合せが、HMMパラメータ推定部12で学習された複合状態zにどの程度の割合で所属するかを計算する点である。つまり上記λ(i,j)を計算する点である。本発明においては各状態からは報酬、購買間隔時間、アクション・ベクトルのいずれも確率的にしか決まらないので、i番目の顧客状態sにいた場合でも全ての複合状態zに対して確率的に所属している。同様にj番目のアクション状態dにいた場合でも全ての複合状態zに対して確率的に所属している。
【0072】
まず各顧客状態とアクション状態の定義を与える。顧客状態からは報酬と購買間隔時間が生成され、アクション状態からはアクション・ベクトルが生成される。従って式(24)(25)を顧客状態s,アクション状態dの定義とする。式(24)(25)のように分解することで、報酬とアクション・ベクトルとの相関は失われることに注意する。
【0073】
【数21】

【0074】
つぎに、式(24)(25)で定義された(s,d)がそれぞれのi,jに関して各zにどれだけの割合で所属するのかを決定する。これは特徴ベクトルの分布P(v|s,d)=P(r,τ|s)P(a|d)と既存の複合状態による特徴ベクトルの分布P(v|z)からそれぞれどれだけの距離はなれているか計算し、その距離の逆数の比をとることで解決する。この距離尺度には場合に応じて任意のものを使うことにするが、実施例としてP(v|s,d)=P(r,τ|s)P(a|d)の平均値とP(v|z)とのマハラノビス距離を採用する。d(・,・)を分布間距離尺度、λ(i,j)を顧客状態sおよびアクション状態dが与えられたときに複合状態zに所属する確率として、
【0075】
【数22】

【0076】
式(28)からMDPのパラメータを求める。まず、顧客状態sにアクションdを行うとτ時間後に顧客状態sに遷移する確率Pτ(s|s,d)を求める手順を示す。顧客状態s・アクション状態dが所属しうる全ての複合状態についての遷移を考慮し、かつ遷移後の複合状態から顧客状態sが得られる確率を考えるので
【0077】
【数23】

【0078】
となる。式(24)で顧客状態sは複合状態zからアクションに関する情報を全て積分して得られたものであることに注意するとP(s|z)はk=zの場合のみ1で、他は0として実質十分である(更に厳密にやる場合はベイズの定理を用いてもよい)。よって、
【0079】
【数24】

【0080】
つづいて、顧客状態sにアクション状態dのアクションを行ったときに得られる報酬・購買間隔時間の分布P(r,τ|s,d)を求める手順を示す。そのためにはまず、複合状態とアクション・ベクトルaが与えられたときの(報酬,購買時間)の分布が必要であり、それは式(31)で与えられる。
【0081】
【数25】

【0082】
P(r,τ|s,d)の求め方には二通りの可能性が考えられ、λ(i,j)の割合を使った混合分布になる場合と、パラメータをλ(i,j)の割合で混合した分布を作る場合とがある。前者は、
【0083】
【数26】

【0084】
となり、後者はパラメータ領域での混合を行うため具体例で後述する。以上の式は一見すると多くの積分計算を含んでいるため計算に時間が掛かるように思われるが、実際には特徴ベクトルの分布に解析的に容易なもの(例:多次元正規分布)を選んだ場合には解析的に解けてしまう。実際に必要なのは数回の行列計算のみである。以上より、状態・行動分解部13の処理は以下に示した手順にまとめられる。
【0085】
ステップ1:HMMパラメータ推定部12で得られたΘによるP(r,τ,a|z)=f(r,τ,a|Θ)と式(24)(25)を用いて、P(r,τ|s),P(a|d)の分布パラメータR,Aを計算する。これをM×M通りの全ての(i,j)について行う。
【0086】
ステップ2:ステップ1で得られたパラメータR,Aと式(26)(27)(28)を用いて顧客状態sおよびアクション状態dが与えられたときに複合状態zに所属する確率λ(i,j)を計算する。これをM×M×M通りの全ての(i,j,m)について行う。
【0087】
ステップ3:MDPに用いたいアクションの実施間隔τを指定し、HMMパラメータ推定部12で得られたQ={qij}とステップ1で得られたパラメータR,Aを利用して式(30)より顧客状態sの顧客にアクション状態dに所属するアクションを行ったときτ時間後に顧客状態sに遷移する確率Pτ(s|s,d)を計算する。これをM×M×M通りの全ての(i,j,k)について行う。
【0088】
ステップ4:ステップ1で得られたパラメータとステップ2で得られたλ(i,j)を式(31)(32)に代入し顧客状態sの顧客にアクション状態dに所属するアクションを行ったときに報酬r,購買間隔時間τが観測される確率分布P(r,τ|s,d)のパラメータΩijを計算する。これをM×M通りの全ての(i,j)について行う。
【0089】
ステップ5:ステップ3で得られたPτ(s|s,d)とステップ4で得られたパラメータΩijがMDPに適用可能なパラメータである。またステップ1で得られたパラメータR,Aとステップ2で得られたλ(i,j)は実際の購買データから顧客状態とアクション状態への割り当てをするために必要である。よってパラメータR,A,λ(i,j),Pτ(s|s,d),Ωijを保存する。
【0090】
<実施例>
状態・行動分解部13の実装例として、(r,logτ,a)が正規分布に従うように設定した場合の例を示す。この場合は、上述のステップにおいて必要な種々の積分計算が解析的に解ける。
【数27】

においてμ,Σの(r,logτ)に関する成分(上添字(s))とaに関する成分(上添字(d))を分けて次のように表記する。なお、両者の相関に関する部分は(sd)という上添字を用いる。
【0091】
【数28】

【0092】
まず、P(r,τ|s),P(a|d)については
【数29】

で与えられる。
【0093】
λ(i,j)を決めるために、マハラノビス距離を計算すると、
【数30】

ここで、
【数31】

【0094】
よってλ(i,j)は次の式(41)で与えられる。
【数32】

ただしΣλ(i,j)=1である。
【0095】
最後に、式(30)はそのままであり式(31)(32)については、
【数33】

【0096】
と整理できる。P(r,τ|s,d)は二通りの求め方があることを説明したが、混合分布を用いる場合は混合正規分布となり、
【数34】

ここで、
【数35】

である。パラメータ領域で混合する場合は、
【数36】

となるので単一の正規分布で与えられる。
【0097】
[実施例]
本発明の実施例として、本発明を用いたソフトウェアにおけるGUIの一例を示す。図9は、特徴ベクトル時系列データ23の生成例を示した図である。タイムスタンプのついた購買記録とそれとは別のマーケティング・アクション記録とから特徴ベクトルのデータを生成する。上段左の表90が購買記録、上段右の表91がマーケティング・アクション記録、下段の表92が生成された特徴ベクトル時系列データ23になる。表90には、CustomerID=1の顧客が、購買した商品群ごとにその売り上げ金額(ドル)が時系列に格納されている。表91には、企業がCustomerID=1〜5に対して行ったマーケティング・アクションが同じく時系列に格納されている。マーケティング・アクションとしては、ここではディスカウント率を設定する、ポイントを与える、オプションを与える、といったことが例示されている。時刻のタイムスタンプが購買間隔時間(Inter_purchase)に変換されている他、マーケティング・アクション・ベクトルが該当する日付(アクション後で一番近い日付)に割り当てられる。何もアクションをしなかったところは、ゼロベクトルで埋められている。実際には購買データは膨大なので、このようなデータは画面に表示される可能性は低く、処理は自動化して行う。
【0098】
図10は、状態・行動分解部13により得られたパラメータを表示する画面である。ここでは‘Frequent Buyer’という名称の顧客状態(ここでは顧客セグメントと呼ぶ)の特性について表示している。‘Frequent Buyer’は後から便宜上つけた名前であり、実際にはs1からsMまでの顧客セグメントのいずれかを選択しているに過ぎない。画面左側の矩形領域101には、指定された顧客セグメントの持つ様々な情報が表示されており、それらは保持しているパラメータによって計算できる確率分布の情報として表示されている。この実施例において表示されている情報は、購買間隔時間の分布と報酬の分布とセグメント間遷移確率の情報である。図11には、図10の画面に表示される追加情報を示している。この情報は、分布特性から理解できるこの顧客状態の傾向を文章(Description)により説明している。この文章は適切なルールを決めれば自動生成可能である。
【0099】
画面右側の‘Specify action’と書かれた矩形領域102は、アクション・ベクトルの入力、またはアクション状態を指定するユーザ入力領域となっており、該当する入力を与えて‘Recalculate parameters’ボタン103を押すと左側と下側の情報が更新される。これは、得られた顧客状態がマーケティング・アクションに応じて報酬、購買間隔時間、および顧客セグメント間遷移確率が変化するためである。
【0100】
以上の情報をもって、マーケティング担当者が市場を理解する一助とできる。特に、右側の矩形領域102内のアクションの値を変えることで画面中央部の顧客セグメント間遷移確率がどう変化するかいくつか試してみることができる。このことにより、より収益性の高い顧客を育てるにはどうすべきなのかといったことが定性的に理解できる。もちろん最終的な数理的最適化においては、保持しているパラメータを用いてMDPの最大化問題を解くことでより精密な推奨すべきマーケティング・アクションが計算される。
【0101】
[ハードウェア構成]
図12は、本発明の一実施形態に係る顧客セグメント推定装置10のハードウェア構成を示す図である。以下は、コンピュータを典型とする情報処理装置として全般的な構成を説明するが、専用機や組み込み型装置の場合、その環境に応じて必要最小限な構成を選択できることはいうまでもない。
【0102】
顧客セグメント推定装置10は、CPU(Central Processing Unit)1010、バスライン1005、通信I/F1040、メインメモリ1050、BIOS(Basic Input Output System)1060、パラレルポート1080、USBポート1090、グラフィック・コントローラ1020、VRAM1024、音声プロセッサ1030、I/Oコントローラ1070、ならびにキーボードおよびマウス・アダプタ等1100の入力手段を備える。I/Oコントローラ1070には、フレキシブル・ディスク(FD)ドライブ1072、ハード・ディスク1074、光ディスク・ドライブ1076、半導体メモリ1078、等の記憶手段を接続することができる。グラフィック・コントローラ1020には、表示装置1022が接続されている。また、オプションとして、音声プロセッサ1030には、増幅回路1032およびスピーカ1034が接続される。
【0103】
BIOS1060は、顧客セグメント推定装置10の起動時にCPU1010が実行するブートプログラムや、顧客セグメント推定装置10のハードウェアに依存するプログラム等を格納する。FD(フレキシブル・ディスク)ドライブ1072は、フレキシブル・ディスク1071からプログラムまたはデータを読み取り、I/Oコントローラ1070を介してメインメモリ1050またはハード・ディスク1074に提供する。
【0104】
光ディスク・ドライブ1076としては、例えば、DVD−ROMドライブ、CD−ROMドライブ、DVD−RAMドライブ、CD−RAMドライブを使用することができる。この際は各ドライブに対応した光ディスク1077を使用する必要がある。光ディスク・ドライブ1076は光ディスク1077からプログラムまたはデータを読み取り、I/Oコントローラ1070を介してメインメモリ1050またはハード・ディスク1074に提供することもできる。
【0105】
顧客セグメント推定装置10に提供されるコンピュータ・プログラムは、フレキシブル・ディスク1071、光ディスク1077、またはメモリカード等の記録媒体に格納されて利用者によって提供される。このコンピュータ・プログラムは、I/Oコントローラ1070を介して、記録媒体から読み出され、または通信I/F1040を介してダウンロードされることによって、顧客セグメント推定装置10にインストールされ実行される。コンピュータ・プログラムが情報処理装置に働きかけて行わせる動作は、既に説明した装置における動作と同一であるので省略する。
【0106】
前述のコンピュータ・プログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としてはフレキシブル・ディスク1071、光ディスク1077、またはメモリカードの他に、MD等の光磁気記録媒体、テープ媒体を用いることができる。また、専用通信回線やインターネットに接続されたサーバシステムに設けたハード・ディスクまたは光ディスク・ライブラリ等の記憶装置を記録媒体として使用し、通信回線を介してコンピュータ・プログラムを顧客セグメント推定装置10に提供してもよい。
【0107】
以上の例は、顧客セグメント推定装置10について主に説明したが、コンピュータに、情報処理装置で説明した機能を有するプログラムをインストールして、そのコンピュータを情報処理装置として動作させることにより上記で説明した情報処理装置と同様な機能を実現することができる。従って、本発明において一つの実施形態として説明した情報処理装置は、方法およびそのコンピュータ・プログラムによっても実現可能である。
【0108】
本発明の装置10は、ハードウェア、ソフトウェア、またはハードウェアおよびソフトウェアの組み合せとして実現可能である。ハードウェアとソフトウェアの組み合せによる実施では、所定のプログラムを有するコンピュータ・システムでの実施が典型的な例として挙げられる。かかる場合、該所定のプログラムが該コンピュータ・システムにロードされ実行されることにより、該プログラムは、コンピュータ・システムに本発明に係る処理を実行させる。このプログラムは、任意の言語、コード、または表記によって表現可能な命令群から構成される。そのような命令群は、システムが特定の機能を直接実行すること、または(1)他の言語、コード、もしくは表記への変換、(2)他の媒体への複製、のいずれか一方もしくは双方が行われた後に、実行することを可能にするものである。もちろん、本発明は、そのようなプログラム自体のみならず、プログラムを記録した媒体を含むプログラム製品もその範囲に含むものである。本発明の機能を実行するためのプログラムは、フレキシブル・ディスク、MO、CD−ROM、DVD、ハード・ディスク装置、ROM、MRAM、RAM等の任意のコンピュータ可読媒体に格納することができる。かかるプログラムは、コンピュータ可読媒体への格納のために、通信回線で接続する他のコンピュータ・システムからダウンロードしたり、他の媒体から複製したりすることができる。また、かかるプログラムは、圧縮し、または複数に分割して、単一または複数の記録媒体に格納することもできる。
【0109】
以上、本発明を実施形態に則して説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態または実施例に記載されたものに限定されるものではない。
【図面の簡単な説明】
【0110】
【図1】本発明の一つの実施形態に係る顧客セグメント推定装置10の機能構成を示した図である。
【図2】特徴ベクトル生成部11における顧客行動とマーケティング・アクションを組にしたベクトルの時系列データの概念を示した図である。
【図3】HMMパラメータ推定部12における特徴ベクトルの時間変化を離散の複合状態間の遷移で表現した図である。
【図4】状態・行動分解部13における複合状態を各軸方向に分解し、離散の顧客状態とアクション状態に定義することを示した図である。
【図5】状態・行動分解部13における異なる顧客状態とアクション状態の組み合せた複合状態が、切の各複合状態に所属する割合を計算することを示した図である。
【図6】状態・行動分解部13における複合状態への所属確率を用いて、任意のアクションのもとで任意の顧客状態間の遷移確率が計算されることを示した図である。
【図7】状態・行動分解部13における複合状態への所属確率を用いて、任意のアクションのもとで任意の顧客状態間から得られる報酬(利益)が計算されることを示した図である。
【図8】状態・行動分解部13における得られた遷移確率と報酬分布とがMDPパラメータになっていることを示した図である。
【図9】実施例における特徴ベクトル時系列データ23の生成例を示した図である。
【図10】実施例における状態・行動分解部13により得られたパラメータを表示する画面である。
【図11】図10の画面に表示させる追加情報である。
【図12】本発明の一実施形態に係る顧客セグメント推定装置10のハードウェア構成を示す図である。
【符号の説明】
【0111】
10 顧客セグメント推定装置
11 特徴ベクトル生成部
12 HMMパラメータ推定部
13 状態・行動分解部
21 顧客購買データ
22 マーケティング・アクション・データ
23 特徴ベクトル時系列データ
24 顧客セグメント数
25 複合状態ごとの分布パラメータ
26 顧客セグメント情報
27 マーケティング・アクションの意思決定間隔
90 購買記録
91 マーケティング・アクション記録
92 特徴ベクトル時系列データ

【特許請求の範囲】
【請求項1】
マーケティング・アクションに反応する顧客セグメントを推定するための装置であって、
複数の顧客の購買記録を蓄積した顧客購買データと前記顧客それぞれに対するマーケティング・アクション・データとを受け付ける入力部と、
前記顧客購買データと前記マーケティング・アクション・データとを対にした特徴ベクトルの時系列データを生成する特徴ベクトル生成部と、
前記特徴ベクトルの時系列データと前記顧客セグメントの数とから、顧客の購買特性を分類した顧客状態と前記マーケティング・アクションの効果に基づいた分類であるアクション状態とを対にした複合状態ごとに、隠れマルコフモデルの分布パラメータを出力するHMMパラメータ推定部と、
前記分布パラメータを顧客セグメントごとのパラメータ情報に変換する状態・行動分解部と、
を備える装置。
【請求項2】
前記顧客購買データは、顧客番号、該顧客の購買日時、および該購買日時に該顧客が引き起こしたトランザクション・ベクトルを含む、請求項1に記載の装置。
【請求項3】
前記特徴ベクトルの時系列データは、購買トランザクションで発生した売り上げと利益を含んだ情報、および購買間隔時間と関連するマーケティング・アクションとを対にしたベクトル・データである、請求項1に記載の装置。
【請求項4】
前記マーケティング・アクション・データは、対象となった顧客番号、該マーケティング・アクション・データの影響を受けた推定される購買日時、および該購買日時に行われたマーケティング・アクション・ベクトルを含む、請求項1に記載の装置。
【請求項5】
前記分布パラメータは、前記複合状態ごとに異なる売り上げ/利益、購買間隔時間、およびマーケティング・アクションに関する確率分布と、記複合状態間の遷移をあらわす連続時間マルコフ過程の遷移レートとを含む、請求項1に記載の装置。
【請求項6】
前記顧客セグメントごとのパラメータ情報は、顧客状態間の遷移確率と短期的報酬とを含む、請求項1に記載の装置。
【請求項7】
前記状態・行動分解部は、入力としてマーケティング・アクションの意思決定の間隔を受け付ける請求項1に記載の方法。
【請求項8】
マーケティング・アクションに反応する顧客セグメントを推定するための方法であって、
複数の顧客の購買記録を蓄積した顧客購買データと前記顧客それぞれに対するマーケティング・アクション・データとを受け付けるステップと、
前記顧客購買データと前記マーケティング・アクション・データとを対にした特徴ベクトルの時系列データを生成するステップと、
前記特徴ベクトルの時系列データと前記顧客セグメントの数とから、顧客の購買特性を分類した顧客状態と前記マーケティング・アクションの効果に基づいた分類であるアクション状態とを対にした複合状態ごとに、隠れマルコフモデルの分布パラメータを出力するステップと、
前記分布パラメータを顧客セグメントごとのパラメータ情報に変換するステップと、
を含む方法。
【請求項9】
マーケティング・アクションに反応する顧客セグメントを推定するためのコンピュータ・プログラムであって、コンピュータに、
複数の顧客の購買記録を蓄積した顧客購買データと前記顧客それぞれに対するマーケティング・アクション・データとを受け付けるステップと、
前記顧客購買データと前記マーケティング・アクション・データとを対にした特徴ベクトルの時系列データを生成するステップと、
前記特徴ベクトルの時系列データと前記顧客セグメントの数とから、顧客の購買特性を分類した顧客状態と前記マーケティング・アクションの効果に基づいた分類であるアクション状態とを対にした複合状態ごとに、隠れマルコフモデルの分布パラメータを出力するステップと、
前記分布パラメータを顧客セグメントごとのパラメータ情報に変換するステップと、
を実行させるコンピュータ・プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2008−152321(P2008−152321A)
【公開日】平成20年7月3日(2008.7.3)
【国際特許分類】
【出願番号】特願2006−336621(P2006−336621)
【出願日】平成18年12月14日(2006.12.14)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【復代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之