当前位置: 首页 > news >正文

【机器学习-四-无监督学习unsupervise learning-聚类算法简介】

无监督学习unsupervise learning

  • 聚类
    • 聚类的过程
      • 相似度度量方法
      • 聚类的方法
        • 划分式
        • 层次聚类
        • 基于密度的聚类

上一节讲的无监督学习,但是很多人可能会很疑惑,没有目标,那算法是怎么学会该怎样分类的呢?今天就简介一下其中的聚类算法。

聚类

首先说明是什么聚类。聚类就是按照某种标准把一个数据集可以分割成不同的类或者簇,使得同一个簇内的数据对象的相似性尽可能的大,而不在同一个簇中的数据对象的差异性也尽可能的大。

聚类的过程

聚类的过程一般包括:

  1. 数据准备。特征标准化
  2. 特征选择。选择最有效的特征
  3. 特征提取。对选择的特征进行转换
  4. 聚类。一般是通过某种距离函数或者相似度系数等进行相似度度量,获取簇,下面会详细 介绍有哪些相似度度量方法
  5. 聚类结果评估。分析聚类结果,比如距离误差等

相似度度量方法

常用的相似度度量方法包括:

  1. 闵可夫斯基距离,也叫做欧式距离
  2. 杰卡德相似系数
  3. 余弦相似度
  4. 皮尔逊积矩相关系数
  5. 相对熵
  6. helinger距离

每一个都有相应的计算公式,可以自行搜索,此处不赘述。

聚类的方法

聚类从大分类上分为下面:
在这里插入图片描述

划分式

其中的代表是kmeans算法,算法的核心:
对于给定的K类目,先进行初始划分,然后改变样本和簇的隶属,使得每次改进之后的划分都比前面好,也就是所谓的簇内更相似
至于初始点,可以随机生成,也可以使用固定算法。

初始的时候数据是不分簇的,需要我们随机生成K个点,这里是用2个举例(图中蓝色和红色的点):
在这里插入图片描述
然后以这两个点计算样本中数据与这两个点的距离
在这里插入图片描述
距离这2个点中每个点更近的点,被归为一个簇,迭代结束就形成了两个簇。
然后取每个簇的中心点(均值点)再次作为K类的点,以样本中的数据再次计算与这K个点的距离,再进行分簇,然后再与上面的进行相同的迭代。
迭代到最后,簇中的样本基本不会再变化。

Kmeans算法优点就是:简单,能够快速处理大数据集,特别是当簇近似高斯分布时,效果更好。
Kmeans算法缺点:初值敏感,而且需要提前定义K,且要能够计算均值

层次聚类

层次聚类是对给定的数据集进行层次的分解,直到满足一定的条件。层次聚类又分为两种,一种是自底向上,一种是自顶向下。
自底向下是将每个单独的样本作为一个簇,然后合并这些簇,直到满足条件。另外一种则是相反的方向,逐步的细分。
举个例子:学校里的学生,比如学生A和B在喜爱篮球的特征更相似,合并为一个簇,然后A B和C在喜欢运动的特征上相似,可以合并成更大的簇,然后依次向上合并成更大的簇。
整个过程是类似下面显示:
在这里插入图片描述

基于密度的聚类

该算法的核心是定义一个密度函数,当两个样本在定义的密度函数值内,那我们就认为这两个样本是密度可达的,密度可达的样本可以分成一个簇。
在这里插入图片描述

相关文章:

【机器学习-四-无监督学习unsupervise learning-聚类算法简介】

无监督学习unsupervise learning 聚类聚类的过程相似度度量方法聚类的方法划分式层次聚类基于密度的聚类 上一节讲的无监督学习,但是很多人可能会很疑惑,没有目标,那算法是怎么学会该怎样分类的呢?今天就简介一下其中的聚类算法。…...

IPv6路由基础

RIPng RIPng是一种较为简单的内部网关协议,是RIP在IPv6网络中的应用。RIPng主要用于规模较小的网络中,比如校园网以及结构较简单的地区性网络。由于RIPng的实现较为简单,在配置和维护管理方面也远比OSPFv3和IS-IS for IPv6容易,因…...

