【无监督学习之聚类】

在这里插入图片描述
曾梦想执剑走天涯,我是程序猿【AK】

在这里插入图片描述

目录

  • 简述概要
  • 知识图谱
      • 1. K-Means聚类
      • 2. 层次聚类(Hierarchical Clustering)
      • 3. DBSCAN(Density-Based Spatial Clustering of Applications with Noise)
      • 4. 谱聚类(Spectral Clustering)
      • 评估聚类效果

简述概要

了解无监督学习之聚类

知识图谱

无监督学习中的聚类是一种将数据集中的对象分组的算法,使得同一组(簇)内的对象比其他组的对象更相似。聚类的目标是发现数据中的内在结构,而不是基于预先定义的标签。以下是几种常见的聚类算法及其原理:

1. K-Means聚类

K-Means是最常用的聚类算法之一。它的目标是将数据点划分为K个簇,使得每个簇内的点之间的距离尽可能小,而簇间的距离尽可能大。

  • 算法步骤

    1. 随机选择K个数据点作为初始的簇中心(质心)。
    2. 将每个数据点分配给最近的簇中心,形成K个簇。
    3. 重新计算每个簇的质心,即簇内所有点的均值。
    4. 重复步骤2和3,直到簇中心不再发生变化或达到预定的迭代次数。
  • 优点:简单、易于实现,计算效率相对较高。

  • 缺点:需要预先指定K值,对初始质心选择敏感,可能收敛到局部最优解。

2. 层次聚类(Hierarchical Clustering)

层次聚类通过构建一个层次结构来组织数据点,可以生成树状图(树状图)来表示数据点之间的层次关系。

  • 算法步骤

    1. 将每个数据点视为一个单独的簇。
    2. 计算所有簇之间的距离,合并距离最近的两个簇。
    3. 更新簇的距离矩阵。
    4. 重复步骤2和3,直到所有数据点合并为一个簇。
  • 优点:不需要预先指定簇的数量,可以生成树状图来展示数据结构。

  • 缺点:计算复杂度较高,不适合大规模数据集。

3. DBSCAN(Density-Based Spatial Clustering of Applications with Noise)

DBSCAN是一种基于密度的聚类算法,它可以发现任意形状的簇,并且能够识别噪声点。

  • 算法步骤

    1. 对于每个数据点,计算其邻域(在给定半径ε内)内的点数。
    2. 如果一个点的邻域内点数超过某个阈值minPts,则将其标记为核心点。
    3. 将所有直接密度可达的核心点归为一个簇,并递归地将所有从核心点可达的点加入该簇。
    4. 重复步骤3,直到没有新的点可以加入任何簇。
  • 优点:能够处理噪声和异常值,发现任意形状的簇。

  • 缺点:对参数ε和minPts的选择敏感,可能难以确定最佳参数。

4. 谱聚类(Spectral Clustering)

谱聚类是一种基于图论的聚类方法,它通过分析数据的相似性矩阵的特征来发现簇。

  • 算法步骤

    1. 构建数据的相似性矩阵,通常使用高斯相似性函数。
    2. 对相似性矩阵进行归一化处理,得到邻接矩阵。
    3. 计算邻接矩阵的特征值和特征向量,选择前K个最大的特征值对应的特征向量。
    4. 在这些特征向量上应用K-Means或其他聚类算法。
  • 优点:能够发现任意形状的簇,对噪声不敏感。

  • 缺点:计算复杂度较高,需要选择合适的相似性函数和邻接矩阵的构建方法。

评估聚类效果

聚类效果的评估通常依赖于一些指标,如轮廓系数(Silhouette Coefficient)、戴维斯-邦丁指数(Davies-Bouldin Index)和Calinski-Harabasz指数等。这些指标可以帮助我们理解簇的紧密程度和分离程度。

在实际应用中,选择合适的聚类算法和参数需要根据数据的特性和具体问题来决定。此外,聚类结果的解释和验证也是聚类分析中的重要步骤。在Java中,可以使用如Weka、Apache Mahout等库来实现上述聚类算法。



                                                                                                         ---- 永不磨灭的番号:我是AK



