260 likes | 817 Views
Affinity Propagation 介绍及 GStrAP 使用方法. 报告人:陈文强. 1 Affinity Propagation 算法背景. 目录. 2 基于 GraphLab 的实现: GStrAP. 3 GStrAP 使用. Affinity Propagation 介绍. Clustering by Passing Messages Between Data Science 315, 972–976, February 2007
E N D
Affinity Propagation介绍及GStrAP使用方法 报告人:陈文强 27
1 Affinity Propagation 算法背景 目录 2 基于GraphLab的实现:GStrAP 3 GStrAP使用 27
Affinity Propagation 介绍 Clustering by Passing Messages Between Data Science 315, 972–976, February 2007 Points.Brendan J. Frey and Delbert Dueck University of Toronto 27
Affinity Propagation 介绍 线性V.S. 非线性聚类模型 x1 x1 x2 x2 Non-linear model Linear model 27
Affinity Propagation 介绍 线性V.S. 非线性聚类模型 27
Affinity Propagation 介绍 Clustering datasets – Joensuuhttp://cs.joensuu.fi/sipu/datasets/ 27
Sending availabilities Candidateexemplar k r(i’,k) Supporting data instance i’ a(i,k) Making decisions: Data instance i Affinity Propagation 算法 Sending responsibilities Candidateexemplar k Competing candidateexemplar k’ r(i,k) a(i,k’) Data instance i 27
Affinity Propagation 算法 现有开源软件 Provided by Brendan J. Frey and Delbert Dueck, 通过矩阵的矢量化编程, 提供了一定程度上的并行化计算 APCluster Scikit-learn 27
Affinity Propagation 算法 矢量化编程 27
Affinity Propagation 算法 A simple comparison of the clustering algorithms 27
基于GraphLab的实现 Distributed GraphLab: A Framework for Machine Learning in the Cloud 27
基于GraphLab的实现 How do we programgraph computation? “Think like a Vertex.” -Malewicz et al. [SIGMOD’10] 27 14
基于GraphLab的实现GAS Decomposition Apply Gather (Reduce) Scatter Accumulate information about neighborhood Apply the accumulated value to center vertex Update adjacent edgesand vertices. User Defined: User Defined: User Defined: Apply( , Σ) Gather( ) Σ Scatter( ) Y’ Y Y’ Y’ Σ Y’ Y Y Y Y Σ1+Σ2 Σ3 Update Edge Data & Activate Neighbors ParallelSum + + … + 15 27 Y Y
基于GraphLab的实现 Mirror Mirror Master Mirror Machine 1 Machine 2 从邻接节点与 当前节点相连的边 收集availability, a(i,k`)以及 responsibility,r(i`,k) Y’ Y’ Y Y Y’ Y’ Y Σ Σ1 Σ2 Y + + + Machine 3 Machine 4 Σ3 Σ4 更新与邻接节点 相连的边上的 a(i,k)以及r(i,k) 16 27
实验结果与分析 本文的实验运行于3.10GHz的4核处理器上,内存为8GB. 采用流形学习工具MANI合成的数据3D Clusters 、Aggregation、Flame以及Pathbased作为数据集 27
实验结果与分析 27
实验结果与分析 27
GraphLab安装 1、Installing boost+zlib. 2、Install cmake . 3、Install openmpi + jdk 4、Clone GraphLab from github git clone https://github.com/graphlab-code/graphlab.git 5、configure and compile graphlab. 27
GStrAP使用 计算样本之间的相似度 输入数据格式: 执行similarity_calc,计算相似度 : 27
GStrAP使用 计算样本之间的相似度 输出数据格式: 27
GStrAP使用 对样本进行聚类 输入数据格式: 执行affinity_propagation进行聚类: 输出数据格式: 27
GStrAP使用 获取GStrAP帮助信息: 27
关于GStrAP的更多信息 软件主页: Stable: http://datamining.xmu.edu.cn/software/gstrap/ 27
谢谢! 27