데이터 과학2022 개정 · 성취기준 기반 웹교과서 교과서 대조표

Ⅲ. 데이터 모델링과 평가 · 4차시

연관 — 지지도·신뢰도·향상도

함께 사는 물건에는 규칙이 있다. 장바구니 분석으로 품목 사이의 연관 규칙을 찾는다. 지지도, 신뢰도, 향상도를 계산해 규칙의 의미를 판단한다.

12데과03-04 권장 4차시 연관 분석장바구니 분석지지도신뢰도향상도연관 규칙

매점 진열대를 다시 배치하려고 한다. 함께 사 가는 물건을 가까이 두면 학생들이 찾기 쉽다.

무엇과 무엇이 함께 팔리는지는 감으로 정할 일이 아니다. 구매 기록에 답이 들어 있다.

장바구니 하나가 거래 하나다

연관 분석(association analysis)
함께 나타나는 항목의 관계를 찾아 A를 사면 B도 산다 형태의 연관 규칙을 만드는 분석.
장바구니 분석(market basket analysis)
한 번의 구매를 장바구니 하나로 보고, 장바구니에 함께 담긴 품목의 연관을 찾는 연관 분석.
매점 구매 기록 10건(수업용으로 만든 예시 데이터)
거래 번호함께 산 품목
1우유, 삼각김밥, 초콜릿
2우유, 삼각김밥, 초콜릿, 이온음료
3우유, 삼각김밥
4우유, 삼각김밥
5우유, 컵라면
6삼각김밥, 컵라면
7삼각김밥, 초콜릿
8컵라면, 이온음료
9컵라면, 이온음료
10초콜릿, 이온음료
품목별 등장 횟수와 지지도(전체 거래 10건 기준)
품목등장한 거래 수지지도
우유55 ÷ 10 = 0.5
삼각김밥66 ÷ 10 = 0.6
컵라면44 ÷ 10 = 0.4
초콜릿44 ÷ 10 = 0.4
이온음료44 ÷ 10 = 0.4

세 가지 지표로 규칙을 재어 본다

지지도(support)
전체 거래 가운데 A와 B가 함께 담긴 거래의 비율. 지지도 = (A와 B를 함께 포함한 거래 수) ÷ (전체 거래 수)
신뢰도(confidence)
A를 산 거래 가운데 B도 함께 산 거래의 비율. 신뢰도 = (A와 B를 함께 포함한 거래 수) ÷ (A를 포함한 거래 수)
향상도(lift)
신뢰도를 B의 지지도로 나눈 값. 향상도 = 신뢰도 ÷ (B의 지지도) 이며, A를 산 사실이 B를 살 가능성을 얼마나 바꾸는지 나타낸다.

삼각김밥 → 우유 규칙을 손으로 계산해 본다.

  • 삼각김밥과 우유를 함께 산 거래는 1, 2, 3, 4번으로 4건이다. 는 4 ÷ 10 = 0.4다.
  • 삼각김밥을 산 거래는 6건이다. 는 4 ÷ 6 ≈ 0.667이다.
  • 우유의 지지도는 0.5다. 는 0.667 ÷ 0.5 ≈ 1.333이다.

지지도는 규칙이 얼마나 자주 나타나는지를 말한다. 신뢰도는 A를 산 사람 가운데 B도 산 비율을 말한다. 향상도는 그 비율이 B의 평균 구매 비율보다 높은지를 말한다.

코드로 구한 값이 손계산과 같다. 삼각김밥 → 우유의 는 1.333이다.

반대 방향인 우유 → 삼각김밥도 향상도가 1.333이다. 는 0.667과 0.8로 달랐는데 향상도는 같다.

컵라면 → 우유는 향상도가 0.5로 1보다 작다. 초콜릿 → 우유는 정확히 1.0이다.

규칙별 세 지표(소수 세 자리에서 자름)
규칙함께 산 거래 수지지도신뢰도향상도
삼각김밥 → 우유40.44 ÷ 6 ≈ 0.6671.333
우유 → 삼각김밥40.44 ÷ 5 = 0.81.333
컵라면 → 우유10.11 ÷ 4 = 0.250.5
초콜릿 → 우유20.22 ÷ 4 = 0.51.0
이온음료 → 컵라면20.22 ÷ 4 = 0.51.25

은 함께 일어난 일을 찾는다. 어느 쪽이 원인인지는 알려 주지 않는다.

삼각김밥과 우유가 함께 팔린 이유는 둘 다 아침 식사 대신 쓰였기 때문일 수도 있다. 규칙을 찾은 다음에는 그 규칙이 왜 생겼는지 따로 확인해야 한다.

확인 문제

4문항 · 고르면 바로 채점된다

전체 거래 10건 가운데 컵라면과 이온음료를 함께 산 거래가 2건이다. 이 규칙의 지지도는 얼마인가?

지지도는 함께 포함한 거래 수를 전체 거래 수로 나눈 값이므로 2 ÷ 10 = 0.2다. 0.4는 컵라면 하나의 지지도이고, 0.5는 신뢰도 2 ÷ 4의 값이다.

초콜릿 → 우유 규칙의 신뢰도는 0.5이고 우유의 지지도는 0.5다. 이 규칙의 향상도와 해석으로 알맞은 것은 무엇인가?

향상도는 신뢰도를 B의 지지도로 나눈 값이므로 0.5 ÷ 0.5 = 1.0이다. 향상도가 1이면 초콜릿을 샀는지가 우유 구매와 관계없다는 뜻이다.

신뢰도가 높은 규칙은 향상도도 반드시 1보다 크다.

신뢰도가 높아도 B의 지지도가 그만큼 높으면 향상도는 1 이하가 된다. 초콜릿 → 우유는 신뢰도 0.5인데 우유 지지도가 0.5여서 향상도가 정확히 1이었다.

컵라면 → 우유의 향상도는 0.5다. 이 결과를 알맞게 해석한 것은 무엇인가?

향상도가 1보다 작으면 음의 연관이므로 평균보다 가능성이 낮다는 뜻이다. 컵라면을 산 사람 가운데 우유를 산 비율은 신뢰도 0.25이며, 관계가 없다는 뜻은 향상도가 1일 때다.

내 교과서에서 찾기

YBM Ⅲ. 데이터 모델링과 평가 › 03. 연관 분석 모델 03-1 연관 분석 모델의 개념 · 03-2 연관 분석 모델의 실제
씨마스 Ⅲ. 데이터 모델링과 평가 › 2. 군집 분석과 연관분석 2-2 연관분석 (154쪽)
천재 Ⅲ. 데이터 모델링과 평가 › 04. 연관 분석 1 연관 분석의 이해 · 2 연관 분석 과정