学习数据挖掘的朋友,对分类算法和聚类算法都很熟悉。无论是分类算法还是聚类算法,都有许多具体的算法来实现具体的数据分析需求。很多时候,我们难以判断选择分类或者聚类的场合是什么。我们最直观的概念是,分类和聚类都是把某个被分析的对象划分到某个类里面,所以觉得这两种方法实际上是差不多一回事。然而当我们学习了许多具体算法之后再回来看,分类和聚类所实现的数据分析功能实际上是大相径庭的,他们之间不仅仅有算法上的具体差异,更重要的是,甚至他们的应用领域和所解决的具体问题都不一样。

1. 类别是否预先定义是最直观区别

算法书上往往这样解释二者的区别:分类是把某个对象划分到某个具体的已经定义的类别当中,而聚类是把一些对象按照具体特征组织到若干个类别里。虽然都是把某个对象划分到某个类别中,但是分类的类别是已经预定义的,而聚类操作时,某个对象所属的类别却不是预定义的。所以,对象所属类别是否为事先,是二者的最基本区别。而这个区别,仅仅是从算法实现流程来看的。

2. 二者解决的具体问题不一样

分类算法的基本功能是做预测。我们已知某个实体的具体特征,然后想判断这个实体具体属于哪一类,或者根据一些已知条件来估计感兴趣的参数。比如:我们已知某个人存款金额是10000元,这个人没有结婚,并且有一辆车,没有固定住房,然后我们估计判断这个人是否会涉嫌信用欺诈问题。这就是最典型的分类问题,预测的结果为离散值,当预测结果为连续值时,分类算法可以退化为计量经济学中常见的回归模型。分类算法的根本目标是发现新的模式、新的知识,与数据挖掘数据分析的根本目标是一致的。

聚类算法的功能是降维。假如待分析的对象很多,我们需要归归类,划划简,从而提高数据分析的效率,这就用到了聚类的算法。很多智能的搜索引擎,会将返回的结果,根据文本的相似程度进行聚类,相似的结果聚在一起,用户就很容易找到他们需要的内容。聚类方法只能起到降低被分析问题的复杂程度的作用,即降维,一百个对象的分析问题可以转化为十个对象类的分析问题。聚类的目标不是发现知识,而是化简问题,聚类算法并不直接解决数据分析的问题,而最多算是数据预处理的过程。

3. 有监督和无监督

分类是有监督的算法,而聚类是无监督的算法。有监督的算法并不是实时的,需要给定一些数据对模型进行训练,有了模型就能预测。新的待估计的对象来了的时候,套进模型,就得到了分类结果。而聚类算法是实时的,换句话说是一次性的,给定统计指标,根据对象与对象之间的相关性,把对象分为若干类。分类算法中,对象所属的类别取决于训练出来的模型,间接地取决于训练集中的数据。而聚类算法中,对象所属的类别,则取决于待分析的其他数据对象。

4. 数据处理的顺序不同

分类算法中,待分析的数据是一个一个处理的,分类的过程,就像给数据贴标签的过程,来一个数据,我放到模型里,然后贴个标签。聚类算法中,待分析的数据同时处理,来一堆数据过来,同时给分成几小堆。因此,数据分类算法和数据聚类算法的最大区别是时效性问题。在已有数据模型的条件下,数据分类的效率往往比数据聚类的效率要高很多,因为一次只是一个对象被处理,而对于聚类结果来说,每当加入一个新的分析对象,类别结果都有可能发生改变,因此很有必要重新对所有的待分析对象进行计算处理。

5. 典型的分类算法与聚类算法

典型的分类算法有:决策树,神经网络,支持向量机模型,Logistic回归分析,以及核估计等等。聚类的方法有,基于链接关系的聚类算法,基于中心度的聚类算法,基于统计分布的聚类算法以及基于密度的聚类算法等等。

