(5)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—12种聚类算法说明与归纳

目录

一、12种聚类(无监督学习)算法说明和区分比较

聚类算法的类型(一)

​编辑导入函数库

加载数据集

​编辑 (1)K-Means --Centroid models

(2)Mini-Batch K-Means -- Centroid models

(3)AffinityPropagation (Hierarchical) -- Connectivity models

(4)Mean Shift -- Centroid models

聚类后如何标记到原来的数据上面?

(5)Spectral Clustering -- Connectivity models

(6) Ward (Hierarchical) -- Connectivity models

(7) Agglomerative Clustering (Hierarchical) -- Connectivity models

(8) DBSCAN -- Density Models

(9) BIRCH -- Connectivity models

聚类的类型(二)

(10) OPTICS -- Density Models

(11) Gaussian Mixture Model -- Distribution models

(12) HDBSCAN -- Density Models

二、数据科学家及12种聚类(无监督学习)算法简明源代码归纳

1、KMeans 

2、MiniBatchKMeans  

3、 AffinityPropagation

4、MeanShift 

5、 SpectralClustering

6、Ward (Hierarchical) 同下

7、 AgglomerativeClustering

8、DBSCAN 

9、Birch 

10、OPTICS 

11、 GaussianMixture

12、 HDBSCAN


一、12种聚类(无监督学习)算法说明和区分比较

聚类算法的类型(一)

- 连通性模型:顾名思义,这些模型基于数据点在数据空间中越接近,彼此之间的相似性就越高,而距离较远的数据点则相似性较低。这些模型可以采用两种方法。第一种方法是将所有数据点分类为单独的簇,然后随着距离的减小进行聚合。第二种方法是将所有数据点分类为单个簇,然后随着距离的增加进行划分。此外,距离函数的选择是主观的。这些模型非常易于解释,但缺乏处理大型数据集的可扩展性。这些模型的例子是层次聚类算法及其变体。

- 质心模型:这些是迭代聚类算法,其中相似性的概念是通过数据点与簇的质心的距离来推导的。K-Means聚类算法是一种流行的属于这一类的算法。在这些模型中,需要预先指定最终所需的簇的数量,这要求对数据集有先验知识。这些模型通过迭代寻找局部最优解。

- 分布模型:这些聚类模型基于所有簇中的数据点属于同一分布(例如:正态、高斯)的可能性。这些模型往往容易过拟合。这类模型的一个流行例子是期望最大化算法,它使用多元正态分布。

- 密度模型:这些模型在数据空间中搜索数据点密度不同的区域。它将各种不同密度的区域隔离开来,并将这些区域内的数据点分配到同一个簇中。密度模型的流行例子是DBSCAN和OPTICS。

from IPython.display import Image
Image(filename='./Lesson33-cluster.png')

导入函数库

import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import sklearn.cluster as cluster
import time
%matplotlib inline

加载数据集

