机器学习笔记:层次聚类

1 原理

1.1 主体思路

  • 通过计算不同类别数据点间的相似度来创建一棵有层次的嵌套聚类树。
  • 在聚类树中,不同类别的原始数据点是树的最低层,树的顶层是一个聚类的根节点。
  • 创建聚类树有自下而上合并(凝聚层次分类,agglomerative)和自上而下分裂(分裂层次分类,divisive)两种方法
    • 自下而上:先让所有点分别成为一个单独的簇,然后通过相似性不断组合,直到最后只有一个簇为止

    • 自上而下:从单个集群开始逐步分裂,直到无法分裂(无法继续分裂即每个点都是一个簇)

        

1.2 两个簇之间的距离

1.2.1 single linkage

  •  两个簇中距离最近的两个数据点间的距离作为这两个簇的距离
  • 问题:两个不相似的簇,可能因为其中的两个极端值很近,故而合并到了一块

1.2.2 complete linkage

  • 两个簇中距离最远的两个数据点间的距离作为这两个簇的距离
  • 问题:两个相似的簇,可能因为其中的两个极端值很远,故而无法合并到了一块

1.2.3 Average linkage

  • 计算两个簇中的每个数据点与其他所有数据点的距离。
  • 将所有距离的均值作为两个簇间的距离。
  • 这种方法计算量比较大,但结果比前两种方法更合理。
  • 比如簇(A,F)和簇(B,C)之间的距离可以计算为:

1.2.4 Ward

 

 

2 举例

2.1 问题描述

  • 一位老师想要将学生分成不同的组。
  • 现在有每个学生在作业中的分数,想根据这些分数将他们分成几组。
  • 关于拥有多少组,这里没有固定的目标(K-means需要事先提供K,层次聚类则不需要)
Student_IDMarks
110
27
328
420
535

2.2 解决方法(自下而上的层次聚类)

2.2.1 创建临近矩阵

这里的距离就是两个学生成绩的差

ID12345
103181025
230211328
31821087
410138015
525287150

2.2.2 合并聚类

这里我们假设使用single linkage

  • 首先,每个学生单独成簇
    • 【1】【2】【3】【4】【5】
  • 然后找临近矩阵中最小的非零距离,合并距离最小的两个簇
    • 此时最小的距离是【1】和【2】
    • ——>【1,2】【3】【4】【5】
  • 然后更新临近矩阵
    • ID(1,2)345
      (1,2)0181025
      318087
      4108015
      5257150
  • 接下来最近的是【3】和【5】

    • 合并之【1,2】【3,5】【4】

  • 再计算临近矩阵

    • ID(1,2)(3,5)4
      (1,2)01810
      (3,5)1808
      41080
  • 然后聚类【3,5】和【4】

    • ID(1,2)(3,4,5)
      (1,2)010
      (3,4,5)100
  • 最后把【1,2】和【3,4,5】合并,层次聚类结束

2.2.3 如何聚类

  •  1,我需要k个类,那么我们就从下而上不断合并,直至还剩k个类

参考内容:

一文读懂层次聚类(Python代码) - 知乎 (zhihu.com)

机器学习--聚类系列--层次聚类 - 理想几岁 - 博客园 (cnblogs.com)

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

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

相关文章

《雪国》像憧憬未曾见过的爱恋,美则美矣

《雪国》像憧憬未曾见过的爱恋,美则美矣 川端康成(1899-1972)日本作家。生于大阪。新感觉派。1968年以“敏锐的感受,高超的叙事技巧,表现日本人的精神实质”获诺贝尔文学奖。代表作有《雪国》《伊豆的舞女》《千羽鹤》…

fastp软件介绍

fastp软件介绍1、软件介绍2、重要参数解析2.1 全部参数2.2 使用示例2.3 重要参数详解(1)UMI去除(2)质量过滤(3)长度过滤(4)低复杂度过滤(5)adapter过滤&#…

【SpringSecurity】认证授权框架——SpringSecurity使用方法

【SpringSecurity】认证授权框架——SpringSecurity使用方法 文章目录【SpringSecurity】认证授权框架——SpringSecurity使用方法1. 概述2. 准备工作2.1 引依赖2.2 测试3. 认证3.1 认证流程3.2 登录校验问题3.3 实现3.3.1 实现UserDetailsService接口3.3.2 密码存储和校验3.3.…

JavaWeb——过滤器Filter和拦截器Interceptor

过滤器Filter 简介: Filter会将浏览器对服务器资源的请求先统一拦截,要通过Fliter才能访问到对应资源,访问操作结束后会回到过滤器再响应给浏览器。 入门案例 流程: 定义好一个Fliter后要加上一个WebFilter注解才会生效,同时,还要指定该…

谷粒商城笔记+踩坑(18)——购物车

目录 一、环境搭建 1.1、购物车模块初始化 1.2、动静资源处理 1.3、页面跳转配置 二、数据模型分析 2.1、购物车需求 2.1.1、离线购物车和在线购物车需求、数据库选择redis 2.1.2、购物车数据结构 2.2、模型类抽取,Cart和CartItem 2.3、Redis依赖和配置、…

2023年南京晓庄学院五年一贯制专转本软件工程专业考试大纲

