聚类算法( clustering algorithm):

在前两章,我们学的是:线性回归,逻辑回归,深度学习(神经网络),决策树,随即森林算法。他们都是监督学习的例子。

在这一章里,我们将学习非监督学习的算法。

什么是聚类算法:

聚类算法是一种无监督学习方法,用于将数据集中的样本分为不同的组或簇,使得同一组内的样本彼此相似,而不同组之间的样本则具有较大的差异性。聚类算法的目标是发现数据中的内在结构,将相似的样本聚集在一起。

 

就像上图这样把我们的得到的数据进行分类,分类到同一个集合中。

K均值聚类(K-means Clustering): 

过程主要分为两步:

第一步:随机确定聚类的中心点,第二步,任取图中的已有的点,根据远近,确定它们属于哪一个聚类,第三步,重新根据这些分类过后的点,重新定位中心点。接着,重复以上的操作。

直到我们确定的中心点,不会再产生任何的移动,这时完成了所有的操作。

我们在重新确定中心点时,我们采用的是取它们的坐标的平均值,得到一个新的中心点 。当我们在确定中心点时,我们可以把多出来的那个点去掉,这是一个方法,另外一个方法就是重新我们的确定我们的中心点的操作。

我们根据体重和身高的数值,把我们的数据均分为三个组。这样我们就可以对于不同的人提供不一样大小的T-shirta。

c^{(i)}指的是从i=1到k的所有的集群。\mu _{k}指的是为k的集群的中心点。\mu _{c^{(i)}}指的就是第i个集群的中心点,这时要做优化,就要用到我们的成本函数式子如下J(c^{(1)},c^{(2)},...c^{(k)},\mu _{c^{(1)}},\mu_{c^{(2)}},...\mu _{c^{(k)}} )=\frac{1}{m}\sum_{i=1}^{k}(x^{(i)}-\mu _{c^{(i)}})^{2},当然我们这里要取得我们的最小值的成本函数。成本函数在这里也可以被称为是失真函数。 

这个图让我们很清晰的看到,在中心点改变时,我们的成本函数明显的变小了,所以说我们的取中心点的操作时正确的,可以让我们找到更加好的中心点。 每一次的迭代,我们的成本函数都会不断的下降,或者保持不变。但如果我们的成本函数发生了上升,那我们的代码中一定出现了bug。

当然,当成本函数不再下降时,那么它已经收敛了,我们需要停止我们的算法。

初始化K-Mean:

K<m,这里的K指的是我们的群集的中心点的个数,m指的是我们的群集点的个数,很明显K<m,但在这里与我们之前不一样的地方在于,之前我们取的是随机点,是在图上的任意点,而我们在这里的初始化的选取中心是从已有的点中选择。

我们会产生多个不同的生成的初始中心,比如下面生成了三个图,我们先计算它们的成本函数,通过成本函数的比较选出我们的成本函数最小的图。J1的值明显远远小于后两个,因为在它之中,每个集群的中心点离集群中的点的距离都非常的小,所以我们就会选择J1的图形。 

我们在这里进行100次的迭代,通过不断的收敛,最后终会得到我们的一个比较小的成本函数值,也就达到了收敛的目标。

选择聚类K的个数: 

如图,我们得到了一幅图,我们要对他们进行分集群,我们每个人有不同的选择。

我们在这里会使用到一个方法:肘方法(elbow method):

 

集群与成本函数构成的函数的样子和手肘一样,我们可以用这个方法得到每个集群K值与J成本函数有关。 

 在实际情况中,我们并不是用肘方法:

我们要注意的应该是每个不同的集群数量对于后期目标的影响。

我们举一个例子,比如我们的衬衫的尺寸大小 ,我们在第一个图中分为三个尺寸,大中小。第二张图中是超大,大,中,小,超小五个尺寸,我们在这里选择的标准,并不是只是看J成本函数的大小,其中更加重要的是,我们要去注意的这样的设置是否是最优解,对于后期是否好。

这就是第一个无监督算法:聚类算法。

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

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

相关文章

C语言结构体详解

