确定最大项对的方法及装置的制造方法

文档序号:9235440阅读:187来源:国知局
确定最大项对的方法及装置的制造方法
【技术领域】
[0001] 本发明涉及数据挖掘领域,特别涉及一种确定最大项对的方法及装置。
【背景技术】
[0002] 随着数据挖掘技术的不断发展,数据量快速增长,该给数据挖掘带来困难。在数据 挖掘的过程中,经常会对事物之间的关联进行分析,分析的结果可应用于电子商务推荐、购 物篮分析及库存管理等。在进行关联分析时,将待分析对象作为一个项,则任意两个项可W 组成一个项对;将组成项对的两个项之间的关联性作为该项对的关联性,项对中的两个项 互换顺序后组成的项对与互换顺序前组成的项对的关联性相同;通过确定关联性最大的前 K个项对,并将该K个项对作为确定的最大项对,即认为组成该K个项对中任一项对的两个 项之间的关联性较强。例如,对商品A、商品B及商品C的购买记录数据库进行分析,将商 品A、商品B及商品C分别作为一个项,则可组成项对(A,B)、(B,A)、(A,C)、(C,A)、(B,C) 及(C,B);其中,项对(A,B)与项对(B,A)的关联性相同,项对(A,C)与项对(C,A)的关联 性相同,项对(B,C)与项对(C,B)的关联性相同;计算各个项对的关联性,若发现关联性最 大的项对为(A,B),则将项对(A,B)作为确定的最大项对,即认为组成项对(A,B)的项A及 项B之间的关联性较强。对应于实际情况,则认为同一顾客在购买商品A时通常会购买商 品B,通过调整商品货架的布局,将商品A和商品B摆放在一起,增加商品的销售量。因此, 如何确定最大项对是十分关键的。
[0003] 现有技术采用基于FP-growth(Rrequent化ttern-growth,频繁模式增长)的方式 来确定最大项对,具体包括:获取多个项对,并确定组成获取到的项对的各个项的支持度; 根据各个项的支持度构建FP (化equent化ttern,频繁模式)树,并将构建的FP树进行存 储;根据读取出的存储的FP树中各个项的支持度计算各个项构成的每个项对的关联性,并 比较每个项对的关联性,根据关联性的比较结果选取预设数目个关联性最大的项对,并将 选取的项对作为确定的最大项对。
[0004] 在实现本发明的过程中,发明人发现现有技术至少存在W下问题:
[0005] 由于FP树是根据各个项的支持度构建,且需要将构建的FP树进行存储,因而受到 存储空间的限制,致使针对大规模数量的项构成的FP树无法存储,进而无法针对大规模数 量的项组成的项对确定最大项对,局限了确定最大项对的应用范围。另外,由于需要根据读 取出的存储的FP树中各个项的支持度计算各个项构成的每个项对的关联性,致使读取的 I/O (I吨ut/Ou化ut,输入/输出)成本及计算的复杂度较高,从而降低了确定最大项对的效 率。

【发明内容】

