了解 apyori 的输出
Posted
技术标签:
【中文标题】了解 apyori 的输出【英文标题】:Understanding apyori's output 【发布时间】:2017-11-06 10:00:37 【问题描述】:我非常熟悉先验算法,以及支持/信心/提升的含义。
我目前正在使用apyori apriori 实现,但我不确定我是否理解apyori.apriori()
调用的输出。
结果是这样的
> RelationRecord(items=frozenset('item1', 'item2'),
> support=0.15365410803449842,
> ordered_statistics=[OrderedStatistic(items_base=frozenset('item1'),
> items_add=frozenset('item2'), confidence=0.6203420891875382,
> lift=2.2233410344037092),
> OrderedStatistic(items_base=frozenset('item2'),
> items_add=frozenset('item1'), confidence=0.5507049891540131,
> lift=2.2233410344037097)])
什么是规则?有多种支持/信心/提升,每个代表什么?
我希望对输出的每个部分提供字典式的解释
【问题讨论】:
【参考方案1】:RelationRecord 反映了项目的子集,而 ordered_statistics 是 OrderedStatistics 的列表,它反映了规则。每个 OrderedStatistics 的 items_base 是前件,items_add 是后件。支持存储在 RelationRecord 中,因为它对于包含的规则是相同的。
在你的例子中:
item1 -> item2 的置信度为 0.62,提升率为 2.2233410344037092x
item2 -> item1 的置信度为 0.55,提升率为 2.2233410344037097x
两者都支持=0.15365410803449842。
对于它的价值,我最终转而使用 PyFIM 以获得相对丰富的功能和其他捆绑算法(例如 fp-growth)。
【讨论】:
只是想跟进看看我的回答是否有帮助/您继续使用 apyori。如果您觉得这有帮助,请选择它作为正确答案。谢谢! 你知道算法返回的rules
是否默认按某种顺序排序? rules = apriori(transactions, min_support = 0.003, min_confidence = 0.2, min_lift = 3, min_length = 2)
谢谢。我真的希望apyori
有适当的文档。
@Jay 注意没有关键字 arg min_length
。
@timegeb - 刚刚将这些非官方文档拼凑在一起。希望他们有所帮助! zaxrosenberg.com/unofficial-apyori-documentation以上是关于了解 apyori 的输出的主要内容,如果未能解决你的问题,请参考以下文章
“apyori模块的RelationRecord对象”先验算法python