이론공부/데이터분석

연관 분석(Association Analysis) (1)

Zziii 2024. 11. 7. 15:17
728x90
반응형

연관 분석(Association Analysis)은 주로 데이터 항목들 간의 관계를 찾고, 이를 통해 의미 있는 패턴을 도출하는 기법이다.
장바구니 분석(Market Basket Analysis)에서 '어떤 상품이 자주 함께 구매되는가?'와 같은 패턴을 찾는 것이 실 예이다.
대표적인 알고리즘으로는  Apriori 알고리즘과 FP-Growth가 있다.
이 알고리즘을 이해하기 위해서는 우선 지지도, 신뢰도, 향상도라는 개념을 이해해야한다.

1. 지지도(Support) : 특정 아이템 집합이 전체 거래에서 등장한 비율

예를 들어 { 빵, 우유 } 라는 집합이 있다고 했을 때, 100건의 거래중에서 빵과 우유를 동시에 구매한 거래가 30건이라면 
지지도 = 30/100 = 0.3 이되는 것이다.

2. 신뢰도(Confidence) : A라는 아이템이 포함된 거래에서 B도 포함될 확률

조건부 확률의 개념으로 
Confidence(A → B) = Support(A ∩ B) / Support(A)
즉, A를 구매한 건수 중 A와 B를 동시에 구매한 건수의 비율을 의미하는 것이다.

40건의 거래에서 빵이 구매되었고, 이 중 30건의 거래에서만 빵, 우유를 동시에 구매하였다면 
신뢰도 = 30 / 40 = 0.75가 되는 것이다.

3. 향상도(Lift) : 두 아이템이 독립적으로 구매될 때의 확률과 비교하여, 실제로 두 아이템이 함께 구매되는 빈도가 얼마나 더 큰지를
나타내는 지표

구하는 공식으로 보면 
Lift(A → B) = Confidence(A → B) / Support(B)
즉, 신뢰도 나누기 지지도인데, 신뢰도, 지지도의 식도 풀어헤쳐놓고 보면 독립적으로 구매될때의 확률과 두 아이템이 함께 구매되는
빈도를 비교한다는 의미를 알 수 있다.

만약 우유가 전체 거래의 50%에서 구매되었고, 빵을 구매한 사람 중 75%가 우유를 구매했을 경우, 
빵 → 우유의 향상도는 0.75 / 0.5 = 1.5 이다. 

향상도의 값이 1보다 크면, 두 아이템 간의 연관성이 높음을 의미하는데, 즉 우유와 빵이 함께 구매될 가능성이 평균보다 1.5배 높다는 뜻이다.


예시

지지도(Support): {빵, 우유}가 5개의 거래 중 3번 나타났다면, 지지도는 3/5 = 0.6 (60%)

신뢰도(Confidence): 빵을 구매한 거래는 4개 중, 그 중 3번은 우유가 함께 구매되었으므로, 신뢰도는 3/4 = 0.75 (75%)

향상도(Lift): 우유는 전체 거래 중 4번 구매되었으므로 지지도는 4/5 = 0.8. 향상도는 0.75 / 0.8 = 0.9375

신뢰도는 75%로 높은 편이지만, 향상도는 1보다 작으므로 빵과 우유는 특별히 더 많이 구매되는 경향은 없음을 알 수 있다. 둘이 
독립적으로도 자주 구매된다는 사실을 보여준다.

 

 

(2)에 이어서 정리..

728x90
반응형

'이론공부 > 데이터분석' 카테고리의 다른 글

[텍스트 분석] TF-IDF  (0) 2025.01.02
CRISP-DM  (0) 2025.01.02
[웹로그 분석] 인덱스 페이지, 랜딩페이지  (0) 2024.02.26
[웹로그 분석] 사용자 세션이란?  (0) 2024.02.26
EDA(탐색적 데이터 분석)  (0) 2023.12.27
let textNodes = document.querySelectorAll("div.tt_article_useless_p_margin.contents_style > *:not(figure):not(pre)"); textNodes.forEach(function(a) { a.innerHTML = a.innerHTML.replace(/`(.*?)`/g, '$1'); });