sheng的学习笔记-AI-半监督聚类

AI目录:sheng的学习笔记-AI目录-CSDN博客

半监督学习:sheng的学习笔记-AI-半监督学习-CSDN博客 

聚类:sheng的学习笔记-AI-聚类(Clustering)-CSDN博客

均值算法:sheng的学习笔记-AI-K均值算法_k均值算法怎么算迭代两次后的最大值-CSDN博客

什么是半监督聚类

聚类是一种典型的无监督学习任务,然而在现实聚类任务中我们往往能获得一些额外的监督信息,于是可通过半监督聚类(semi-supervised clustering)来利用监督信息以获得更好的聚类效果。

聚类任务中获得的监督信息大致有两种类型。

  1. 第一种类型是“必连”(must-link)与“勿连”(cannot-link)约束,前者是指样本必属于同一个簇,后者是指样本必不属于同一个簇;
  2. 第二种类型的监督信息则是少量的有标记样本。

约束 k 均值算法

什么是约束k均值

约束k均值(Constrained k-means)算法是利用第一类监督信息的代表。

给定样本集D={x1,x2,...,xm}以及“必连”关系集合M和“勿连”关系集合C,(xi,xj)∈M表示xi与xj必属于同簇,(xi,xj)∈C表示xi与xj必不属于同簇。

该算法是K均值算法的扩展,它在聚类过程中要确保M与C中的约束得以满足,否则将返回错误提示

算法

解释如下

 数据表现

令样本x4与x25,x12与x20,x14与x17之间存在必连约束,x2与x21,x13与x23,x19与x23之间存在勿连约束,即

M={(x4,x25),(x25,x4),(x12,x20),(x20,x12),(x14,x17),(x17,x14)},

C={(x2,x21),(x21,x2),(x13,x23),(x23,x13),(x19,x23),(x23,x19)}。

设聚类簇数K=3,随机选取样本x6,x12,x27作为初始均值向量

图13.8 西瓜数据集4.0上约束K均值算法(K=3)在各轮迭代后的结果。

样本点与均值向量分别用“∙”与“+”表示,必连约束和勿连约束分别用实线段与虚线段表示,红色虚线显示出簇划分。

显示出约束K均值算法在不同迭代轮数后的聚类结果。经5轮迭代后均值向量不再发生变化(与第4轮迭代相同)​,于是得到最终聚类结果

C1={x3,x5,x7,x9,x13,x14,x16,x17,x21};

C2={x6,x8,x10,x11,x12,x15,x18,x19,x20};

C3={x1,x2,x4,x22,x23,x24,x25,x26,x27,x28,x29,x30}。

约束种子 k 均值算法

什么是约束种子 k 均值

约束种子 k 均值Constrained Seed k-means算法是利用第二类监督的代表。

给定样本集D={x1,x2,...,xm},假定少量的有标记样本为,其中为隶属于第k个聚类簇的样本。

这样的监督信息利用起来很容易:直接将它们作为“种子”​,用它们初始化k均值算法的k个聚类中心,并且在聚类簇迭代更新过程中不改变种子样本的簇隶属关系。这样就得到了约束种子k均值(Constrained Seedk-means)算法

算法代码

解释如下 

数据表现

仍以西瓜数据集4.0为例,

假定作为种子的有标记样本为S1={x4,x25},S2={x12,x20},S3={x14,x17}。

 以这三组种子样本的平均向量作为初始均值向量,图13.10显示出约束种子k均值算法在不同迭代轮数后的聚类结果。经4轮迭代后均值向量不再发生变化(与第3轮迭代相同)​,于是得到最终聚类结果

C1={x1,x2,x4,x22,x23,x24,x25,x26,x27,x28,x29,x30};

C2={x6,x7,x8,x10,x11,x12,x15,x18,x19,x20};

C3={x3,x5,x9,x13,x14,x16,x17,x21}。

图13.10 西瓜数据集4.0上约束种子k均值算法(k=3)在各轮迭代后的结果。

样本点与均值向量分别用“∙”与“+”表示,种子样本点为红色,红色虚线显示出簇划分。

参考文章

12.半监督学习 - 五、半监督聚类 - 《AI算法工程师手册》 - 书栈网 · BookStack

14 半监督学习 - 14.4 半监督聚类 - 《周志华《机器学习》学习笔记》 - 书栈网 · BookStack

书:机器学习 

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

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

相关文章

Linux-(系统启动、用户管理)

目录 前言 关机&重启命令 基本介绍 注意细节 用户登录和注销 注意: 用户管理 基本介绍 添加用户 指定/修改密码 删除用户 查询用户信息 切换用户 查看当前用户登录用户 用户组 新增组 删除组 查看所有组 修改用户所属组 创建用户时指定用户…

超声波微型气象仪

超声波微型气象仪是一种便携式的气象观测仪器,可以测量温度、湿度、气压和风速等气象参数。其使用方法如下: 打开仪器电源,并确保仪器已经预热完成。将仪器放置在待测环境中,确保避免直接阳光照射和强风的影响。确定仪器与待测气…

110001安庆巡检_工艺巡检

安庆巡检_工艺巡检 一. 工艺配置二. 点检计划三. 点检任务四. 复检任务1. 复检列表1.1 页面展示 2. 复检任务下发2.1 操作说明2.2 业务说明2.3 表关联说明ps_recheck_task工艺工序参数_复检详情表 3. 复检详情2.1 获取参数点检详情2.2 获取复检详情列表 4. app端复检任务提交4.…

