# 聚类系列(一)——什么是聚类?

目前在做聚类方面的科研工作, 看了很多相关的论文, 也做了一些工作, 于是想出个聚类系列记录一下, 主要包括聚类的概念和相关定义、现有常用聚类算法、聚类相似性度量指标、聚类评价指标、 聚类的应用场景以及共享一些聚类的开源代码

下面正式进入该系列的第一个部分,什么是聚类?

文章目录

  • 前言
  • 什么是聚类
    • 示例问题1:
    • 示例问题2:
  • 聚类的研究内容和问题


前言

目前, 机器学习/深度学习研究的热火朝天,归根到底可以将其分为两大类: 有监督学习和无监督学习(当然也有半监督学习,弱监督学习等等)。

有监督学习和无监督学习的区别就是是否样本可以去训练和学习。当有足够的训练样本,有大量强大模型可以用于服务于不同的任务,比如用于手写数字识别的CNN及其变体、用于空气质量预测的LSTM及其变体。

但如果没有样本标签呢?对于分类任务来说, 如何对样本进行分类? 如何将样本划分为不同相似的子集?这就是聚类问题!

什么是聚类

聚类就是研究如何根据样本相似性和优化准则,将样本划分为不同的子集/类/簇等,使得簇内的样本的相似性最大,簇间的样本相似性最小。

这里的样本可以是不同领域的不同类型的数据,可以是真实物理世界中的点、线、面数据,也可以是进行抽象、虚拟的点、线面数据。举例来说: 包含经纬度的PM2.5站点,居民移动的轨迹点,车辆轨迹线数据,建筑物面数据,以及用户、西瓜等抽象点数据

聚类在多个领域都有着广泛应用,比如数据挖掘(聚类是数据挖掘的经典研究之一)、人类行为模式探测、图像处理与分析、生物科学等。

同样以经典数据集为例:鸢尾花(iris)分类问题

示例问题1:

iris数据集包含了不同类型的花的样本数据,但是不知道具体每个样本花所属的类型,每个样本数据有花萼长度、花萼宽度、花瓣长度和花瓣宽度等四个特征。现在需要根据样本特征将iris数据划分为不同的相似样本簇。

思路: 在利用聚类问题解决此问题的方法为: 根据花的特征计算不同花之间的相似性,然后利用聚类算法根据相似性计算结果将不同的样本点划分为不同的组(亦可成为簇, 子集等), 位于相同簇内的样本即被认为是具有相似属性的花。

示例问题2:

空间上存在不同的空间点数据, 如图1所示, 在位置点数据其他属性, 只知道其空间坐标的前提夏, 如果将图上的点划分为不同的组?

思路: 该问题是典型的空间聚类问题, 根据点数据的空间坐标计算不同点之间的距离作为度量点数据之间相似性的标准,然后根据相似性度量结果对不同的空间点数据划分为不同的簇, 其中簇内的样本点之间的距离最小(相似性最小), 簇间的样本距离最大(相似性最大)
在这里插入图片描述

聚类的研究内容和问题

通过上述介绍可知, 在聚类研究中, 不管研究的样本数据的类型是空间数据还是非空间(属性)数据, 聚类的核心内容是相同的, 包括两个部分:

  • 度量样本数据之间的相似性(距离)。
  • 基于相似性度量结果, 采用某种准则将样本划分为不同的簇。

而根据聚类的核心研究内容, 又具体需要研究以下内容:

  • 如何度量样本之间的相似性? 如何度量不同类型的样本之间的相似性?
  • 如何确定样本簇的个数?
  • 如何区别簇内数据和噪声数据?
  • 如何识别不同密度的簇?
  • 如何识别不同任意形状的簇?
  • 如何确定识别的簇结果的质量? 即如何度量聚类结果的有效性?
  • 如何识别具有弱连接的簇(颈问题和链问题)?
  • 如何减少参数设置对聚类结果的影响?
  • 如何减少人为的干预?

后续会针对上述问题, 以及目前典型的聚类算法进行详细介绍, 并给出部分实现代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/173603.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

设置 wsl 桥接模式

