范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

一文读懂非监督式学习算法聚类

  摘要
  随着原始数据的丰富和分析的需要,非监督式学习的概念随着时间的推移变得流行起来。非监督式学习的主要目标是发现未标记数据中隐藏的、令人兴奋的模式。最常见的非监督式学习算法是聚类。数据聚类的应用范围从医学到面部识别到股票市场分析。在这篇文章中,我们讨论了层次聚类。 本文的结构如下在什么是层次聚类? 聚类与分类的区别 K-均值与层次聚类的区别 分层聚类的类型 聚集层次聚类 如何识别两个集群是否相似? 树状图是什么? 可分割的层次聚类 Python 中的分层聚类 分层聚类的利与弊 什么是层次聚类?
  分层聚类是一种非监督式学习,它将相似的数据点或对象分组,称为聚类。那么什么是集群和非监督式学习? 聚类与分类的区别
  分类和聚类都试图根据不同特征的相似性将数据点分为一个或多个类。区别在于两者的工作方式。分类是一种有监督的算法,每个输入数据点(Xi)都有预定义的标签(yi)。
  然而,聚类是一种无监督的算法,其中标签丢失意味着数据集只包含输入数据点(Xi)。
  另一个主要区别是由于分类技术有标签,因此需要训练和测试数据集来验证模型。在集群中,没有标签,因此不需要训练和测试数据集。 分类算法的常见例子有:逻辑回归模型 支持向量分类器(SVM) 朴素的贝叶斯 决策树 随机森林 神经网络 聚类算法的例子有:分层聚类 K平均算法 均值漂移聚类 谱聚类
  在本文中,我们将深入研究分层集群的细节。 K- 均值聚类与层次聚类的区别
  我们为什么需要层次聚类?答案在于K-均值聚类。
  我们可以用外行人的语言理解 K-均值聚类。
  我们的任务是使用 K平均算法将未标记的数据分组到集群中。
  第一步
  第一步是确定集群的数量(k)。假设我们已经决定将数据分成两组。 第二步
  一旦确定了群集,我们随机初始化两个点,称为群集质心。
  第三步
  在第三步中,算法对每一个数据点进行处理,根据它是接近红色聚类中心还是接近绿色聚类中心,将这些数据点划分为不同的类。
  第四步
  在第四步中,我们移动质心步骤。我们计算所有红点的平均值,移动红色的聚类中心到那里,对绿色的聚类做同样的事情。
  我们将执行第3步和第4步,直到集群质心不再进一步移动。在这个例子中,点的颜色不会再改变。
  K-means 过程看起来不错,对吧?
  但是有一个问题,或者我们可以说这个过程的局限性。在算法开始时,我们需要确定聚类的数量。但我们不知道一开始需要多少个星团。
  分层集群填补了这一空白。在分层集群中,我们不需要在一开始就定义集群的数量。看看效果如何。 分层聚类的类型
  有两种类型的分层聚类: 聚合层次聚类 分层聚类 聚集层次聚类
  聚合层次聚类是最常见的一种层次聚类方法,用于根据对象的相似性对其进行聚类。这是一种自下而上的方法,每个观察从它自己的集群开始,当一个集群向上移动时,一对对集群被合并。 聚合层次聚类是如何工作的?
  假设您有一些数据点,希望将它们分组到类似的集群中。
  步骤1:  第一步是将每个数据点视为一个集群。
  步骤2:  确定两个相似的集群,并使它们成为一个集群。
  步骤3:  重复该过程,直到只剩下单个集群
  如何识别两个集群是否相似?
  这样做的方法之一是找出星系团之间的距离。 距离(相似度)的度量
  两个星系团之间的距离可以根据从一个星系团到另一个星系团所画的直线的长度来计算。这通常被称为欧几里得度量。
  欧几里得度量: 平面或三维空间中两点之间的欧几里得度量测量连接两点的一段的长度。这是表示两点之间距离最明显的方法。
  如果(x1,y1)和(x2,y2)是二维空间中的点,那么它们之间的欧几里得度量就是
  (x2-x1)2-(y2-y1)2
  除了欧几里得度量,还开发了其他一些测量距离的指标,例如: Hamming Distance   汉明距离Manhattan Distance (Taxicab or City Block)   曼哈顿距离(计程车几何) Minkowski Distance   闵氏距离
  距离度量标准的选择应该基于学习领域或者你试图解决的问题。
  例如,如果您试图在一个统一的网格上测量对象之间的距离,如棋盘或城市街区。那么曼哈顿的距离将是一个明智的选择。 连接标准
  在选择距离度量之后,有必要确定从何处计算距离。一些常见的联系方法是: Single-Linkage:  单连接 或最近的连接是两个集群中一对观测值之间的最短距离。 Complete-linkage:  完全连接 或最远的连接是两个集群中一对观测值之间的最远距离。 Average-linkage:  平均连接 是指一组中的每个观测到另一组中的每个观测之间的距离。 Centroid-linkage:  质心连接 是两个集群的质心之间的距离。在这里,您需要找到两个集群的质心,然后在合并之前计算它们之间的距离。 ward linkage: 它是用来最小化数据的差异与层次的方法(离差平方和法) 。该方法寻求选择连续的聚类步骤,以尽量减少每一步的平方误差之和的增加。
  连接判据的选择是基于领域应用的。平均连接和完全连接是层次聚类中最常用的两种距离度量方法。然而,当联系标准的选择没有明确的理论依据时, ward linkage 是默认选择。 如何选择集群的数量?
  在层次聚类中,我们利用树状图的概念来选择聚类的数量。 树状图是什么?
  树状图是一种树状图,显示了观测值之间的层次关系。它包含层次聚类算法的内存。
  通过观察树状图,你可以知道星团是如何形成的。让我们看看如何为下面的数据点形成树状图。
  观测值E和F在任何其他点上彼此最接近。因此,它们被组合成一个集群连接它们的链接的高度也是最小的。接下来最接近的是A和B,它们结合在一起。
  这也可以在树状图中观察到,因为A和B之间的块的高度略大于E和F。同样,D可以合并成E和F簇,然后C可以合并成那个簇。最后A和B组合成C、D、E和F形成一个单独的集群。
  在阅读树状图时需要注意的重点是:
  块的高度表示群集之间的距离,而观测值之间的距离代表不同之处。
  但是问题仍然没有改变,我们如何使用树状图来找到星系团的数量,或者我们应该在哪里停止合并星系团。通过在树状图上画一条水平线,观测结果被分配到集群中。
  一般来说,我们把树状图切成最高的垂直线。在上面的示例中,我们有两个集群。一个星团有观测A 和B,第二个星团有C,D,E和F。 可分割的层次聚类
  分层聚类在解决实际问题中应用不多。它的工作方式与聚集性集群相反。在这里,我们首先将所有数据点作为一个集群。
  在每次迭代中,我们分离最远的点或集群,这些点或集群并不相似,直到每个数据点被视为一个单独的集群。在这里,我们将单个集群划分为 n 个集群,因此名称划分集群。 Python中的分层聚类
  为了演示 Python中分层集群的应用,我们将使用鸢尾花(Iris)数据集。鸢尾花(Iris)数据集是机器学习中最常举例使用的数据集之一。
  鸢尾花(Iris)数据有三种类型的鸢尾花,它们是因变量中的三类。它包含四个自变量,即萼片长度、萼片宽度、花瓣长度和花瓣宽度,均以厘米为单位。我们将比较原始的类和使用层次聚类方法形成的类。 导入数据
  我们将从 sklearn 库导入数据集。 # Import libraries import pandas as pd import numpy as np import matplotlib.pyplot as plt from sklearn import datasets  # Import iris data  iris = datasets.load_iris()  iris_data = pd.DataFrame(iris.data) iris_data.columns = iris.feature_names iris_data["flower_type"] = iris.target iris_data.head()
  想象课程iris_X = iris_data.iloc[:, [0, 1, 2,3]].values iris_Y = iris_data.iloc[:,4].values  import matplotlib.pyplot as plt plt.figure(figsize=(10, 7)) plt.scatter(iris_X[iris_Y == 0, 0], iris_X[iris_Y == 0, 1], s=100, c="blue", label="Type 1") plt.scatter(iris_X[iris_Y == 1, 0], iris_X[iris_Y == 1, 1], s=100, c="yellow", label="Type 2") plt.scatter(iris_X[iris_Y == 2, 0], iris_X[iris_Y == 2, 1], s=100, c="green", label="Type 3") plt.legend() plt.show()
  上述散点图显示,所有三类鸢尾花是重叠的彼此。我们的任务是使用分层聚类形成聚类,并将它们与原始类进行比较。 创建一个树状图
  我们从导入有助于创建树状图的库开始。树状图有助于粗略地了解集群的数量。 import scipy.cluster.hierarchy as sc  # Plot dendrogram plt.figure(figsize=(20, 7))   plt.title("Dendrograms")    # Create dendrogram sc.dendrogram(sc.linkage(iris_x, method="ward"))  plt.title("Dendrogram") plt.xlabel("Sample index") plt.ylabel("Euclidean distance")
  通过查看上面的树状图,我们将数据分为三组。 合适的模型
  我们实例化了聚集聚类。传递欧几里得度量作为测量点和病房联系之间的距离来计算群集的接近度。然后我们在数据点上拟合模型。最后,我们返回一个整数数组,其中的值使用lables _ property 对应于不同的类别。 from sklearn.cluster import AgglomerativeClustering  cluster = AgglomerativeClustering(     n_clusters=3, affinity="euclidean", linkage="ward")  cluster.fit(iris_x) labels = cluster.labels_ labels
  上面的输出显示了0、1、2的值,因为我们定义了4个集群。0表示属于第一个集群的点,1表示第二个集群中的点。类似地,Third 表示第三个集群中的点。 想象集群plt.figure(figsize=(10, 7)) plt.scatter(iris_x[labels == 0, 0], iris_x[labels == 0, 1], s = 100, c = "blue", label = "Type 1") plt.scatter(iris_x[labels == 1, 0], iris_x[labels == 1, 1], s = 100, c = "yellow", label = "Type 2") plt.scatter(iris_x[labels == 2, 0], iris_x[labels == 2, 1], s = 100, c = "green", label = "Type 3") plt.legend() plt.show()
  类型1和类型3集群之间仍然存在重叠。但是如果与原来的集群相比,分类已经有了相当大的改进。 分层聚类的利与弊
  1. 像K平均算法一样,我们不需要指定算法所需的集群数量。
  2.它在大型数据集上不能很好地工作。它通常适用于较小的数据。如果您有一个大型的数据集,就很难通过树状图来确定正确的集群数量。
  3. 与K-均值聚类相比,层次聚类计算量大,运行时间长。 结论
  尽管层次聚类在处理大型数据集时存在一定的局限性,但它仍然是处理中小型数据集并发现其中模式的有效工具。在本文中,我们讨论了分层聚类的基本概念,这是一种非监督式学习算法,并在 Python 中实现。

