我正在尝试对搜索查询日志进行一些研究。我的第一个兴趣是发现趋势。例如:冬天人们经常患唇疱疹。所以我想在冬天我们可以看到这种类型查询的增长。
我想如何检测趋势:
- 使用先验算法或其他东西来获得频繁项集。
- 计算时间范围内每组的数量(一小时,一天等)
- 如果这是回归 ax + b,则使用线性回归找到相对函数变化,然后我们只需计算 (a*(first_date)+b)/(a*(second_date)+b)
所以我有一个问题:很难在大量数据集上找到频繁项集(我有数百万个查询)。我已经实现了 apriory 算法,但它的工作速度很慢,支持率很低(例如 200k 查询中的 2 次可能需要一天时间)
在我的情况下,最好的算法是什么?也许我可以用另一种方式解决我的任务?