시작하기무료로 시작하기

confidence로 가지치기

또다시 한 가지로 좁히지 못했네요. 유용한 규칙이 여러 개 나오긴 했지만, 최종 후보를 하나로 고를 수가 없었어요. 더구나 발견한 두 규칙은 같은 아이템셋을 사용하면서 선행항과 결과항만 서로 바꾼 형태였어요. 다른 평가지표로 가지치기를 하면 단일 연관 규칙으로 좁힐 수 있을지 확인해 보기로 했어요.

어떤 지표가 적절할까요? 하나의 아이템셋에서 생성되는 모든 규칙은 lift와 support가 동일하므로, 대신 confidence를 사용하기로 합니다. 같은 아이템셋에서 나온 규칙이라도 confidence는 달라질 수 있기 때문이죠. 참고로 pandaspd로, 원-핫 인코딩된 거래 데이터는 onehot으로 제공됩니다. 또한 apriorimlxtend에서 이미 가져와 두었어요.

이 연습은 강의의 일부입니다

Python으로 배우는 Market Basket Analysis

강의 보기

연습 안내

  • mlxtend에서 association_rules를 가져오세요.
  • apriori 알고리즘 문장을 완성하세요. support 값은 0.0015, 최대 아이템셋 길이(max_len)는 2로 설정합니다.
  • 연관 규칙 생성 문장을 완성하세요. 지표(metric)는 confidence, 임계값(threshold)은 0.5로 설정합니다.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Import the association rules function
____

# Compute frequent itemsets using the Apriori algorithm
frequent_itemsets = ____(onehot, ____, 
                            ____, use_colnames = True)

# Compute all association rules using confidence
rules = ____(frequent_itemsets, 
                            metric = "____", 
                         	min_threshold = ____)

# Print association rules
print(rules)
코드 편집 및 실행