用于分析具有名义属性的序列数据的数据挖掘方法

机器算法验证 聚类 分类 数据挖掘 序数数据
2022-03-19 16:59:39

有经验的数据挖掘者的问题:

鉴于这种情况:

  • 有N个购物车
  • 每个购物车都装满了来自无限大集合的任意数量的 M 件商品(根据我当前的数据量,该任意数量可以达到 1500 左右的数字)
  • 每个购物车的填充顺序很重要
  • 还有其他属性,例如购物者的地理位置,但这些可以(并且目前)被抛弃,以使算法更简单

我需要:

  • 在特定时间点,仅给定每个购物车中的有序商品集,在没有事先知道类别标签的情况下识别“相似”购物车
  • 在收集到一定数量的数据并且苦力通过数据并分配标签后,创建一个可以快速处理未来看不见的数据的分类器

初步方法:

  • 到目前为止,我的方法一直集中在第一点。我的方法使用 k-means 聚类并通过使用通过计算购物车之间的汉明距离生成的距离矩阵来处理数据的顺序性质。这样,[apple,banana,pear]与[pear,apple,banana]不同,而[apple,banana,pear]与[apple,banana,antelope]的差异较小。k 的适当值是通过研究轮廓系数来确定的。由此生成的集群似乎很有意义,但是随着我的数据集规模扩大,我的方法的运行时间肯定会令人望而却步。

问题:

  • 有人会碰巧对这个问题的新手数据挖掘者有任何建议吗?

编辑更多信息:

  • 我发现了考虑使用 n-gram 特征并成对比较它们的建议。我对此的一个担忧是顺序:如果使用 n-gram 模型,序列的顺序会保持不变吗?此外,我认为这种方法更有可能出现性能问题。
1个回答

我也是一名数据挖掘新手,但我可以建议探索性数据分析始终是一个好的第一步吗?我会看看是否可以为物品分配某种“优先级值”,以预测它们在购物车中出现的时间有多早,因为这样的结果可能允许您使用更简单的模型。对所有拥有物品 X 的购物车进行线性回归(#order in cart/#number of items in cart)这样简单的事情会让您了解这是否可能。假设您发现一定比例的项目总是出现得早或晚,有些似乎是完全随机的:这将指导您以后的模型构建。