一、环境要求 Win10/Win11 专业版&#xff0c;并已安装 Hyper-V 二、具体步骤 打开 Hyper-V 管理器 创建虚拟交换机 WSL Bridge 修改wsl配置文件 .wslconfig .wslconfig 文件所在路径如下&#xff1a; C:\Users\<UserName>\.wslconfig若 .wslconfig 文件不存在&am…

苍穹外卖遇到的问题—员工分页查询

项目场景&#xff1a; 系统中的员工很多的时候&#xff0c;如果在一个页面中全部展示出来会显得比较乱&#xff0c;不便于查看&#xff0c;所以一般的系统中都会以分页的方式来展示列表数据。而在我们的分页查询页面中, 除了分页条件以外&#xff0c;还有一个查询条件 “员工姓…

美团面试:微服务如何拆分?原则是什么?

尼恩说在前面 在40岁老架构师 尼恩的读者交流群(50)中&#xff0c;最近有小伙伴拿到了一线互联网企业如美团、字节、如阿里、滴滴、极兔、有赞、希音、百度、网易的面试资格&#xff0c;遇到很多很重要的面试题&#xff1a; 微服务如何拆分&#xff1f; 微服务拆分的规范和原则…

行情分析——加密货币市场大盘走势(11.21)

大饼昨日笔者已经离场&#xff0c;目前下跌形态破坏&#xff0c;等待机会再入场&#xff0c;下跌是必然的&#xff0c;只是现在从MACD日线来看是要上涨的&#xff0c;上涨趋势没有打破&#xff0c;等待机会入场。 MACD日线多单策略&#xff1a;入场37500 止盈38000-38600 止损…

MySQL InnoDB 引擎底层解析(二)

6.2.InnoDB 的表空间 表空间是一个抽象的概念&#xff0c;对于系统表空间来说&#xff0c;对应着文件系统中一个或多个实际文件&#xff1b;对于每个独立表空间来说&#xff0c;对应着文件系统中一个名为表名.ibd 的实际文件。大家可以把表空间想象成被切分为许许多多个页的池…

AC修炼计划(AtCoder Beginner Contest 329)

传送门&#xff1a;&#xff33;&#xff4b;&#xff59; Inc, Programming Contest 2023&#xff08;AtCoder Beginner Contest 329&#xff09; - AtCoder A&#xff0c;B&#xff0c;C&#xff0c;D 这四道题比较简单&#xff0c;就不多叙述。 E - Stamp 这题是一道比较…

Java 代码 格式化插件

Java代码 格式化插件 文章目录 Java代码 格式化插件一. 前言1.1 官网1.2 概念1.3 格式化更变规则 二. 使用2.1 插件添加2.2 使用 一. 前言 1.1 官网 spring-javaformat-maven-plugin 1.2 概念 一组可应用于任何 Java 项目以提供一致的“Spring”风格的插件。该套件目前包括…

Selenium自动化测试 —— 通过cookie绕过验证码的操作!

验证码的处理   对于web应用&#xff0c;很多地方比如登录、发帖都需要输入验证码&#xff0c;类型也多种多样&#xff1b;登录/核心操作过程中&#xff0c;系统会产生随机的验证码图片&#xff0c;进行验证才能进行后续操作 解决验证码的方法如下&#xff1a; 1、开发做个…

metersphere 创建场景, 自动动态变换参数值,实现接口自动化测试。

创建场景 创建产品变量 添加数值 添加后点击确定 点击右下角 号 点击 循环控制器 写循环 创建/导入接口 选择运行环境&#xff0c; 没有的话新建一个 需要点击引用环境 保存后点击 调试 成功做到每次请求的参数是列表里的 10

北邮22级信通院数电:Verilog-FPGA(10)第十周实验 实现移位寄存器74LS595(仿真方法验证)

北邮22信通一枚~ 跟随课程进度更新北邮信通院数字系统设计的笔记、代码和文章 持续关注作者 迎接数电实验学习~ 获取更多文章&#xff0c;请访问专栏&#xff1a; 北邮22级信通院数电实验_青山如墨雨如画的博客-CSDN博客 使用FPGA开发板验证的教程&#xff0c;请参考 北邮…

