R 中的规则:非常高的提升量度
Arules in R: A very high measure for lift
运行 Apriori 与 Arules 包一起生成具有非常高提升度的规则。
例如:
A -> B support=0.0023 confidence=0.6832 lift=28.02
(min_support=0.002 和 min_conf=0.2)
在某些规则中,升力高达 250!我见过人们讨论大于 1 的提升(其中大多数小于 5),但我想知道如何用非常高的提升值来解释这些规则。
提升量度代表购买项目 X 时购买项目 Y 的可能性,同时控制项目 Y 的受欢迎程度:
支持(X,Y)/(支持(X)*支持(Y))。
一般来说,升力值大于1表示如果购买了商品X则很有可能购买商品Y,而小于1则表示如果购买了商品X则不太可能购买商品Y。如果你有一个巨大的数据集,那会很有趣,但是,有了你的小数据集和支持,这就不算什么了。在这里查看一个很好的说明 answer:
您将最小支持度计数(arules
中的先验报告)设置为
0.002 * 530 transactions = 1.06
这意味着每条规则的项目只偶然一起发生一次,将被视为导致许多具有非常高提升度的虚假规则。例如,如果两个项目 x 和 y,每个项目在数据集中只出现一次但恰好在同一笔交易中,那么您的数据集会得到
的提升
lift(x -> y) = supp(x, y)/(supp(x) * supp(y)) = (1/580 / (1/580 * 1/580)) = 580.
但是,这个规则不是很有用,因为它只是偶然发生了一次。
以下论文详细介绍了这个问题和其他问题以及可能的解决方案:
运行 Apriori 与 Arules 包一起生成具有非常高提升度的规则。
例如:
A -> B support=0.0023 confidence=0.6832 lift=28.02
(min_support=0.002 和 min_conf=0.2)
在某些规则中,升力高达 250!我见过人们讨论大于 1 的提升(其中大多数小于 5),但我想知道如何用非常高的提升值来解释这些规则。
提升量度代表购买项目 X 时购买项目 Y 的可能性,同时控制项目 Y 的受欢迎程度:
支持(X,Y)/(支持(X)*支持(Y))。
一般来说,升力值大于1表示如果购买了商品X则很有可能购买商品Y,而小于1则表示如果购买了商品X则不太可能购买商品Y。如果你有一个巨大的数据集,那会很有趣,但是,有了你的小数据集和支持,这就不算什么了。在这里查看一个很好的说明 answer:
您将最小支持度计数(arules
中的先验报告)设置为
0.002 * 530 transactions = 1.06
这意味着每条规则的项目只偶然一起发生一次,将被视为导致许多具有非常高提升度的虚假规则。例如,如果两个项目 x 和 y,每个项目在数据集中只出现一次但恰好在同一笔交易中,那么您的数据集会得到
的提升lift(x -> y) = supp(x, y)/(supp(x) * supp(y)) = (1/580 / (1/580 * 1/580)) = 580.
但是,这个规则不是很有用,因为它只是偶然发生了一次。
以下论文详细介绍了这个问题和其他问题以及可能的解决方案: