빅데이터 모델링 - 분석기법 - 연관성분석(Association Rule Learning)

 

 

연관성분석 개요

  • 둘 이상의 거래, 사건에 포함된 항목들의 관련성을 파악하는 탐색적 데이터 분석
  • 유사한 개들을 그룹화하여 각 집단의 특성 파악에 활용
  • 사건의 연관규칙을 찾는 기법으로 목표변수가 없는 비지도 학습
  • 컨텐츠 기반 추천(Contents-based Recommendation)의 기본 방법론
  • 그룹에 대한 특성 분석으로 군집분석과 병행 가능하며 장바구니 분석으로도 불림

연관규칙(Assocication Rule) 순서

  1. 데이터 간 규칙 생성
    • if 조건절(Antecedent) > 결과절(Consequent)
  2. 어떤 규칙이 데이터 특성에 부합되는지 기준 설정
    • 지지도(supprt)
      • 데이터 전체에서 해당 물건을 고객이 구입한 확률
    • 신뢰도(confidence)
      • 어떤 데이터를 구매했을 때 다른 제품이 구매될 조건부 확률
      • P(A,B) / P(A)
    • 향상도(lift)
      • 두 물건의 구입 여부가 독립인지 판단하는 개념
      • P(A,B) / P(A)P(B)
      • 1이면 상호 독립적인 관계
      • 1보다 크면 양의 상관관계
      • 1보다 작으면 음의 상관관계
  3. 규칙의 효용성 평가(실제 규칙 생성)
  • 연관성분석 예시
  • 7개의 품목을 구입할 수 있다고 가정
ID 우유 버터 맥주 기저귀 달걀 과일
1 1 1 0 0 0 0 1
2 0 0 1 0 0 1 1
3 0 0 0 1 1 0 0
4 1 1 1 0 0 1 1
5 0 1 0 0 0 0 0

 

  • 지지도 확인, 지지도 = A와 B의 교집합
  • 신뢰도 확인, 신뢰도 = 교집합 * 조건부 확률(A를 사고 B를 살 확률)
조건 - 결과 지지도(support)
(교집합)
지지도 * 신뢰도(confidence)
(교집합 * 조건부 확률)
우유를 사면 빵을 산다 2/5 = 0.4 0.4 * 1.0 = 0.4
우유를 사면 달걀을 산다 1/5 = 0.2 0.2 * 0.5 = 0.1
빵을 사면 과일을 산다 2/5 = 0.4 0.4 * 0.66 = 0.264
과일을 사면 계란을 산다 2/5 = 0.4 0.4 * 0.66 = 0.264
우유와 빵을 사면 과일을 산다 2/5 = 0.4 0.4 * 1.0 = 0.4

 

  • 향상도 확인, 향상도 = A와 B의 합집합 / A * B
    • 빵과 우유의 향상도, 1 이상이므로 양의 상관관계


아프리오리(Apriori) 알고리즘

  • 최소 지지도 이상의 빈발항목집합만을 찾아내서 연관규칙을 계산하는 기법
  • 최소지지도 이상의 한 항목집합이 빈발(frequent)하다면
    • 이 항목집합의 모든 부분집합은 역시 빈발항목집합으로 연관규칙 계산에 포함
  • 최소지지도 미만의 한 항목집합이 비빈발(infrequent)하다면
    • 이 항목집합을 포함하는 모든 집합은 비빈발항목집합으로 가지치기(pruning) 진행
  • 이후 최소 신뢰도 기준을 적용해서 최소 신뢰도에 미달하는 연관규칙은 다시 제거하여 반복 작업을 수행
  • 새로운 연관규칙이 없을 때까지 진행

연관성분석의 장단점

  • 장점
    • 분석 결과 이해가 쉽고 실제 적용에 용이
  • 단점
    • 품목이 많아질수록 연관성 규칙이 더 많이 발견되나 의미성에 대해 사전 판단 필요
    • 상당 수의 계산과정 필요

참고