集群方式类似用户行为来自频繁项集

时间:2016-01-19 17:46:00

标签: machine-learning classification

我想在交易数据集上聚类类似用户的行为。什么是最简单/最好的算法?

假设我有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,T5

T = 1..n for transactions 
U = 1..m for users 
T = 1..l for items 

1 个答案:

答案 0 :(得分:1)

这取决于您对“相似”的定义。根据您的描述,我认为您希望构建一个每个用户一行的数据框;每个项目都是该框架中的一列。数据值指示该用户是否已购买该项目(True / False或1/0)。

现在你需要决定“相似”是什么意思。您可以通过运行一些k-means测试来查看看起来合理的内容,或者可能是随机森林或朴素的贝叶斯来帮助您做出相似性决策。

完成该研究后,请编写一个适合您“相似”感觉的亲和力函数。构建连接用户的图表,边权重是这两个用户之间的亲和力。现在,您几乎可以使用任何非谱聚类方法来获得您想要的效果;一个体面的层次聚类可能会为您提供一系列可供选择的聚类。