可视化下级调研:
分布式聚类问题
方法:分片/分级/分密度/网格。
mapreduce篇
基于Mapreduce的迭代依赖评估系统(k-means,基于采样技术)。
优化点:提取子集特征,通过子集中心聚类原始数据集。
三个mapreduce阶段:原始数据集采样
mapper中样本聚类,合并到一个reducer中。合并算法:WMC(基于权重合并聚类),DMC(基于分布式合并聚类)。
通过生成的k个点构造Voronoi图,分割原始的数据集。
多选k-means
线性(等权重)的聚类,只保留最佳结果。
(并非是设计了一个多选的k-means算法,而单纯的在不同的质心组中同时进行多个k-means。)Map操作计算不同的点和预设质心之间的距离。Reduce操作更新质心。每轮迭代用TWCV(度量各个点到组质心的距离)度量,越低越好。
裁剪TWCV更低的组。再交换相似的质心。
最后通过RSDS(超参数调优随机搜索)和ADGP(群体对不相似性平均值)构造新的质心。
MR-DBSCAN :mapreduce版本DBSCAN
优化点:新的基于代价的分区方法,来考虑点的密度。三阶段,端到端。数据分区,依据空间特征。
本地聚类,独立的进行组分区。
全局合并,构造归并映射和重标签。
合并映射:先找出交叉的分区,再计算全局聚类并且构建一个从本地聚类到全局聚类的映射。
重标签:通过参考全局ID替换本地聚类ID和识别所有点的类型,调整本地聚类的中间结果。MR-ABC:mapreduce版本ABC(人工蜂群)
优化点:最小化欧氏距离(平方)优化大数据聚类过程。更新聚类质心,评估适配性。先生成一个初始解决方案。
更新蜂群质心值。
通过欧氏距离平方和来计算和评估适配性。(mapreduce加速计算)
旁观者蜜蜂选择质心值来生成被雇佣蜜蜂的更佳适配性,并更新。
重复直到轮次达到阈值。蚁群优化算法:MBSC(大数据语义聚类),也是基于mapreduce。
基于语义内容,涉及一个mapreduce工作。Map阶段,将数据记录分块(chunk)。
设计k-v对,k:路径长度,值:节点集合。遍历过程不丢弃任何节点记录。
每一步,map都会读取信息素(pheromone)并计算群相似性(swarm similarity),转化为概率值,用来决定选择还是放弃一条记录。实现把相似数据记录分进相同的类。
reduce阶段,靠蚂蚁收集所有数据块的方案,并更新下一轮的信息素值。
基于mapreduce的频谱(spectral)聚类
原理:评估稀疏矩阵的特征值。用mapreduce加速矩阵相似性和其他参数的计算过程。计算相似矩阵(mapreduce)
计算k个最小特征向量(Lanczos算法,求解厄米矩阵本征问题)
并行k-means.分成两步:
1. map:计算每个点的最近质心。
2. combiner函数组合相同质心的部分样本。k是质心,v是点列表。
3. reduce:收集相同质心的点,并通过计算每个根据质心构造的点集的平均值,来更新质心值。迭代直到质心稳定。通过聚类,并行结合信息瓶颈(IB)
原理:用IB理论分层聚类来决定每个Map计算节点的质心。
多map单reduce。
数据分片,每个片在一个map中独立使用IB聚类构造低一级质心。
所有低级质心在reduce任务中聚集起来,构造一个新的数据集。再对新数据集用一次IB聚类。
(twister)Bow:结合了并行聚类(Parc)和忽略采样(SnI)
为了减少io和网络开销。数据从分布式文件系统分发到map节点,每个节点计算数据元素的kv。
每个reduce节点处理k相同的数据:归一化,做插入聚类,每个reducer生成一个𝛽-cluster
算法构造一个pair:k是reduce的描述,v是簇的描述。
𝛽-cluster合并,互相交叠。
spark篇
- Parallel Kernel Kmean
难泵,太多了,急需出成果,后面不记录了。欢迎联系主播交流