AI中分类算法与聚类算法相关推荐

  1. Interview:算法岗位面试—10.29下午上海某电子(偏传统ML算法,外企)数据结构算法+晚上国内某保险公司(偏AI算法,世界500强)技术面试之分类算法、回归算法、聚类算法等细节考察

    ML岗位面试:10.29下午上海某电子(偏传统ML算法,外企)数据结构算法+晚上国内某保险公司(偏AI算法,世界500强)技术面试之分类算法.回归算法.聚类算法等细节考察 Interview:算法岗位 ...

  2. 【机器学习算法】聚类分析-2 聚类算法的分类,层次聚类算法的选择

    目录 聚类算法的分类 层次聚类的算法, 单一聚类法(single link) 完全链结法 平均链结法 中心链结法 Ward's法 我的主页:晴天qt01的博客_CSDN博客-数据分析师领域博主 目前进 ...

  3. matlab中的聚类算法,kmeans聚类算法matlab matlab 聚类算法silhouette

    怎样用matlab实现多维K-means聚类算法小编觉得一个好的周末应该是这样的:睡到中午醒来,在床上躺着玩两个小时手机,起床随便吃点东西,下午去超市买一大堆零食,五六点的时候去约小伙伴们吃火锅烧烤, ...

  4. 图解机器学习算法(13) | 聚类算法详解(机器学习通关指南·完结)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/34 本文地址:https://www.showmeai.tech/article-d ...

  5. 《MATLAB智能算法30个案例》:第20章 基于遗传模拟退火算法的聚类算法

    <MATLAB智能算法30个案例>:第20章 基于遗传模拟退火算法的聚类算法 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB智能算法30个案例分析& ...

  6. 单链聚类算法_聚类算法总结

    1      什么是聚类算法? 聚类算法就是根据特定的规则,将数据进行分类.分类的输入项是数据的特征,输出项是分类标签,它是无监督的. 常见的聚类规则包括:1)基于原型的,例如有通过质心或中心点聚类, ...

  7. 聚类算法——层次聚类算法

    每篇一句: You must strive to find your own voice. Because the longer you wait to begin, the less likely ...

  8. 机器学习算法-KMeans聚类算法解析及伪代码实现。

    机器学习算法-KMeans聚类算法解析及伪代码实现. 徐小狗在文末附上了几条大神们关于KMeans聚类算法的博文,欲详细研究请前往浏览~ 作为初学者,许多地方可能笨拙或有误,希望有大神看到后给予优化和 ...

  9. 聚类算法--近邻聚类算法(C++实现)

    聚类算法–近邻聚类算法(C++实现) 写在前面: ​ 最近邻聚类算法,应该不是KNN,也不是K-means,就是一个特别基础的算法,但是在CSDN没有找到C++实现的这个算法,只有一个python写的 ...

最新文章

  1. 蓝桥杯 【基础练习】 特殊回文数
  2. sql 2008数据库日志清理(转)
  3. [luoguP2774] 方格取数问题(最大点权独立集)
  4. 07、08 条件渲染、列表渲染
  5. JBoss AS 7:自定义登录模块
  6. IEDevToolBar - 一个分析网页的有用的工具
  7. ubuntu 9.04 更新源_ubuntu更换中国源
  8. .NET 5中的EF Core 5数据迁移:在单独的库中并自动部署
  9. easymock参数_EasyMock捕获参数
  10. 软件测试学习视频 分享
  11. Pencil:开源的GUI原型设计工具
  12. Abaqus CAE2022启动时报错“The desired vendor daemon is down”
  13. 教你用HTML做一个超链接按钮
  14. 编译报错unable to initialize decompress status for section .debug_info
  15. APACHE+PHP+MySQL 绿色版安装教程
  16. 台式win7f1到f12热键取消_Windows 7旗舰版系统中键盘F1到F12快捷键的作用详解
  17. 人工智能课程实训方案
  18. Hyper-V网络设置实现宿主机.虚拟机之间互联互通
  19. 消除数据库表中的重复组
  20. 2023年Java面试题_MySQL

热门文章

  1. 学会了C语言可以开发出很多东西吗?
  2. 利用threading库实现python多线程以多线程音频实时输入为例
  3. 超 Nice 的表格响应式布局小技巧
  4. 通达信资金净流入公式_通达信资金净流入指标公式(选股公式/源码)
  5. 选股公式关于尾盘内容选股公式最新的中线股票指标
  6. 2015年阿里巴巴实习面试经验
  7. 平流式初沉池贮砂斗计算_第一章沉砂池的设计与计算-精品PPT课件最新版
  8. vue列表项吸顶 js+css两种 骚操作
  9. IOS 剪切、复制、选中的提示为英文改为中文 解决方法
  10. Unity好的UI框架