【Rによるデータサイエンス】アソシエーション分析
アソシエーション分析とは。。。
トランザクションデータから頻出するアイテムの組み合わせの規則を漏れ無く抽出し、その中から興味深い結果を探し出すこと。
アソシエーション分析を行う際には、「トランザクションデータから頻出するアイテムの組み合わせの規則を抽出する」ステップと、「抽出した組み合わせの中から興味深い結果を探し出す」ステップの2つのステップを踏む。
最初に1つ目のステップ「トランザクションデータから頻出するアイテムの組み合わせの規則を抽出する」を考える。
◎アソシエーションルール
アソシエーションルールとは。。。
トランザクションデータベースに頻出するアイテム間の何らかの組み合わせの規則のこと。
例えば、「オムツ(A)を買うとビール(B)も買う」というルールを単純に「」と表す。
データがAとBだけではなく、Cも加わった場合、「」以外に、「」や「」というルールも考えられる。
このように、トランザクションデータが増えれば増えるほど、アソシエーションルールも無数に増えていく。そのため、有益なアソシエーションルールだけを抽出することが必要になってくる。
◎アソシエーションルールの抽出
有益なルールだけを抽出するためには、抽出のための基準が必要である。つまり、有益であることを定量的に判断するための指標が必要である。アソシエーションルールで使用する指標を定義する。
1.支持度(Support)
支持度とは、事象Aと事象Bが同時に観測される確率のこと。
と表す。
2.期待信頼度(Expected Confidenec)
期待信頼度とは、事象Bが観測される確率のこと。
と表す。
3.信頼度(Confidence)
信頼度とは、Aが観測された集合の中でBが観測される確率のこと。
と表す。
と表すこともできる。
4.リフト値(Lift)
リフト値とは、期待信頼度と信頼度の比のこと。
リフト値はと表すことができる。
◎ケーススタディ
上で定義した指標を用いてビールと紙オムツの購入事例にてケーススタディを行う。
まず、アソシエーションルールとして「紙オムツを買う→ビールを買う」を考える。
そして、このルールが有益かどうかを評価する。
1.支持度の計算
この場合の支持度は「紙オムツもビールも両方買う確率」なので、
となる。
2.期待信頼度
この場合の期待信頼度は、「ビールを買う確率」なので、
となる。
3.信頼度
この場合の信頼度は、「紙オムツを買う場合にビールも買う場合の確率」なので、
となる。
4.リフト値
リフト値は、信頼度と期待信頼度の比なので、
となる。
これらの結果を見ると、信頼度が高いので「紙オムツを買う→ビールを買う」というルールは有用なようだ。
また、リフト値は1より大きいので、信頼度の方が期待信頼度よりも大きい。つまり、単にビールを買う場合よりも、紙オムツを買うときにビールを買う確率の方が大きいことも、このルールが有用であることを裏付けている。
一方、「ビールを買う→紙オムツを買う」というルールとした場合、信頼度は0.29となる。
従って、紙オムツを買う場合にはビールも買うようなので、「紙オムツ売り場にビールを置くと買ってくれそう」といったマーケティング戦略が考えられる。のかな?