当前位置: 首页 > 面试题库 >

聚类算法有哪几种?选择一种详细描述其计算原理和步骤。

华宣
2023-03-14
本文向大家介绍聚类算法有哪几种?选择一种详细描述其计算原理和步骤。相关面试题,主要包含被问及聚类算法有哪几种?选择一种详细描述其计算原理和步骤。时的应答技巧和注意事项,需要的朋友参考一下

聚类分析计算方法主要有: 层次的方法(hierarchical method)、划分方法(partitioning method)、基于密度的方法(density-based method)、基于网格的方法(grid-based method)、基于模型的方法(model-based method)等。其中,前两种算法是利用统计学定义的距离进行度量。

k-means 算法的工作过程说明如下:首先从n个数据对象任意选择 k 个对象作为初始聚类中心;而对于所剩下其它对象,则根据它们与这些聚类中心的相似度(距离),分别将它们分配给与其最相似的(聚类中心所代表的)聚类;然 后再计算每个所获新聚类的聚类中心(该聚类中所有对象的均值);不断重复这一过程直到标准测度函数开始收敛为止。一般都采用均方差作为标准测度函数. k个聚类具有以下特点:各聚类本身尽可能的紧凑,而各聚类之间尽可能的分开。

其流程如下:

(1)从 n个数据对象任意选择 k 个对象作为初始聚类中心;

(2)根据每个聚类对象的均值(中心对象),计算每个对象与这些中心对象的距离;并根据最小距离重新对相应对象进行划分;

(3)重新计算每个(有变化)聚类的均值(中心对象);

(4)循环(2)、(3)直到每个聚类不再发生变化为止(标准测量函数收敛)。

优点: 本算法确定的K 个划分到达平方误差最小。当聚类是密集的,且类与类之间区别明显时,效果较好。对于处理大数据集,这个算法是相对可伸缩和高效的,计算的复杂度为 O(NKt),其中N是数据对象的数目,t是迭代的次数。一般来说,K<

缺点: 1. K 是事先给定的,但非常难以选定;2. 初始聚类中心的选择对聚类结果有较大的影响。

 类似资料:
  • 本文向大家介绍常见的搜索算法有哪几种?相关面试题,主要包含被问及常见的搜索算法有哪几种?时的应答技巧和注意事项,需要的朋友参考一下 广度优先搜索(BFS) 深度优先搜索(DFS) 爬山法(Hill Climbing) 最佳优先算法(Best-first search strategy)  回溯法 (Backtracking) 分支限界算法(Branch-and-bound Search Algor

  • BIRCH的全称是利用层次方法的平衡迭代规约和聚类(Balanced Iterative Reducing and Clustering Using Hierarchies),名字实在是太长了,不过没关系,其实只要明白它是用层次方法来聚类和规约数据就可以了。刚才提到了,BIRCH只需要单遍扫描数据集就能进行聚类,那它是怎么做到的呢? BIRCH算法利用了一个树结构来帮助我们快速的聚类,这个数结构类

  • 本文向大家介绍请详细描述一下线程从创建到死亡的几种状态都有哪些?相关面试题,主要包含被问及请详细描述一下线程从创建到死亡的几种状态都有哪些?时的应答技巧和注意事项,需要的朋友参考一下 考察点:JAVA线程状态1. 新建( new ):新创建了一个线程对象。 2. 可运行( runnable ):线程对象创建后,其他线程(比如 main 线程)调用了该对象 的 start ()方法。该状态的线程位于

  • 本文向大家介绍JQuery中有几种类型的选择器相关面试题,主要包含被问及JQuery中有几种类型的选择器时的应答技巧和注意事项,需要的朋友参考一下 1.层叠选择器$(“form input”) 2.基本过滤选择器 :first :last :not() 3.内容过滤选择器:odd:eq():animated 4.可视化过滤选择器 :hidden :visible 5.属性过滤选择器:div[id]

  • 本文向大家介绍请详细描述AJAX的工作原理相关面试题,主要包含被问及请详细描述AJAX的工作原理时的应答技巧和注意事项,需要的朋友参考一下 AJAX是用于网页和服务器进行异步通信的技术。 基本原理是,通过XMLHttpRequest向服务器发送异步请求,获得服务器返回的数据,利用js更新页面。 其核心功能在于XMLHttpRequest对象。 创建一个ajax的步骤大致可以分为以下几步 创建XHM

  • 本文向大家介绍c语言描述回文数的三种算法,包括了c语言描述回文数的三种算法的使用技巧和注意事项,需要的朋友参考一下 题目描述 注意:(这些回文数都没有前导0) 1位的回文数有0,1,2,3,4,5,6,7,8,9 共10个; 2位的回文数有11,22,33,44,55,66,77,88,99 共9个; * 请问:n位的回文数有多少个?请编写一个递归函数来解决此问题!!! 【输入形式】一行一个正整数