1、结构体的声明 结构体是一些值的集合&#xff0c;这些值被称为成员变量。结构体中的每个成员可以是不同类型的变量。 语法&#xff1a; struct tag //关键词 标签 { member- list ;//成员清单 }variable- list ;//变量清单 通常结构体描述的是一个复杂对象&#xff0c;比…

【Linux】多线程概念 | POSIX线程库

文章目录 一、线程的概念1. 什么是线程Linux下并不存在真正的多线程&#xff0c;而是用进程模拟的&#xff01;Linux没有真正意义上的线程相关的系统调用&#xff01;原生线程库pthread 2. 线程和进程的联系和区别3. 线程的优点4. 线程的缺点5. 线程异常6. 线程用途 二、二级页…

2023 re:Invent | Amazon Q 与 Amazon CodeWhisperer 面向企业开发者提效利器

2023 年&#xff0c;以 GPT 为代表的生成式 AI 引爆了新一轮技术热潮&#xff0c;短短一年的时间内&#xff0c;生成式 AI 已经成为科技世界发展的核心。作为云计算的行业风向标盛会 re &#xff0c;本届: Invent 全球大会紧跟生成式 AI 浪潮&#xff0c;推出名为“ Amazon Q ”…

【方法】想要修改PDF文件怎么办?

在工作上&#xff0c;我们经常需要用到PDF文件&#xff0c;但需要修改PDF时&#xff0c;有些小伙伴却不知道怎么办&#xff0c;那就一起来看看以下两个方法吧&#xff01; 方法一&#xff1a;使用PDF编辑器 PDF文件可以通过PDF阅读器或者浏览器在线打开&#xff0c;但无法进行…

【DFS】第十三届蓝桥杯省赛C++ B组《扫雷》(C++)

【题目描述】 小明最近迷上了一款名为《扫雷》的游戏。 其中有一个关卡的任务如下&#xff1a; 在一个二维平面上放置着 n 个炸雷&#xff0c;第 i 个炸雷 (xi,yi,ri) 表示在坐标 (xi,yi) 处存在一个炸雷&#xff0c;它的爆炸范围是以半径为 ri 的一个圆。 为了顺利通过这片…

GIS设计与开发的学习笔记

目录 一、简答题 1.GeoDatabase数据模型结构类型与四种关系。 2.组件式GIS的基本思想是什么&#xff1f; 3.请简述创建空间书签的实现逻辑。 4.请问与地理要素编辑相关的类有哪些&#xff1f;&#xff08;列举至少五个类&#xff09; 5.利用ArcGIS Engine提供的栅格运算工…

电玩体验店怎么计时,佳易王ps5计时计费管理控制系统操作教程

电玩体验店怎么计时&#xff0c;佳易王ps5计时计费管理控制系统操作教程 一、前言 以下软件操作教程以 佳易王电玩计时计费管理系统软件V17.9为例说明 件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、电玩体验馆管理软件在计时的同时可以设置定时提醒&…

大模型第一讲笔记

目录 1、人工智能基础概念全景介绍... 2 1.1 人工智能全景图... 2 1.2 人工智能历史... 2 1.3 人工智能——机器学习... 3 监督学习、非监督学习、强化学习、机器学习之间的关系... 3 监督学习... 4 无监督学习... 5 强化学习... 5 深度学习... 6 2、语言模型的发展及…

视频素材库app推荐的地方在哪里找?

视频素材库app推荐的地方在哪里&#xff1f;这是很多短视频创作者都会遇到的问题。别着急&#xff0c;今天我就来给大家介绍几个视频素材库app推荐的网站&#xff0c;让你的视频创作更加轻松有趣&#xff01; 蛙学网&#xff1a;视频素材库app推荐的首选当然是蛙学网啦&#xf…

OKR如何与组织的整体战略和计划相结合?

OKR&#xff08;Objectives and Key Results&#xff0c;目标与关键成果&#xff09;作为一种流行的目标管理方法&#xff0c;正逐渐成为组织实现战略目标的重要手段。本文将探讨OKR如何与组织的整体战略和计划相结合&#xff0c;从而推动组织的持续发展。 首先&#xff0c;我…