中国空间站进入长期有人驻留模式图说11月30日在酒泉卫星发射中心拍摄的神舟十五号载人飞船与天和核心舱自主快速交会对接的模拟图像。新华社记者郭中正摄11月29日23时08分,我国在酒泉卫星发射中心使用长征二号F遥我们生活在两省边界湘桂丨广西百香果甜到湖南田视频加载中编者按省际边界线,共富进行时。湖南,与6个省(市)相邻,八千里省际边界线,勾勒出中国独有的美人头。处在两省交界的地区,始终让人牵挂。党的二十大报告提出全面推进乡村振兴,加卡塞米罗收获世界杯处子球刚刚过去的这个夜晚,曼联球员成为了世界杯上主宰比赛的主角,B费独中两元帮助葡萄牙队提前晋级。卡塞米罗也不示弱,他同样用制胜球助巴西队也提前获得小组出线权。这是卡塞米罗在世界杯赛场上世界杯今日看点不容有失!梅西领衔阿根廷力争出线北京时间30日夜间,世界杯将迎来小组赛最后一轮的四场重磅赛事。D组,突尼斯队要想出线必须战胜提前晋级的法国队,丹麦队将挑战暂居小组第二的澳大利亚队,丹麦童话能否继续上演?C组,迎战21!世界杯太刺激2场5球,出线4次反转,荷兰夺第1北京时间11月29日23点,世界杯小组赛A组第3轮,荷兰VS卡塔尔,厄瓜多尔VS塞内加尔。荷兰20轻取卡塔尔,7分夺得榜首出线塞内加尔21击败厄瓜多尔,以小组第2的身份出线。90分耗资40亿!上万中国人在秦岭上掏了一个洞,搞出一条世界之最中国秦岭绵延八百里,山势耸高仿佛直达天际。而秦岭的主峰终南山因为地形险阻道路崎岖,自古便被认为是人迹罕至的隐士福地,左传中提到终南山就是九州之险,史记里形容终南山是天下之阻。可就是长沙世界之窗开福寺最新公告11月28日,长沙世界之窗开福寺相继发布最新公告。长沙世界之窗因天气及疫情防控原因,长沙世界之窗将于11月29日12月2日闭园,12月3日(星期六)恢复开放。图片来源长沙世界之窗官人均用钢世界倒数第二vs富豪榜亚洲第一,印度要赶中超日路还很长2021年全球粗钢产量为19。51亿吨,中国的粗钢产量为10。3亿吨,占据世界产量的半壁江山印度粗钢产量为1。18亿吨,超过日本和美国,排名世界第二。2021年全球人均钢材消费量为卡塔尔2200亿举办世界杯值卡塔尔花2200亿进一个球有很多人朋友质疑卡塔尔花了2200亿办世界杯,进一个球,太不值了。这种观点我不同意。卡塔尔这个国家,是世界上最富有的国家之一,人均收入几乎达到15万美元,劳权观点丨劳动关系不知去向谁之过?摘要劳动关系不知去向谁之过?一份工作干了十几年,因为要补缴社保进而开始寻找自己的劳动关系。张先生曾经坚定地以为自己的劳动关系在中城卫,但在一番调查寻访后,他没了方向。别说张先生,我小脑萎缩依然在逐渐地加重,该怎么治疗呢?小脑萎缩依然在逐渐地加重,该怎么治疗呢?小脑萎缩迄今为止仍为疑难病,且其的患病率也是比较低的,也是因此,患者的数量较少,因此现代医学上迄今为止仍未研究出特效药,而治疗只能采用一些营
理光GRIII相机日记版特别限量套装发布IT之家1月10日消息,理光今日宣布为GRIII相机推出日记版特别限量套装(DiaryEditionSpecialLimitedKit),采用金属暖灰色,全球限量2000台。据介绍非K处理器也能超频微星B760M迫击炮Max主板开箱前言如果说在装机圈里,有什么不老的常青树系列,我相信迫击炮败家之眼大雕这几个一定会榜上有名。而提到价格和定位相对亲民且主流的迫击炮更受不少玩家和用户欢迎,其做工不错的同时价格在御三3组配色,冬末春初穿真的很好看!蓝色的衣服,有很大的包容性和容差率,在明暗层次的变化间不同于其他缤纷的彩色!(网图侵删)蓝色和白色搭配一起,莫名地和谐舒服!白色有了温柔,蓝色显得更雅致稳重!(网图侵删)(网图侵删整容最成功的6位女星明明不知动过多少刀子,却毫无痕迹?一开始人们对自己的五官可能并不满意,从而选择了整容,有些人先天底子较好的,可能只进行简单的微整容并可以,而有些人可能在脸上大动刀子。但是大多数普通人在进行整容时,大多都会参照一个模苹果耳机盒附带一根数据线,为何遭到吐槽?网友建议学小米11苹果日前再次登上热搜,只不过这次不是因为iPhone手机,而是耳机盒设计遭到吐槽。原来盒子下方隐藏一根数据线,不少买苹果耳机的朋友都给丢掉了,所以有网友建议学习小米11模式。苹果为大信创时代开启,软件公司开始跑步进场图片来源视觉中国文数科星球,作者苑晶,编辑十里香信创是信息技术应用创新产业的缩写。一直以来,国内的IT基础设施硬件强调国产和自主可控。现如今,信创的外延已在软件行业生根发芽它在云计sql注入浅析Sql注入是一个老问题了,虽然现在的主流前后端框架都已经处理了此问题,但是弄明白原理有利于我们更好的分析解决问题SQL注入看下面简单的登录示例bodybody服务端代码lt?phpspring源码解析一bean学习spring源码是一件非常煎熬且很有挑战的事情,在我们日常的工作中用的最多的框架可能就是spring及其的拓展,这是一个极其庞大的家族,首先我们来先来学习spring源码,然后AppleiCloud爆出漏洞,用户损失超过65万美元DomenicIacovone周五晚上接到了苹果的一个不寻常的电话。他收到了几条要求他重置AppleID密码的消息,因此怀疑来电者是电信诈骗。但电话是在他的iPhone上打来的,因面试官分库分表,真的有必要吗?关于数据库分库分表的面试题已经是烂大街了,面经小册各路神仙的经验分享也是不绝于耳。当然现有的技术解决方案已经是很成熟了。但是想要使用的得心应手,首先应该搞清楚三个问题?为什么使用分作为华为机主,我怎么看待小米的创新专访?大家都知道,华为手机是国产品牌中为数不多注重创新的企业,研发的麒麟芯片更是屹立于国产自研芯片之巅。那么,我作为华为机主,我怎么看待小米最新的创新专访呢?我是这么看的,小米现在的创新