在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个实时波形图的封装demo(QT)(qcustomplot)

前言: 封装的一个实时波形图的类,可以直接提升使用。 提供了接口,可以更改颜色,样式,等等 参考: Qt Plotting Widget QCustomPlot - Introduction 另外参考了一个大神的作品,链接没找到。 项目…

#13Maven打包生成MD5校验文件的两种方式

目录 1、checksum-maven-plugin 2、maven-antrun-plugin 1、checksum-maven-plugin <plugin><groupId>net.ju-n.maven.plugins</groupId><artifactId>checksum-maven-plugin</artifactId><version>1.2</version><executions&g…

线路覆冰加重导线舞动风险,输电线路导线舞动在线监测装置保障运行安全

2月21日&#xff0c;山东烟台迎来强降雪天气&#xff0c;国网烟台供电公司紧急部署&#xff0c;组织运维人员联合智能巡检设备对重要变电站和输电线路进行巡视&#xff0c;确保电网安全稳定运行。 “雨雪天气给输电线路造成一定的影响&#xff0c;尤其是雨雪加上冰冻&#xff0…

NIST正式发布网络安全框架 2.0最终版:相比之前两个版本的六大重大变化

2月26日美国国家标准与技术研究院 (NIST) 正式发布了更新后的网络安全框架 (CSF)&#xff0c;这是其降低网络安全风险的里程碑式指导文件。新的 2.0 版本专为所有行业部门和组织类型而设计&#xff0c;从最小的学校和非营利组织到最大的机构和公司&#xff0c;无论其网络安全的…

Nodejs+vue汽车保养美容管理系统vscode前后端分离项目

汽车美容保养管理系统后台采用nodejs语言开发,前台页面和后台管理页面使用vue等技术开发,使用MySql作为数据持久化存储工具对汽车美容保养管理系统的用户等角色权限对应的功能等进行存储。采用vsocde集成IDE对汽车美容保养管理系统统进行开发,整合系统的各个模块。 拟开发的汽车…

[回归指标]R2、PCC(Pearson’s r )

R2相关系数 R2相关系数很熟悉了&#xff0c;就不具体解释了。 皮尔逊相关系数&#xff08;PCC&#xff09; 皮尔逊相关系数是研究变量之间线性相关程度的量&#xff0c;R方和PCC是不同的指标。R方衡量x和y的接近程度&#xff0c;PCC衡量的是x和y的变化趋势是否相同。R方是不…

Mac OS 制作可引导安装器并重新安装系统

Mac 使用 U盘或移动固态硬盘制作可引导的安装器&#xff08;以 Monterey 为例&#xff09; 本教程参考 Apple 官网相关教程 创建可引导 Mac OS 安装器 重新安装 Mac OS 相关名词解释 磁盘分区会将其划分为多个单独的部分&#xff0c;称为分区。分区也称为容器&#xff0c;不同…

Windows PowerShell 命令行历史记录补全

Windows 命令行历史记录补全 使用 powershell 安装PSReadLine 2.1.0 Install-Module PSReadLine -RequiredVersion 2.1.0检查是否存在配置文件 Test-path $profile # 为 false 则执行命令创建 New-item –type file –force $profile编辑配置文件 notepad $profile# 输入如下…

备战蓝桥杯---树形DP基础3

上一次我们讲了二叉苹果树&#xff0c;现在我们加一点难度&#xff0c;从二叉变成了多叉苹果树。 这样子我们就不可以直接按照上次的方法DP&#xff0c;我们其实可以发现&#xff0c;我们可以用类似背包的思想求解&#xff0c;这就是所谓的树上背包。 我们先加进第一个儿子来…

鸿蒙Harmony应用开发—ArkTS声明式开发(挂载卸载事件)

挂载卸载事件指组件从组件树上挂载、卸载时触发的事件。 说明&#xff1a; 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 onAppear onAppear(event: () > void) 组件挂载显示时触发此回调。 卡片能力&#xff1a; …

