始める無料で始める

confidence での枝刈り

またしても決め手を欠いています。いくつか有用なルールは見つかったものの、1つに絞り込めません。さらに悪いことに、見つけた2つのルールは同じアイテムセットを使い、前件と後件を入れ替えただけでした。別の指標で枝刈りすれば、単一のアソシエーションルールに絞り込めるかを試すことにしました。

どの指標が適切でしょうか?リフトとサポートは、同じアイテムセットから生成できるすべてのルールで同一になります。そこで、同じアイテムセットから生成されたルール間で値が異なる confidence を使うことにします。なお、pandaspd として利用可能で、ワンホットエンコード済みのトランザクションデータは onehot として利用できます。さらに、apriorimlxtend からインポート済みです。

この演習はコースの一部です

Python で学ぶマーケットバスケット分析

コースを見る

演習の手順

  • mlxtend から association_rules をインポートします。
  • サポート値 0.0015、最大アイテムセット長 2 を用いて、apriori アルゴリズムの記述を完成させます。
  • 指標に confidence、しきい値に 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)
コードを編集して実行