Mining Frequent Patterns, Association and Correlatons
Frequent Pattern Mining
๋ฐ์ดํฐ ์์์ ์์ฃผ ๋ฑ์ฅํ๋ ํจํด์ ๋ถ์ํ๋ ๊ธฐ์
Frequent Pattern?
: ๋ฐ์ดํฐ์
๋ด์์ ์์ฃผ ๋ฑ์ฅํ๋ ํจํด
์๋ฅผ ๋ค๋ฉด, ์์ฃผ ํจ๊ป ๊ตฌ๋งค๋๋ ์ํ๋ค
Motivation?
๋ฐ์ดํฐ ์์ ๋ด์ฌ๋ ํจํด๋ค ์ฐพ๊ธฐ ์ํจ
- ์ด๋ค ์ํ๋ค์ด ํจ๊ป ๊ตฌ๋งค๊ฐ ๋๋๊ฐ? (์ด๊ฒ ์์ผ๋ก ์ฃผ๋ก ๋ค๋ค์ง ์์)
- Beers and Diapers
- ๊ธฐ์ ๊ท์ ๋งฅ์ฃผ๋ ํจ๊ป ๊ตฌ๋งค๊ฐ ๋๋ ๊ฒฝํฅ์ด ์๋ค
- ์ด ์ ๋ณด๋ฅผ ์๋ฉด ๊ธฐ์ ๊ท์ ๋งฅ์ฃผ๋ฅผ ํจ๊ป ๋น์นํ๋ฉด ํ๋งค์จ์ด ์ฌ๋ผ๊ฐ ๊ฒ
- ํน์ ์ํ์ ๊ตฌ๋งคํ ๋ค์ ์์ฐจ์ ์ผ๋ก ์ด๋ค ๊ฒ์ ๊ตฌ๋งคํ๋ ๊ฒฝํฅ์ด ์๋๊ฐ?
- ๋์งํธ ์นด๋ฉ๋ผ๋ฅผ ๊ตฌ๋งคํ ํ์ ์ผ๋ง์๋ค๊ฐ SD์นด๋(๋ฉ๋ชจ๋ฆฌ)๋ฅผ ๊ตฌ๋งคํ๋ ๊ฒฝํฅ์ด ์๋ค
- ์ด๋ค DNA๊ฐ ์ ์ฝ์ ๋ฏผ๊ฐํ ๋ฐ์์ ๋ณด์ด๋๊ฐ?
- ์ ์ฝ์ ๋ํด์ ํน์ ์ฆ์์ ๋ณด์ธ ์ง๋จ์์ ๊ณตํต์ ์ผ๋ก ํน์ DNA๋ฅผ ๊ฐ์ง๊ณ ์๋ค๋ฉด, ํด๋น DNA๊ฐ ์ฝ์ ๋ฏผ๊ฐํ ๊ฒ์ผ๋ก ์๊ฐํ ์ ์๋ค
- ์๋ฌดํผ ์ด๋ฐ ์ ๋ณด๋ค์ ์ป๊ธฐ ์ํด์ Frequent Pattern Minining์ ํ๋ ๊ฒ์ด๋ค
Basic Concepts
Frequent Pattern Mining์ ํ๊ธฐ ์ํด์ ๊ธฐ๋ณธ์ ์ผ๋ก ์์์ผ ํ๋ ์ฉ์ด๋ค
- Itemset X = {x1, x2, ..., Xk}
- Frequent Pattern์ ์ด๋ฌํ Itemset ์ค์์ ์ ์๋๋ค
- {A, B, C, D, E} ๋ผ๋ ๋ฐ์ดํฐ ์งํฉ์ด ์์ ๋ ์ด ๋ฐ์ดํฐ๋ค๋ก ๋ง๋ค ์ ์๋ Itemset?
2^5 - 1
๊ฐ์ Itemset์ด ๋ง๋ค์ด์ง ์ ์๋ค- ๋น ์งํฉ({})์ Itemset์ผ๋ก ์น์ง ์๋๋ค
- Association Rules (X->Y)
- Association Rules๋ 2๊ฐ์ Itemset X, Y๋ก๋ถํฐ ์ ์๋๋ค
- ์ด๋ X U Y(Union)์ด Frequent Pattern ์ด์ด์ผ ํ๋ค
- Ex) {Beers, Diapers}๋ผ๋ Frequent Pattern์ด ์์ ๋
- Beers -> Diapers
- Diapers -> Beers
- 2๊ฐ์ Association Rules๋ฅผ ์๊ฐํด๋ณผ ์ ์๋ค
- ์ด ์ค์ ์๋ฏธ์๋ Rule์ ์ฐพ๋ ๊ฑด ๋ค์์
- Support and Confidence
- Support: Transaction์ด Itemset X๋ฅผ ํฌํจํ ํ๋ฅ ๋๋ ๋น๋
- Minimum Support: Itemset X๊ฐ Frequent Pattern์ธ์ง ์๋์ง๋ฅผ ๊ฒฐ์ ํ๋ ์๊ณ์น(Threshold)
- Itemset X์ Support๊ฐ Minimum Support๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ผ๋ฉด X๋ Frequent Pattern
- Minimum Support: Itemset X๊ฐ Frequent Pattern์ธ์ง ์๋์ง๋ฅผ ๊ฒฐ์ ํ๋ ์๊ณ์น(Threshold)
- Confidence: Itemset X๋ฅผ ํฌํจํ๊ณ ์๋ Transaction์ด Itemset Y๋ ํฌํจํ๊ณ ์์ ํ๋ฅ (์กฐ๊ฑด๋ถ ํ๋ฅ )
- Minimum Confidence: ์ด๊ฒ๋ ์ญ์ ์๊ณ์น๋ก ์ฌ์ฉ
- Support: Transaction์ด Itemset X๋ฅผ ํฌํจํ ํ๋ฅ ๋๋ ๋น๋
Let min_sup = 50%, min_conf = 50%:
Q. Find all frequent patterns
A. {A:3, B:3, D:4, E:3, AD:3}
Q. Find all association rules
A. A -> D (sup: 60%, conf: 100%), D -> A (sup: 60%, conf: 75%)
A๋ฅผ ์ฐ ์ฌ๋์ด D๋ฅผ ์ด ํ๋ฅ ์ 100%
D๋ฅผ ์ฐ ์ฌ๋์ด A๋ฅผ ์ด ํ๋ฅ ์ 75%
Closed Patterns and Max-Patterns
Frequent Pattern์ ํ์ ๊ฐ๋ ์ธ Closed Pattern๊ณผ Max-Pattern์ ์์๋ณด์
- ์ฌ์ค Pattern์ด๋ผ๋ ๊ฒ ์์ฒญ๋๊ฒ ๋ง์ด ๋ง๋ค์ด์ง ์ ์๋ค
- {A1, A2, A3, ..., A100} ์ด๋ฌํ ๋ฐ์ดํฐ ์งํฉ์ด ์์ ๋,
2^100 - 1
๊ฐ์ ์งํฉ์ด ๋ง๋ค์ด์ง ์ ์๋ค - Subpattern์ด ๋๋ฌด ๋ง์,,,
- ๊ทธ๋์ Subpattern๋ค์ ๋ํํ๋ Closed Pattern๊ณผ Max Pattern์ ๋ง์ด๋์ ํ๋ค
- Closed Pattern?
- Itemset X๊ฐ Frequent Pattern์ด๋ฉด์, X์ ๊ฐ์ support๋ฅผ ๊ฐ๋ X์ Superset์ด ์กด์ฌํ์ง ์์ผ๋ฉด, X๋ Closed ํ๋ค๊ณ ํ๋ค
- Max Pattern?
- Itemset X๊ฐ Frequent Pattern์ด๋ฉด์, X์ Superset์ธ ๊ทธ๋ฌํ Itemset Y๊ฐ ์กด์ฌํ์ง ์์ผ๋ฉด, X๋ฅผ Max Pattern์ด๋ผ๊ณ ํ๋ค
- ์ฆ, Frequent Pattern ์ค์ ๋ณธ์ธ์ Superset์ด ์กด์ฌํ์ง ์์ผ๋ฉด ํด๋น ํจํด์ Max Pattern์ด๋ผ๊ณ ํ๋ค
- Closed Pattern์ Frequent Pattern๋ค์ ์์ถ์์ผ์ฃผ๋ ์ญํ ์ ํ๋ค
- ๋ถํ์ํ Pattern, Rule๋ค์ ์ค์ฌ์ฃผ๋ ์ญํ ์ ํ๋ค
๋ง๋ก๋ ๋ญ๊ฐ ์ดํดํ๊ธฐ ์ด๋ ค์ธ ์๋ ์์ผ๋ฏ๋ก, ์์๋ฅผ ๋ค์ด๋ณด์
- Y,Z๋ Closed Pattern์ด์ง๋ง, X๋ Y๊ฐ ์๊ธฐ ๋๋ฌธ์ Closed Pattern์ด ๋ ์ ์๋ค
- ์ฌ์ค Y๊ฐ ์๋ ์ด์, X๋ ํฌ๊ฒ ์๋ฏธ์๋ Pattern์ด๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ Closed Pattern์ด ์ค์ํ ๊ฑฐ!
- Z๋ Max Pattern์ด์ง๋ง, Y๋ Z๊ฐ ์๊ธฐ ๋๋ฌธ์ Max Pattern์ ๋ ์ ์๋ค
Quiz
Q1. How many frequent patterns are there?
A1. 2^100 - 1
๊ฐ์ Frequent Pattern ์กด์ฌ
min_sup์ด 1์ด๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ์กฐํฉ์ ํจํด์ด Frequent Pattern์ด ๋๋ค
Q2. What is the set of closed patterns?
A2.
<a1, a2, ..., a100>: 1
<a1, a2, ..., a50>: 2
๋ ํจํด์ Frequency๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๋๋ค Closed Pattern์ด ๋๋ค
Q3. What is the set of max patterns?
A3. <a1, a2, ..., a100>: 1
Frequent Pattern๋ค ์ค์์ ๊ฐ์ฅ Superset์ด Max Pattern์ด ๋๋ค
Scalable Methods for Mining Frequent Patterns
Database์ 100๊ฐ์ Item์ด ์๋ค๊ณ ํ๋ฉด,
2^100 - 1
๊ฐ์ ํจํด์ด ์์ฑ๋ ์ ์๋๋ฐ, ์ด๊ฑด ๋๋ฌด ๋ง๋ค
- Downward closure propery of frequent patterns
- Frequent Pattern์ Subset์ ๋ฐ๋์ Frequentํ๋ค
- ์ด๊ฒ์ ์ด์ฉํ ๋ฐฉ๋ฒ์ด Downward closure
- Ex) {beer, diaper, nuts}๊ฐ Frequent Pattern์ด๋ฉด, {beer, diaper}์ ๋น์ฐํ Frequent Pattern
- ์ด๋ฐ ๊ฒฝ์ฐ์ {beer, diaper}๋ ๊ตณ์ด ์์ด๋ ๋๋ Redundantํ Pattern์ด๋ค
- ์ด๊ฑธ ์ด์ฉํ ๋ง์ด๋ ๋ฐฉ๋ฒ๋ค์๋ ์ด๋ค Method ๋ค์ด ์์๊น?
- Apriori
- FP-growth (Frequent Pattern Growth)
- Charm (Vertical Data Format)
- ์ด Method๋ค์ ๋ํด์๋ ๋ค์์ ํ๋์ฉ ๋ค๋ฃฐ ๊ฒ
'HYU > ๋ฐ์ดํฐ์ฌ์ด์ธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
6. Miner Improvements (0) | 2024.04.13 |
---|---|
5. FP-growth (0) | 2024.04.13 |
4. Improving Apriori (0) | 2024.04.13 |
3. Apriori (0) | 2024.04.13 |
1. Introduction (0) | 2024.04.13 |