4、K- 均值聚类(Clustering With K-Means)

news/2024/5/20 7:02:08 标签: 均值算法, 聚类, kmeans

聚类标签解开复杂的空间关系。

文章目录

  • 1、简介
  • 2、聚类标签作为特征
  • 3、k-均值聚类
  • 4、示例 - 加利福尼亚住房

1、简介

这节课和下一节课将使用所谓的无监督学习算法。无监督算法不使用目标;相反,它们的目的是学习数据的某些属性,以某种方式表示特征的结构。在预测的特征工程上下文中,你可以将无监督算法视为"特征发现"技术。

聚类简单地意味着根据数据点之间的相似性将数据点分配到组中。聚类算法使得"物以类聚",可以这么说。

当用于特征工程时,我们可以尝试发现代表市场细分的客户群,例如,或者分享相似天气模式的地理区域。添加一个聚类标签的特征可以帮助机器学习模型解开空间或接近性的复杂关系。

2、聚类标签作为特征

应用于单个实值特征,聚类就像传统的"分箱"或"离散化"转换。在多个特征上,它就像"多维分箱"(有时称为向量量化)。
在这里插入图片描述
左: 对单个特征进行聚类右: 在两个特征上进行聚类

添加到数据框中,聚类标签的特征可能看起来像这样:

Longitude Latitude Cluster
-93.619 42.054 3
-93.619 42.053 3
-93.638 42.060 1
-93.602 41.988 0

重要的是要记住,这个Cluster特征是分类的。这里,它以标签编码(即,整数序列)显示,就像典型的聚类算法会产生的那样;取决于你的模型,独热编码可能更合适。

添加聚类标签的动机是,聚类将在特征之间的复杂关系分解成更简单的块。然后我们的模型可以逐个学习这些更简单的块,而不是一次性学习复杂的整体。这是一种"分而治之"的策略。
在这里插入图片描述
对YearBuilt特征进行聚类有助于这个线性模型学习其与SalePrice的关系。

该图显示了聚类如何改进一个简单的线性模型。YearBuiltSalePrice之间的曲线关系对于这种模型来说太复杂了——它欠拟合。然而,在较小的块上,关系几乎是线性的,模型可以轻松学习。

3、k-均值聚类

有许多聚类算法。它们主要在如何衡量"相似性"或"接近性"以及它们处理哪种特征上有所不同。我们将使用的算法,k-均值,直观易用,易于在特征工程上下文中应用。根据你的应用,另一种算法可能更合适。

K-均值聚类使用普通的直线距离(换句话说,欧几里得距离)来衡量相似性。它通过在特征空间内放置一些点,称为质心,来创建聚类。数据集中的每个点都被分配到它最接近的质心的聚类中。"k-均值"中的"k"是它创建的质心(也就是聚类)的数量。你自己定义k。

你可以想象每个质心通过一系列辐射圆来捕获点。当来自竞争质心的圆集合重叠时,它们形成一条线。结果就是所谓的Voronoi镶嵌。镶嵌向你展示未来的数据将被分配到哪些聚类;镶嵌本质上就是k-均值从其训练数据中学习的内容。

上面的Ames数据集上的聚类是一个k-均值聚类。下面是同一图形,显示了镶嵌和质心。
在这里插入图片描述

K-均值聚类在特征空间中创建了一个Voronoi。

让我们回顾一下k-均值算法是如何学习聚类的,以及这对特征工程意味着什么。我们将关注scikit-learn实现的三个参数:n_clustersmax_itern_init

这是一个简单的两步过程。算法首先随机初始化一些预定义数量(n_clusters)的质心。然后它对这两个操作进行迭代:

  1. 将点分配给最近的聚类质心
  2. 移动每个质心以最小化到其点的距离

它对这两个步骤进行迭代,直到质心不再移动,或者直到通过了一些最大迭代次数(max_iter)。

质心的初始随机位置经常会导致聚类效果差。因此,算法会重复多次(n_init),并返回具有最小总距离的聚类,即每个点和其质心之间的距离,这是最优聚类

下面的动画显示了算法的运行情况。它说明了结果对初始质心的依赖性,以及迭代到收敛的重要性。
在这里插入图片描述

在纽约市的Airbnb租赁上的K-均值聚类算法。

对于大


http://www.niftyadmin.cn/n/5352878.html

相关文章

2024 极术通讯-安谋科技:聚焦AI、智驾智舱和云计算等,为新兴应用提供多元异构计算平台

导读:极术社区推出极术通讯,引入行业媒体和技术社区、咨询机构优质内容,定期分享产业技术趋势与市场应用热点。 芯方向 无虚拟化方式在同一SoC上运行多系统(AMP)的考虑 汽车SoC芯片上一般采用虚拟化技术来隔离多个虚拟机,在同一…

Databend 开源周报第 130 期

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 支持 CREATE OR…

剧本杀小程序的诞生:重塑线下娱乐的数字化未来

随着科技的不断发展,人们对于娱乐方式的需求也在不断升级。近年来,剧本杀作为一种新型的线下社交娱乐方式,以其独特的魅力和深度的人际互动性,受到了广大年轻人的喜爱。然而,传统的剧本杀模式存在一些问题,…

笔记本电脑系统Win10重装教程

当前很多用户都会使用笔记本电脑办公,如果笔记本电脑携带的操作系统不好用,就会影响到用户的办公效率,这时候可以给笔记本电脑重新安装一款好用的系统。以下小编带来笔记本电脑系统Win10重装教程,让用户们轻松给笔记本电脑重新安装…

云原生周刊:K8s 1.26 到 1.29 版本的更新 | 2024.1.29

开源项目推荐 Skaffold Skaffold 是一个命令行工具,有助于 Kubernetes 应用程序的持续开发。您可以在本地迭代应用程序源代码,然后部署到本地或远程 Kubernetes 集群。Skaffold 处理构建、推送和部署应用程序的工作流程。它还提供构建块并描述 CI/CD 流…

卖身将近?捷信消费金融全部股权被质押

来源 | 镭射财经(leishecaijing) 继股权质押给中国外贸信托后,捷信消金的母公司捷信集团(Home Credit N.V.)再次将捷信消金剩余股权悉数质押给天津银行。 工商信息显示,捷信集团已把捷信消金23.1亿元股权…

机器人自动化焊接工作站助力制造业实现新升级

在当今高度自动化的制造业环境中,机器人技术已经成为不可或缺的一部分。其中,机器人自动化焊接工作站以其高效、精确和稳定的特性,正逐渐改变传统焊接工艺的面貌。 一、机器人自动化焊接工作站的优点 1、效率提升:相比于传统的人…

Mysql-ReadView + MVCC-RR 与 RC

实验准备 创建脚本 CREATE TABLE user (id int(11) NOT NULL AUTO_INCREMENT,name varchar(16) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,age int(11) NULL DEFAULT NULL,addr varchar(256) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL,PRIMARY …