[0006] 为了解决现有技术的问题,本发明实施例提供了一种确定最大项对的方法及装 置。所述技术方案如下:
[0007] 第一方面,提供了一种确定最大项对的方法,所述方法包括:
[000引构建有序项矩阵,所述有序项矩阵中的每个元素代表一个项对,每个项对对应一 个余弦相似度上界值;
[0009] 确定所述有序项矩阵中每个项对对应的余弦相似度上界值,并从所述有序项矩阵 中每个项对对应的余弦相似度上界值中选择所述有序项矩阵中各行对应的最大余弦相似 度上界值;
[0010] 将本次选择的余弦相似度上界值构成第一集合,将剩余未选择的余弦相似度上界 值构成第二集合,并将所述第一集合中前预设数目个余弦相似度上界值对应的项对作为确 定的最大项对;
[0011] 根据各个最大项对更新所述第一集合及第二集合,在得到更新的第一集合及更新 的第二集合后,确定是否满足根据更新的第一集合更新最大项对的条件;
[0012] 如果满足根据更新的第一集合更新最大项对的条件,则根据更新的第一集合更新 最大项对,并重新根据各个最大项对更新所述第一集合及第二集合,直至确定未满足根据 更新的第一集合更新最大项对的条件,将上一次确定的最大项对作为最大项对的最终确定 结果。
[0013] 结合第一方面,在第一方面的第一种可能的实现方式中,所述根据各个最大项对 更新所述第一集合及第二集合,包括:
[0014] 将各个最大项对所对应的余弦相似度上界值从所述第一集合中移除;
[0015] 从所述第二集合中重新选择所述有序项矩阵中各行对应的最大余弦相似度上界 值,将本次选择的余弦相似度上界值从所述第二集合中移除,并添加到所述第一集合中,得 到更新的第一集合及更新的第二集合。
[0016] 结合第一方面,在第一方面的第二种可能的实现方式中,所述确定是否满足根据 更新的第一集合更新最大项对的条件,包括:
[0017] 判断所述更新的第一集合中的最大余弦相似度上界值是否小于确定的最大项对 对应的余弦相似度中的最小余弦相似度;
[0018] 若所述更新的第一集合中的最大余弦相似度上界值不小于确定的所有最大项对 对应的余弦相似度中的最小余弦相似度,则判断所述更新的第一集合中的最大余弦相似度 上界值对应的项对所对应的余弦相似度是否大于确定的所有最大项对对应的余弦相似度 中的最小余弦相似度;
[0019] 若所述更新的第一集合中的最大余弦相似度上界值对应的项对所对应的余弦相 似度大于确定的所有最大项对对应的余弦相似度中的最小余弦相似度,则确定满足根据更 新的第一集合更新最大项对的条件。
[0020] 结合第一方面的第二种可能的实现方式,在第一方面的第H种可能的实现方式 中,所述根据更新的第一集合更新最大项对,包括:
[0021] 将各个最大项对对应的余弦相似度中的最小余弦相似度对应的项对替换为所述 更新的第一集合中的最大余弦相似度上界值对应的项对,得到更新的最大项对。
[0022] 结合第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式 中,所述将本次选择的余弦相似度上界值从所述第二集合中移除,并添加到所述第一集合 中之前,还包括:
[0023] 判断选择的余弦相似度上界值是否大于确定的每个最大项对对应的余弦相似度 中的最小余弦相似度;
[0024] 若选择的余弦相似度上界值大于确定的每个最大项对对应的余弦相似度中的最 小余弦相似度,则执行将选择的余弦相似度上界值从所述第二集合中移除,并添加到所述 第一集合的步骤。
[0025] 结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式 中,所述判断选择的余弦相似度上界值是否大于确定的每个最大项对对应的余弦相似度中 的最小余弦相似度之后,还包括:
[0026] 若判断选择的余弦相似度上界值不大于确定的每个最大项对对应的余弦相似度 中的最小余弦相似度,则将选择的余弦相似度上界值对应的项对所在的行进行标记,使下 一次从所述第二集合中重新选择所述有序项矩阵中各行对应的最大余弦相似度上界值时, 对未被标记的行所对应的最大余弦相似度上界值进行选择。
[0027] 第二方面,提供了一种确定最大项对的装置,所述装置包括:
[0028] 构建模块,用于构建有序项矩阵,所述有序项矩阵中的每个元素代表一个项对,每 个项对对应一个余弦相似度上界值;
[0029] 第一确定模块,用于确定所述有序项矩阵中每个项对对应的余弦相似度上界值;
[0030] 选择模块,用于从所述有序项矩阵中每个项对对应的余弦相似度上界值中选择所 述有序项矩阵中各行对应的最大余弦相似度上界值;
[0031] 构成模块,用于将本次选择的余弦相似度上界值构成第一集合,将剩余未选择的 余弦相似度上界值构成第二集合,并将所述第一集合中前预设数目个余弦相似度上界值对 应的项对作为确定的最大项对;
[0032] 第一更新模块,用于根据各个最大项对更新所述第一集合及第二集合;
[0033] 第二确定模块,用于在得到更新的第一集合及更新的第二集合后,确定是否满足 根据更新的第一集合更新最大项对的条件;
[0034] 第二更新模块,用于当满足根据更新的第一集合更新最大项对的条件时,根据更 新的第一集合更新最大项对;
[0035] 所述第一更新模块,用于重新根据各个最大项对更新所述第一集合及第二集合, 直至确定未满足根据更新的第一集合更新最大项对的条件;
[0036] 第H确定模块,用于将上一次确定的最大项对作为最大项对的最终确定结果。
[0037] 结合第二方面,在第二方面的第一种可能的实现方式中,所述第一更新模块,包 括:
[0038] 第一移除单元,用于将各个最大项对所对应的余弦相似度上界值从所述第一集合 中移除;
[0039] 选择单元,用于从所述第二集合中重新选择所述有序项矩阵中各行对应的最大余 弦相似度上界值;
[0040] 第二移除单元,用于将本次选择的余弦相似度上界值从所述第二集合中移除;
[0041] 添加单元,用于将本次选择的余弦相似度上界值添加到所述第一集合中,得到更 新的第一集合及更新的第二集合。
[0042] 结合第二方面,在第二方面的第二种可能的实现方式中,所述第二确定模块,包 括:
[0043] 第一判断单元,用于判断所述更新的第一集合中的最大余弦相似度上界值是否小 于确定的最大项对对应的余弦相似度中的最小余弦相似度;
[0044] 第二判断单元,用于当所述更新的第一集合中的最大余弦相似度上界值不小于确 定的所有最大项对对应的余弦相似度中的最小余弦相似度时,判断所述更新的第一集合中 的最大余弦相似度上界值对应的项对所对应的余弦相似度是否大于确定的所有最大项对 对应的余弦相似度中的最小余弦相似度;
[0045] 确定单元,用于当所述更新的第一集合中的最大余弦相似度上界值对应的项对所 对应的余弦相似度大于确定的所有最大项对对应的余弦相似度中的最小余弦相似度时,确 定满足根据更新的第一集合更新最大项对的条件。
[0046] 结合第二方面的第二种可能的实现方式,在第二方面的第H种可能的实现方式 中,所述第二更新模块,用于将各个最大项对对应的余弦相似度中的最小余弦相似度对应 的项对替换为所述更新的第一集合中的最大余弦相似度上界值对应的项对,得到更新的最 大项对。
[0047] 结合第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式 中,所述第一更新模块,还包括:
[0048] 第H判断单元,用于判断选择的余弦相似度上界值是否大于确定的每个最大项对 对应的余弦相似度中的最小余弦相似度;
[0049] 执行单元,用于当选择的余弦相似度上界值大于确定的每个最大项对对应的余弦 相似度中的最小余弦相似度时,执行将选择的余弦相似度上界值从所述第二集合中移除, 并添加到所述第一集合的步骤。
[0050] 结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式 中,所述第一更新模块,还包括:
[0051] 标记单元,用于当判断选择的余弦相似度上界值不大于确定的每个最大项对对应 的余弦相似度中的最小余弦相似度时,将选择的余弦相似度上界值对应的项对所在的行进 行标记,使下一次从所述第二集合中重新选择所述有序项矩阵中各行对应的最大余弦
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1