go语言魔法技能go:linkname

我们在看Go语言的源码时&#xff0c;经常会看到一些特别的注释&#xff0c;比如&#xff1a; //go:build //go:linkname //go:nosplit //go:noescape //go:uintptrescapes //go:noinline //go:nowritebarrierrec等等&#xff0c;这些特别的注释其实是Go编译器的指示指令。这里…

VUE实现Office文档在线编辑,支持doc/docx、xls/xlsx、ppt/pptx、pdf等

1.微软提供的在线Office预览&#xff08;只能预览&#xff0c;不能编辑&#xff09; https://view.officeapps.live.com/op/view.aspx?src服务器上文档地址&#xff08;http开头&#xff09; 2.国内在线Office方案&#xff1a; 腾讯文档、石墨文档、飞书 优势&#xff1a;跨…

Linux红帽rhce认证多少钱?考个RHCE难不难?

Linux作为开源操作系统的佼佼者&#xff0c;已经广泛应用于各个领域。红帽认证工程师(Red Hat Certified Engineer&#xff0c;简称RHCE)作为Linux领域权威的认证之一&#xff0c;自然成为了众多IT从业者追求的目标。那么&#xff0c;RHCE认证的培训费用是多少?考取这一认证又…

Linux的条件变量

条件变量 条件变量本身不是锁&#xff0c;但是它可以造成线程阻塞。通常于互斥锁配合使用。给多线程提供一个会和的场合。 使用互斥量保护共享数据使用条件变量可以造成线程阻塞&#xff0c;等待某个条件的发生&#xff0c;当条件满足的时候解除阻塞。 条件变量的两个动作&a…

python 基础知识点(蓝桥杯python科目个人复习计划55)

今日复习内容&#xff1a;做题 例题1&#xff1a;体育健将 问题描述&#xff1a; 小蓝作为班级里的体育健将&#xff0c;他被安排在校运会时参加n个体育项目&#xff0c;第i个体育项目参赛需要耗时ai分钟&#xff0c;赛后休息需要bi分钟&#xff08;这意味着当他参加完这场比…

【AIGC大模型】InstantID 赏析

论文地址&#xff1a;https://arxiv.org/abs/2401.07519 InstantID 主页&#xff1a;https://instantid.github.io/ Demo &#xff1a;https://huggingface.co/spaces/InstantX/InstantID code&#xff1a; InstantID/InstantID: InstantID : Zero-shot Identity-Preserving…

计算机组成原理-第一/二章 概述和数据的表示和运算【期末复习|考研复习】

文章目录 前言第一章 计算机组成原理 概述及各种码1.1 计算机硬件的基本组成1.1.1 存储器1.1.2 运算器1.1.3 控制器 1.2 计算机的工作过程1.3 计算机的性能指标1.4 各个字长区别与联系 第二章 数据的表示与运算2.1 ASCII码2.2 各种码2.3 浮点数 总结 前言 给大家整理了一下计算…

雅特力AT32L021首款低功耗MCU震撼登场

雅特力于2月28日正式发布AT32L021首款入门级低功耗MCU&#xff0c;搭配不同容量Flash、SRAM&#xff0c;提供7种封装类型共21个型号选择&#xff0c;最小封装面积仅3x3mm。为降低能耗&#xff0c;延长设备运作时间&#xff0c;AT32L021系列支持多种能耗模式和休眠模式&#xff…

Mysql Day07

存储过程 -- 存储过程基本语法 -- 创建 create procedure p1() begin select count(*) from student; end; -- 调用 call p1(); -- 查看 select * from information_schema.ROUTINES where ROUTINE_SCHEMA itcast; show create procedure p1; -- 删除 drop procedure if exis…

TCP/UDP模型:2024/2/29

作业1&#xff1a;TCP模型 服务器端&#xff1a; #include <myhead.h> #define SER_IP "192.168.199.129" #define SER_PORT 8899int main(int argc, const char *argv[]) {//1.创建用于连接的套接字文件int sfdsocket(AF_INET,SOCK_STREAM,0);if(sfd-1){per…