聚类
着凉的石头
持续学习持续成长
展开
-
KMean聚类算法及其改进
KMean聚类算法是一种比较简单而且常用的聚类算法,该算法有以下特点:聚类数目的一定的;选择一个样本的最近聚类时,需要将所有聚类的距离都计算一遍,然后选择最近的聚类作为该样本所属的类别,考虑到以上特点,会存在以下问题:首先,如果对数据样本集合不了解,K的选择会有一定的随机性,K的选择关乎聚类质量和计算效率,其次,与所有聚类集合都进行计算,这原创 2013-09-15 12:33:31 · 2540 阅读 · 0 评论 -
streaming kmean cluster 聚类算法实现和分析
主要介绍下streaming kmeans的算法思想,虽然项目中没有用到,但其中的思想还是很有借鉴意义的,感兴趣的可以搜论文原文看看。从streaming可以看出,算法是基于流式的,文件中的数据只参与计算一次,算法对加入一篇文档到新的类别和产生新类的代价分别进行评估,当满足一定的阈值才会将文档添加到聚类中去或者产生新的聚类。算法和常见的kmeans算法主要有如下区别:原创 2013-10-14 23:50:00 · 3971 阅读 · 0 评论 -
Kmeans的改进-kmeans++算法的聚类中心初始点选取和蓄水池采样算法
kmeans算法存在的一个问题是初始中心的选取是随机的,造成聚类的结果也是随机的,一般的做法是进行多次重复整个聚类过程,然后选取聚类效果好的。Kmeans++算法可以很好的解决初始点的选取问题,本文简单进行了总结和实现,并结合kmeans++算法提到了蓄水池算法在ClouderaML中的两个应用。原创 2014-02-15 18:17:10 · 8037 阅读 · 1 评论 -
聚类(一)pyspark 实现特征的ID化
项目中需要实现一个简单的聚类,初步衡量了下样本数量在2000W左右,第一次写spark还是14年的时候,而且都是基于java实现的模型算法,这次就简单用pyspark实现了特征的Id化, 即将字符串类型的特征转为数字表示的Id。这个在模型中相对比较常见, 比较主要的点应该是使用broadcast广播了特征和id的映射关系。 #!/usr/bin/env python#-*-coding:u原创 2016-04-25 21:16:21 · 2427 阅读 · 0 评论