大数据:运用Hash思维做聚类,不需要训练的平衡聚类

应用场景:

现在有大量的用户行为数据,样本如下:
用户A:‘网页登录’->‘选择商品A’->‘购买’
用户B:‘手机登录’->‘进入游戏中心’->‘开始玩斗地主’

这些都是用户单次登录后的行为数据流。需要将类似行为的用户数据流简单聚类,存储到不同的分区,方便后续的进一步分析。

面临问题:

  1. 用户行为太多,上千种:‘选择’,‘浏览’,‘管理’,‘玩耍’
  2. 不了解数据分布情况,不希望做数据分析
  3. 只希望简单实现,不希望用Kmeans等方法分类

解决思路:

  1. 解决分类问题,可以采用数据库常用方法Hash的思路

  2. 解决聚类问题,可以采用Kmeans的思路

具体实现步骤:

  1. 用户行为编号词典:
    [网页登录,手机登录,浏览选择,购买,游戏中心,玩斗地主]
    [1,1,1,1,1,1]

  2. 生成用户行为特征数组
    用户A: ‘网页登录’->‘选择商品A’->‘购买’
    用户B:‘手机登录’->‘进入游戏中心’->‘开始玩斗地主’
    用户A:[1,0,1,1,0,0]
    用户B:[0,1,0,0,1,1]

  3. 事前随机生成K值,依据需要的分区数量
    K值A

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
BIRCH层次聚类算法是一种适用于大规模数据集的聚类算法,相对于K-means和DBSCAN,BIRCH的应用并不广泛,但它具有一些独特的优势。BIRCH算法适用于数据量大且类别数目较多的情况,其运行速度很快,只需对数据集进行单遍扫描就能进行聚类,这是在数据量庞大的情况下的一个重要优势。 BIRCH算法的设计考虑了在大规模数据集上聚类的精确性和最小化I/O代价之间的平衡。它能够识别数据集中数据分布的不均衡性,将稠密区域中的数据聚类,将稀疏区域中的数据视为异常点并移除。此外,BIRCH是一种增量聚类方法,每个数据点的聚类决策都基于已处理的数据点,而不是全局数据点。 BIRCH算法的核心是生成CF Tree,其中步骤1是关键,其他步骤是为优化聚类结果而进行的。与K-Means和Mini Batch K-Means不同,BIRCH算法可以不需要输入类别数目K值,而是根据CF元组的组数确定最终的聚类数目K。如果输入了K值,那么CF元组将按照距离大小进行合并。 此外,BIRCH算法还提供了一些重要概念和方法。n_clusters参数可以控制输出的聚类结果的粒度,如果取None,则输出CF Tree的最细粒度聚类结果;如果是整数值,则通过AgglomerativeClustering按照簇之间距离最近的原则合并最近的簇,直到达到指定的簇数。BIRCH还提供了transform方法,用于计算样本点到所有簇中心的距离。 总结来说,BIRCH层次聚类算法是一种适用于大规模数据集的聚类算法,具有快速运行和自适应聚类数目的特点。它通过生成CF Tree并利用其中的信息进行聚类,能够在平衡聚类精确性和效率的同时处理大规模数据集。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值