HTML的块级元素与行内元素

在HTML中,元素可以分为两大类:块级元素(block-level elements)和行内元素(inline elements)。这两种类型的元素在网页布局和呈现中扮演着不同的角色。 块级元素(Block-level Elements&#xff…

免费申请aws一年免费服务器使用教程

由于近期要测试一个公网项目,对比之下,选择了aws服务器,免费使用一年。 准备:一个visa信用卡即可,需要一个外网邮箱(我这边使用的hotmail) 注册的步骤不再赘述,切记几个点&#xff0…

智 能 合 约

1. 智能合约的历史 智能合约最初是由 Nick Szabo 在 20 世纪 90 年代后期的一篇名为 Formalizing and Securing Relationships on Public Networks(《公共网络上关系的格式化和安全保护》)的文章中提出的,但是 20 年之后,比特币的发明和区块链…

Qt QGraphicsView实现图片放缩、鼠标拖动移动、鼠标点位置放大缩小_图片查看

QtQGraphicsView实现图片放缩、鼠标拖动移动、鼠标点位置放大缩小 头文件&#xff1a; #ifndef TIMGWIDGET_H #define TIMGWIDGET_H#include <QGraphicsItem> #include <QMainWindow> #include <QObject> #include <QWidget>// class TImgWidget : pu…

【重构获得模式 Refactoring to Patterns】

重构获得模式 Refactoring to Patterns 面向对象设计模式是“好的面向对象设计”&#xff0c;所谓“好的面向对象设计”指的是那些可以满足“应对变化&#xff0c;提高复用”的设计。 现代软件设计的特征是“需求的频繁变化”。设计模式的要点是“寻找变化点&#xff0c;然后…

Opencv中的直方图(1)计算反向投影直方图函数calcBackProject()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 计算直方图的反向投影。 cv::calcBackProject 函数计算直方图的反向投影。也就是说&#xff0c;类似于 calcHist&#xff0c;在每个位置 (x, y)…

12道经典性能测试人员面试题

1.性能测试包含了哪些软件测试&#xff08;至少举出3种&#xff09;&#xff1f; 参考答案&#xff1a;负载测试、压力测试、容量测试。 负载测试&#xff08;Load Testing&#xff09;&#xff1a;负载测试是一种主要为了测试软件系统是否达到需求文档设计的目标&#xff0c…

Spring MVC 八股文

目录 重点 SpringMVC的工作原理 Spring MVC 拦截器 Spring MVC 的拦截器和 Filter 过滤器有什么差别&#xff1f; 基础 什么是SpringMVC SpringMVC的优点 Spring MVC的核心组件 Spring MVC的常用注解由有哪些 Controller 注解有什么用 重点 SpringMVC的工作原理 1、客…

【舍入,取整,取小数,取余数丨Excel 函数】

数学函数 1、Round函数 Roundup函数 Rounddown函数 取整&#xff1a;(Int /Trunc)其他舍入函数&#xff1a; 2、Mod函数用Mod函数提取小数用Mod函数 分奇偶通过身份证号码判断性别 1、Round函数 Roundup函数 Rounddown函数 Round(数字&#xff0c;保留几位小数)&#xff08;四…

Word快速重复上一步操作的三种高效方法

在日常工作、学习和生活中&#xff0c;我们经常需要执行一系列重复性的操作。这些操作可能简单如复制粘贴、调整图片大小&#xff0c;也可能复杂如编辑文档、处理数据等。为了提高效率&#xff0c;掌握快速重复上一步操作的方法显得尤为重要。本文将介绍三种高效的方法&#xf…

Carla自动驾驶仿真十:Carlaviz三维可视化平台搭建

文章目录 前言一、环境准备1、docker安装2、websocket-client安装3、carlaviz代码下载 二、carlaviz使用1、打开carla客户端2、输入启动命令3、进入carlaviz4、修改manual_control.py脚本5、运行manual_control.py脚本6、运行carlaviz官方脚本&#xff08;推荐&#xff09; 前言…

【2024最新】Python入门教程(非常详细)从零基础入门到精通,看完这一篇就够了!

前言 本文罗列了了python零基础入门到精通的详细教程&#xff0c;内容均以知识目录的形式展开。 第一章&#xff1a;python基础之markdown Typora软件下载Typora基本使用Typora补充说明编程与编程语言计算机的本质计算机五大组成部分计算机三大核心硬件操作系统 第二章&…

【计算机网络】浏览器输入访问某网址时,后台流程是什么

在访问网址时&#xff0c;后台的具体流程可以因不同的网站、服务器和应用架构而异。 实际过程中可能还涉及更多的细节和步骤&#xff0c;如缓存处理、重定向、负载均衡等。 此外&#xff0c;不同的网站和应用架构可能会有不同的实现方式和优化策略。 部分特定网站或应用&#x…

RK3588开发板利用udp发送和接收数据

目录 1 send.cpp 2 receive.cpp 3 编译运行 4 测试 1 send.cpp #include <iostream> #include <string> #include <cstring> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> //…

利用数据质量工具提高业务效率 | 数据治理应用篇

您的数据库是否井然有序&#xff1f; 在当今社会&#xff0c;企业管理者们愈发开始重视数据的重要性。数据不仅能推动战略决策&#xff0c;还能影响业务成果、推动创新&#xff0c;并为企业提供竞争优势。然而&#xff0c;随着数据量的增加&#xff0c;确保数据的准确性、一致…

【C++ 面试 - 新特性】每日 3 题(三)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏&…