Algorithm 使用apriori算法进行推荐

Algorithm 使用apriori算法进行推荐,algorithm,graph-theory,apriori,Algorithm,Graph Theory,Apriori,所以a让我觉得很酷。我能理解它为什么有效,但我不确定的是它的实际用途。据推测,计算相关项目集的主要原因是能够根据某人自己的购买(或自有项目等)为其提供建议。但是,如何从一组相关的项目集转变为单独的建议呢 维基百科文章的结尾是: 第二个问题是生成 从那些大的 约束为的项集 最低限度的信心。假设其中一个 大型项目集是Lk,Lk={I1,I2… ,Ik},与此关联的规则 项目集是在 按如下方式:第一条规则是{I1, I2,…,Ik-1}⇒ {Ik},通过检查 这条规则可以确定 有趣与否。然后是其他规则

所以a让我觉得很酷。我能理解它为什么有效,但我不确定的是它的实际用途。据推测,计算相关项目集的主要原因是能够根据某人自己的购买(或自有项目等)为其提供建议。但是,如何从一组相关的项目集转变为单独的建议呢

维基百科文章的结尾是:

第二个问题是生成 从那些大的 约束为的项集 最低限度的信心。假设其中一个 大型项目集是Lk,Lk={I1,I2… ,Ik},与此关联的规则 项目集是在 按如下方式:第一条规则是{I1, I2,…,Ik-1}⇒ {Ik},通过检查 这条规则可以确定 有趣与否。然后是其他规则 通过删除最后一个 先行项和插入项中的项 它的结果,进一步的 对新规则的信任是 检查以确定 它们的趣味性。那些 进程迭代到 先行词变为空


不过,我也不确定关联规则集如何帮助确定最佳推荐集。也许我没有抓住要点,apriori不适合这个用途?在这种情况下,它的用途是什么?

因此,apriori算法不再是市场篮子分析(aka)的最新技术。尽管Apriori原理(子集上界的支持度即集合的支持度)仍然是驱动力,但这些技术已经有所改进

在任何情况下,关联规则用于生成建议的方式是,给定一些历史项目集,我们可以检查每个规则的先行项,以查看历史中是否包含。如果是这样,那么我们可以推荐规则的结果(当然,排除了结果已经包含在历史中的情况)


我们可以使用各种指标对我们的建议进行排名,因为有很多规则,当我们将它们与历史进行比较时,可能会有很多点击率,我们只能提出有限数量的建议。一些有用的指标是规则的支持度(这与前因和后因并集的支持度相同)、规则的可信度(规则的支持度高于前因的支持度)和规则的提升度(规则的支持度高于前因和后因的支持度的乘积),除此之外。

如果您想了解Apriori如何用于分类的详细信息,可以阅读有关CBA算法的文章:


刘冰,许文妮,马一鸣,“集成分类和关联规则挖掘”,《第四届知识发现和数据挖掘国际会议论文集》(KDD-98,全体报告),1998年,美国纽约

将每个规则与给定用户集进行比较似乎效率极低-这不是性能问题吗?是否可以对此进行优化?嗯,您可以按度量对规则进行一次排序,然后,对于每个历史记录,在有足够的规则与历史记录匹配后停止检查。或者,您可以通过antecedant创建规则格,并且仅在子规则的父规则匹配时检查子规则。你也可以用先行词对规则进行聚类。好主意。排名似乎只会减少一个固定因素的工作量——大多数规则都不匹配。索引似乎是一个更好的主意,尽管我不知道有任何索引能够很好地查找作为搜索查询子集的条目。