mysql中怎么实现Apriori_关联规则算法Apriori的学习与实现

面包 [支持度:3%,置信度:40%]

支持度3%意味3%顾客同时购买牛奶和面包。置信度40%意味购买牛奶的顾客40%也购买面包。规则的支持度和置信度是两个规则兴趣度度量,它们分别反映发现规则的有用性和确定性。关联规则是有趣的,如果它满足最小支持度阈值和最小置信度阈值。这些阈值可以由用户或领域专家设定。

我们先来认识几个相关的定义:

定义1: 支持度(support)

支持度s是事务数据库D中包含A U B的事务百分比,它是概率P(A U B),即support(A

B)=P(A U B),它描述了A和B这两个物品集的并集在所有的事务中出现的概率。

定义2: 置信度(confidence)

可信度为事务数据库D中包含A的事务中同时也包含B的百分比,它是概率P(B|A),即confidence(A

B)=P(B|A)。

定义3: 频繁项目集

支持度不小于用户给定的最小支持度阈值(minsup)的项集称为频繁项目集(简称频集),或者大项目集。所有

的频繁1-项集记为L1。

假设有如下表的购买记录。

顾客

项目

1

orange

juice, coke

2

milk,

orange juice, window cleaner

3

orange

juice, detergent

4

orange

juice, detergent, coke

5

window

cleaner

将上表整理一下,得到如下的一个2维表

Orange

Win

Cl

Milk

Coke

Detergent

Orange

4

1

1

2

2

WinCl

1

2

1

0

0

Milk

1

1

1

0

0

Coke

2

0

0

2

1

Detergent

1

0

0

0

2

上表中横栏和纵栏的数字表示同时购买这两种商品的交易条数。如购买有Orange的交易数为4,而同时购买Orange和Coke的交易数为2。

置信度表示了这条规则有多大程度上值得可信。设条件的项的集合为A,结果的集合为B。置信度计算在A中,同时也含有B的概率。即Confidence(A==>B)=P(B|A)。例如计算"如果Orange则Coke"的置信度。由于在含有Orange的4条交易中,仅有2条交易含有Coke.其置信度为0.5。

支持度计算在所有的交易集中,既有A又有B的概率。例如在5条记录中,既有Orange又有Coke的记录有2条。则此条规则的支持度为2/5=0.4。现在这条规则可表述为,如果一个顾客购买了Orange,则有50%的可能购买Coke。而这样的情况(即买了Orange会再买Coke)会有40%的可能发生。

再来考虑下述情况。

支持度

A

0.45

B

0.42

C

0.4

A and

B

0.25

A and

C

0.2

B and

C

0.15

A,B,and

C

0.05

可得到下述规则

规则

置信度

If B and C then

A

0.05/0.15*100%=33.33%

If A and C then

B

0.05/0.20*100%=25%

If A and B then

C

0.05/0.25*100%=20%

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值