data = np.load('

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

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

相关文章

DBNet详解及训练ICDAR2015数据集

论文地址:https://arxiv.org/pdf/1911.08947.pdf 开源代码pytorch版本:GitHub - WenmuZhou/DBNet.pytorch: A pytorch re-implementation of Real-time Scene Text Detection with Differentiable Binarization 前言 在这篇论文之前,文字检…

vue2之父子组件BUG

父组件&#xff1a;&#xff08;如果这样写&#xff09; <count-down:start-time"changeStartTime":end-time"changeEndTime"/>则changeStartTime就算写在计算属性里&#xff0c;也可能子组件不会在自动随着父组件的数据更新重新给子组件传值&#x…

微信小程序的图片色彩分析,窃取网络图片的主色调

1、安装 Mini App Color Thief 包 包括下载包&#xff0c;简单使用都有&#xff0c;之前写了&#xff0c;这里就不写了 网址&#xff1a;微信小程序的图片色彩分析&#xff0c;窃取主色调&#xff0c;调色板-CSDN博客 2、 问题和解决方案 问题&#xff1a;由于我们的窃取图片的…

基于Langchain-Chatchat + chatGLM3 轻松在本地部署一个知识库

前面三篇分别讲解了如何在本地环境部署大模型&#xff0c;那么今天简单的通过 Langchain-Chatchat 和 chatGLM3结合在本地环境搭建一套属于自己的大模型知识库。 往期llm系列文章 基于MacBook Pro M1芯片运行chatglm2-6b大模型如何在本地部署chatGLM3基于ChatGLM.cpp实现低成…

论文阅读-通过云特征增强的深度学习预测云工作负载转折点

论文名称&#xff1a;Cloud Workload Turning Points Prediction via Cloud Feature-Enhanced Deep Learning 摘要 云工作负载转折点要么是代表工作负载压力的局部峰值点&#xff0c;要么是代表资源浪费的局部谷值点。预测这些关键点对于向系统管理者发出警告、采取预防措施以…

企业动态 | UFAPKU“金融科技”沙龙走进同创永益——前沿技术在金融科技领域的应用

金融科技作为金融发展的驱动力量&#xff0c;对金融行业有着深远的影响。金融行业通过技术创新和数字化转型&#xff0c;极大地提高了金融服务和产品的效率和便捷性。1月21日&#xff0c;UFAPKU“金融科技”第二期沙龙在北大校友企业同创永益北京总部举办&#xff0c;数十位来自…

python增量同步文件夹中的文件

要增量同步文件夹中的文件&#xff0c;可以使用Python的shutil模块。以下是一个示例代码&#xff0c;它可以将源文件夹中的新增文件复制到目标文件夹中&#xff0c;并保留文件的时间戳和访问权限。 import os import shutil import time# 源文件夹和目标文件夹的路径 src_dir …

请问CTF是什么?请介绍一下关于隐水印的知识特点技术原理应用领域技术挑战

目录 请问CTF是什么&#xff1f; 请介绍一下关于隐水印的知识 特点 技术原理 应用领域 技术挑战 请问CTF是什么&#xff1f; CTF&#xff08;Capture The Flag&#xff0c;夺旗比赛&#xff09;是一种信息安全竞赛&#xff0c;常见于计算机安全领域。这种比赛模拟各种信…

fastjson 导致的OOM

fastjson 导致的OOM 示例代码 public static void main(String[] args) throws Exception {try {List<Integer> list JSONObject.parseArray("[2023,2024", Integer.class);}catch (Exception e){System.err.println("error");}System.out.println…

一文搞懂 springboot 如何融合数据源

1、简介 springboot 支持关系型数据库的相关组件进行配置&#xff0c;包括数据源、连接池、事务管理器等的自动配置。降低了数据库使用的难度&#xff0c;除了 mysql 还支持 Derby、H2等嵌入式数据库的自动配置&#xff0c;MongoDB、Redis、elasticsearch等常用的 NoSQL 的数据…

BGP邻居故障检测

第一种情况:如果AR2和AR4采用直连建立邻居,则排查步骤如下: 1)在AR2和AR4上使用ping x.x.x.x命令检查AR2和AR4用于建立EBGP邻居关系的直连地址连通性是否正常。如果不能ping通。则需要使用二分法从网络层向下层逐层进行排查,首先检查接口地址及路由的可达性,修改完成后,如…

Codeforces Round 914 (Div. 2)(D1/D2)--ST表

Codeforces Round 914 (Div. 2)(D1/D2)–ST表 D1. Set To Max (Easy Version) 题意&#xff1a; 给出长度为n的数组a和b&#xff0c;可以对a进行任意次数操作&#xff0c;操作方式为选择任意区间将区间内值全部变成该区间的最大值&#xff0c; 是否有可能使得数组a等于数组b…

WEB3:互联网发展的新时代

随着科技的飞速发展&#xff0c;互联网已从最初的信息交流平台发展为涵盖了工作、生活、娱乐、教育等众多领域的复杂系统。我们将其称之为“WEB3”&#xff0c;这个名称是对互联网新时代的高度概括&#xff0c;标志着我们已经迈入了WEB3时代。 在WEB3时代&#xff0c;互联网将…

MySQL 函数触发隐式转换应对策略

文章目录 前言1. 环境介绍2. MySQL 5.72.1 执行计划2.2 虚拟列优化2.3 原理解析 3. MySQL 8.03.1 执行计划3.2 函数索引优化3.3 原理解析 前言 MySQL 中&#xff0c;当 SQL 索引字段使用了函数的话&#xff0c;会出现隐式转换的问题&#xff0c;导致索引失效&#xff0c;从而导…

C# CAD界面-自定义窗体(三)

运行环境 vs2022 c# cad2016 调试成功 一、引用 二、开发代码进行详细的说明 初始化与获取AutoCAD核心对象&#xff1a; Database db HostApplicationServices.WorkingDatabase;&#xff1a;这行代码获取当前工作中的AutoCAD数据库对象。在AutoCAD中&#xff0c;所有图形数…

《短链接--阿丹》--技术选型与架构分析

整个短链接专栏会持续更新。有兴趣的可以关注一下我的这个专栏。 《短链接--搭建解析》--立项+需求分析文档-CSDN博客 阿丹: 其实整套项目中的重点,根据上面的简单需求分析来看,整体的项目难题有两点。 1、快速的批量生成短链,并找到对应的存储。 并且要保持唯一性质。…

深入探索MySQL的虚拟列:发展、原理与应用

当我们谈论数据库优化时&#xff0c;经常会遇到各种技术和策略。其中&#xff0c;MySQL的虚拟列&#xff08;也被称为生成列或存储列&#xff09;是一个引人注目的特性。它不仅可以帮助开发者提高查询效率&#xff0c;还能为数据表提供额外的计算功能&#xff0c;而无需真正改变…

【Linux驱动】块设备驱动(二)—— 块设备读写(使用请求队列)

块设备的操作函数并没有类似于字符驱动中的read 和write函数&#xff0c;要实现读写操作&#xff0c;只能在请求处理函数中实现。这就分为两种&#xff0c;是否要使用请求队列&#xff0c;请求队列的主要作用是管理和调度IO请求。在以下情况中&#xff0c;一般需要用到请求队队…

跑路页面HTML源码

简单的HTMLJSCSS&#xff0c;记事本修改内容&#xff0c;喜欢的朋友可以下载 https://download.csdn.net/download/huayula/88811984

vivado RTL综合中的多线程

RTL综合中的多线程 在多处理器系统上&#xff0c;RTL合成默认情况下利用多个CPU核心&#xff08;最多四个&#xff09;来加快编译时间。同时运行的线程的最大数量会有所不同&#xff0c;具体取决于处理器的数量可在系统、操作系统和流程阶段使用&#xff08;请参阅Vivado Desi…