uniapp开发微信小程序 嵌套(uniapp开发/其他)H5,H5点击跳转微信小程序页面(通信

环境: uniapp开发微信小程序,嵌套webview,H5页面也是用的uniapp框架开发,H5页面点击商品后,需要跳转到微信小程序的详情页面 做法的原因 在微信小程序中使用web-view元素,如果要实现 H5到小程序的通信&am…...

VM虚拟机器配置网络DHCP服务

1、VM虚拟机器网络配置,centos 精简版没有配合网卡,如何配置网络 一、查看网卡信息 使用ip addr或ifconfig -a命令查看系统中现有的网卡设备名称,通常可能是eth0、ens33等类似的名称。 二、编辑网络配置文件 网络配置文件通常位于/etc/syscon…...

使用 jd.item_get API打造可读性商品介绍

在数字化时代,电子商务的蓬勃发展使得商品信息的获取变得至关重要。对于电商平台而言,如何准确、快速地获取商品信息,并以吸引人的方式呈现给消费者,成为提高销售额和用户体验的关键。本文将介绍如何利用 jd.item_get API 获取商品…...

java 通过文件下载地址读取文件内容

需求&#xff1a;读取文件内容&#xff0c;已知文件下载地址 需要引入pdfbox依赖 <dependency> <groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.27</version> </dependency>Override pub…...

打造古风炫酷个人网页:用HTML和CSS3传递笔墨韵味

需要用到的背景大家可以自己找喜欢的风格!!! 当然俺把俺用的背景放到文章最后了哦&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 感谢关注和支持 长期更新哦~~~ 1. 简洁的页面布局&#xff1a;保持优雅和对称 在古风设计中&#xff0c;布局的对称性非常重要…...

vue 项目自适应 配置 px转rem 的插件postcss-pxtorem

1、安装 npm i postcss-plugin-px2rem --save -dev --force找到 postcss.config.cjs 没有的话就新建一个 module.exports {plugins: {// to edit target browsers: use "browserslist" field in package.jsonautoprefixer: {},"postcss-plugin-px2rem":…...

股票程序化交易是,第三方软件申请券商私有接口API的门槛

炒股自动化&#xff1a;申请官方API接口&#xff0c;散户也可以 python炒股自动化&#xff08;0&#xff09;&#xff0c;申请券商API接口 python炒股自动化&#xff08;1&#xff09;&#xff0c;量化交易接口区别 Python炒股自动化&#xff08;2&#xff09;&#xff1a;获取…...

JDK8的一些主要的新特性

JDK8&#xff08;Java Development Kit 8&#xff09; 是一个重要的版本&#xff0c;带来了许多显著的特性和改进&#xff0c;极大地提升了 Java 语言的功能性和开发效率。以下是 JDK 8 的一些主要新特性&#xff1a; 一、Lambda 表达式 1.简化匿名内部类的写法&#xff0c;…...

40岁的java程序员,还有出路吗?

目录 前言一、现状与挑战二、出路与机遇三、案例分析与启示四、结语 前言 40岁Java程序员的出路&#xff1a;挑战与机遇并存 在科技日新月异的今天&#xff0c;IT行业始终保持着高速的发展态势&#xff0c;而Java作为其中的重要一员&#xff0c;其地位依然稳固且充满挑战。对…...

【服务器】shell脚本之Docker创建nginx

#!/bin/bash# 定义目标目录和配置文件路径 BASE_DIR"/opt/docker/nginx"ETC_DIR"$BASE_DIR/etc" ETC_CONF_DIR"$ETC_DIR/conf.d" SSL_DIR"$ETC_CONF_DIR/ssl" LOG_DIR"$BASE_DIR/log"HTML_DIR"$BASE_DIR/html"C…...

提取蛋白质复合体结构中组装体的变换矩阵

PDB文件中&#xff0c;组装体变换矩阵&#xff08;assembly transformation matrices&#xff09;用于描述多聚体结构中各个单体之间的相对位置和取向。从蛋白质复合体 PDB 数据中提取每个组装体&#xff08;assembly&#xff09;的变换矩阵&#xff0c;通常需要解析 PDB 文件中…...

java程序员入行科目一之CRUD轻松入门教程(一)

之前在操作MySQL的时候&#xff0c;都是采用Navicat&#xff0c;或者cmd黑窗口。 无论使用什么方式和MySQL交互&#xff0c;大致步骤是这样的 建立连接&#xff0c;需要输入用户名和密码编写SQL语句&#xff0c;和数据库进行交互 这个连接方式不会变&#xff0c;但是现在需要 基…...

OpenHarmony鸿蒙开发( Beta5.0)智能油烟机开发实践

样例简介 本Demo是基于Hi3516开发板&#xff0c;使用开源OpenHarmony开发的应用。本应用主要功能有&#xff1a; 可以搜索本地指定目录的图片和视频文件&#xff0c;并可进行点击播放。 可以通过wifi接收来自手机的美食图片以及菜谱视频&#xff0c;让我们对美食可以边学边做…...

【GBase 8c V5_3.0.0 分布式数据库常用维护命令】

一、查看数据库状态/检查&#xff08;gbase用户&#xff09; 1.gha_ctl monitor 使用gha_ctl monitor查看节点运行情况(跟dcs的地址和端口) gha_ctl monitor -c gbase -l http://172.20.10.8:2379 -Hall |coordinator | datanode | gtm | server|dcs:必选字段。指定查看哪类集…...

破解AI生成检测:如何用ChatGPT降低论文的AIGC率

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 降低论文的“AIGC率”是个挑战&#xff0c;但有一些策略可以尝试。使用ChatGPT逐步调整和改进内容&#xff0c;使其更加自然和原创&#xff0c;降低AI检测工具识别出高“AIGC率”的概率…...

Python用MarkovRNN马尔可夫递归神经网络建模序列数据t-SNE可视化研究

原文链接&#xff1a;https://tecdat.cn/?p37634 本文聚焦于利用马尔可夫递归神经网络&#xff08;MarkovRNN&#xff09;结合树库展开建模工作。MarkovRNN 通过整合马尔可夫特性与离散随机变量来深入探索递归神经网络中的随机转换机制&#xff0c;旨在高效处理具有复杂潜在信…...

setup函数子传父普通写法

父组件 <template><div><p>接收的数据: {{ receivedData }}</p><Demo4Chiren2 custom-event"handleGetWeb" /></div> </template><script> import { ref } from vue; import Demo4Chiren2 from ./demo4Chiren2.vue…...

seafaring靶场漏洞测试攻略

步骤一&#xff1a;打开网页 一&#xff1a;sql注入漏洞 步骤一&#xff1a;测试回显点 -1 union select 1,2,3# 步骤二&#xff1a;查看数据库 -1 union select 1,2,database()# 步骤三&#xff1a;查看表名 -1 union select 1,2,group_concat(table_name) from informati…...

工业协议通信开发实战:lib60870开源库完全指南

工业协议通信开发实战&#xff1a;lib60870开源库完全指南 【免费下载链接】lib60870 Official repository for lib60870 an implementation of the IEC 60870-5-101/104 protocol 项目地址: https://gitcode.com/gh_mirrors/li/lib60870 在工业自动化领域&#xff0c;设…...

d2s-editor终极指南:5分钟学会暗黑破坏神2存档可视化编辑

d2s-editor终极指南&#xff1a;5分钟学会暗黑破坏神2存档可视化编辑 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 还在为暗黑破坏神2存档修改而头疼吗&#xff1f;复杂的十六进制编辑、看不懂的二进制数据、一不小心就损坏的…...

利用快马平台快速生成proteus仿真项目,十分钟搭建arduino温湿度监测原型

作为一名电子爱好者&#xff0c;最近在做一个温湿度监测的小项目。传统方式需要先在电脑上安装Proteus、Arduino IDE等一堆软件&#xff0c;配置起来特别麻烦。后来发现了InsCode(快马)平台&#xff0c;简直打开了新世界的大门——不用安装任何软件&#xff0c;直接在网页上就能…...

别再只用折线图了!Excel散点图制作双轴图的3个隐藏技巧与常见误区

Excel双轴图进阶指南&#xff1a;为什么散点图比折线图更适合专业数据可视化 在数据可视化领域&#xff0c;Excel的双轴图表一直是展示多维度数据的利器。但很多用户在使用过程中都会遇到这样的困扰&#xff1a;明明按照教程步骤操作&#xff0c;最终呈现的图表却总是出现数据点…...

YOLO训练结果results.csv全字段解读:从epoch到lr/pg2,每个数字背后的调参玄机

YOLO训练结果results.csv全字段解读&#xff1a;从epoch到lr/pg2&#xff0c;每个数字背后的调参玄机 当你盯着YOLO训练结束后生成的results.csv文件&#xff0c;是否曾感到困惑——这些密密麻麻的数字究竟在诉说什么故事&#xff1f;作为模型训练的"黑匣子记录仪"&a…...

Centos stream 9 安装后root不能远程登录问题

如果在安装Centos stream 9的时候没有"勾选允许root用户使用密码进行ssh登录",安装后使用xshell等远程工具是不能登录虚拟机或者服务器的。解决&#xff1a;vim /etc/ssh/sshd_config1.新增一行配置&#xff1a; PermitRootLogin yes2.重启ssh systemctl restart ssh…...

OpenClaw 采用分层解耦的架构设计,请详细说明其核心架构分层(至少 4 层)及各层的核心职责,并描述一条自然语言指令从输入到任务完成的完整执行闭环流程。

一、核心架构分层&#xff08;四层/五层模型&#xff09; OpenClaw 采用 分层解耦的模块化架构&#xff0c;主流技术文档将其划分为 四层核心架构&#xff0c;部分资料扩展为五层。以下是整合后的完整架构&#xff1a; 层级名称核心职责关键技术组件第一层交互接入层(Interfa…...

【PyTorch 3.0终极性能开关】:静态图分布式训练源码级调优指南——绕过Autograd重写、规避TensorGuard冗余拷贝、精准控制Fusion边界

第一章&#xff1a;PyTorch 3.0静态图分布式训练架构概览PyTorch 3.0 引入了原生静态图&#xff08;Static Graph&#xff09;支持&#xff0c;通过 TorchDynamo Inductor 的编译栈实现高性能图优化&#xff0c;并与分布式训练深度协同。该架构将模型定义、图捕获、分区调度与…...

从一份清洗报告,看共享单车数据如何‘说话’:以厦门市为例的出行模式洞察

解码共享单车数据&#xff1a;厦门市民出行行为的商业洞察 清晨7点的厦门街头&#xff0c;一位上班族扫开共享单车&#xff0c;骑行1.2公里到达地铁站&#xff1b;傍晚6点&#xff0c;游客沿着环岛路悠闲骑行3公里欣赏日落。这些看似独立的出行片段&#xff0c;当汇聚成百万量级…...

内容解锁工具:突破付费墙限制的开源解决方案

内容解锁工具&#xff1a;突破付费墙限制的开源解决方案 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息爆炸的数字时代&#xff0c;优质内容常被付费墙阻隔&#xff0c;形成信…...