JP6278918B2 - データ解析装置、方法、及びプログラム - Google Patents

データ解析装置、方法、及びプログラム Download PDF

Info

Publication number
JP6278918B2
JP6278918B2 JP2015056581A JP2015056581A JP6278918B2 JP 6278918 B2 JP6278918 B2 JP 6278918B2 JP 2015056581 A JP2015056581 A JP 2015056581A JP 2015056581 A JP2015056581 A JP 2015056581A JP 6278918 B2 JP6278918 B2 JP 6278918B2
Authority
JP
Japan
Prior art keywords
attribute
matrix
user
feature matrix
feature
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.)
Expired - Fee Related
Application number
JP2015056581A
Other languages
English (en)
Other versions
JP2016177485A (ja
Inventor
匡宏 幸島
匡宏 幸島
達史 松林
達史 松林
澤田 宏
宏 澤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2015056581A priority Critical patent/JP6278918B2/ja
Publication of JP2016177485A publication Critical patent/JP2016177485A/ja
Application granted granted Critical
Publication of JP6278918B2 publication Critical patent/JP6278918B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、データ解析装置、方法、及びプログラムに関する。
POS(Point of Sales)データに代表される購買履歴などの構造化されたデータのみならず、テキストデータや画像データなどの構造化されていないデータの多くは前処理によって行列形式により表現できることが知られている。これら行列表現されたデータ中に存在するクラスタを発見するための手法として、非負値行列分解(Non-negative Matrix Factorization, NMF)と呼ばれる手法の有用性がこれまで示されている(例えば非特許文献1を参照)。
NMFの適用により入力となる行列データはそれより低次のランクの行列の積に分解される。この各低次行列がそれぞれ各行、各列に対応する事物のクラスタへの寄与度を表しており、クラスタ発見が可能となる。したがって例えば購買履歴データに対し適用することで抽出されたクラスタをもとにユーザへのおすすめ商品リストを作成したり、ニュース記事文書集合に対する適用結果から記事の自動分類が可能となる。
NMFの購買データへの適用例を図15に示す。購買データを表すユーザ商品行列X={xij}は行列中の第i行目に対応するユーザが第j列目に対応する商品の購入数がxijの値となるi行j列の行列である。
このユーザ商品行列にNMFを適用することで、
となるI行R列のユーザ特徴行列A={air}とJ行R列の商品特徴行列B={bjr}が求まる。
ただし、記号
は、両者が類似していること、記号の上付きの記号Tは行列の転置を表す。また、airの値がユーザiのクラスタrへの寄与度(所属度合い)、bjrの値が商品jのクラスタrへの寄与度を表す。
図15のユーザ特徴行列Aのクラスタ1に対応する列に着目すると、ユーザ1、ユーザ2、及びユーザ3に対応する1行目、2行目、及び3行目の値が0より大きい値となっていることが分かる。これはユーザ1、ユーザ2、及びユーザ3がクラスタ1に所属することを示している。また、商品特徴行列Bのクラスタ1に対応する行に着目すると、1列目のビール1、2列目のビール2、及び3列目のビール3という商品に該当する列の値が0より大きい値となっていることが分かる。これはビール1、ビール2、及びビール3という3つの単語が同じユーザに購入されやすいというクラスタ1のもつ特徴を表しているといえる。したがって、このビール1、ビール2、及びビール3という商品をまとめてクラスタ1の商品特徴と呼ぶ。同様に、クラスタ1に所属するユーザのことをクラスタ1のユーザ特徴と呼ぶ。クラスタ1の商品特徴とユーザ特徴をまとめてクラスタ1の特徴と呼ぶこととする。このようにNMFの適用によって得られたユーザ特徴行列Aと商品特徴行列Bをもとに図16のようなクラスタ抽出が可能となる。なお、クラスタの総数に相当する商品特徴行列のランク数は、解析する前に予め決定しておくものとする。
澤田宏, "非負値行列因子分解NMFの基礎とデータ/信号解析への応用", 電子情報通信学会誌, Vol. 95, No. 9, pp. 829-833, 2012. K. Takeuchi, K. Ishiguro, A. Kimura, and H. Sawada, Non-negative Multiple Matrix Factorization, Proceedings of 23rd International Joint Conference on Artificial Intelligence (IJCAI2013), pp. 1713-1720, 2013
しかしながら、上記の非特許文献1の技術が入力として利用する購買データは、“誰が”どの商品を購入したかを表す、ユーザIDに紐付けられた購買履歴のみを扱うことを想定しており、ユーザIDに紐付けられない購買履歴を合わせた解析を行うことは想定されてはいない。
近年のデータ解析においては、 ユーザIDに紐付くデータ及び紐付かないデータの両方が存在する状況が多数存在している。以下に2つの例を挙げる。
1つ目の例は、個人を特定できる形式でのデータ利用期間に制限が存在するという状況である。これは個人情報保護等の観点から、不必要に長い期間個人が特定できるデータが存在することを避けるための制限である。 図17にデータの例を示す。ここで挙げている例は、2013.4.1〜2013.9.30までのデータに関しては、利用期間が過ぎたことで個人を特定するユーザIDが除去され利用できず、ユーザIDに紐付かないデータとなっており、2013.10.1以降のデータに関しては、個人を特定するユーザIDを含めた全カラムが利用できる、ユーザIDに紐付くデータとなっている。したがって、例えば2013.4.1〜2013.9.30の期間に関しては、男性又は女性ユーザ全体での各商品の購入数といった属性毎の統計情報のみが利用できることになる。
2つ目の例は、企業間でデータを匿名化させたうえでデータ共有を行うという例である。図18にデータの例を示す。自社とデータホルダ1、及びデータホルダ2は各自がもつユーザIDが紐付くデータを共通データ基盤上にデータを格納している。自社は共通データ基盤から、データホルダ1、及びデータホルダ2のデータそのものを取りだすことはできないが、全社のデータを使って計算される、ユーザIDとは紐付かないデータ、例えば世代別の統計情報を利用することができる。従って自社の利用可能なデータは、自分自身が当初から持つユーザIDに紐付くデータと、共通データ基盤から取り出せるユーザIDとは紐付かない統計情報ということになる。
このようなユーザIDに紐付くデータ及び紐付かない購買データの両方が存在している場合であっても、非特許文献1の方法はユーザIDに紐付かない購買データを合わせた解析を行うことができないために、これを利用せず解析を行うことになる。
しかし、上記のアプローチは、ユーザIDに紐付くデータの割合がデータの総数に対して小さくなる時に問題がある。なぜなら、例えば両方のデータを用いた時にもっとも購買数の多い商品と、ユーザIDに紐付くデータのみを用いた時にもっとも購買数の多い商品が異なる等の状況があった場合に、データ全体の傾向をつかむことができなくなるためである。
本発明は、上記問題点を解決するために成されたものであり、個々を識別不能な個体群の特徴を含めて、全体の個体群の特徴を解析できるデータ解析装置、方法、及びプログラムを提供することを目的とする。
上記目的を達成するために、第1の発明に係るデータ解析装置は、個々を識別可能な第1の個体群に含まれる個体i(1≦i≦I,Iは1以上の整数)とオブジェクトj(1≦j≦J,Jは1以上の整数)との関連度を表した要素xijを持つI×Jの個体オブジェクト行列X、及び個々を識別不能な第2の個体群についての、個体の属性k(1≦k≦K,Kは1以上の整数)と前記オブジェクトjとの関連度を表した要素ykjを持つK×Jの属性オブジェクト行列Yを、前記個体iが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rの第1の特徴行列Aと、前記オブジェクトjが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの第2の特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの第3の特徴行列Cと、に分解するデータ解析装置であって、前記第1の個体群に含まれる前記個体iと前記属性kとの関連度を表した要素vikを持つI×Kの個体属性行列Vと、前記第2の個体群についての前記属性kを有する個体数を表す要素wを持つK次元の属性ベクトルWとに基づいて、前記第2の個体群についての前記属性kを有する個体の数と前記第1の個体群についての前記属性kを有する個体の数との比率を表す要素pkkを持つ属性比率行列Pを計算する属性比率情報計算部と、前記個体オブジェクト行列X、前記属性オブジェクト行列Y、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cに基づいて、前記第3の特徴行列Cが、前記属性比率行列Pと前記個体属性行列Vと前記第1の特徴行列Aとで表わされる線形制約の下で、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cを推定する特徴行列推定部と、予め定められた反復終了条件を満足するまで、前記特徴行列推定部による推定を繰り返す反復判定部と、を含んで構成されている。
また、第1の発明に係るデータ解析装置において、前記個体オブジェクト行列Xの要素xijは非負値であり、前記属性オブジェクト行列Yの要素ykjは非負値であり、前記第1の特徴行列Aの要素airは非負値であり、前記第2の特徴行列Bの要素bjrは非負値であり、前記第3の特徴行列Cの要素ckrは非負値であり、前記特徴行列推定部は、非負値分解により、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cを推定するようにしてもよい。
第2の発明に係るデータ解析装置は、個々を識別可能な第1のユーザ群に含まれるユーザi(1≦i≦I,Iは1以上の整数)による商品j(1≦j≦J,Jは1以上の整数)の購買数を表した要素xijを持つI×Jのユーザ商品行列X、及び個々を識別不能な第2のユーザ群についての、ユーザの属性k(1≦k≦K,Kは1以上の整数)を有するユーザによる前記商品jの購買数を表した要素Ykjを持つK×Jの属性商品行列Yを、前記ユーザiが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rのユーザ特徴行列Aと、前記商品jが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの商品特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの属性特徴行列Cと、に分解するデータ解析装置であって、前記第1のユーザ群に含まれる前記ユーザiと前記属性kとの関連度を表した要素vikを持つI×Kのユーザ属性行列Vと、前記第2のユーザ群についての前記属性kを有するユーザ数を表す要素wを持つK次元の属性人数ベクトルWとに基づいて、前記第2のユーザ群についての前記属性kを有するユーザ数と前記第1のユーザ群についての前記属性kを有するユーザ数との比率を表す要素pkkを持つ属性比率行列Pを計算する属性比率情報計算部と、前記ユーザ商品行列X、前記属性商品行列Y、前記ユーザ特徴行列A、前記商品特徴行列B、及び前記属性特徴行列Cに基づいて、前記属性特徴行列Cが、前記属性比率行列Pと前記ユーザ属性行列Vと前記ユーザ特徴行列Aとで表わされる線形制約の下で、前記ユーザ特徴行列A、前記商品特徴行列B、及び前記属性特徴行列Cを推定する特徴行列推定部と、予め定められた反復終了条件を満足するまで、前記特徴行列推定部による推定を繰り返す反復判定部と、を含んで構成されている。
第3の発明に係るデータ解析方法は、個々を識別可能な第1の個体群に含まれる個体i(1≦i≦I,Iは1以上の整数)とオブジェクトj(1≦j≦J,Jは1以上の整数)との関連度を表した要素xijを持つI×Jの個体オブジェクト行列X、及び個々を識別不能な第2の個体群についての、個体の属性k(1≦k≦K,Kは1以上の整数)と前記オブジェクトjとの関連度を表した要素Ykjを持つK×Jの属性オブジェクト行列Yを、前記個体iが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rの第1の特徴行列Aと、前記オブジェクトjが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの第2の特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの第3の特徴行列Cと、に分解するデータ解析装置におけるデータ解析方法であって、属性比率情報計算部が、前記第1の個体群に含まれる前記個体iと前記属性kとの関連度を表した要素vikを持つI×Kの個体属性行列Vと、前記第2の個体群についての前記属性kを有する個体数を表す要素wを持つK次元の属性ベクトルWとに基づいて、前記第2の個体群についての前記属性kを有する個体の数と前記第1の個体群についての前記属性kを有する個体の数との比率を表す要素pkkを持つ属性比率行列Pを計算するステップと、特徴行列推定部が、前記個体オブジェクト行列X、前記属性オブジェクト行列Y、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cに基づいて、前記第3の特徴行列Cが、前記属性比率行列Pと前記個体属性行列Vと前記第1の特徴行列Aとで表わされる線形制約の下で、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cを推定するステップと、反復判定部が、予め定められた反復終了条件を満足するまで、前記特徴行列推定部による推定を繰り返すステップと、を含んで実行することを特徴とする。
第4の発明に係るプログラムは、コンピュータを、上記に記載のデータ解析装置の各部として機能させるためのプログラムである。
第1の発明及び第3の発明によれば、個体属性行列Vと、属性ベクトルWとに基づいて、比率を表す要素pkkを持つ属性比率行列Pを計算し、個体オブジェクト行列X、属性オブジェクト行列Y、第1の特徴行列A、第2の特徴行列B、及び第3の特徴行列Cに基づいて、第3の特徴行列Cが、属性比率行列Pと個体属性行列Vと第1の特徴行列Aとで表わされる線形制約の下で、第1の特徴行列A、第2の特徴行列B、及び第3の特徴行列Cを推定することにより、個々を識別不能な個体群の特徴を含めて、全体の個体群の特徴を解析できる。
第2の発明によれば、ユーザ属性行列Vと、属性人数ベクトルWとに基づいて、比率を表す要素pkkを持つ属性比率行列Pを計算し、ユーザ商品行列X、属性商品行列Y、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cに基づいて、属性特徴行列Cが、属性比率行列Pとユーザ属性行列Vとユーザ特徴行列Aとで表わされる線形制約の下で、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cを推定することにより、個々を識別不能なユーザ群の特徴を含めて、全体のユーザ群の特徴を解析できる。
本発明のデータ解析装置、方法、及びプログラムによれば、個々を識別不能な個体群の特徴を含めて、全体の個体群の特徴を解析できる、という効果が得られる。
自社のデータと他社のデータとから利用できるデータ及びデータから得られる行列の一例を示す概念図である。 ユーザ商品行列Xを利用した解析の一例を示す概念図である。 ユーザ商品行列Xと属性商品行列Yに成り立つ関係性を考慮した行列分解の一例を示す概念図である。 ユーザ商品行列X及び属性商品行列Yと、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cとの関係性の一例を示す概念図である。 本発明の実施の形態に係るデータ解析装置の構成を示すブロック図である。 記憶部2に格納されたユーザ商品情報テーブルの一例を示す概念図である。 記憶部2に格納された属性商品情報テーブルの一例を示す概念図である。 記憶部2に格納されたユーザ属性情報テーブルの一例を示す概念図である。 記憶部2に格納された属性人数情報テーブルの一例を示す概念図である。 記憶部2に格納された属性比率情報テーブルの一例を示す概念図である。 記憶部2に格納されたユーザ特徴テーブルの一例を示す概念図である。 記憶部2に格納された商品特徴テーブルの一例を示す概念図である。 記憶部2に格納された属性特徴テーブルの一例を示す概念図である。 本発明の実施の形態に係るデータ解析装置における特徴行列推定処理ルーチンを示すフローチャートである。 ユーザ商品行列、ユーザ特徴行列、及び商品特徴行列の一例を示す概念図である。 クラスタ抽出の一例を示す概念図となる。 一定期間以降はユーザ毎の統計情報は利用できず、属性毎の統計情報が利用可能である一例を示す概念図である 企業間のデータ共有の一例を示す概念図である。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
<本発明の実施の形態に係る概要>
まず、本発明の実施の形態における概要を説明する。
本発明の実施の形態では、ユーザIDに紐付く購買履歴から作成されるI×Jのユーザ商品行列X、ユーザIDに紐付かない購買履歴を用いて作成されるK×Jの属性商品行列Y={ykj}、この属性商品行列Y中に存在する属性毎のユーザ数を表すK次元属性人数ベクトルW={w}、X中に存在するユーザとその属性の対応関係を表すI×Kのユーザ属性行列V={vik}、という3つの行列と1つのベクトルからクラスタ抽出を行う技術を用いる。ここで、ユーザ商品行列Xは、ユーザIDを付与された個々の識別可能な第1のユーザ群に含まれるユーザi(1≦i≦I,Iは1以上の整数)による商品j(1≦j≦J,Jは1以上の整数)との購買数を表した要素xijを持つI×Jの行列である。また、属性商品行列Yは、個々を識別不能な第2のユーザ群についての、ユーザの属性k(1≦k≦K,Kは1以上の整数)を有するユーザによる商品jとの購買数を表した要素ykjを持つK×Jの行列である。また、ユーザ属性行列Vは、第1のユーザ群に含まれるユーザiと属性kとの関連度を表した要素vikを持つI×Kの行列である。なお、属性商品行列Yは要素ykjが属性k(例えば男性30代全体)の商品jの総購入数を表す行列である。ユーザ属性行列Vの要素vikはユーザiが属性kに属する時1、そうでなければ0をとる行列である。また、vikの値は0または1に限られず、0又は正の整数値であればよい。ただし、負の数は用いない。
上記のデータの作成の例を図1に示す。前述したように、上記非特許文献1の方法ではユーザIDに紐付かない購買データを合わせた解析を行うことができないため、図2に示すようにユーザ商品行列Xだけを利用した解析を行うことになる。
これに対して本発明の実施の形態では上記の全ての利用可能なデータを用いて、図3に示すような、ユーザ商品行列Xと属性商品行列Yに成り立つ関係性を考慮した行列分解手法である。図3では、まずユーザ商品行列X中に存在する各属性毎のユーザ数と属性商品行列Y中の属性毎のユーザ数の比率行列を属性比率行列P={pkkk=1 で定義する。行列Pの値は図中に示すようにユーザ属性行列Vと属性人数ベクトルWの値を用いて計算され、対角成分以外の値は0の値となる行列である。また、ユーザ商品行列Xとユーザ属性行列Vから計算される男性、又は女性といった属性別の統計値を部分統計値、行列Yが示す属性別の統計値を全体統計値と呼ぶ。以後、説明する本実施の形態で考える行列分解モデルでは、部分統計値と全体統計値の間はその比例定数が属性比率行列Pとなる“おおよそ”の比例関係にあるとしたモデル化を行う。ここで述べた“おおよそ”の意味については後述する。
本発明の実施の形態では、ユーザ商品行列Xと属性商品行列Yの
という行列分解形を考える。CをK行R列の属性特徴行列C={ckr}と呼び、ckrの値が属性kのクラスタrへの寄与度を表す。本発明の実施の形態では、行列AとCの間にPVA=Cが成立するという線形制約を導入する。属性比率行列Pを用いて線形制約を定義している点に本発明の実施の形態における特徴がある。この線形制約の導入により、前述した部分統計と全体統計が“おおよそ”比例する、という仮定を考慮した出力として、特徴行列A、B、及びCが得られる。比例定数は属性比率行列Pの各要素の値に対応しているため、比例定数自体の推定はユーザ商品行列Xと属性商品行列Yの行列分解と独立に行えるという利点がある。図4に本発明の実施の形態の適用例を示す。ユーザ特徴行列Aがユーザとクラスタの関係、商品特徴行列Bが商品とクラスタの関係、属性特徴行列Cが属性とクラスタの関係を表していることから、これらを利用して例えば図4中のヒストグラムを表示させることができる。このヒストグラムから各クラスタに特徴的なユーザ、商品、及び属性を特定することができるようになる。
ここで、記号
で表現した類似の尺度と、前述した“おおよそ”の比例関係、の意味するものについて説明する。上記非特許文献1にも記述されているように、行列の類似の尺度には、ユークリッド距離に基づくものや一般化カルバックライブラーダイバージェンス(KL距離)により定義される距離尺度が用いられ、値が小さいほど両者が類似していることを表す。
どの距離を利用するかは、データが持つ性質を考慮して決定される。例えば、非特許文献2にも記述されているように、距離尺度にKL距離を用いる際には、ユーザ商品行列Xの各要素xijがパラメタΣirjrのポアソン分布に従って得られているとした確率モデルを考えていることに相当する。したがってポアソン分布の性質よりxijのとる値の期待値はΣirjrとなるが、実際のデータ中のxijの値は平均からずれた値をとることも想定されたモデル化をされている。これを踏まえて、“おおよそ”の比例関係という言葉をきちんと定義すると、本発明の実施の形態においては、各属性kに関して部分統計の期待値と全体統計の期待値に比例関係(比例定数pkk)を想定したモデリングを行っていることになる。したがって、この期待値のもとでの比例関係が保たれるように制限したうえで特徴行列A、B、及びCを算出することで、全体統計の値も考慮された解析が可能になる。
本発明の実施の形態の概要動作は、以下に示すとおりである。
ステップ1) ユーザ商品行列、属性商品行列、ユーザ属性行列、及び属性人数ベクトルを入力する
ステップ2) 属性比率行列を計算する
ステップ3) 各特徴行列を推定する
ステップ4) 各特徴行列を出力する
<本発明の実施の形態に係るデータ解析装置の構成>
次に、本発明の実施の形態に係るデータ解析装置の構成について説明する。図5に示すように、本発明の実施の形態に係るデータ解析装置100は、CPUと、RAMと、後述するデータ解析処理ルーチンを実行するためのプログラムや各種データを記憶したROMと、を含むコンピュータで構成することが出来る。このデータ解析装置100は、機能的には図5に示すように入力部1と、記憶部2と、演算部3と、出力部4とを備えている。
入力部2は、外部装置200から出力された、個々を識別可能な第1のユーザ群に含まれるユーザi(1≦i≦I,Iは1以上の整数)による商品j(1≦j≦J,Jは1以上の整数)の購買数を表した要素xijを持つI×Jのユーザ商品行列X、個々を識別不能な第2のユーザ群についての、ユーザの属性k(1≦k≦K,Kは1以上の整数)を有するユーザによる前記商品jの購買数を表した要素Ykjを持つK×Jの属性商品行列Y、及び個々を識別可能な第1のユーザ群に含まれるユーザiと属性kとの関連度を表した要素vikを持つI×Kのユーザ属性行列Vを受け付ける。
記憶部2には、入力部1によって受け付けたユーザ商品行列X、属性商品行列Y、及びユーザ属性行列Vに基づいて後述する各部で作成される、ユーザ商品情報テーブル81と、属性商品情報テーブル82と、ユーザ属性情報テーブル83と、属性人数情報テーブル84と、属性比率情報テーブル85と、ユーザ特徴テーブル86と、商品特徴テーブル87と、属性特徴テーブル88とが格納される。なお、テーブル形式のデータは行列形式にて表現できることから、以下の説明では、各テーブルと各特徴行列を同一視し、区別せずに用いる。
<ユーザ商品情報テーブル81>
ユーザ商品情報テーブル81は、図6に示すように、ユーザIDフィールド、商品IDフィールド、及び購買数フィールドを有する。ユーザIDフィールドは、ユーザ商品情報処理部30により追加されたユーザを特定する識別子が設定される。商品IDフィールドは、後述するユーザ商品情報処理部30により追加されたユーザの購入した商品を特定する識別子が設定される。購買数フィールドは、ユーザ商品情報処理部30により1、又は当該商品の当該ユーザの購入数が設定される。なお、購買数の値には0または正の整数値を設定できるが、負の数を設定することはできない。
<属性商品情報テーブル82>
属性商品情報テーブル82は、図7に示すように、属性IDフィールド、商品IDフィールド、及び購買数フィールドを有する。属性IDフィールドは、後述する属性商品情報処理部32により追加された属性を特定する識別子が設定される。商品IDフィールドは、属性商品情報処理部32により追加された商品を特定する識別子が設定される。購買数フィールドは、属性商品情報処理部32により1、または当該商品の当該属性の購入数が設定される。なお、購買数の値には0又は正の整数値を設定できるが、負の数を設定することはできない。
<ユーザ属性情報テーブル83>
ユーザ属性情報テーブル83は、図8に示すように、ユーザIDフィールド、属性IDフィールド、及び所属値フィールドを有する。ユーザIDフィールドは、後述するユーザ属性情報処理部34によりユーザを特定する識別子が設定される。属性IDフィールドは、ユーザ属性情報処理部34により属性を特定する識別子が設定される。所属値フィールドには、ユーザ属性情報処理部34によって当該ユーザが当該属性に所属する場合には1、そうでなければ0が設定される。
<属性人数情報テーブル84>
属性人数情報テーブル84は、図9に示すように、属性IDフィールド、及び人数値フィールドを有する。属性IDフィールドは、後述する属性人数情報処理部36により属性を特定する識別子が設定される。人数値フィールドには、属性人数情報処理部36によって当該属性に所属するユーザ数が設定される。
<属性比率情報テーブル85>
属性比率情報テーブル85は、図10に示すように、属性IDフィールド、及び比率値フィールドを有する。属性IDフィールドは、後述する属性比率情報計算部38により属性を特定する識別子が設定される。比率値フィールドには、属性比率情報計算部38によって算出された値が設定される。
<ユーザ特徴テーブル86>
ユーザ特徴テーブル86は、図11に示すように、ユーザIDフィールドと、クラスタIDフィールドと、ユーザ特徴値フィールドとを有する。ユーザIDフィールドには、後述する特徴行列推定部40によりユーザを特定する識別子が設定される。クラスタIDフィールドには、特徴行列推定部40によりクラスタを特定する識別子が設定される。ユーザ特徴値フィールドには、特徴行列推定部40により算出された当該ユーザの当該クラスタに対する特徴値が設定される。
<商品特徴テーブル87>
商品特徴テーブル87は、図12に示すように、商品IDフィールドと、クラスタIDフィールドと、商品特徴値フィールドとを有する。商品IDフィールドには、特徴行列推定部40により商品を特定する識別子が設定される。クラスタIDフィールドには、特徴行列推定部40によりクラスタを特定する識別子が設定される。商品特徴値フィールドには、特徴行列推定部40により算出された当該商品の当該クラスタに対する特徴値が設定される。
<属性特徴テーブル88>
属性特徴テーブル88は、図13に示すように、属性IDフィールドと、クラスタIDフィールドと、属性特徴値フィールドとを有する。属性IDフィールドには、特徴行列推定部40により属性を特定する識別子が設定される。クラスタIDフィールドには、特徴行列推定部40によりクラスタを特定する識別子が設定される。属性特徴値フィールドには、特徴行列推定部40により算出された当該属性の当該クラスタに対する特徴値が設定される。
演算部3は、ユーザ商品情報処理部30と、属性商品情報処理部32と、ユーザ属性情報処理部34と、属性人数情報処理部36と、属性比率情報計算部38と、特徴行列推定部40と、反復判定部42と、特徴行列処理部44とを含んで構成されている。
<ユーザ商品情報処理部30>
ユーザ商品情報処理部30は、入力部1によって受け付けたユーザ商品行列Xに基づいて、ユーザID毎及び商品ID毎の購買数を、記憶部2のユーザ商品情報テーブル81に格納する。また、ユーザ商品情報テーブル81を更新するときにユーザ商品情報処理部30は、記憶部2に格納されたユーザ商品情報テーブル81に、追加されたユーザ、商品、購入数に応じて、ユーザIDフィールド、商品IDフィールド、及び購入数フィールドの値を設定した行を挿入する。なお、ユーザ商品情報処理部30による更新のタイミングは、例えば、システム管理者が外部装置200から供給されるデータをもとに手動で管理できるようにしてもよいし、新たな購買が発生した場合に外部装置200が自動的に処理を起動するようにしてもよい。
<属性商品情報処理部32>
属性商品情報処理部32は、入力部1によって受け付けた属性商品行列Yに基づいて、属性ID毎及び商品ID毎の購買数を、記憶部2の属性商品情報テーブル82に格納する。また、属性商品情報テーブル82を更新するときに、属性商品情報処理部32は、記憶部2に格納された属性商品情報テーブル82に、追加された属性、商品、購入数に応じて、属性IDフィールド、商品IDフィールド、購買数フィールドの値を設定した行を挿入する。なお、属性商品情報処理部32による属性商品情報更新のタイミングは、例えば、外部装置200から供給されるPOSデータをもとにシステム管理者が手動で管理できるようにしてもよいし、新たな購買が発生した場合に外部装置200から自動的に処理を起動するようにしてもよい。
<ユーザ属性情報処理部34>
ユーザ属性情報処理部34は、入力部1によって受け付けたユーザ属性行列Vに基づいて、ユーザID毎及び属性ID毎の所属値を、記憶部2のユーザ属性情報テーブル83に格納する。
<属性人数情報処理部36>
属性人数情報処理部36は、個々を識別不能な第2のユーザ群についての属性kを有するユーザ数を表す要素wを持つK次元の属性人数ベクトルWに基づいて、属性ID毎の人数値を、記憶部2の属性人数情報テーブル84に格納する。また、属性人数情報テーブル84を更新するときに、属性人数情報処理部36は、記憶部2に格納された属性人数情報テーブル84に、追加された属性とその人数に応じて、属性IDフィールド、及び人数値フィールドの値を設定した行を挿入する。なお、属性人数情報処理部36によるユーザ属性情報更新のタイミングは、例えば外部装置200から供給されるPOSデータをもとにシステム管理者が手動で管理できるようにしてもよいし、新たな商品が出現した場合に外部装置200から自動的に処理を起動するようにしてもよい。
<属性比率情報計算部38>
属性比率情報計算部38は、ユーザ属性行列Vと、属性人数ベクトルWとに基づいて、第2のユーザ群についての属性kを有するユーザ数と第1のユーザ群についての属性kを有するユーザ数との比率を表す要素pkkを持つ属性比率行列Pを計算する。
ここで、記憶部2に格納されたユーザ属性情報テーブル83に存在する全データから、I×Kのユーザ属性行列V={{vik}}i,k=1 I,K、が得られる。また、記憶部2に格納された属性人数情報テーブル84に存在する全データから、属性人数ベクトルW={wk=1 、が得られる。
属性比率情報計算部38は、具体的には、属性比率行列をP={pkkk=1 とし、要素pkkを以下(1)式で計算し、属性ID毎の比率値を、記憶部2の属性比率情報テーブル85に格納する。
例えば、属性比率情報計算部38は、上記(1)式に従って、属性比率行列Pの各要素を計算し、属性比率行列Pの属性とその要素の値に応じて、記憶部2に格納された属性比率情報テーブル85に、属性IDフィールド、及び比率値フィールドの値を設定した行を挿入する。なお、属性比率情報計算部38によるユーザ属性情報更新のタイミングは、例えば外部装置200から供給されるPOSデータをもとにシステム管理者が手動で管理できるようにしてもよいし、新たな商品が出現した場合に外部装置200から自動的に処理を起動するようにしてもよい。
<特徴行列推定部40、反復判定部42>
特徴行列推定部40は、以下に説明するように、ユーザ商品行列X、属性商品行列Y、ユーザ属性行列V、属性比率行列P、ユーザ特徴テーブル86に格納されたユーザ特徴行列A、商品特徴テーブル87に格納された商品特徴行列B、及び属性特徴テーブル88に格納された属性特徴行列Cに基づいて、属性特徴行列Cが、属性比率行列Pとユーザ属性行列Vとユーザ特徴行列Aとで表される、PVA=Cの線形制約の下で、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cを推定する。なお、特徴行列推定部40の処理は、例えば、外部装置200から特徴出力のリクエストが入力されたときや、予め定めた定期処理などにより、任意のタイミングで実行すればよい。
ここで、記憶部2に格納されたユーザ商品情報テーブル81に存在する全データからI×Jのユーザ商品行列X={xiji,j=1 I,Jが得られる。また、記憶部2に格納された属性商品情報テーブル82に存在する全データからK×Jの属性商品行列Y={ykjk,j=1 K,Jが得られる。また、記憶部2に格納されたユーザ属性情報テーブル83に存在する全データからI×Kのユーザ属性行列V={viki,k=1 I,Kが得られる。また、記憶部2に格納された属性比率情報テーブル85に存在する全データからK×Kの属性比率行列P={pkkk=1 が得られる。そして、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列CをそれぞれA={airi=1,r=1 I,R,B={bjrj=1,r=1 J,R,C={ckrk=1,r=1 K,Rとする。ユーザ特徴行列Aがユーザとクラスタの関係、商品特徴行列Bが商品とクラスタの関係、属性特徴行列Cが属性とクラスタの関係を表す。また、Iは全ユーザ数、Jは全商品数、Kは全属性数を表す。また、iがユーザを特定する識別子、jが商品を特定する識別子、kが属性を特定する識別子、rがクラスタを特定する識別子に対応する。
特徴行列推定部40は、具体的には以下の第1〜第3の処理を行う。
まず、特徴行列推定部40は、第1の処理として、ユーザ商品行列X、属性商品行列Y、ユーザ属性行列V、属性比率行列P、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cに基づいて、以下(2)式に従って、ユーザ特徴行列Aの要素airを更新する。
ただし、
とする。ここで^xijはユーザ特徴行列A、及び商品特徴行列Bによるxijの推定値であり、^ykjは属性特徴行列C、及び商品特徴行列Bによるykjの推定値であると見なせる。
そして、特徴行列推定部40は、上記(2)式で更新したユーザ特徴行列Aの要素airの値を、ユーザ特徴テーブル86に格納する。
次に、特徴行列推定部40は、第2の処理として、ユーザ商品行列X、属性商品行列Y、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cに基づいて、以下(3)式に従って、商品特徴行列Bの各々の要素bjrを更新する。
そして、特徴行列推定部40は、上記(3)式で更新した商品特徴行列Bの要素bjrの値を、商品特徴テーブル87に格納する。
次に、特徴行列推定部40は、第3の処理として、ユーザ属性行列V、属性比率行列P、及びユーザ特徴行列Aに基づいて、以下(4)式に従って、属性特徴行列Cの各々の要素ckrを更新する。
そして、特徴行列推定部40は、上記(4)式で更新した属性特徴行列Cの要素ckrの値を、属性特徴テーブル88に格納する。
反復判定部42は、反復終了条件を満足するまで、特徴行列推定部40による推定を繰り返す。具体的には、更新前の各要素の値と、更新後の各要素の値との差の絶対値の最大値が、値更新の最大変化幅を示す変数δより大きければ、δに当該最大値を代入する。なお、一連の各行列の更新処理毎に、値更新の最大変化幅を示す変数δは初期化される。また、繰り返し条件の閾値ε、最大繰り返し回数Nが予め設定される。
より詳細には、反復判定部42は、ユーザ特徴テーブル86に格納されていた更新前のユーザ特徴行列Aの要素の値air oldと、上記式(2)に従って特徴行列推定部40によって更新された更新後のユーザ特徴行列Aの要素の値air newの差の絶対値の最大値maxir|air old−air new|がδより大きければ、δ←|air old−air new|と更新する。なお、記号「←」は右辺の計算結果を左辺の変数に代入する処理を意味する。また、代入処理前のユーザ特徴行列Aの要素の値をair old、代入処理後の値をair newとして記述した。
そして、反復判定部42は、商品特徴テーブル87に格納されていた更新前の商品特徴行列Bの要素の値と更新後の商品特徴行列Bの当該要素の値の差の絶対値の最大値maxjr|bjr old−bjr new|がδより大きければ、δ←maxjr|bjr old−bjr new|と更新する。なお、代入処理前の商品特徴行列Bの要素の値をbjr old、代入処理後の値をbjr newとして記述した。
そして、反復判定部42は、属性特徴テーブル88に格納されていた更新前の属性特徴行列Cの要素の値と更新後の属性特徴行列Cの要素の値の差の絶対値の最大値maxkr|ckr old−ckr new|がδより大きければ、δ←maxkr|ckr old−ckr new|と更新する。代入処理前の属性特徴行列Cの要素の値をckr old、代入処理後の値をckr newとして記述した。
反復判定部42は、繰り返し回数nが、予め定めた最大繰り返し数Nを超えるか、特徴行列推定部40による更新による最大変化幅を表すδが予め定めた閾値εより小さければ特徴行列推定部40による更新処理を終了する。
上記(2)〜(4)式の各更新式は、全てのユーザi、商品j、及び属性kについて^xij=xij、^ykj=ykjが成立する時、左辺と右辺が一致し、更新の最大変化幅を示す変数δの値が閾値ε以下となるため、更新が停止することが分かる。また、あるユーザiについて、全てのj、kについて^xij<xij、^ykj<ykjである時に上記(2)式の更新を行うと、右辺の分子が右辺の分母より大きくなるために、airを現在の値よりも大きくなるように更新することとなり、^xijと^ykjの値が大きくなるように特徴となる要素airを更新することになる。
図14に、特徴行列推定部40、及び反復判定部42における特徴行列推定処理のフローチャートを示す。
まず、ステップS100で、ユーザ特徴テーブル86に格納されているユーザ特徴行列A、商品特徴テーブル87に格納されている商品特徴行列B、及び属性特徴テーブル88に格納されている属性特徴行列Cをそれぞれ初期化する。同様に終了条件の閾値ε、及び最大繰り返し回数を設定する。
次に、ステップS102で、終了条件の判定に用いる、更新の最大変化幅を示す変数δを初期化する。
ステップS104では、ユーザ商品情報テーブル81に格納されているユーザ商品行列X、属性商品情報テーブル82に格納されている属性商品行列Y、ユーザ属性情報テーブル83に格納されているユーザ属性行列V、属性比率情報テーブル85に格納されている属性比率行列P、ユーザ特徴テーブル86に格納されているユーザ特徴行列A、商品特徴テーブル87に格納されている商品特徴行列B、及び属性特徴テーブル88に格納されている属性特徴行列Cに基づいて、上記(2)式に従って、ユーザ特徴行列Aを更新し、ユーザ特徴テーブル86に格納する。そして、ユーザ特徴テーブル86に格納されていた更新前のユーザ特徴行列Aの要素の値air oldと、上記式(2)に従って特徴行列推定部40によって更新された更新後のユーザ特徴行列Aの要素の値air newの差の絶対値の最大値maxir|air old−air new|がδより大きければ、δ←|air old−air new|と更新する。
ステップS106では、ユーザ商品行列X、属性商品行列Y、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cに基づいて、上記(3)式に従って、商品特徴行列Bを更新し、商品特徴テーブル87に格納する。そして、商品特徴テーブル87に格納されていた更新前の商品特徴行列Bの要素の値と更新後の商品特徴行列Bの当該要素の値の差の絶対値の最大値maxjr|bjr old−bjr new|がδより大きければ、δ←maxjr|bjr old−bjr new|と更新する。
ステップS108では、ユーザ属性行列V、属性比率行列P、及びユーザ特徴行列Aに基づいて、上記(4)式に従って、属性特徴行列Cを更新し、属性特徴テーブル88に格納する。そして、属性特徴テーブル88に格納されていた更新前の属性特徴行列Cの要素の値と更新後の属性特徴行列Cの要素の値の差の絶対値の最大値maxkr|ckr old−ckr new|がδより大きければ、δ←maxkr|ckr old−ckr new|と更新する。
ステップS110では、計算繰り返し回数を更新する。
ステップS112では、計算繰り返し回数がステップS100で定めた最大繰り返し回数を超えるか、更新による最大変化幅を表す変数δがステップS100で定めた閾値εより小さければ処理を終了する。
<特徴行列処理部44>
特徴行列処理部44は、特徴行列推定部40の更新処理が終了した場合に、記憶部2に格納された更新済みの各テーブルの値を出力する。例えば、外部装置200から特徴出力のリクエストが入力された場合に実行すればよい。出力は全特徴を出力する場合には、ユーザ特徴テーブル86、商品特徴テーブル87、及び属性特徴テーブル88の全ての行を出力すればよい。また、クラスタの商品特徴のみを利用する場合には、例えばリクエストの引数をクラスタIDとして、商品特徴テーブル87から、当該クラスタIDを持つ行の商品IDフィールド、商品特徴値フィールドを出力した後、商品特徴値フィールドの値の大きい順に商品ID10件を表示することで当該クラスタを特徴づける商品を求めることができる。
出力部4は、特徴行列処理部44によって出力された各特徴を、外部装置200へ出力する。
以上説明したように、本発明の実施の形態に係るデータ解析装置によれば、ユーザ属性行列Vと、属性人数ベクトルWとに基づいて、比率を表す要素pkkを持つ属性比率行列Pを計算し、ユーザ商品行列X、属性商品行列Y、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cに基づいて、属性特徴行列Cが、属性比率行列Pとユーザ属性行列Vとユーザ特徴行列Aとで表わされる線形制約の下で、ユーザ特徴行列A、商品特徴行列B、及び属性特徴行列Cを推定することにより、個々を識別不能なユーザ群の特徴を含めて、全体のユーザ群の特徴を解析できる、という効果が得られる。
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
例えば、上述した実施の形態では、ユーザ商品行列と属性商品行列からクラスタを抽出する例を示しているが、この例に限定されるものではない。
例えば、個々を識別可能な第1の個体群を第1のユーザ群以外のものとし、個々を識別不能な第2の個体群を第2のユーザ群以外のものとし、オブジェクトを商品以外のものとし、個々を識別可能な第1の個体群に含まれる個体i(1≦i≦I,Iは1以上の整数)とオブジェクトj(1≦j≦J,Jは1以上の整数)との関連度を表した要素xijを持つI×Jの個体オブジェクト行列X、及び個々を識別不能な第2の個体群についての、個体の属性k(1≦k≦K,Kは1以上の整数)と前記オブジェクトjとの関連度を表した要素ykjを持つK×Jの属性オブジェクト行列Yを、前記個体iが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rの第1の特徴行列Aと、前記オブジェクトjが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの第2の特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの第3の特徴行列Cと、に分解するようにしてもよい。
例えば、ユーザとユーザの訪問地の訪問数を表現する行列、訪問地における属性毎の訪問数を表現する行列の組など、訪問地、ユーザ、カテゴリのように1つ1つにID番号を付与して識別可能であり行列形式としてデータを表現することが可能な事物であり、ユーザと当該ユーザが所属する属性のように対応関係性が存在するものならば、あらゆるものがデータ解析装置によってクラスタ抽出が可能である。
また、出現数や購入回数のように整数である必要もなく、一般に0以上の実数であればよい。入力となる行列が3つ以上存在する場合にも、本発明の実施の形態に係る方法は適用可能である。
また、上述した実施の形態の図5に示すデータ解析装置の各構成要素の動作をプログラムとして構築し、データ解析装置として利用されるコンピュータにインストールして実行させる、又は、ネットワークを介して流通させることが可能である。
1 入力部
2 記憶部
3 演算部
4 出力部
30 ユーザ商品情報処理部
32 属性商品情報処理部
34 ユーザ属性情報処理部
36 属性人数情報処理部
38 属性比率情報計算部
40 特徴行列推定部
42 反復判定部
44 特徴行列処理部
81 ユーザ商品情報テーブル
82 属性商品情報テーブル
83 ユーザ属性情報テーブル
84 属性人数情報テーブル
85 属性比率情報テーブル
86 ユーザ特徴テーブル
87 商品特徴テーブル
88 属性特徴テーブル
100 データ解析装置
200 外部装置

Claims (5)

  1. 個々を識別可能な第1の個体群に含まれる個体i(1≦i≦I,Iは1以上の整数)とオブジェクトj(1≦j≦J,Jは1以上の整数)との関連度を表した要素xijを持つI×Jの個体オブジェクト行列X、及び個々を識別不能な第2の個体群についての、個体の属性k(1≦k≦K,Kは1以上の整数)と前記オブジェクトjとの関連度を表した要素ykjを持つK×Jの属性オブジェクト行列Yを、
    前記個体iが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rの第1の特徴行列Aと、前記オブジェクトjが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの第2の特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの第3の特徴行列Cと、に分解するデータ解析装置であって、
    前記第1の個体群に含まれる前記個体iと前記属性kとの関連度を表した要素vikを持つI×Kの個体属性行列Vと、前記第2の個体群についての前記属性kを有する個体数を表す要素wを持つK次元の属性ベクトルWとに基づいて、前記第2の個体群についての前記属性kを有する個体の数と前記第1の個体群についての前記属性kを有する個体の数との比率を表す要素pkkを持つ属性比率行列Pを計算する属性比率情報計算部と、
    前記個体オブジェクト行列X、前記属性オブジェクト行列Y、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cに基づいて、前記第3の特徴行列Cが、前記属性比率行列Pと前記個体属性行列Vと前記第1の特徴行列Aとで表わされる線形制約の下で、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cを推定する特徴行列推定部と、
    予め定められた反復終了条件を満足するまで、前記特徴行列推定部による推定を繰り返す反復判定部と、
    を含むデータ解析装置。
  2. 前記個体オブジェクト行列Xの要素xijは非負値であり、前記属性オブジェクト行列Yの要素ykjは非負値であり、前記第1の特徴行列Aの要素airは非負値であり、前記第2の特徴行列Bの要素bjrは非負値であり、前記第3の特徴行列Cの要素ckrは非負値であり、
    前記特徴行列推定部は、非負値分解により、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cを推定する請求項1記載のデータ解析装置。
  3. 個々を識別可能な第1のユーザ群に含まれるユーザi(1≦i≦I,Iは1以上の整数)による商品j(1≦j≦J,Jは1以上の整数)の購買数を表した要素xijを持つI×Jのユーザ商品行列X、及び個々を識別不能な第2のユーザ群についての、ユーザの属性k(1≦k≦K,Kは1以上の整数)を有するユーザによる前記商品jの購買数を表した要素Ykjを持つK×Jの属性商品行列Yを、
    前記ユーザiが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rのユーザ特徴行列Aと、前記商品jが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの商品特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの属性特徴行列Cと、に分解するデータ解析装置であって、
    前記第1のユーザ群に含まれる前記ユーザiと前記属性kとの関連度を表した要素vikを持つI×Kのユーザ属性行列Vと、前記第2のユーザ群についての前記属性kを有するユーザ数を表す要素wを持つK次元の属性人数ベクトルWとに基づいて、前記第2のユーザ群についての前記属性kを有するユーザ数と前記第1のユーザ群についての前記属性kを有するユーザ数との比率を表す要素pkkを持つ属性比率行列Pを計算する属性比率情報計算部と、
    前記ユーザ商品行列X、前記属性商品行列Y、前記ユーザ特徴行列A、前記商品特徴行列B、及び前記属性特徴行列Cに基づいて、前記属性特徴行列Cが、前記属性比率行列Pと前記ユーザ属性行列Vと前記ユーザ特徴行列Aとで表わされる線形制約の下で、前記ユーザ特徴行列A、前記商品特徴行列B、及び前記属性特徴行列Cを推定する特徴行列推定部と、
    予め定められた反復終了条件を満足するまで、前記特徴行列推定部による推定を繰り返す反復判定部と、
    を含むデータ解析装置。
  4. 個々を識別可能な第1の個体群に含まれる個体i(1≦i≦I,Iは1以上の整数)とオブジェクトj(1≦j≦J,Jは1以上の整数)との関連度を表した要素xijを持つI×Jの個体オブジェクト行列X、及び個々を識別不能な第2の個体群についての、個体の属性k(1≦k≦K,Kは1以上の整数)と前記オブジェクトjとの関連度を表した要素Ykjを持つK×Jの属性オブジェクト行列Yを、
    前記個体iが、クラスタr(1≦r≦R,Rは1以上の整数)に所属することを表す非負値の要素airを持つI×Rの第1の特徴行列Aと、前記オブジェクトjが、前記クラスタrに所属することを表す非負値の要素bjrを持つJ×Rの第2の特徴行列Bと、前記属性kが、前記クラスタrに所属することを表す非負値の要素ckrを持つK×Rの第3の特徴行列Cと、に分解するデータ解析装置におけるデータ解析方法であって、
    属性比率情報計算部が、前記第1の個体群に含まれる前記個体iと前記属性kとの関連度を表した要素vikを持つI×Kの個体属性行列Vと、前記第2の個体群についての前記属性kを有する個体数を表す要素wを持つK次元の属性ベクトルWとに基づいて、前記第2の個体群についての前記属性kを有する個体の数と前記第1の個体群についての前記属性kを有する個体の数との比率を表す要素pkkを持つ属性比率行列Pを計算するステップと、
    特徴行列推定部が、前記個体オブジェクト行列X、前記属性オブジェクト行列Y、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cに基づいて、前記第3の特徴行列Cが、前記属性比率行列Pと前記個体属性行列Vと前記第1の特徴行列Aとで表わされる線形制約の下で、前記第1の特徴行列A、前記第2の特徴行列B、及び前記第3の特徴行列Cを推定するステップと、
    反復判定部が、予め定められた反復終了条件を満足するまで、前記特徴行列推定部による推定を繰り返すステップと、
    を含むデータ解析方法。
  5. コンピュータを、請求項1〜請求項3のいずれか1項に記載のデータ解析装置の各部として機能させるためのプログラム。
JP2015056581A 2015-03-19 2015-03-19 データ解析装置、方法、及びプログラム Expired - Fee Related JP6278918B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015056581A JP6278918B2 (ja) 2015-03-19 2015-03-19 データ解析装置、方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015056581A JP6278918B2 (ja) 2015-03-19 2015-03-19 データ解析装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2016177485A JP2016177485A (ja) 2016-10-06
JP6278918B2 true JP6278918B2 (ja) 2018-02-14

Family

ID=57069171

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015056581A Expired - Fee Related JP6278918B2 (ja) 2015-03-19 2015-03-19 データ解析装置、方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6278918B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6499372B1 (ja) * 2017-07-31 2019-04-10 楽天株式会社 処理システム、処理装置、処理方法、プログラム、ならびに、情報記録媒体
US11755624B2 (en) * 2017-07-31 2023-09-12 Rakuten Group, Inc. Processing system, processing device, processing method, program, and information storage medium
JP6829370B2 (ja) * 2018-09-19 2021-02-10 株式会社エー・アンド・ビー・コンピュータ 情報処理装置、情報処理方法、およびコンピュータプログラム
JP7767249B2 (ja) * 2022-09-13 2025-11-11 株式会社東芝 情報処理装置、情報処理方法およびプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008102331A2 (en) * 2007-02-21 2008-08-28 Nds Limited Method for content presentation
JP2013029872A (ja) * 2009-10-19 2013-02-07 Nec Corp 情報推薦システム、方法、及び、プログラム

Also Published As

Publication number Publication date
JP2016177485A (ja) 2016-10-06

Similar Documents

Publication Publication Date Title
Beck Estimating grouped data models with a binary-dependent variable and fixed effects via a logit versus a linear probability model: The impact of dropped units
Eppstein et al. The h-index of a graph and its application to dynamic subgraph statistics
EP3401828B1 (en) Information processing device, information processing system, information processing method and program
US8458182B2 (en) Method and system for clustering data arising from a database
CN108665293B (zh) 特征重要性获取方法及装置
JP6278918B2 (ja) データ解析装置、方法、及びプログラム
KR20190084866A (ko) 시간 인자와 결합한 협업 필터링 방법, 장치, 서버 및 저장 매체
CN110390014B (zh) 一种主题挖掘方法、装置及存储介质
Eyal et al. Predicting and identifying missing node information in social networks
Fairbanks et al. Behavioral clusters in dynamic graphs
Liu et al. Detecting multiple stochastic network motifs in network data
JP6175037B2 (ja) クラスタ抽出装置及び方法及びプログラム
WO2019159845A1 (ja) 動的分布推定装置、方法、及びプログラム
JP6383688B2 (ja) データ解析装置、方法、及びプログラム
JP6243314B2 (ja) 分析装置、分析方法、及び分析プログラム
JP7014069B2 (ja) データ解析装置、方法、及びプログラム
Haque et al. Distributed adaptive importance sampling on graphical models using mapreduce
Elaziz et al. Discrete generalized inverted exponential distribution: Case study color image segmentation
Lee et al. Modelling bivariate count series with excess zeros
Huang et al. Spatial autoregression with repeated measurements for social networks
Maity et al. A comparative numerical study of the spectral theory approach of Nishimura and the roots method based on the analysis of BDMMAP/G/1 queue
JP6166688B2 (ja) データ解析方法、装置、及びプログラム
Hajian et al. On measurement of influence in social networks
JP6092072B2 (ja) データ解析装置、方法、及びプログラム
Huang et al. Learning bi-clustered vector autoregressive models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170217

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171222

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180116

R150 Certificate of patent or registration of utility model

Ref document number: 6278918

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees