(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024165146
(43)【公開日】2024-11-28
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
G06Q 30/0251 20230101AFI20241121BHJP
【FI】
G06Q30/0251
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023081048
(22)【出願日】2023-05-16
(71)【出願人】
【識別番号】599163458
【氏名又は名称】アスクル株式会社
(71)【出願人】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】小池 和弘
(72)【発明者】
【氏名】田中 謙司
(72)【発明者】
【氏名】佐川 大志
【テーマコード(参考)】
5L030
5L049
【Fターム(参考)】
5L030BB05
5L030BB08
5L049BB05
5L049BB08
(57)【要約】
【課題】顧客購買の分析精度を高めて顧客により適切な商品をリコメンドする技術を提供する。
【解決手段】情報処理装置は、電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得する取得部と、前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定する特定部と、特徴量空間における前記コア顧客の重心を算出する算出部と、前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類する分類部と、前記クラスタごとに前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定する決定部とを有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得する取得部と、
前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定する特定部と、
特徴量空間における前記コア顧客の重心を算出する算出部と、
前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類する分類部と、
前記クラスタごとに、前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定する決定部と、
を有することを特徴とする情報処理装置。
【請求項2】
前記所定の条件は、顧客による前記電子商取引において取り扱われる商品の購入数、顧客により購入された商品の商品カテゴリ数、顧客による前記電子商取引において取り扱われる商品の購入頻度、顧客による前記電子商取引において取り扱われる商品の購入金額の少なくとも1つが所定の範囲の値であるという条件であることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記分類部は、各クラスタに含まれる顧客数が均等になるように前記他の顧客をクラスタに分類することを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記決定部は、前記クラスタごとに、前記クラスタ内の各顧客の購入商品に対して協調フィルタリングを適用して、前記クラスタ内の顧客ごとに推奨商品を決定することを特徴とする請求項1に記載の情報処理装置。
【請求項5】
前記決定部は、顧客ごとに、協調フィルタリングにより得られるスコアが所定の閾値以上であり、かつ、前記顧客が購入していない商品のうち、前記スコアが上位の所定数個の商品を前記推奨商品として決定する、ことを特徴とする請求項4に記載の情報処理装置。
【請求項6】
前記特定部は、前記電子商取引の業種ごとに前記コア顧客を特定し、
前記分類部は、前記業種ごとに前記他の顧客をクラスタに分類する
ことを特徴とする請求項1に記載の情報処理装置。
【請求項7】
前記決定部は、前記業種における専門商材を前記推奨商品として決定する
ことを特徴とする請求項6に記載の情報処理装置。
【請求項8】
コンピュータが、
電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得するステップと、
前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定するステップと、
特徴量空間における前記コア顧客の重心を算出するステップと、
前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類するステップと、
前記クラスタごとに、前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定するステップと、
を実行することを特徴とする情報処理方法。
【請求項9】
コンピュータを、
電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得する取得部と、
前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定する特定部と、
特徴量空間における前記コア顧客の重心を算出する算出部と、
前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類する分類部と、
前記クラスタごとに、前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定する決定部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子商取引の顧客の分析を行う情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
EC(Electronic Commerce)ビジネスにおいて、顧客ロイヤルティを基に顧客を分類し、顧客に対してその分類に適した販売促進を行うことが一般に行われている。また、顧客ロイヤルティに関連して顧客購買を分析する種々の技術が提案されている(非特許文献1~5)。
【0003】
非特許文献1では、購入金額の高い顧客を顧客ロイヤルティが高い顧客とし、3段階の顧客ランクを定義する方法を用いている。この方法は比較的簡易である一方で、例えば10000円の高額商品を月1回購入する顧客Aと、2500円の商品を毎週購入(月4回購入)して月の合計の購入額が10000円になる顧客Bのどちらが顧客ロイヤルティがより高いかを判断することは難しい。
【0004】
また、非特許文献2では、購入金額(Monetary)に加えて、購入頻度(Frequency)と最後の購買からの経過時間(Recency)を用いたRFM分析によって、顧客を分類する方法が提案されている。R、F、Mの各変数は、顧客購買行動分析において一般的に使われる特徴変数であり、顧客を購買行動の特徴に応じた分類には有効であると考えられている。しかし、例えば、上記の顧客Bに加えて、異なる商品を毎週購入(月4回購入)して月の合計の購入額が10000円になる顧客Cが存在し、顧客Bも顧客Cも、直近の購入日が7日前である場合、表1に示すように、RFM分析では、顧客Bと顧客Cは共に(R,F,M)=(7,4,10000)となり区別できない。なお、表1において、Recency欄は直近の購入日が何日前であるかを示し、Frequency欄は月あたりの購入回数を示し、Monetary欄は月の合計の購入額(円)を示す。
【表1】
【0005】
そこで、非特許文献3~5では、上記のRFM分析では十分な分析ができない場合にRFM分析を拡張する技術が提案されている。例えば、非特許文献3では、銀行の顧客セグメンテーションでRFMに顧客期間を変数に加え、非特許文献4では、RFMに購入商品目を変数に加え、非特許文献5では、RFMに会員期間の長さと利益を変数に加えることで、RFM分析の拡張が提案されている。しかし、これらの技術では、RFM分析に加える変数によってR、F、Mの各変数との関連性は異なるため、変数を加えることで分析精度が変わらなかったり、分析結果が加えた変数に必要以上に影響を受けたりするなど、分析精度が低下する可能性もある。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】Hisatetsu Iizuka, Daisuke Yonemura, and Hideki Toyoda. Behavioral analysis by customer rank (in japanese). Operations Research: The Science of Management, 48:94-99, 2003.
【非特許文献2】Ching-Hsue Cheng and You-Shyang Chen. Classifying the segmentation of customer value via rfm model and rs theory. Expert systems with applications, 36(3):4176-4184, 2009.
【非特許文献3】Mehdi Bizhani and Mohammad Jafar Tarokh. Behavioral segmentation of bank’s point-of-sales using rf* m* approach. In Proceedings of the 2010 IEEE 6th International Conference on Intelligent Computer Communication and Processing, pages 81-86. IEEE, 2010.
【非特許文献4】Takamasa Tanaka, Tomohiro Hamaguchi, Takumi Saigo, and Kazuhiko Tsuda. Classifying and understanding prospective customers via heterogeneity of supermarket stores. Procedia computer science, 112:956-964, 2017.
【非特許文献5】Kuanchin Chen, Ya-Han Hu, and Yi-Cheng Hsieh. Predicting customer churn from valuable b2b customers in the logistics industry: a case study. Information Systems and e-Business Management, 13:475-494, 2015.
【発明の概要】
【発明が解決しようとする課題】
【0007】
上述のように、顧客ロイヤルティの定義は多様であり複雑であり、また顧客ロイヤルティに関連して顧客購買を精度よく分析することは困難であった。
【0008】
そこで、本件開示の技術は、上記の事情に鑑みてなされたものであり、その目的とするところは、顧客購買の分析精度を高めて顧客により適切な商品をリコメンドする技術を提供することである。
【課題を解決するための手段】
【0009】
本件開示の情報処理装置は、電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得する取得部と、前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定する特定部と、特徴量空間における前記コア顧客の重心を算出する算出部と、前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類する分類部と、前記クラスタごとに、前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定する決定部と、を有する。これにより、特徴量空間におけるコア顧客との距離に応じて顧客をクラスタに分けてクラスタごとに顧客の推奨商品を決定することで、情報処理装置における推奨商品の決定に伴う処理負荷を軽減しつつ、顧客により適切な商品のリコメンドを行うことができる。
【0010】
また、上記の情報処理装置において、前記所定の条件は、顧客による前記電子商取引において取り扱われる商品の購入数、顧客により購入された商品の商品カテゴリ数、顧客による前記電子商取引において取り扱われる商品の購入頻度、顧客による前記電子商取引において取り扱われる商品の購入金額の少なくとも1つが所定の範囲の値であるという条件である。これにより、顧客の購買行動をより強く反映した推奨商品の決定を行うことが期待できる。
【0011】
また、上記の情報処理装置において、前記分類部は、各クラスタに含まれる顧客数が均等になるように前記他の顧客をクラスタに分類してもよい。また、前記決定部は、前記クラスタごとに、前記クラスタ内の各顧客の購入商品に対して協調フィルタリングを適用し
て、前記クラスタ内の顧客ごとに推奨商品を決定してもよい。また、前記決定部は、顧客ごとに、協調フィルタリングにより得られるスコアが所定の閾値以上であり、かつ、前記顧客が購入していない商品のうち、前記スコアが上位の所定数個の商品を前記推奨商品として決定してもよい。これにより、顧客の購買行動を踏まえた顧客により適切な商品のリコメンドを行うことができる。また、前記特定部は、前記電子商取引の業種ごとに前記コア顧客を特定し、前記分類部は、前記業種ごとに前記他の顧客をクラスタに分類してもよい。さらに、前記決定部は、前記業種における専門商材を前記推奨商品として決定してもよい。これにより、電子商取引の業種ごとに適切な顧客のクラスタリングを行い、業種における専門商材を対象とした推奨商品の決定を行うことができる。
【0012】
また、本件開示の情報処理方法は、コンピュータが、電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得するステップと、前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定するステップと、特徴量空間における前記コア顧客の重心を算出するステップと、前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類するステップと、前記クラスタごとに、前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定するステップと、を実行することを特徴とする情報処理方法を含む。
【0013】
また、本件開示のプログラムは、コンピュータを、電子商取引の顧客の購買行動を特徴付ける要因である複数の特徴変数を取得する取得部と、前記顧客のうち前記複数の特徴変数が所定の条件を満たすコア顧客を特定する特定部と、特徴量空間における前記コア顧客の重心を算出する算出部と、前記特徴量空間において、前記コア顧客の前記重心と前記コア顧客以外の他の顧客それぞれの座標との距離に応じて前記他の顧客をクラスタに分類する分類部と、前記クラスタごとに、前記クラスタ内の顧客の購入商品に基づいて、前記クラスタ内の顧客ごとに推奨商品を決定する決定部として機能させるためのプログラムを含む。
【発明の効果】
【0014】
本件開示の技術によれば、顧客購買の分析精度を高めつつ顧客により適切な商品をリコメンドすることによって、顧客ロイヤルティの向上が期待できる。
【図面の簡単な説明】
【0015】
【
図1】
図1は、第1実施形態に係る情報処理装置の一例を示す図である。
【
図2】
図2は、特徴変数の特徴量空間における顧客の相関を模式的に示す図である。
【
図3】
図3は、第1実施形態に係る情報処理装置が実行する処理の一例を示すフローチャートである。
【
図4】
図4は、第1実施形態に係る情報処理装置が実行する顧客クラスタリングのアルゴリズムの一例を示す図である。
【
図5】
図5は、コア顧客距離とLTVの相関の想定例を示すグラフである。
【
図6】
図6は、医療セクターにおけるコア顧客距離とLTVの相関の一例を示すグラフである。
【
図7】
図7は、MROセクターにおけるコア顧客距離とLTVの相関の一例を示すグラフである。
【
図8】
図8は、オフィスセクターにおけるコア顧客距離とLTVの相関の一例を示すグラフである。
【
図9】
図9は、第1実施形態に係る情報処理装置が実行する推奨商品を決定するための協調フィルタリングのアルゴリズムの一例を示す図である。
【
図10】
図10は、第1実施形態における医療セクターのクラスタリング結果の一例を示すグラフである。
【
図11】
図11は、第1実施形態におけるMROセクターのクラスタリング結果の一例を示すグラフである。
【
図12】
図12は、第1実施形態におけるオフィスセクターのクラスタリング結果の一例を示すグラフである。
【
図13】
図13は、医療セクターにおいて専門商材を推奨した場合のシミュレーション結果の一例を示す図である。
【
図14】
図14は、医療セクターにおいて一般商品を推奨した場合のシミュレーション結果の一例を示す図である。
【
図15】
図15は、MROセクターにおいて専門商材を推奨した場合のシミュレーション結果の一例を示す図である。
【
図16】
図16は、MROセクターにおいて一般商品を推奨した場合のシミュレーション結果の一例を示す図である。
【発明を実施するための形態】
【0016】
以下に、図面を参照しながら、本件開示の技術の好適な実施の形態について説明する。ただし、以下に記載されている構成部品の構成は、本件開示の技術が適用される装置の構成や各種条件により適宜変更されるべきものである。よって、本件開示の技術の技術的範囲を以下の記載に限定する趣旨のものではない。
【0017】
(第1実施形態)
図1は、第1実施形態に係る情報処理装置の概略構成を示す図である。
図1に示すように、情報処理装置1は、制御部11、記憶部12、操作部13、表示部14、通信部15を有する。また、情報処理装置1は、外部装置である顧客情報DB(Database)2と接続されている。
【0018】
制御部11は、例えばCPU(Central Processing Unit)によって実現される。制御部11は、顧客情報DB2から以下に説明する処理の実行に用いる情報を取得する。記憶部12は、情報処理装置1で実行される処理に使用されるプログラムや情報を記憶する。本実施形態では、記憶部12は、例えばフラッシュメモリによって実現される。操作部13は、情報処理装置1のユーザから情報処理装置1で実行される処理に関する入力を受け付ける。操作部13は、例えばタッチパネルやカメラ、マイクなどによって実現され、画像入力、ユーザの手入力、音声入力などを入力情報として受け付ける。表示部14は、情報処理装置1で実行される処理に関する情報を表示する。表示部14は、例えば液晶ディスプレイによって実現される。なお、操作部13に入力された情報は、制御部11によって表示部14に表示されてもよい。通信部15は、情報処理装置1の外部装置との通信を行い、情報処理装置1で実行される処理に用いられる情報を取得する。通信部15は、例えばアンテナによって実現される。
【0019】
本実施形態の情報処理装置1では、顧客情報DB2から取得した電子商取引における顧客の顧客情報を基に、RFM分析における変数R(Recency;最後の購買からの経過時間)、変数F(Frequency;購入頻度)、変数M(Monetary;購入金額)に加えて、商品種類、会員期間、注文単価など顧客の購買行動の特徴を表すと考えられる複数種類(例えば、数十種類~数百種類)の変数を用いて、購買行動を特徴変数として顧客を特徴量空間にマッピングする処理を行う。
【0020】
また、本実施形態では、所定の特徴変数が、特徴変数ごとに定められた閾値を超えている顧客は、顧客ロイヤルティが高い可能性が高いと仮定し、この顧客の集団を「コア顧客」と呼ぶ。また、購買行動の特徴変数の特徴量空間内において、コア顧客の重心座標を求め、コア顧客の重心座標から各顧客の座標の距離(「コア顧客距離」とも呼ぶ)を求める
。また、顧客集団におけるコア顧客以外の顧客を「一般顧客」と呼ぶ。
【0021】
図2に、購買行動の特徴変数の特徴量空間内におけるコア顧客と他の顧客の位置関係の一例を模式的に示す。
図2では、特徴変数x1、x2、x3による3次元の特徴量空間を例示するが、本実施形態における特徴量空間を構成する特徴変数の数はこれに限られず、n(nは特徴変数の数)次元の特徴量空間を用いることができる。
【0022】
図において、特徴量空間内の点は顧客を表し、特徴変数x1、x2、x3がそれぞれの閾値を超える顧客の集まりがコア顧客Cとして特定できる。また、特徴量空間におけるコア顧客Cの重心Gからコア顧客ではない顧客A、Bまでのコア顧客距離が、それぞれLA、LBとして規定される。
【0023】
本実施形態では、コア顧客距離に応じて一般顧客を10等分にするデシル分析を行う。この分析結果によって得られるそれぞれの一般顧客の集まりを「クラスタ」と呼ぶ。なお、このデシル分析によって分割されるクラスタは、10個に限らず任意の数のクラスタであってよいし、必ずしも各クラスタの一般顧客数が均等になるように分割されなくてもよくクラスタごとに一般顧客数が異なっていてもよい。
【0024】
また、本実施形態では、さらに、コア顧客の重心座標から一般顧客の座標までの距離に基づいて分類されるクラスタを使って、クラスタごとに協調フィルタリングを用いて各一般顧客にリコメンドに適した商品を決定する。同じクラスタに属する一般顧客は、購買行動が似ている可能性が高いことから、クラスタ内の各一般顧客が、決定された商品を購入する確率が高いと期待できる。
【0025】
次に、
図3に本実施形態における情報処理装置1において実行される処理のフローチャートを示す。以下に説明する処理は、例えば情報処理装置1の制御部11が、ユーザによる操作部13からの入力を基に処理を開始する。
【0026】
ステップS101において、制御部11は、顧客情報DB2から、電子商取引の各顧客について、顧客の購買行動を特徴付ける要因である上記の数十種類の特徴変数の情報を取得する。次に、ステップS102において、制御部11は、顧客ごとに、一部の特徴変数が特徴変数ごとにあらかじめ決められた所定の条件を満たすか否かを判定する。そして、制御部11は、当該一部の特徴変数のすべてが閾値を超えている顧客の集まりをコア顧客として特定する。なお、コア顧客の顧客数は単数でもよいし複数でもよい。また、ここで一部の特徴変数はあらかじめ特定されている特徴変数である。また、ここで所定の条件は、顧客による電子商取引において取り扱われる商品の購入数、顧客により購入された商品の商品カテゴリ数、顧客による電子商取引において取り扱われる商品の購入頻度、顧客による電子商取引において取り扱われる商品の購入金額の少なくとも1つが所定の範囲の値であるという条件が含まれる。所定の範囲としては、所定の閾値以上であることおよび/または所定の閾値以下であること、などが挙げられる。
【0027】
なお、ステップS102において、制御部11は、一部の特徴変数のうちまたはすべての特徴変数のうち、閾値を超える特徴変数が所定個数以上である顧客をコア顧客として特定してもよい。あるいは、制御部11は、一部の特徴変数のうち所定の特徴変数の組み合わせを対象に、組み合わせに含まれる各特徴変数が閾値の条件を満たす顧客をコア顧客として特定してもよい。ここで、閾値の条件として、例えば、一部の特徴変数として特徴変数A、B、Cがある場合に、「特徴変数Aが閾値ThAを超える」または「特徴変数Bが閾値ThBを超え、かつ、特徴変数Cが閾値ThCを超える」ことなど、複数の特徴変数が特定の関係にあることを判断するような条件が挙げられる。
【0028】
次に、ステップS103において、制御部11は、ステップS103において特定したコア顧客を構成する各顧客の特徴変数を用いて、特徴量空間におけるコア顧客の重心座標を算出する。そして、ステップS104において、制御部11は、ステップS103で算出したコア顧客の重心座標と一般顧客それぞれまでの距離(コア顧客距離)を算出する。コア顧客距離は、例えば、特徴量空間におけるL2ノルム(ユークリッド距離)として定義されるが、L1ノルム(マンハッタン距離)、Lpノルム(ここで、pは3以上の整数)などによって定義されてもよい。
【0029】
次に、ステップS105において、制御部11は、デシル分析によって、ステップS104で算出したコア顧客距離に応じて一般顧客をクラスタに分類する。具体的には、制御部11は、それぞれの範囲に含まれる一般顧客の数が均等になるようにコア顧客距離を10個の範囲に分けて、各範囲に含まれる一般顧客をそれぞれのクラスタに属するものとする。また、制御部11は、一例として、デシル分析によって分割されたクラスタにそれぞれクラスタk(k=1~10)のラベルを付与する。ここで、クラスタ1は、コア顧客の重心座標に最も近い一般顧客のクラスタとし、kの値が大きくなるほどコア顧客の重心座標から遠ざかり、クラスタ10は、コア顧客の重心座標から最も遠い一般顧客のクラスタとする。
【0030】
なお、上記のステップS101の処理を実行する制御部11が、本発明の取得部に該当する。また、上記のステップS102の処理を実行する制御部11が、本発明の特定部に該当する。また、上記のステップS103の処理を実行する制御部11が、本発明の算出部に該当する。また、上記のステップS105の処理を実行する制御部11が、本発明の分類部に該当する。
【0031】
図4に、ステップS101~S105の処理を実現する、購買行動の特徴変数による顧客クラスタリングを行うアルゴリズムの概略の一例を示す。
【0032】
制御部11は、まず顧客の購買行動を特徴づけると考えられる特徴変数を取得する。ここでは、カテゴリ変数ではなく量的変数のみを対象とする。そして、制御部11は、顧客情報DB2から取得した顧客情報を基に、顧客コードをユニークキーとして、購買行動の特徴変数の値のデータフレームdfを作成する。そして、制御部11は、データフレームdfを入力データとして一般顧客をクラスタリングする。
【0033】
図4のアルゴリズムの詳細について説明する。1行目(図中「1:」以下同様)で、入力データフレームdfを平均0、分散1にスケーリングするz-score normalizationによって標準化を行い、得られる一般顧客と特徴変数の行列を行列Xとする。2行目に示す[CoreCondition]は、コア顧客の集団を抽出する条件である。より具体的には、[CoreCondition]は、購買行動の特徴変数の中からあらかじめ決められている所定の変数を選択し、それぞれの変数に閾値条件を与え、AND条件で繋いだものである。目安として、コア顧客の集団は、クラスタリング対象の顧客の総数の1%程度となるようにする。なお、ここで用いる変数は、本アルゴリズムの実行前に情報処理装置1のユーザがあらかじめ選択することができる。
【0034】
3~4行目において、k-means法でクラスタ数を1として、コア顧客の集団の重心座標を算出する。そして、5~10行目において、コア顧客の重心座標から各一般顧客のL2ノルム(ユークリッド距離)を算出し、算出結果をコア顧客距離とする。最後に11行目において、コア顧客距離によって昇順にソートし、顧客数が均等になるように10分割する。そして、分割された各顧客にc1からc10までのクラスタIDを付与し、データフレームdfにcluster列を追加する。
【0035】
図3に戻り、次にステップS106において、制御部11は、上記により分類されたクラスタごとに、顧客に対する推奨商品を決定する。
【0036】
ここで、コア顧客距離と顧客ロイヤルティとの相関について説明する。顧客ロイヤリティを示す指標としては、Lifetime Value(LTV)が一般的に用いられる。LTVは、所定期間において電子商取引の顧客が取引の開始から終了までにもたらす利益を表す指標であり、Customer Lifetime Value(CLV;顧客生涯価値)と呼ばれる場合もある。例えば、LTVを用いて、健康・美容分野など所定のビジネス分野において顧客ロイヤルティを基にした顧客セグメンテーションを行うことができる。
【0037】
ここで、LTVを顧客ロイヤリティの指標として用いる場合におけるコア顧客距離とLTVとの相関について説明する。LTVは、以下の式(1)により算出することができる。
【数1】
【0038】
ここで、Sは、顧客ごとの期待される年間総貢献利益であり、売上高から売上原価を差し引いたものに等しい。また、cは、チャーンレート(解約率)である。
【0039】
図5に示すように、コア顧客距離とLTVとは、負の相関があり、コア顧客距離が短いほど、つまりコア顧客と購買行動が近いほどLTVは大きくなり、逆にコア顧客距離が長くなるほどLTVは小さくなると考えられる。
【0040】
しかしながら、本出願人がコア顧客距離とLTVの相関を調査した結果、実際のコア顧客距離とLTVとの相関は、
図5に示すように単純ではなく、あるコア顧客距離までは上記の通り負の相関が見られるが、コア顧客距離がさらに大きいとコア顧客距離とLTVとの相関が正の相関に反転することを見出した。
【0041】
一例として、EC物流事業を運営する会社において、数か月間の一般顧客への推奨商品と一般顧客の購入商品に関するデータを集計した場合の、一般顧客の受注履歴とLTVとの相関について説明する。ここでは、顧客業種セクターとして、医療セクターとMRO(Maintenance Repair and Operations)セクターとその一般オフィスセクターの3つのセクターを挙げる。
【0042】
図6、
図7、
図8は、電子商取引の業種として医療セクター、MROセクター、オフィスセクターにおけるコア顧客距離の平均とLTVの平均との関係をそれぞれ示す。
図6、
図7、
図8において、X軸(横軸)は、コア顧客距離の正規化(min-max normalization)の結果を示し、0.0~1.0に正規化したスケールである。同様に、Y軸(縦軸)は、LTVを0.0~1.0に正規化したスケールである。
【0043】
図6、
図7、
図8に示すように、医療セクターではクラスタc4においてLTVが底打ちし、クラスタc5以降では、コア顧客距離とLTVとの相関が正の相関に反転している。また、MROセクターでは、クラスタc5においてLTVが底打ちし、クラスタc6以降では、コア顧客距離とLTVとの相関が正の相関に反転している。また、オフィスセクターでは、クラスタc7においてLTVが底打ちし、クラスタc8以降では、コア顧客距離とLTVとの相関が正の相関に反転している。
【0044】
また、
図6、
図7、
図8に示すように、コア顧客距離とLTVとの相関が正の相関に反転していることは、コア顧客距離が短い一般顧客とは別に、顧客ロイヤリティがより高い一般顧客が存在する可能性を示唆している。ただし、そのような顧客ロイヤリティがより高い一般顧客を特定するには、膨大な購買行動の特徴変数のうちどの変数を選択すべきかを決定したり、それぞれの変数に対する閾値をどのように決めるべきかを特定したりするために、変数の組み合わせをそれぞれ検証することが必要となるが、組み合わせの数が膨大となるためそのような検証は現実的ではない。
【0045】
そこで、本実施形態では、顧客ロイヤリティがより高いクラスタに一般顧客を近づけることを目的として、制御部11は、ステップS106において、クラスタごとに、クラスタ内の各一般顧客の購入商品に対して協調フィルタリングを行って、クラスタ内の一般顧客ごとにリコメンドの候補となる推奨商品を決定する。
【0046】
図9は、ステップS106の処理を実現する、協調フィルタリングによる推奨商品を決定するアルゴリズムの概略の一例を示す。情報処理装置1の制御部11は、Non-negative Matrix Factorization(NMF)アルゴリズムによる協調フィルタリングによって推薦商品の選択を行う。NMFは、多変量解析に広く使われているアルゴリズムであり、n×m行列Xが与えられる場合に、行列Xを近似的にn×r行列Wとr×m行列Hに因子分解する処理である。通常rはmよりも小さくなるように選ばれ、WとHが元の行列Xよりも小さくなるようにすることで元のデータ行列が圧縮される。また、制御部11は、クラスタごとに
図9のアルゴリズムを実行し、クラスタ内の一般顧客ごとに推奨商品を決定する。なお、
図9における行列Xは、
図4における行列Xとは異なる行列である。また、以下の説明では、協調フィルタリングのアルゴリズムとしてNMFを用いるが、NMFとは異なるアルゴリズムを用いて一般顧客ごとの推奨商品を決定してもよい。
【0047】
図9のアルゴリズムの詳細について説明する。このアルゴリズムでは、ある期間に一般顧客が購入した商品と個数のデータを、一般顧客を行、商品を列とする行列に変換して入力データとする。1行目では、「n components=16」としてNMFモデルを作成する。このパラメータは、上記のrに相当する。この例ではパラメータの値を16としたが、値が大きすぎると近似による誤差は小さいが推奨すべき商品が抽出しにくくなり、値が小さすぎると近似による誤差が大きくなり特徴が曖昧になる。したがって、この値は、クラスタごとに一般顧客数(m)、商品数(n)のサイズによって適切な値になるように調整する。
【0048】
2~3行目において、因子分解されたWとHを取得する。また、4行目において、WとHのドット積を算出し、算出結果を行列Xpとする。また、ここで得られる数値を「スコア」とする。また、5行目において、行列Xの列名、すなわち商品IDの配列を取得する。次いで、6行目において、行列Xの行名、すなわち顧客IDの配列を取得する。
【0049】
次に、7行目において、「threshold=0.05」は、一般顧客に対する推奨商品として抽出する際の足切り閾値である。この閾値は、推奨商品として特定される商品数に応じて調整される。そして、8~15行目において、一般顧客ごとに推奨商品を抽出するループ処理が実行される。具体的には、iが0から一般顧客数(m)に達するまで処理が繰り返し実行される。11行目では、i番目の一般顧客[i]の商品スコア配列を「sort_by_score」関数に渡し、i番目の一般顧客[i]について、推奨する商品を、スコアが高い順にソートし、ソートした結果をitems_iとして返す。
【0050】
次に、12行目において、推奨商品の抽出条件を定義する。具体的には、過去に購入しておらず将来購入する可能性がある商品が推奨商品として抽出される条件が定義される。
抽出条件conditionは、
図9に示すように、一般顧客が過去に購入したことがない商品であり、かつ、商品スコアが足切り閾値thresholdを超えるという条件として設定される。
【0051】
そして、13行目において、12行目で定義された抽出条件を適用して一般顧客[i]の推奨商品[i]を決定する。14行目において、一般顧客と推奨商品の2次元配列である結果配列user_itemsに、推奨商品を追加する。また、上記のループ処理の完了後に、結果配列user_itemsを出力データとして生成する。
【0052】
これにより、制御部11は、ステップS105において分類されたクラスタごとに、協調フィルタリングによって各一般顧客に対する推奨商品を決定することができる。
【0053】
図3に戻り、次にステップS107において、制御部11は、一般顧客ごとに、決定された各推奨商品が専門商材であるか否かを判定する。そして、ステップS108において、制御部11は、専門商材であると判定された推奨商品を、顧客にリコメンドする商品として決定する。制御部11は、例えば、ステップS106で特定された推奨商品のうち、専門商材であり、かつ、商品スコアが上位の所定数個の商品を、顧客にリコメンドする商品として決定する。ステップS108において決定されたリコメンド対象の商品に関する情報は、記憶部12に記憶され、制御部11が任意のタイミングで取得できるようにしてもよい。なお、上記のステップS106の処理を実行する制御部11が、本発明の決定部に該当する。
【0054】
次に、本実施形態における、上記の顧客クラスタリングによって得られるクラスタごとの協調フィルタリングによる顧客への推奨商品の抽出の具体的な処理例の概略について説明する。
【0055】
ここでは、以下の式(2)に示す顧客数が3(m=3)、商品種類数が5(n=5)の行列UserItemMatrix(X)を用いる。なお、単純化のため、各顧客の購入商品数は1か0とする。
【数2】
【0056】
r=3としてNMFでXを因子分解すると、3×2の行列Wと2×5の行列Hが得られる(式(3))(
図9の1~3行目)。
【数3】
【0057】
具体的に、WとHは、それぞれ以下の式(4)に示す結果となる。
【数4】
【0058】
WとHのドット積を算出し、以下の式(5)に示す結果を得る(
図9の4行目)。
【数5】
【0059】
元の行列Xで、値が0の要素を1とし、値が1の要素を0とする行列を作りNOT SIGN Xとする(式(6))。
【数6】
【0060】
式(5)と式(6)で得られるそれぞれの行列の論理積が、推奨商品を示す行列となる(式(7))。なお、NOT SIGN Xとの論理積をとるのは、顧客が以前購入した商品を除いて未購入の商品を推奨商品として決定するためである。
【数7】
【0061】
式(7)の行列の各行は、顧客ごとの各商品のスコアを表す。ここで、各行のうち足切り閾値threshold以上の値を有する要素が、当該顧客に対する推奨商品となる。以上の処理が
図9の5行目から15行目までの処理に実質的に相当する。
【0062】
顧客にリコメンドする商品は、推奨商品のうち、専門商材であり、かつ、スコアが上位の所定数個の商品とすることができる。例えば、所定数個を1とすれば、推奨商品のうちスコアが最も高い専門商材が顧客にリコメンドされることになる。式(7)に示す商品が全て専門商材であると仮定すると、顧客1(1行目の顧客)にリコメンドする商品は商品4(4列目の商品)、顧客2にリコメンドする商品は商品1または商品3のいずれか(選択基準は任意でよい)、顧客3にリコメンドする商品は商品5と決定される。
【0063】
なお、上記のステップS106において、制御部11は、専門商材のみを対象として一般顧客にリコメンドする推奨商品を決定してもよい。具体的には、上記の式(2)において専門商材のみによって行列Xを構成する。この場合、式(7)により決定される推奨商品は必ず専門商材となるため、制御部11は、ステップS107の処理を省略することができる。
【0064】
次に、上記のEC物流事業を運営する会社が集計したデータを用いて、上記の3つのセクター(医療、MRO、オフィス)ごとに顧客クラスタリングと商品のレコメンデーションのシミュレーションを行った結果の一例について説明する。
【0065】
この例では、シミュレーションの精度を高めるため、列挙される特徴変数のうち、以下の3つの基準を設けて採用する特徴変数を絞り込む。
(基準1)利用する特徴変数は、カテゴリ変数を除き、量的変数のみとする
(基準2)欠損値が一定値以上である変数は除く
(基準3)値がすべて同じ変数は除く
【0066】
また、以下の表2に、上記の例において、セクターごとに初期に列挙される特徴変数の数(表中「初期変数の数」)と最終的に採用される特徴変数の数(表中「採用された数」)の一例を表2に示す。
【表2】
【0067】
また、
図10は、医療セクターのクラスタリング結果の一例を示す。
図10において、X軸は、コア顧客距離に応じて分割されたクラスタであり、コア顧客の重心座標に近い順にc1からc10まで並んでいる。また、Y軸は、min-max法により正規化したスケーリングである。グラフ中、実線1001は、各クラスタに属する顧客のLTVの平均値をmin-max法で正規化した結果を示す(図中「norm_LTV_mean」)。
図10では
、LTVの値がクラスタc4、c5付近で最小となる下に凸の曲線になっている。このような曲線になる要因として、医療セクターにおける専門商材の購入数(n medical)の影響が考えられる。
図10では、n medicalの平均を正規化した結果が点線1002で示される(図中「norm_n_medical_mean」)。
図10に示すように、LTV
の平均とn medicalの平均との相関は、クラスタc4、c5以降でより強く表れている。一方、クラスタc1からc3までは、LTVの平均とn medicalの平均との相関は弱くなっている。
【0068】
ここで、別の仮説として、各顧客の会員期間(duration)がLTVに影響を及ぼすと想定し、
図10には、クラスタごとに顧客のdurationの平均を正規化した結果を一点鎖線1003で示す(図中「norm_duration_mean」)。
図10に示すように、durationはクラスタc6で最低となり、LTVが最低となるクラスタc4と異なるが、クラスタc1からc4におけるdurationの推移を踏まえると、これらのクラスタにおいてdurationによってLTVが押し上げられていると考えることができる。
【0069】
同様に、
図11は、MROセクターのクラスタリング結果の一例を示す。MROセクターは、例えば作業用品、梱包資材、防災・防犯用品、工具、計測機器、部品などが含まれる商品カテゴリである。
図11においても、
図10と同様に、実線1101が、各クラスタに属する顧客のLTVの平均値をmin-max法で正規化した結果を示し(図中「norm_LTV_mean」)、点線1102が、MROセクターにおける専門商材の購入数n mr
oの平均を正規化した結果を示し(図中「norm_n_mro_mean」)、一点鎖線1103が、
クラスタごとに顧客のdurationの平均を正規化した結果を示す(図中「norm_duration_mean」)。
図11に示すように、
図10の医療セクターの例と比べると、LTVがクラスタc5において最小になっている点やクラスタc1においてLTVが大きくなっているなどの違いはあるが、全般的に医療セクターと似た結果が得られる。
【0070】
医療セクターとMROセクターは、それぞれの業種特有の専門商材の特徴による影響がオフィスセクターに比べるとより大きい。なお、上記3つのセクターの比較のため、業種に関係なく購入される一般的なオフィス用品を対象とするオフィスセクターについても、
図10、
図11と同様の分析を行った結果の一例を
図12に示す。
図12においても、
図10および
図11と同様に、実線1201が、各クラスタに属する顧客のLTVの平均値
をmin-max法で正規化した結果を示し(図中「norm_LTV_mean」)、点線1202
が、オフィスセクターにおけるオフィス用品の購入数n orderの平均を正規化した結果を示し(図中「norm_n_order_mean」)、一点鎖線1203が、クラスタごとに顧客
のdurationの平均を正規化した結果を示す(図中「norm_duration_mean」)。
図12に示すように、LTVがクラスタc7で最小になっている点やクラスタc7以降において会員期間duratioinとLTVとの相関が低くなっている点など、医療セクターおよびMROセクターにおける例との違いがある。また、オフィスセクターの場合は、クラスタc1からc7まではコア顧客の重心座標に近い顧客ほどLTVが大きいことがわかる。
【0071】
ここで、医療セクターとMROセクターについて、LTVが最小となるクラスター(「底打ちクラスタ」と呼ぶ)に着目する。医療セクターにおける底打ちクラスタはクラスタc4であり、MROセクターにおける底打ちクラスタはクラスタc5である。LTVが顧客ロイヤルティの指標となることから、底打ちクラスタに属する顧客は、顧客ロイヤルティが低い顧客集団であると考えられる。また、会員期間durationが最も短い底打ちクラスタは、医療セクター、MROセクターともにクラスタc6であるため、LTVひいては顧客ロイヤルティは必ずしも会員期間の短さだけに依存するものではないといえる。
【0072】
そこで、LTVと購入される専門商材数との相関の強さを踏まえ、LTVが低いクラスタに属する顧客に対して専門商材をリコメンドすることによって、当該クラスタ内の顧客をLTVがより大きいクラスタに移動させることができるかについてシミュレーションを通じて検討する。シミュレーションでは、まずNMFによって抽出した商品のうち専門商材のみを選択して顧客に推薦する。そして、顧客が推奨された商品を購入する確率を0.0から1.0まで0.1刻みで変更しながら上記のクラスタリングを再度行う。すなわち、このシミュレーションでは、専門商材の購入数が増えることで、LTVの底打ちクラスタの顧客がどのクラスタにどの程度移動するかを調べることができる。
【0073】
図13は、医療セクターを対象に上記のシミュレーションを行った結果の一例を示す。
図13において、X軸は購入確率であり、左側のY軸はクラスタc4からクラスタc3あるいはクラスタc5に移動した顧客数の割合であり、右側のY軸はクラスタc4の顧客数の割合である。また、点線1301がクラスタc4からクラスタc3に移動した顧客数の割合であり(図中「c3に移動」)、一点鎖線1302がクラスタc4からクラスタc5に移動した顧客数の割合であり(図中「c5に移動」)、実線1303がクラスタc4における顧客の減少数の割合を示す(図中「c4の減少数」)。
図13に示すように、クラスタc4からクラスタc5に移動した顧客数の割合が、クラスタc4からクラスタc3に移動した顧客数の割合をほぼ上回っていることがわかる。したがって、クラスタリングのシミュレーションから、クラスタc5以降でLTVと専門商材数n medicalとの相関がより強いことがわかる。
【0074】
図13のシミュレーション結果例の比較として、
図14に、医療セクターの顧客を対象に、上記シミュレーションにおける専門商材と同じ数の一般商品を推奨した場合のシミュレーション結果の一例を示す。図において、点線1401がクラスタc4からクラスタc3に移動した顧客数の割合であり(図中「c3に移動」)、一点鎖線1402がクラスタc4からクラスタc5に移動した顧客数の割合であり(図中「c5に移動」)、実線1403がクラスタc4における顧客の減少数の割合を示す(図中「c4の減少数」)。
図14に示すように、
図13の場合と同様にクラスタc4からクラスタc3またはc5への顧客の移動が見られるが、クラスタを移動する顧客数の割合は、
図13の専門商材を推奨する場合に比べると、有意に小さいことがわかる。
【0075】
同様に、
図15は、MROセクターを対象とした上記のシミュレーション結果の一例を示す。MROセクターはLTVの底打ちクラスタがクラスタc5であるため、シミュレーションではクラスタc5の顧客に対してMROセクターにおける専門商材を推薦し、クラスタc5からクラスタc4(図中「c4に移動」)またはクラスタc6(図中「c6に移動」)に移動する顧客数と、クラスタc5における顧客の減少数の割合を追跡する。図において、点線1501がクラスタc5からクラスタc4に移動した顧客数の割合であり(図中「c4に移動」)、一点鎖線1502がクラスタc5からクラスタc6に移動した顧客数の割合であり(図中「c6に移動」)、実線1503がクラスタc5における顧客の減少数の割合を示す(図中「c5の減少数」)。
図15に示すように、シミュレーション結果は、
図13に示す医療セクターのシミュレーション結果と同様となった。
【0076】
また、
図15に示すシミュレーションに加えて、
図14の場合と同様に、MROセクターを対象として、上記シミュレーションにおける専門商材と同じ数の一般商品を推奨した場合のシミュレーションを行う。
図16に、そのシミュレーション結果を示す。図において、点線1601がクラスタc5からクラスタc4に移動した顧客数の割合であり(図中「c4に移動」)、一点鎖線1602がクラスタc5からクラスタc6に移動した顧客数の割合であり(図中「c6に移動」)、実線1603がクラスタc5における顧客の減少数の割合を示す(図中「c5の減少数」)。
図16からわかるように、
図15の場合と同様に顧客のクラスタ移動が見られるが、クラスタを移動する顧客数の割合は、
図15の専門商材を推奨する場合に比べると、有意に小さいことがわかる。
【0077】
表3は、顧客が推奨商品をリコメンドされた場合の当該商品の購入率を100%とした場合における上記のシミュレーション結果の一例を示す表である。
【表3】
【0078】
表3に示すように、医療セクターとMROセクターで顧客に専門商材を推奨する場合のシミュレーションでは、顧客に一般商品を推奨する場合に比べてLTVがより大きいセクターに移動する顧客の割合が大きい。また、医療セクターの場合は、クラスタc4からの移動について、クラスタc3への移動(「c4→c3」)よりもクラスタc5への移動(「c4→c5」)の方がよりLTVが大きくなる。同様に、MROセクターの場合も、クラスタc5からの移動について、クラスタc4への移動(「c5→c4」)よりもクラスタc6(「c5→c6」)への移動の方がよりLTVが大きくなる。このことから、それぞれのセクターにおいて、顧客に専門商材を推奨することでLTVの向上が期待できる。
【0079】
以上のことから、
図10~
図12に示すようにコア顧客距離とLTVの曲線は下に凸の曲線状になり、コア顧客の重心座標に近いクラスタのLTVよりも遠いクラスタのLTVが大きくなるため、コア顧客よりも好適なコア顧客が存在する可能性があることがわかる
。さらに、上記のシミュレーションにより、医療セクターとMROセクターのようなクラスタリング対象となる業種の特殊性が一般より高いセクターにおいては、専門商材の購入数がLTVつまり顧客ロイヤルティの向上に貢献する可能性が高くなることが期待できる。
【0080】
したがって、本実施形態の情報処理装置1によれば、上記のアルゴリズムを用いて図示したフローチャートの処理を実行することで、電子商取引の業種ごとにコア顧客を特定し、コア顧客との関係および購買行動特徴に基づく顧客のクラスタリングを行うことができる。さらに、情報処理装置1によれば、各クラスタにおいて協調フィルタリングを行うことで、LTVおよび購入確率の向上が期待できる専門商材を推奨商品として顧客にリコメンドすることができる。この結果、情報処理装置1では、従来よりも精度の高い顧客の購買行動の分析を行いつつ、顧客ロイヤルティの向上をもたらすような商品のリコメンドを顧客に行うことができる。
【符号の説明】
【0081】
1 情報処理装置
11 制御部
2 顧客情報DB