2023年南京晓庄学院五年一贯制专转本软件工程专业考试大纲 专业科目一 :C 语言程序设计 【参考书目】《C 程序设计》 (第五版) ,作者:谭浩强 著,出版社:清华大学出版社 【考试大纲】 ( 一) 考试范围 1.C 语言的结构 (…

一文读懂 mysql 为什么要两阶段提交以及两阶段提交原理

文章目录 为什么要两阶段提交redo log与binlog两份日志之间的逻辑不一致,会出现什么问题?两阶段提交是怎么保证逻辑一致的呢?当 binlog 写完,redo log 还没 commit 前发生 crash,那崩溃恢复后 MySQL 如何处理?redo 与 binlog 的刷盘时机MySQL 的双 1 配置能否只用 redo l…

面试官灵魂拷问[二]:SQL 语句中 where 条件后写上 1=1 是什么意思?

面试官灵魂拷问系列又来更新啦! “SQL 语句中 where 条件后写上 11 是什么意思?” 这玩意就跟很多新语言支持尾部逗号的原理一样的。 比如 Kotlin 支持数组写成 [1, 2, 3, 4, ] ,注意4后边那个逗号,为什么呢?因为当你增加一个项…

02_Python 学习基础

1\ 核心汇总更新python更新的通知 PEP 1 : PEP 1 – PEP Purpose and Guidelines | peps.python.org PEP 0 : PEP 0 – Index of Python Enhancement Proposals (PEPs) | peps.python.org​​​​​​ PEP 8 :编码规范 PEP 8 – Style Guide for Python Code | pep…

【算法】Raft算法详解

文章目录前言一、Raft算法概述二、Leader选举三、日志同步四、安全性五、日志压缩六、成员变更七、Raft与Multi-Paxos的异同八、Raft算法总结参考前言 Paxos算法详解一文讲述了晦涩难懂的Paxos算法,以可理解性和易于实现为目标的Raft算法极大的帮助了我们的理解&am…

C++ 20 list容器

目录 一、list容器 1.1 简介 1.2 构造函数 1.3 赋值和交换 1.4 大小操作 1.5 插入和删除 1.6 数据存取 1.7 反转和排序 一、list容器 1.1 简介 ① 功能:将数据进行链式存储。 ② 链表(list)是一种物理存储单元上非连续的存储结构,数据元素的逻…

【linux】基于阻塞队列的生产者消费者模型(条件变量)

文章目录一、引入二、生产者消费者模型2.1 三者关系2.2 生产者消费者模型基本原则2.3 生产者消费者模型的好处三、基于阻塞队列的生产者消费者模型3.1 原理3.2 代码实现3.3 pthread_cond_wait的第二个参数3.4 pthread_cond_wait伪唤醒四、总结一、引入 举个例子,比…

基于springboot实现结合疫情情况的婚恋系统演示【附项目源码】

基于springboot实现结合疫情情况的婚恋系统演示B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据&…

php mysql网络考试系统dzkf8994

2.管理员 系统管理员登陆系统后主要进行四类操作: (1)考题维护,考试信息维护,用户维护和个人信息维护管理员可以往题中添加考题,修改错误试题和删除无用试题,考题维护包括单选题管理(单选题添加…

DFS+记忆化剪枝--[NOIP2017 普及组] 棋盘

[NOIP2017 普及组] 棋盘 题目背景 NOIP2017 普及组 T3 题目描述 有一个mmm \times mmm的棋盘,棋盘上每一个格子可能是红色、黄色或没有任何颜色的。你现在要从棋盘的最左上角走到棋盘的最右下角。 任何一个时刻,你所站在的位置必须是有颜色的&#…

启动Hadoop报错【Error: JAVA_HOME is not set and could not be found.】

当用了一下午从0安装上Hadoop兴奋的启动的时候! Error: JAVA_HOME is not set and could not be found. 他告诉我JAVA_HOME 没被找到? 我明明安装了java的,为什么找不到? java -version看了下发现是没问题的 解决: 后…

JUnit5用户手册~并行执行

两种运行模式 SAME_THREAD:默认的,测试方法在同一个线程CONCURRENT:并行执行,除非有资源锁junit-platform.properties配置参数配置所有测试方法都并行 junit.jupiter.execution.parallel.enabled true junit.jupiter.execution.…

全栈声明式可观测:KubeVela 开箱即用且灵活定制的云原生应用洞察

作者介绍:殷达,KubeVela Maintainer,阿里云高级工程师,深度参与了 KubeVela 混合云多集群管理、可扩展工作流、可观测等核心能力体系的建设 KubeVela [ 1] 是一个开箱即用的现代化应用交付与管理平台,它通过统一的应用…

蓝桥杯嵌入式--实战模拟题

前言在蓝桥杯省赛举办之前,学校组织了一场模拟赛,基于第十三届的省赛题,但是难度略高于省赛,这篇博客记录一下解题的过程,其思路可供大家参考。详细工程目前先联系我获取。题目详情实现思路分析花个十几分钟把题目好好…

《花雕学AI》05:令人惊奇的ChatGPT,一个能够与人类对话的人工智能

今天是周末,4月2日,早上五点就起床了,没有去打羽毛球。 我平时在手机上喜欢看今日头条,了解各种时事新闻,发现今年来频繁出现的单词就是:ChatGPT,通过简单搜索,我逐步接受了这个概念…
最新文章