• 在传统的K-Means算法中,我们在每轮迭代时,要计算所有的样本点到所有的质心的距离,这样会比较的耗时。
  • elkan K-Means算法就是从这块入手加以改进。它的目标是减少不必要的距离的计算。
  • elkan K-Means利用了两边之和大于等于第三边,以及两边之差小于第三边的三角形性质,来减少距离的计算。
  • 第一种规律是对于一个样本点x和两个质心μj1,μj2。如果我们预先计算出了这两个质心之间的距离D(j1,j2),则如果计算发现2D(x,j1)≤D(j1,j2),就可以知道D(x,j1)≤D(x,j2)。此时我们不需要再计算D(x,j2)。
  • 第二种规律是对于一个样本点x和两个质心μj1,μj2。我们可以得到

D(x,j2)≥max{0,D(x,j1)−D(j1,j2)}。

  • 利用上边的两个规律,elkan K-Means比起传统的K-Means迭代速度有很大的提高。但是如果样本的特征是稀疏的,有缺失值的话,这个方法就不适用了,此时某些距离无法计算,则不能使用该算法。

elkan K-Means相关推荐

  1. kmeans改进 matlab,基于距离函数的改进k―means 算法

    摘要:聚类算法在自然科学和和社会科学中都有很普遍的应用,而K-means算法是聚类算法中经典的划分方法之一.但如果数据集内相邻的簇之间离散度相差较大,或者是属性分布区间相差较大,则算法的聚类效果十分有 ...

  2. OpenCV的k - means聚类 -对图片进行颜色量化

    OpenCV的k - means聚类 目标 学习使用cv2.kmeans()数据聚类函数OpenCV 理解参数 输入参数 样品:它应该的np.float32数据类型,每个特性应该被放在一个单独的列. ...

  3. OpenCV官方文档 理解k - means聚类

    理解k - means聚类 目标 在这一章中,我们将了解k - means聚类的概念,它是如何工作等. 理论 我们将这个处理是常用的一个例子. t恤尺寸问题 考虑一个公司要发布一个新模型的t恤. 显然 ...

  4. 文献记录(part89)--I-k-means-+:An iterative clustering algorithm based on an enhanced k -means

    学习笔记,仅供参考,有错必究 关键词:k均值:解决方案改进:准确的k均值:迭代改进 I-k-means-+:An iterative clustering algorithm based on an ...

  5. K means 图片压缩

    k-means的基本原理较为清晰,这里不多赘述,本次博客主要通过基础的k means算法进行图像的压缩处理. 原理分析 在彩色图像中,每个像素的大小为3字节(RGB),可以表示的颜色总数为256 * ...

  6. 为了联盟还是为了部落 | K means

    1. 问题 人类有个很有趣的现象,一群人在一起,过一段时间就会自发的形成一个个的小团体.好像我们很擅长寻找和自己气质接近的同类.其实不只是人类,数据也有类似情况,这就是聚类(Clustering)的意 ...

  7. k均值聚类算法(K Means)及其实战案例

    算法说明 K均值聚类算法其实就是根据距离来看属性,近朱者赤近墨者黑.其中K表示要聚类的数量,就是说样本要被划分成几个类别.而均值则是因为需要求得每个类别的中心点,比如一维样本的中心点一般就是求这些样本 ...

  8. k means聚类算法_一文读懂K-means聚类算法

    1.引言 什么是聚类?我们通常说,机器学习任务可以分为两类,一类是监督学习,一类是无监督学习.监督学习:训练集有明确标签,监督学习就是寻找问题(又称输入.特征.自变量)与标签(又称输出.目标.因变量) ...

  9. simple k means

    //选择初始的k个质点 for (int j = initInstances.numInstances() - 1; j >= 0; j--) { instIndex = RandomO.nex ...

  10. k means聚类算法_K-Means 聚类算法 20210108

    说到聚类,应先理解聚类和分类的区别 聚类和分类最大的不同在于:分类的目标是事先已知的,而聚类则不一样,聚类事先不知道目标变量是什么,类别没有像分类那样被预先定义出来. K-Means 聚类算法有很多种 ...

最新文章

  1. TCP/IP详解--第二章
  2. 基于 Quartz 开发企业级任务调度应用--转
  3. C++ const对象仅在文件内有效
  4. Redis入门(二)之数据类型
  5. MapReduce过程卡在reduce处的67%
  6. 最大最小标准化 数值_分享丨实验数据标准化处理方法
  7. 机器人走进开放源代码
  8. sap abap开发从入门到精通_ABAP关键字 IS BOUND, IS NOT INITIAL和IS ASSIGNED的用法辨析
  9. jemalloc 使用
  10. 完整的生产车间管理流程是怎样的?六大步骤分享
  11. 99%的异地恋都会失败,你们凭什么成为那1%?
  12. 【Git】OpenSSL SSL_read: Connection was aborted, errno 10053
  13. 22-Mybatis缓存相关设置对一级缓存和二级缓存的影响
  14. PMP项目管理过程实用表格与应用(实用表格推荐)
  15. VMware Workstation16 安装win10教程
  16. 巅峰相遇:对话阿里AI大牛,用算法改变世界
  17. 新闻稿发布中没题材咋办?
  18. OGNL表达式的用法
  19. simulink模型中的仿真时间和仿真步长的区别
  20. C++ boost库介绍以及开发环境搭建

热门文章

  1. ASP.NET MVC中Area的另一种用法
  2. 服务器未能识别 HTTP 标头 SOAPAction 的值
  3. asp.net页面去调用通过SSL加密的webservice报错
  4. SparkCore-CacheAndCheckpoint-6
  5. nginx 的基本配置
  6. kaldi运行thchs30例子
  7. spring mvc静态资源放行
  8. js 的arguments的一些理解资料
  9. eclipse的控制台显示有问题,关闭Limit console output
  10. 代码文件夹带有红色感叹号_接口测试平台代码实现7:菜单的开发