データエンジニアリング・演習
情報処理システム
データマイニング
~データからの自動知識獲得手法~
1.演習の目的 (1)
多種多様な
膨大な量のデータを解析
し,
企業の経営活動などに活用することが
望まれている.
大規模データベースを有効に活用する,
データマイニング技術
の研究が
脚光を浴びている
1.演習の目的 (2)
POSデータを用いて顧客の購買パターン
を分析する.
相関ルール抽出
を体験
(例1)コンビニエンスストアの商品配置 もし,「アイスクリーム」と「缶コーヒー」が 同時に買われる可能性が高い この2つの商品を近くに置くことで, 購買意欲を促進させられる2.データマイニングとは
大規模データベースを扱うことを前提と
し,必要かつ十分な情報を
高速に得ようとする
手法
膨大な量
の一般的ルールの中に埋もれて
今まで発見されなかったようなルールを
抽出
データマイニングは,高速性を必要とする
ため,統計手法ほど厳密に解析できない
3.データマイニング手法の分類
相関ルールの抽出 おにぎりとお茶が同時に売れるなどの商品間 の相関を発見する.代表的手法として, アプリオリアルゴリズムがある. クラスタリング 顧客データから近々自動車を購入しそうな客 のクラスタ(集合)を発見する. 分類ルール クレジットカードに新規入会を希望する顧客 に対して,過去のカード債務者データから, 優良顧客・危険顧客に分類して入会の判断を4.1 相関ルールの定義 (1)
定義1(相関ルール)
・
商品=
アイテム
・
レシート=
トランザクション
I を全アイテム集合(全商品),
X, Y を I の部分集合と定義.
各トランザクション(レシート)において,
X が成立する時に Y が高い確率で成立する
規則
を相関ルールという.
定義2
「X ならば,Y である」ことを X → Y と表す.ただし,X, Y⊆ I, X∩ Y = φ である. 例2 「鮭弁当を買う人が,温かいお茶を高い確率で 買うこと」は 「X ={鮭弁当} → Y = {温かいお茶}」4.1 相関ルールの定義 (2)
4.2 相関ルールの評価基準 (1)
数ある相関ルールの中で,実際には
有用なルールだけを抽出したい.
4.2 相関ルールの評価基準 (2)
支持度 (support)
確信度 (confidence)
相関ルールを評価するための指標
4.2 相関ルールの評価基準 (3)
定義3(支持度 (support))
全データベースに対して,X と Y を同時に含むトラ ンザクションがどのくらいの割合を占めるかを表す. ここで n(X) は,X を含むトランザクションの個数を 表す.支持度が高いほど一般性の高い
ルールであると考えられる
.
4.3 相関ルールの評価基準 (4)
例3
4.3 相関ルールの評価基準 (5)
定義4(確信度 (confidence))
X を含むトランザクションに対して,X と Y を同時に 含むトランザクションがどのくらいの割合を占める かを表す.確信度が高いほど信頼性の
注意: n(I) ではない!例4
表1でルール「{お茶}→{新聞}」,ルール「{新聞}→{お 茶}」の確信度を計算する.
となり,{お茶}を買った人の67%が{新聞}を, {新聞}を買った人
5.1 アプリオリアルゴリズム (1)
商品のPOSデータ(表2)から,
購買パターンを抽出
商品が買われた場合を1,買われなかっ
5.1 アプリオリアルゴリズム (2)
1. i = 1 とする.アイテム1つずつを候補アイテム集合 Ci (ルー ルとして抽出される候補)と呼び,全データベース D を検索し て各候補アイテム集合 Ci の出現回数をカウントし支持度を計 算する. 2. 各候補アイテム集合 Ci について,ユーザの定めた基準であ る最小支持度以上の支持度をもつものをラージアイテム集合 Li と呼ぶ. 3. ラージアイテム集合 Li 同士を組み合わせたものを新しく候補 アイテム集合 Ci+1 として出現回数をカウントし支持度を計算 する. 4. i := i+1 とする.候補アイテム集合 Ci が空集合になった場合, 各パスにおけるラージアイテム集合を出力し,アルゴリズムを5.1 アプリオリアルゴリズム (3)
アイテム 1:お茶 2:弁当 3:新聞 4:牛乳 5:コーヒー5.2 アルゴリズムの例
ラージアイテム集合 L2 が次の3つの場合,候補アイテム集合 C3 はそれぞれ次のようになる. • L2 = {{1,2}, {2,3}, {1,3}}の場合 候補アイテム集合 C3 = {1,2,3}が導かれる • L2 = {{1,2}, {2,5}, {1,5}}の場合 候補アイテム集合 C3 = {1,2,5}は導かれない • L2 = {{2,3}, {3,5}, {2,5}}の場合 候補アイテム集合 C3 = {2,3,5}は導かれない1つ前のラージアイテム集合に部分集合が
5.3 出力結果の処理 (1)
ルール L の抽出方法
定義5
ラージアイテム Li, i=1,2,3, から抽出される相関ルール
• L1 からはルールが作られない
• L2 ={a,b} からは [a→b], [b→a] の2つが抽出 • L3 ={a,b,c} からは [a→b,c], [b→a,c], [c→a,b],
5.3 出力結果の処理 (2)
ルール L の抽出方法
例5
下図の L2 の中のアイテム集合{1,2}からは相関ルール [{1}→{2}] と [{2}→{1}] が作成される.
5.3 出力結果の処理 (3)
ルール L の抽出方法
例6 最小確信度80%でルールを抽出すると となり,ルール[{1}→{2}]が抽出される. >最小確信度 <最小確信度6. 演習課題
以下のファイルを,授業用WEBページより適当 なディレクトリにダウンロードすること. apriori.cpp mushroom.txt zokusei.txt 授業用WEBページhttp://lab.mgmt.waseda.ac.jp/unix/
6.1 必須課題 (1)
1. 表3に示すデータベースからアプリオリを用い
て,最小支持度50%でラージアイテム集合を 計算(手計算になる)せよ.
6.1 必須課題 (2)
2. 1.で求めたラージアイテム集合から最小確信
度60%で相関ルールを抽出せよ.ただし,ラー ジアイテム集合から考えられる全てのパターン を相関ルールとする.
3. アプリオリアルゴリズムのプログラムを用いて, キノコの種別データを解析せよ. ここで,最小 支持度・最小確信度は各自が定めるものとす る. ・アイテムセットの中のアイテム数が多くなるように設定 ・最小支持度,最小確信度の意味を考えること 抽出された相関ルールについて,授業用WEB ページ上のリンクを参照にして,考察せよ. (例:食用キノコ・毒キノコにはそれぞれどのよう な属性があるかなどを考察する)