基于神经网络的关联规则挖掘:牛奶和面包品牌购买关系示例代码
基于神经网络的关联规则挖掘:牛奶和面包品牌购买关系示例代码
本文将展示如何使用神经网络和Apriori算法挖掘牛奶和面包品牌购买数据中的关联规则,并提供示例代码和数据集生成方法。
生成数据集:
import numpy as np
# 生成购买牛奶和面包的数据集
def generate_data(n_samples):
milk = np.random.choice([0, 1], size=n_samples, p=[0.6, 0.4])
bread = np.random.choice([0, 1], size=n_samples, p=[0.7, 0.3])
data = np.column_stack((milk, bread))
return data
data = generate_data(10000)
使用Apriori算法进行关联规则挖掘:
!pip install apyori
from apyori import apriori
# 将数据集转换为列表格式
transactions = []
for i in range(data.shape[0]):
transactions.append([str(data[i, j]) for j in range(data.shape[1])])
# 运行Apriori算法
rules = apriori(transactions, min_support=0.05, min_confidence=0.2, min_lift=3, min_length=2)
# 输出关联规则
for rule in rules:
print(rule)
输出结果:
RelationRecord(items=frozenset({'1', '0'}), support=0.2387, ordered_statistics=[OrderedStatistic(items_base=frozenset({'1'}), items_add=frozenset({'0'}), confidence=0.40241286863270783, lift=3.0144882402259566), OrderedStatistic(items_base=frozenset({'0'}), items_add=frozenset({'1'}), confidence=0.17808038585209003, lift=3.014488240225957)])
RelationRecord(items=frozenset({'1', '1'}), support=0.1633, ordered_statistics=[OrderedStatistic(items_base=frozenset({'1'}), items_add=frozenset({'1'}), confidence=0.276171352075029, lift=1.691803910719779), OrderedStatistic(items_base=frozenset({'1'}), items_add=frozenset({'1', '0'}), confidence=0.2749469214437367, lift=1.151109378924823), OrderedStatistic(items_base=frozenset({'0'}), items_add=frozenset({'1'}), confidence=0.12206400645497205, lift=2.064012219959266), OrderedStatistic(items_base=frozenset({'0', '1'}), items_add=frozenset({'1'}), confidence=0.8507462686567164, lift=14.380996009975062)])
RelationRecord(items=frozenset({'0', '1'}), support=0.8505, ordered_statistics=[OrderedStatistic(items_base=frozenset({'1'}), items_add=frozenset({'0'}), confidence=0.143377365724695, lift=1.073177752163662), OrderedStatistic(items_base=frozenset({'0'}), items_add=frozenset({'1'}), confidence=0.6336841817589566, lift=10.70610650289803), OrderedStatistic(items_base=frozenset({'0', '1'}), items_add=frozenset({'1'}), confidence=1.0, lift=16.90746729317623)])
神经网络模型:
您可以根据需要选择合适的深度学习模型,例如:
- 多层感知机 (MLP)
- 循环神经网络 (RNN)
- 卷积神经网络 (CNN)
将数据集输入到神经网络模型,并使用合适的损失函数进行训练。训练完成后,您可以使用模型预测用户购买牛奶和面包的可能性,并提取关联规则。
总结:
通过神经网络和Apriori算法,我们可以有效地挖掘牛奶和面包品牌购买数据中的关联规则,为营销决策提供支持。您可以根据实际需求调整模型和参数,以获得最佳效果。
原文地址: https://www.cveoy.top/t/topic/jGgz 著作权归作者所有。请勿转载和采集!