从频繁项集聚类相似用户行为

我想对交易数据集中的相似用户行为进行聚类。有什么最简单/最好的算法可以做到这一点吗?

假设我有1000笔用户购买交易。我需要根据购买的物品来聚类相似用户。

这是我数据集的一部分

    T1  U1  T1,T2,T3,T4    T2  U2  T7,T5,T1    T3  U3  T1,T3,T2,T9    T4  U4  T9,T2,T5    T5  U5  T2,T5    T6  U6  T7,T8    T7  U7  T1,T5,T4    T8  U8  T5,T3,T1,T9    T9  U9  T9,T2    T10 U10 T1,T7,T6,T5T = 1..n for transactions U = 1..m for users T = 1..l for items 

回答:

这取决于你对“相似”的定义。从你描述的情况来看,我认为你需要构建一个数据框架,每个用户一行,每个项目作为该框架的一列。数据值表示该用户是否购买了该项目(True / False 或 1 / 0)。

现在你需要决定“相似”的含义。你可以通过运行几次k-means测试来看看什么看起来合理,或者使用随机森林或朴素贝叶斯来帮助你做出相似性决策。

一旦你完成了这些研究,编写一个适合你对“相似”感觉的亲和函数。构建一个连接用户的图形,边权重是这两个用户之间的亲和度。现在你可以使用几乎任何非谱聚类方法来得到你想要的结果;一个不错的层次聚类可能会给你提供一系列可供选择的聚类。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注