CLIQUE(Clustering In QUEst)是一种简单的基于网格的聚类方法,用于发现子空间中基于密度的簇.CLIQUE把每个维划分成不重叠的区间,从而把数据对象的整个嵌入空间划分成单元.它使用一个密度阈值识别稠密单元和稀疏单元.一个单元是稠密的,如果映射到它的对象数超过该密度阈值. CLIQUE识别候选搜索空间的主要策略是使用稠密单元关于维度的单调性.这基于频繁模式和关联规则挖掘使用的先验性质.在子空间聚类的背景下,单调性陈述如下: 一个k-维(>1)单元c至少有I个点,仅当c的每个(…
目前最快速Kmeans算法,并由java实现!面对很大的K值表现依然很好. 代码地址: https://github.com/Jethu1/fastKmeans #1.这是一个由java实现的的,多线程Kmeans聚类算法: #2.在聚类的选种阶段分别实现了Kmeans++算法和NIPS 2016的文章“Fast and Probably Good Seedings for k-Means”中提出了AFK-MC²算法,该算法改进了k-Means算法中初始种子点的生成方式,使其聚类速度相较于目前最…
http://www.cnblogs.com/zhangchaoyang/articles/2200800.html http://blog.csdn.net/qll125596718/article/details/6895291 BIRCH(Balanced Iterative Reducing and Clustering using Hierarchies)天生就是为处理超大规模(至少要让你的内存容不下)的数据集而设计的,它可以在任何给定的内存下运行.关于BIRCH的更多特点先不介绍,我…
2016-07 java简单实现聚类算法 但是有一个小问题,,,,我其实每次迭代之后(就是达不到我的收敛标准之前,聚类中心的误差达不到指定小的时候),虽然重新算了聚类中心,但是其实我的那些点并没有变,可是这个程序不知道咋回事每次都把我原先随机指定的聚类中心给变成了我算的聚类中心,怎么用,按照指示来就行了,不用读文件(源码全都是可以运行的,反正在我这个几几上是木有错误,才往上贴的,有的不足之处还望批评指正)输出的结果有一堆小数的那是新聚类中心和老的的误差值,在没有达到指定小的时候,是不会停的. /…
学习聚类算法时,参考算法说明随手写的java实现,代码很简单,不多做说明啦,有需要的童鞋可以看看,自己也做个备录. http://files.cnblogs.com/files/yuananyun/%E8%81%9A%E7%B1%BB_DBCAN_Kmeans_Java.rar…
前言 这一系列多线程的文章,一方面是个人对Java现有的多线程机制的学习和记录,另一方面是希望能给不熟悉Java多线程机制.或有一定基础但理解还不够深的读者一个比较全面的介绍,旨在使读者对Java的多线程有一个递增.全面和较深刻的理解,所以在第一部分就集中介绍一些概念和原理,表面看来这些对多线程的使用没有太多关系,但理解这些概念/原理对理解多线程是至关重要的,因为Java的多线程并非是完全独自实现的,它依赖于操作系统命令.CPU机制,并且随着这些基础软硬件的发展而发展,所以请有意向对多线程全面理…
上两篇博客 8皇后以及N皇后算法探究,回溯算法的JAVA实现,递归方案 8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,数据结构“栈”实现 研究了递归方法实现回溯,解决N皇后问题,下面我们来探讨一下非递归方案 实验结果令人还是有些失望,原来非递归方案的性能并不比递归方案性能高 代码如下: package com.newflypig.eightqueen; import java.util.Date; /** * 使用循环控制来实现回溯,解决N皇后 * @author newflydd@…
眼下,SPARK在大数据处理领域十分流行.尤其是对于大规模数据集上的机器学习算法.SPARK更具有优势.一下初步介绍SPARK在linux中的部署与使用,以及当中聚类算法的实现. 在官网http://spark.apache.org/上直接下载编译好的tar安装包能够加快部署速度. spark的执行依赖于scala2.10.4,注意此版本号一定要正确,否则spark不能正确执行. 1.scala的安装非常easy.在官网http://www.scala-lang.org上下载安装包,解压到随意路…
序 由于项目需要,需要对数据进行处理,故而又要滚回来看看paper,做点小功课,这篇文章只是简单的总结一下基础的Kmeans算法思想以及实现: 正文: 1.基础Kmeans算法. Kmeans算法的属于基础的聚类算法,它的核心思想是: 从初始的数据点集合,不断纳入新的点,然后再从新计算集合的“中心”,再以改点为初始点重新纳入新的点到集合,在计算”中心”,依次往复,直到这些集合不再都不能再纳入新的数据为止. 图解: 假如我们在坐标轴中存在如下A,B,C,D,E一共五个点,然后我们初始化(或者更贴切…
接下来对锁的概念再次进行深入的介绍 之前反复的提到锁,通常的理解就是,锁---互斥---同步---阻塞 其实这是常用的独占锁(排它锁)的概念,也是一种简单粗暴的解决方案 抗战电影中,经常出现为了阻止日本人炸桥?炸路?的场景,这只是阻止日本人的一种手段,如果大喊一声TMD滚蛋,日本人就走了,还炸桥干嘛? 用锁是为了线程安全,而不是为了上锁,上锁是一种途径,独占锁则是“上锁”的其中一种形式 如果有更优雅的上锁方式,自然不必要每次都简单粗暴的使用独占锁,不是嘛   从几个维度可以大致分为下面几种 分类…