mahout系列之---谱聚类
1.构造亲和矩阵W
2.构造度矩阵D
3.拉普拉斯矩阵L
4.计算L矩阵的第二小特征值(谱)对应的特征向量Fiedler 向量
5.以Fiedler向量作为kmean聚类的初始中心,用kmeans聚类
亲和矩阵 :W_ij=exp(-(d(s_i,s_j)/2o^2)) d(s_i,s_j) = ||s_i,s_j||. o 为事先设定的参数。
度矩阵:D_ii =sum(w_i)
规范相似矩阵:D^(-1/2)*W*D^(1/2) ,即:W(i,j)/(D(i,i))^1/2*(D(j,j))^1/2
计算(D-W)*x=lamd*D*x 的第二小特征值
Mahout 流程:
亲和矩阵格式
i,j,value
AffinityMatrixInputJob 输出格式
i vector
构造度矩阵(亲和矩阵,i行元素求和作为返回向量i列的值)
MatrixDiagonalizeJob
VectorCache 将向量存储在HDFS中
VectorMatrixMultiplicationJob 向量矩阵相乘
求矩阵的特征值:SSVDSolver (分布式SVD),默认是DistributedLanczosSolver(兰索斯分解器)
将U矩阵归一化
UnitVectorizerJob.runJob(data, unitVectors);
UnitVectorizerJob 归一化矩阵
输入矩阵V,输入矩阵U
v_ij = u_ij / sqrt(sum_j(u_ij * u_ij)
归一化后的U矩阵中i行的最大值作为特征向量的i列的值,以该向量作为种子生成初始中心。
Kmeans 聚类,生成最终的簇。
最新文章
- iOS web remote debug 正确的姿势
- NOIp2016 十连测 round1
- Liferay 6.2 改造系列之十二:修改Portal设置页面表单内容
- table点击一行显示下一行的特效
- P - Shopaholic
- 2014年10本月微软MVP应用程序启动!
- Linux系统监控命令
- mysql查询锁表及解锁
- 这是一个测试,测试markdown语法
- asp.netcore 深入了解配置文件加载过程
- neutron--ml2 plugin
- Spring学习之旅(八)Spring 基于AspectJ注解配置的AOP编程工作原理初探
- 三层构架和 MVC的区别和理解
- 将mssql数据库高版本迁移到低版本
- propsData 选项 全局扩展的数据传递
- tensorflow实战系列(一)
- Windows 下 Git 安装与初始配置
- MAC层作用
- 《转载》图解Tomcat类加载机制
- wpf(使用定时器)使用定时器操作UI界面
热门文章
- x264源代码简单分析:x264_slice_write()
- Struts 2 之类型转换器
- 自己动手实现一个Android Studio插件
- SSH深度历险(七) 剖析SSH核心原理(一)
- 【Android应用开发】 Android 崩溃日志 本地存储 与 远程保存
- 网站开发进阶(四十三)html中,路径前加“/” 与不加“/”的区别
- path和classpath的区别
- pyinstaller相关错误
- 为何写flash的时候要地址左移一位?
- Java中封装性的使用