Отсечение с помощью lift
Вы снова отчитываетесь перед менеджером магазина сувениров. На этот раз вы сообщаете ей, что при более высоком пороге поддержки алгоритм Apriori не выявил ни одного правила, а при более низком — только два. Она хвалит вас за проделанную работу, но просит рассмотреть возможность использования другой метрики, чтобы сократить два правила до одного.
Вы вспоминаете, что метрика lift имеет простую интерпретацию: значения больше 1 говорят о том, что товары встречаются вместе чаще, чем можно было бы ожидать при их независимом распределении по транзакциям. Вы решаете воспользоваться lift, поскольку этот результат легко объяснить. Обратите внимание, что pandas доступен как pd, данные транзакций в формате унитарного кодирования — как onehot, а функция apriori уже импортирована из mlxtend.
Это упражнение является частью курса
Анализ рыночных корзин на Python
Инструкции к упражнению
- Импортируйте функцию
association_rulesизmlxtend. - Вычислите частые наборы элементов при значении поддержки 0.001 и максимальной длине набора элементов 2.
- Дополните выражение так, чтобы отбирались правила со значением lift не менее 1.0.
- Выведите датафрейм с правилами.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Import the association rules function
from mlxtend.____ import ____
# Compute frequent itemsets using the Apriori algorithm
frequent_itemsets = apriori(onehot, min_support = ____,
max_len = ____, use_colnames = True)
# Compute all association rules for frequent_itemsets
rules = association_rules(frequent_itemsets,
metric = "____",
min_threshold = ____)
# Print association rules
print(____)