Mahout主要有协同过滤、聚类和分类三种算法的实现。现在我们就用Mahout来实现经典的Kmeans聚类算法。并且在Hadoop平台上跑出个结果!...
分类:
编程语言 时间:
2015-04-05 16:03:20
阅读次数:
329
算法过程如下:1)从N个文档随机选取K个文档作为质心2)对剩余的每个文档测量其到每个质心的距离,并把它归到最近的质心的类3)重新计算已经得到的个各类的质心4)迭代2~3步直至新的质心与原质心相等或小于指定阈值,算法结束优点:1.算法快速,简单 2.对大数据集有较高的效率并且是可伸缩性的 ...
分类:
编程语言 时间:
2015-04-01 11:05:33
阅读次数:
149
在用聚类算法如k-means对数据进行聚类处理的时候,按照一般的处理方法,需要将每个数据跟其他所有的元素进行比较,计算相似度,然后才能聚类。假定有N个元素,则需计算N*(N-1)/2 次,当N非常大的时候,则非常消耗时间,这种时候,可以使用K-d树数据结构,对所有数据进行重新组织,构成一棵而叉树。k...
分类:
编程语言 时间:
2015-03-19 18:02:21
阅读次数:
135
看到 程序员的自我修养 – SelfUp.cn 里面有Spark MLlib之K-Means聚类算法。
但是是java 语言的,于是我按照例程用Scala写了一个,分享在此。
由于在学习 spark mllib 但是如此详细的资料真的很难找,在此分享。
测试数据
1
2
3
4
5
6
7...
分类:
编程语言 时间:
2015-03-18 18:00:39
阅读次数:
466
作者:daniel-D 在机器学习和数据挖掘中,我们经常需要知道个体间差异的大小,进而评价个体的相似性和类别。最常见的是数据分析中的相关分析,数据挖掘中的分类和聚类算法,如 K 最近邻(KNN)和 K 均值(K-Means...
分类:
其他好文 时间:
2015-03-09 21:02:05
阅读次数:
236
1、任意选取K个对象作为初始聚类中心(O1,O2,…Oi…Ok)。 2)将余下的对象分到各个类中去(该对象与哪一个聚类中心最近就被分配到哪一个聚类簇中); 3)对于每个类(Oi)中,顺序选取一个Or,重复步骤2,计算用Or代替Oi后的误差E=各个点到其对应的中心点欧式距离之和。选择E最小的那个O.....
分类:
编程语言 时间:
2015-03-08 11:39:58
阅读次数:
193
1、Preface因为一直在做的是聚类算法的研究,算是总结了一些心得,这里总结些知识性与思路性的东西,我想在其他地方也是很容易的找到类似的内容的。毕竟,世界就是那么小。
声明:本文比较不适合没有DM基础的人来阅读。我只是胡乱的涂鸦而已2、聚类算法在DM里的聚类算法里,有基于划分的算法,基于层次的算法,基于密度的算法,基于网格的算法,基于约束的算法。
其中每一种基于的算法都会衍生出一至几种算法...
分类:
编程语言 时间:
2015-03-07 22:50:05
阅读次数:
265
Preface在相关聚类算法的实现过程中,用python语言实现,会经常出现array和matrix的混淆,这里做个总结。array数组numpy中最基本(默认)的类型是array,他的相关操作都是按元素操作的即用作数值计算当中(按元素操作有+,-,,/,*等)。相乘举例: from numpy import *
>>> a=array([1,2])
>>> a
ar...
分类:
其他好文 时间:
2015-03-07 01:02:12
阅读次数:
46655
首先介绍聚类中的层次聚类算法。层次法又分为凝聚的层次聚类和分裂的层次聚类。 凝聚的方法:也称自底向上的方法,首先将每个对象作为单独的一个聚类,然后根据性质和规则相继地合并相近的类,直到所有的对象都合并为一个聚类中,或者满足一定的终止条件。经典的层次凝聚算法以AGNES算法为代表,改进的层次凝聚算法....
分类:
编程语言 时间:
2015-03-06 15:27:35
阅读次数:
144
图1 聚类算法分类图聚类分析是按照一定的性质和规律将事物进行分类的,就是将类内相似性最大化,将类间相似性最小化的一种数据基本分析方法。
分类:
编程语言 时间:
2015-03-05 22:08:55
阅读次数:
119