社会人MBA-技術者編

October 20, 2007

Wekaを起動する(アソシエーション分析②)

今回は、supportconfidenceの概念についてである。
(投稿に間隔があいたにも関わらず、訪問してくださったヘビーユーザーの方に感謝!)

さて、supportとは支持度、confidenceは信頼度、確信度とされることが多い。

support値とは「データベース全体で、その組み合わせ(事象)が発生する割合」であり、confidence値とは、「相関の強さを示し、例えば、A⇒BにおいてはAが発生した場合のBが発生する確率」である。

例えば、下の図において:
A:おむつを購入する
B:ビールを購入する
として全体を100人とする。
それぞれ、Aでは50人、Bでは20人がこの行動をしている(購入している)ことがわかる。



ここで、support(A)とはAの行動を起こす支持度、いわゆるAの行動をする確率で、それをP(A)と表すと、全体が100人なので、P(A)=50/100=0.5となる。

同様に、P(B)=20/100=0.2 である。

さらに、Aの行動を起こし、かつ、Bの行動を同時に起こすのは(A⇒B)、図から10人いるので、これをP(A⇒B)とすれば、P(A⇒B)=10/100=0.1 となる。

このときのconfidence(A⇒B)は、p(B|A)と表し、p(B|A)=10/50=0.2 である。
(Aの行動を起こした中で、Bの行動を起こすのは?と考えるとと分りやすい)

これらの結果について、どのルールを中心に考えるのかは、店舗運営者が欲するデータである。

そこで、分析で導出したルールの精度についての指標については、Lift値という値がある。
この値は、信頼度を期待信頼度で割った値で、上の例では:
Lift値(A⇒B) = confidence(A⇒B) / confidence(⇒B)= 0.2/0.2=1.0
Lift値(B⇒A) = confidence(B⇒A) / confidence(⇒A)= 0.5/0.5=1.0
となる。この値は1.0以上であることが目安とされている(が、どの値がよいかというのは分析により様々である)。種々の導出されたルールを比較する際に役に立つ。

実際の分析では、supportとconfidenceを指定して分析を行うことが多い。例えば、support20%、confidende70%など・・・。この設定は分析対象により異なるので、何回もtryするしかない。とは言っても正解がないので、どこまでルールを導出するかは決まっていない。ビジネスに直結するルールなら「面白いルール」より「金になるルール」の方が望ましいことは言うまでもない。

さて、Wekaでは、店舗のレシートの分析は困難で、以前記載した例のようなデータのルール導出しかおこなえないが、apriori programでは、いわゆる「バスケット分析」が可能で、ルールの導出やプログラムの使用法が詳細に記載されている。Windowsではコマンドプロンプトを利用して使用することが出来る。
非常に参考になるので、ご参照ください。

(「Wekaを起動する(アソシエーション分析②)」了)
*ブログ中の図はクリックすれば、拡大されます。
*本ブログ記事の下「Labels」の「データマイニング」をクリックすると、データマイニングに関する記事が一括掲載されます。


*  *  *  *

このシリーズの最後に・・・

「データマイニング」シリーズも今回で最後になります。従来のコンセプトどおり、ほぼ無料です(書籍代+ネット料金)。ネットで検索すれば、善意の利用者が多くのサイトに使用法を掲載していますし、海外のサイトにおいても多くの記事やファイルを無料で手に入れることも出来ます。
データマイニングは「少しやってみよう」にもあまりにも高額ですが、わかってしまえば、ほとんど無料で「だいたいのこと」が出来てしまいます。PCが発達した現在では、企業実務において、ほとんどが分析可能になってくると思われますが(分析により時間がかかるものもあります)、膨大な顧客のデータ、膨大なアイテム数となれば、分析は同様に可能ですが、維持管理していくシステムは各企業の考え方によります。
高額なコストを支払える企業は、外部に任せてもいいのでしょうが、やはり、分析のシステムを知っていれば、価格交渉において有利に働くに違いありません。

そういったビジネス上の意味で、本ブログが「データマイニング」を知る上での入り口になれば幸いです。


<参考書籍>

Labels:


0 Comments:

Post a Comment

<< Home