support-confidence 境界の最適性
前の演習で作成した散布図を創業者に見せ、剪定を使って support-confidence 境界を再現しましょうかと提案します。Bayardo-Agrawal の結果について説明しましたが、彼女は半信半疑の様子で、例で示せないかと尋ねます。
散布図では第3の指標に応じて点の大きさを変えられることを思い出し、これを使って support-confidence 境界の最適性を示すことにします。Bayardo-Agrawal が適用した指標の1つである lift を用いて点の大きさをスケーリングして示します。ワンホットエンコード済みデータは onehot として読み込まれています。さらに、apriori() と association_rules() はインポート済みで、pandas は pd として利用できます。
この演習はコースの一部です
Python で学ぶマーケットバスケット分析
演習の手順
- DataFrame
onehotに Apriori アルゴリズムを適用します。 support指標と最小しきい値 0.0 を使ってアソシエーションルールを計算します。- 散布図の式を完成させ、点の大きさが
liftでスケーリングされるようにします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import seaborn under its standard alias
import seaborn as sns
# Apply the Apriori algorithm with a support value of 0.0075
frequent_itemsets = ____(____, min_support = 0.0075,
use_colnames = True, max_len = 2)
# Generate association rules without performing additional pruning
rules = ____(frequent_itemsets, metric = "support",
min_threshold = ____)
# Generate scatterplot using support and confidence
sns.scatterplot(x = "support", y = "confidence",
size = "____", data = rules)
plt.show()