`
run_xiao
  • 浏览: 195398 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

mahout之3-mean shift聚类

阅读更多

 

3.Mean Shift 聚类

 

Mean Shift 聚类原理

(1). 欧式空间 X 中,有一个有限点的集合 S K 是一个 flat 核,即

 

简单说来, K 标记 x 是否在以原点为圆心,半径为 lamda 的球体内。

 

(2). x 处的样本均值表示为

 

即在以 x 为圆心的球体内所有样本点的均值,而 m(x) –x 即是传说中的“均值飘移”,而 mean-shift 算法是一个迭代过程,每次迭代中用样本点所在球体内的样本均值代替原样本点(圆心),至“均值飘移”小于某阈值。听起来是不是有点似曾相识的感觉? Kmeans?

 

实际上, MeanShift 算法可以以下三种方式扩展成更通用的聚类算法:

(1). 使用其他 kernel

(2). 每个点可以赋予不同权重

(3). 可以在空间 X 的任意子集上进行飘移,而 S 保持不变

而且在某些限定条件下成为我们所熟知的一些聚类方法,比如最大熵、 Kmeans 等方法。同时 mean shift 还可以看成对数据密度的梯度估计,用于寻找概率密度函数的波峰,因此提供了一种无需指定聚类数量的更自然的聚类方法。有兴趣的看官可以看一下 PAMI 上两篇论文:《 Mean Shift, Mode Seeking, and Clustering 》和《 Mean Shift A Robust Approach Toward Feature Space Analysis

 

mahout采用类似于Canopy聚类的方法的方法实现,使用MeanShiftCanopy对象表示mean shift的窗口(即球体或核函数),并使用Canopy聚类的T1表示球体的半径,T2表示两个canopy是否足够近而需要合并。

聚类过程如下:

       (1)初始化,每个数据点代表一个MeanShiftCanopy

       (2)根据T1计算每个Canopy的mean shift向量,表示其质心;任意两个Canopy质心距离小于T2,则合并之。

1
1
分享到:
评论

相关推荐

    mahout-core-0.9.jar+mahout-core-0.8.jar+mahout-core-0.1.jar

    这个压缩包包含的是Mahout项目不同版本的核心库,分别是mahout-core-0.9.jar、mahout-core-0.8.jar和mahout-core-0.1.jar。这些版本的差异在于功能的完善、性能的优化以及对新特性的支持。 1. **Mahout核心功能**:...

    apache-mahout-distribution-0.11.0-src.zip

    在"apache-mahout-distribution-0.11.0-src.zip"这个压缩包中,您将找到Mahout 0.11.0版本的源代码,这对于开发者和研究者来说是一个宝贵的资源,他们可以深入理解算法的内部工作原理,进行定制化开发或优化。...

    mahout-distribution-0.9.tar.gz

    "mahout-distribution-0.9.tar.gz"是Apache Mahout的0.9版本的发行包,包含了完整的源代码、文档和所需的依赖库。 **一、Mahout的背景与目标** Apache Mahout项目始于2008年,旨在简化大规模机器学习过程,提供可...

    mahout-0.9-cdh5.5.0.tar.gz

    mahout-0.9-cdh5.5.0.tar.gz

    maven_mahout_template-mahout-0.8

    《Apache Maven与Mahout实战:基于maven_mahout_template-mahout-0.8的探索》 Apache Maven是一款强大的项目管理和依赖管理工具,广泛应用于Java开发领域。它通过一个项目对象模型(Project Object Model,POM)来...

    mahout-core-0.9.jar

    mahout-core-0.9.jar,支持版本hadoop-2.2.x,由mahout-distribution-0.9.tar.gz源码构建生成jar包。

    mahout-distribution-0.9-src.zip

    标题中的"mahout-distribution-0.9-src.zip"指的是Mahout项目在0.9版本的源代码分布,这对于开发者来说是一个宝贵的资源,可以深入理解其内部实现并进行定制化开发。 Apache Mahout的核心特性主要体现在以下几个...

    mahout-distribution-0.5-src.zip mahout 源码包

    mahout-distribution-0.5-src.zip mahout 源码包

    mahout-distribution-0.12.2-src.tar.gz

    这个压缩包“mahout-distribution-0.12.2-src.tar.gz”是Mahout项目的一个源码版本,版本号为0.12.2,提供给开发者进行深度研究和定制化开发。在解压后的文件“apache-mahout-distribution-0.12.2”中,我们可以找到...

    mahout-integration-0.7

    mahout-integration-0.7mahout-integration-0.7mahout-integration-0.7mahout-integration-0.7

    mahout-examples-0.10.1-job.jar

    mahout-examples-0.10.1-job.jar 已经包含分词程序,替换掉mahout默认的jar包

    mahout-distribution-0.10.0-src.tar.gz

    mahout-distribution-0.10.0-src.tar.gz

    mahout-core-0.3.jar

    mahout中需要用到的一个版本jar包:mahout-core-0.3.jar

    mahout-examples-0.9-job.jar(修改版)

    重新编译mahout-examples-0.9-job.jar,增加分类指标:最小最大精度、召回率。详情见http://blog.csdn.net/u012948976/article/details/50203249

    mahout-distribution-0.9含jar包

    "mahout-distribution-0.9含jar包" 是一个包含了Mahout项目0.9版本的预编译二进制文件集合,其中不包含源代码,适合那些希望直接使用Mahout功能而不需要进行编译或开发的用户。 在Mahout 0.9版本中,你可以找到以下...

    mahout-distribution-0.8-src

    在Mahout-distribution-0.8-src这个源代码包中,我们可以深入理解其内部机制,同时也为开发者提供了实现自定义机器学习模型的可能。 一、Mahout 0.8概览 Mahout 0.8 版本是该项目的一个重要里程碑,它包含了丰富的...

    apache-mahout-distribution-0.12.1.tar.gz

    apache-mahout-distribution-0.12.1.tar.gz 开源版本 .

    如何成功运行Apache Mahout的Taste Webapp-Mahout推荐教程-Maven3.0.5-JDK1.6-Mahout0.5

    在Mahout Taste Webapp工程中,需要添加对mahout-examples的依赖,这一步骤是必须的,因为示例代码提供了实际运行推荐系统所必需的组件。 6. 配置推荐引擎的属性 在Mahout Taste Webapp的recommender.properties...

    mahout-distribution-0.7-src.zip

    2. 解压`mahout-distribution-0.7-src.zip`文件到本地目录。 3. 进入解压后的源码目录,执行`mvn clean install`命令进行编译。这会下载依赖项,构建Mahout的jar包。 4. 编译完成后,可以在`target`目录下找到编译...

    mahout-distribution-0.5.tar.gz + 源码

    在"mahout-distribution-0.5.tar.gz"这个压缩包中,包含了Mahout项目0.5版本的所有源代码和相关文件,这对于开发者和学习者来说是一个宝贵的学习资源。在"MiA_SourceCode.zip"中,可能包含了一些特定的示例或教程的...

Global site tag (gtag.js) - Google Analytics