dlib:人脸识别的魔法工具箱

引言 在数字化的世界中&#xff0c;人脸识别技术已经不再是科幻小说的专利&#xff0c;而是我们日常生活中的一部分。从解锁手机到机场安检&#xff0c;人脸识别技术正在逐步改变我们与世界的互动方式。而在这个领域中&#xff0c;有一个名为dlib的英雄&#xff0c;以其强大的功…

LLM之RAG实战(三十三)| 探索RAG在Table的应用

实现RAG是一个挑战&#xff0c;尤其是在有效解析和理解非结构化文档中的表格时&#xff0c;对于扫描的文档或图像格式的文档来说尤其困难。这些挑战至少有三个方面&#xff1a; 扫描文档或图像文档的复杂性&#xff0c;如其多元化的结构、非文本元素以及手写和打印内容的组合&…

前端基础篇-深入了解 Ajax 、Axios

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 Ajax 概述 2.0 Axios 概述 3.0 综合案例 1.0 Ajax 概述 通过 Ajax 可以给服务器发送请求&#xff0c;并获取服务器响应的数据。异步交互是指&#xff0c;可以在不…

InnoDB存储引擎中的锁(整理)

目录 什么是锁 InnoDB存储引擎中的锁 锁的类型 锁的兼容性 一致性非锁定读 一致性锁定读 锁的算法 行锁的三种算法 Phantom Problem&#xff08;幻像问题&#xff09; 锁问题 脏读 不可重复读 丢失更新 死锁 什么是锁 在数据库中锁是为了解决资源争抢的问题&…

Linux操作系统——多线程

1.线程特性 1.1线程优点 创建一个新线程的代价要比创建一个新进程小得多与进程之间的切换相比&#xff0c;线程之间的切换需要操作系统做的工作要少很多线程占用的资源要比进程少很多能充分利用多处理器的可并行数量在等待慢速I/O操作结束的同时&#xff0c;程序可执行其他的计…

先进的人工智能促进更好的业务沟通

提升商务沟通效率&#xff1a;了解SaneBox智能电子邮件管理工具 在现代商业环境中&#xff0c;有效的沟通至关重要。 先进的人工智能技术&#xff0c;特别是在电子邮件管理方面&#xff0c;正在改变企业处理沟通的方式&#xff0c;提高效率和个性化。 下面&#xff0c;我们深入…

【1】THIS IS NOT PROLIFIC PL2303. PLEASE CPMTACT YOUR SUPPLIER

0x01 问题描述 连接COM口连接不上&#xff0c;出现THIS IS NOT PROLIFIC PL2303. PLEASE CPMTACT YOUR SUPPLIER.如下图 0x02 问题解决 1、分析后&#xff0c;因为是windows 11 系统&#xff0c;就装一下驱动。右键单击--》属性 2、更新驱动程序--》浏览我的电脑以查找驱动程序…

电脑中了.[nicetomeetyou@onionmail.org].faust勒索病毒,关于数据恢复

文件后缀变成.[nicetomeetyouonionmail.org].faust了怎么办&#xff1f; 当文件后缀变成.[nicetomeetyouonionmail.org].faust时&#xff0c;通常意味着你的计算机系统已经受到了Faust勒索病毒的攻击。这种病毒会利用先进的加密算法对你的文件进行加密&#xff0c;并将文件后缀…

整合qq邮箱发送

目录 &#x1f32e;1.获取qq授权码 &#x1fad3;2.引入依赖 &#x1f9c8;3.配置mail信息 &#x1f95e;4.创建实现类 &#x1f956;5.测试 1.获取qq授权码 点击开启服务&#xff0c;发送信息获取授权码 2.引入依赖 <!--邮件--><dependency><groupId&…

my2sql —— go语言版binlog解析及闪回工具

之前学习过python语言版binlog解析及闪回工具 MySQL闪回工具简介 及 binlog2sql工具用法 最近听同事介绍有了新的go语言版的my2sql。优点是不需要安装一大堆依赖包&#xff0c;直接可以安装使用&#xff0c;并且解析更高效&#xff0c;试用一下。 一、 下载安装 1. 软件下载 …