【蓝桥杯省赛真题44】Scratch像素画板 蓝桥杯少儿编程scratch图形化编程 蓝桥杯省赛真题讲解

scratch像素画板 第十四届青少年蓝桥杯scratch编程省赛真题 一、题目要求 编程实现 1.点击绿旗,角色、背景如图所示(三种颜色调色盘、清除图标及方格角色请自行创建,点击绿旗后立刻呈现下图效果); 2.用鼠标点击红色调色盘,红色调色盘变为选中状态(如下图所示),此时鼠…

不夸张地说,这是我见过最通俗易懂的,pytest入门基础教程!

Pytest简介 Pytest is a mature full-featured Python testing tool that helps you write better programs.The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries. 通过官方网站介绍…

树与二叉树堆:堆

堆的概念&#xff1a; 一般是把数组的数据在逻辑结构上看成一颗完全二叉树&#xff0c;如下图所示。 注意&#xff1a;别将C语言中的堆和数据结构的堆混为一谈&#xff0c;本文所讲的数据结构的堆是一种完全二叉树&#xff0c;而C语言中的堆其实是一种内存区域的划分 堆的分类…

【链表的说明、方法---顺序表与链表的区别】

文章目录 前言什么是链表链表的结构带头和不带头的区别 链表的实现&#xff08;方法&#xff09;遍历链表头插法尾插法任意位置插入一个节点链表中是否包含某个数字删除链表某个节点删除链表中所有关键字key清空链表所有节点 ArrayList 和 LinkedList的区别总结 前言 什么是链…

【Ubuntu】Ubuntu arm64 部署 Blazor Server 应用

部署步骤 发布安装运行环境&#xff1a;dotnet-sdk&#xff08;必装&#xff09;、aspnetcore-runtime、dotnet-runtime安装证书设置环境变量&#xff1a;临时变量、当前用户永久变量、所有用户的永久变量运行&#xff1a;终端运行、后台运行 基本情况 开发系统环境 系统&am…

RabbitMQ消息队列快速入门

RabbitMQ消息队列快速入门 初始MQ MQ全称为Message Queue&#xff0c;即消息队列&#xff0c;是在消息的传输过程中保存消息的容器。它是典型的生产者-消费者模型。 生产者不断向消息队列中生产消息&#xff0c;消费者不断的从队列中获取消息。消息的生产和消费都是异步的&am…

SQL DELETE 语句:删除表中记录的语法和示例,以及 SQL SELECT TOP、LIMIT、FETCH FIRST 或 ROWNUM 子句的使用

SQL DELETE 语句 SQL DELETE 语句用于删除表中的现有记录。 DELETE 语法 DELETE FROM 表名 WHERE 条件;注意&#xff1a;在删除表中的记录时要小心&#xff01;请注意DELETE语句中的WHERE子句。WHERE子句指定应删除哪些记录。如果省略WHERE子句&#xff0c;将会删除表中的所…

战备器材管理系统-部队物资仓库管理系统

一、项目背景 传统的战备物资管理&#xff0c;一般依赖于一个非自动化的、以纸张文件为基础的系统来记录、追踪进出的货物&#xff0c;完全由人工实施仓库内部的管理&#xff0c;因此仓库管理的效率极其低下。对此&#xff0c;我们运用无线射频技术(RFID)的仓库智能管理系统&am…

Fiddler抓包看这篇就够了:fiddler设置弱网测试

弱网测试 概念&#xff1a;弱网看字面意思就是网络比较弱&#xff0c;我们通称为信号差&#xff0c;网速慢。 意义&#xff1a;模拟在地铁、隧道、电梯和车库等场景下使用APP &#xff0c;网络会出现延时、中断和超时等情况。 自动化测试相关教程推荐&#xff1a; 2023最新自…

基于单片机加热炉多参数检测和PID炉温系统

**单片机设计介绍&#xff0c; 基于单片机加热炉多参数检测和PID炉温系统 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的公交安全预警系统可以被设计成能够实时监测公交车辆的行驶状态&#xff0c;并在发生异常情况…