장바구니 분석
- 흔히 장바구니 분석이라고 알려져 있는 고객 선택 예측, Association Rule이라 하며 연관 규칙 분석이라고도 표현한다.
- 여러 데이터 사이의 연관성을 찾아 고객의 선택을 예측하는 분석법이다.
- 상품 A를 선택한 고객이 상품 B도 선택할 확률이 몇 퍼센트인지, 즉 고객이 어떤 상품들을 주로 함께 선택하는지 등의 추측이 가능하다.
- 유튜브나 넷플릭스의 콘텐츠 추천, 포털 사이트의 당신이 좋아할 뉴스, 인터넷 쇼핑몰의 상품 추천과 같은 개인화 추천 서비스들의 구현에도 활용될 수 있는 유용한 분석방법이다.
- Options의 add-on에서 Associate를 설치한다.
- 파일을 불러온 후 다운받은 데이터셋을 연결한다.
- Hair Conditioner, Lemons 등 이 쇼핑몰에서 판매하는 상품 255개가 변수로 들어가 있고, 모두 Role은 Feature 즉 분석의 재료로 설정되어 있다.
- Target 설정이 없으므로 이러한 고객 선택 예측 즉 연관규칙 분석은 비지도 학습이라는 것을 알 수 있다.
- 변수들의 Type은 categorical 즉 범주형(객관식 보기)으로 되어 있는데 그 이유는 이 데이터셋이 고객이 각 상품을 구매했느냐 안 했느냐 즉 Yes No로 구분해서 표시해준 것이기 때문이다.
- 구매했으면 1, 구매하지 않았으면 공백으로 되어 있다.
분석
- Frequent Itemsets를 File에 연결한 후 더블클릭한다.
- Find itemsets 메뉴에서 Minimal support를 1%로 맞춘 후 아래에 있는 Fine Itemsets 버튼을 누른다.
- Support는 출현빈도, 비중을 말하는 것으로 Minimal Support 설정은 전체 거래 중에 최소한 몇 % 이상의 빈도, 비중을 가지는 결과만 보고 싶을 때 사용하는 옵션이다.
- 상품도 많고 거래도 많으면 발생 빈도나 비중이 그렇게 높지 않기 때문에 1% 혹은 0.1%와 같이 숫자를 낮게 설정한다.
- 제일 위 Eggs=1이란 달걀을 구매한 경우이며 거래가 167회 이루어졌고, 전체 거래의 13.25%에 달하는 빈도를 가지고 있다는 뜻이다.
- 그 아래 줄을 보면 White Bread=1이라고 되어 있는데, 이건 흰 빵을 산 거래이다. 그런데 달걀과 수직으로 나란히 되어 있지 않고 오른쪽으로 한 칸 들어가 있다. 이것은 and를 뜻하는 것으로 그냥 흰 삥만 산 경우가 아니라 달걀을 사고 흰 빵도 산 경우가 75회, 전체 거래의 5.952% 비중이라는 것이다.
- 그 아래 줄 Sweet Relish=1 이라는 부분도 역시 오른쪽으로 한 칸 들어가 있으므로 달걀을 사고 흰 빵도 사고 달콤한 소스까지 산 경우가 36회, 전체 거래의 2.857% 비중이라는 뜻이다.
- 그 아래 줄 Tooth Paste=1 부분은 오른쪽으로 한칸 들어가지 않고, Sweet Relish=1과 수직으로 나란히 되어 있다. 그러면 달콤한 소스를 산 거래와 이어지는 게 아니고 그 위 거래와 이어지는 것이다. 즉, 달걀을 사고 흰 빵도 사고 치약도 산 경우가 44회, 전체 거래의 3.492% 비중이라는 뜻이다.
추가 분석
- 자주 같이 사는 상품 정도가 아니라 A상품을 샀을 때 B 상품을 살 확률 등을 알아 보자.
- Association Rules 아이콘을 불러온 후 더블클릭한다.
- Minimal Support는 1%로 한다.
- Minimal confidence는 예측의 확률, 예측의 강도를 의미하며 "A 상품 사면 B 상품 살 확률"이 100% 인지 90% 인지 정보를 설정하는 것이다.
- Antecedent는 조건으로 "만약 달걀을 사면~~" 이 부분이다. Antecedent 쪽에 98 pct. Fat Free Hambegger=1, Wheat Bread=1 이렇게 적혀 있는 건, "98% 무지방 햄버거와 호밀빵을 사는 고객은~~"이라는 뜻이다.
- 그 오른쪽 Consequent는 결과 즉 예측이다. White Bread=1이라는 건 "흰 빵도 산다"는 뜻이다. 조건 Antecedent 부분과 합쳐서 읽으면 "98% 무지방 햄버거와 호밀빵을 사는 고객은 흰 빵도 산다"라고 알려주는 것이다.
- 왼쪽의 Conf(confidence) 숫자가 0.900이라는 것은 90%의 확률을 가진다는 뜻이다.
- 왼쪽의 Lift 항목은 1보다 크면 클수록 의미 있는 규칙이며 1보다 작으면 의미 없는 규칙이 된다.
- Cover(Coverage), Strg(Strength), Levr(Leverage)는 굳이 참고하지 않아도 되는 지표이다.
- 따라서 Support, Confidence, Lift만으로 충분히 규칙을 평가할 수 있다.