Prefixspan常用项目设置如何在生产环境中使用

时间:2019-01-10 08:02:16

标签: design-patterns pyspark

我使用prefixspan算法来挖掘APP用户的行为数据以获得频繁的项目集,用来区分不同的用户。

我有一些问题:

如何清除同一用户的行为数据的时序?是否有必要按时间间隔划分同一用户的不同行为路径。 我尝试了半小时的间隔和两个小时的间隔。

有很多常用项目集。您如何使用这些频繁的项目集,选择重要的项目集或全部使用它们 这是产生的频繁项目集的示例:

<blink>
   FreqSequence(sequence=[['click.jq_qjq_jkxq']], freq=2463)
   FreqSequence(sequence=[['click.jq_qjq_jkxq', 'input.jq_qjq_zfmm']], 
      freq=2440)
   FreqSequence(sequence=[['click.xfd_smrz']], freq=2455)
   FreqSequence(sequence=[['click.xfd_smrz', 'click.xfd_yhkrz']], 
      freq=2434)
   FreqSequence(sequence=[['click.xfd_smrz', 'click.xfd_yhkrz', 
      'click.xfd_yhkrz_yzm']], freq=2370)
   FreqSequence(sequence=[['click.xfd_smrz', 'click.xfd_yhkrz', 
      'input.xfd_yhkrz_yzm']], freq=2381)
   FreqSequence(sequence=[['click.xfd_smrz', 'click.xfd_yhkrz', 
      'input.xfd_yhkrz_yzm', 'click.xfd_yhkrz_yzm']], freq=2328)
   FreqSequence(sequence=[['click.xfd_smrz', 'click.xfd_yhkrz_yzm']], 
      freq=2379)
   FreqSequence(sequence=[['click.xfd_smrz', 'input.xfd_yhkrz_yzm']], 
      freq=2391)
   FreqSequence(sequence=[['click.xfd_smrz', 'input.xfd_yhkrz_yzm', 
      'click.xfd_yhkrz_yzm']], freq=2337)
   FreqSequence(sequence=[['click.xfd_smrz_fmz']], freq=2472)
   FreqSequence(sequence=[['click.xfd_smrz_fmz', 'click.xfd_smrz']], 
     freq=2450)
   FreqSequence(sequence=[['click.xfd_smrz_fmz', 'click.xfd_smrz', 
     'click.xfd_yhkrz']], freq=2432)
   FreqSequence(sequence=[['click.xfd_smrz_fmz', 'click.xfd_smrz', 
     'click.xfd_yhkrz', 'click.xfd_yhkrz_yzm']], freq=2367)
   FreqSequence(sequence=[['click.xfd_smrz_fmz', 'click.xfd_smrz', 
    'click.xfd_yhkrz', 'input.xfd_yhkrz_yzm']], freq=2378)
   FreqSequence(sequence=[['click.xfd_smrz_fmz', 'click.xfd_smrz', 
    'click.xfd_yhkrz', 'input.xfd_yhkrz_yzm', 'click.xfd_yhkrz_yzm']], 
     freq=2325)
</blink>

我有大约10,000个这样的常用项目集。 因为频繁的项目集会更加频繁,所以我需要选择重要的项目还是全部使用它们。

您如何将频繁的项目集应用于生产环境? 我的想法是使用频繁项目集作为区分不同用户组的规则,这又回到了老问题:频繁项目集过多,如何选择重要的频繁项目集。

感谢您的帮助!

0 个答案:

没有答案