0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

聚类是另一种无监督机器学习方法

倩倩 来源:边际实验室 2020-03-25 16:05 次阅读

聚类是另一种无监督机器学习方法,该方法将数据点分为相似的组,称之为“类”。一个类包含来自数据集的一个观察子集,同一类中的所有观察值都被认为是“相似的”。每个类里观测值彼此之间接近(称为内聚),两个不同的类里的观测值彼此远离或者尽可能不同(称为分离)。下图描述了类的内聚和分离。

聚类算法在许多投资问题中特别有用。例如,在对公司进行分组时,类可以发现公司之间的重要相似性和差异性,而这些相似性和差异性可能不会被标准的行业分类所捕捉。在投资组合管理中,聚类方法被用来改善投资组合的多样化。

在实践中,专家判断在聚类算法中起着一定的作用。首先,专家必须确定什么是“相似”。每个公司都可以被认为是一个具有多种特征的观察值,包含营业收入、利润、财务比率等财务数值,以及其他潜在的模型输入值。有了这些特征值,两个观测值之间的相似度或“距离”就可以被定义。距离越小,观测结果越相似;距离越大,观测结果越不相似。

一个常用的定义方法是欧几里得距离,即两点之间的直线距离。在机器学习中,经常使用的距离度量有十余种。在实践中,距离度量的选择取决于数据的性质(是否是数值)和被分析的业务类别。

一旦定义了相关的距离度量,我们就可以将类似的观测结果分在一起。我们现在介绍两种比较流行的聚类方法:K-Means和分层聚类。

K-Means

K-Means是一种相对较老的算法,它将观察值重复划分为一个固定的数字k(不重叠的类)。类的数量k是一个模型超参数,它的值由研究人员在学习开始之前设置。每个类由它的形心(centroid,即中心)定义,每个观测值都由算法分配到与该观测值最接近的形心的类中。

K-Means算法遵循迭代过程。如下表所示,k=3和一组关于变量的观察结果可以用两个特征来描述。

在表中,水平轴和垂直轴分别代表第一和第二特征。例如,投资分析师可能希望将一组公司用两个测量标准分成三类。

算法将观测数据按以下步骤进行分类:

1、首先确定k(本例为3)个初始随机形心的位置。

2、算法分析每个观测值的特征。基于使用的距离度量,K-Means将每个观测值分配给最近的形心(类由形心定义)。

3、借助每个类中的观测值,K-Means算法在计算每个类新的(k个)形心(形心是观测值的平均值)。

4、然后将观测结果重新分配到新的形心,根据观测结果对类重新定义。

5、再次进行新的(k个)形心及类的确定过程。

K-Means算法将继续迭代,直到没有观察结果被重新分配到另一个新的类(即不需要重新计算新的形心)。该算法最终收敛并得到最后的K个类及类内的观察值。在k=3的约束下,K-Means算法最小化了类内的距离(内聚最大化),最大化了类间距离(分离最大化)。

K-Means算法速度快,在拥有上亿个观测数据的数据集上运行良好。但是,类的最终分配可能取决于形心的初始位置。为了解决这个问题,可以使用不同的形心多次运行该算法,然后根据业务目的选择最有用的分类。

这种技术的一个限制是,在运行K-Means之前,必须确定类的数量(超参数k)。

因此,我们需要知道,研究问题及分析数据集,选择多少个类是合理的。或者,可以选择k的取值范围,通过运行算法找到最优的类的数量——使类内距离最小,类内的相似度最大。但是,最终结果仍可能过于主观。

以罗素3000指数为例,该指数跟踪美国市值最高的3000只股票。这3000支股票可以根据财务特征(如总资产、总收益、盈利能力、杠杆率等)和经营特征(如员工人数、研发费用等)分为10个、50个甚至更多的类。由于处于同一行业类别中的公司可能具有非常不同的财务和运营特征,因此使用K-Means派生出不同的类可以为“同类”群体的性质提供独特的理解。如前所述,k的准确选择取决于所需的精度或分割的水平。我们还可以使用聚类对投资工具或对冲基金进行分类,作为标准分类的替代方法。聚类还可以帮助实现可视化数据,并有助于检测趋势或异常值。

总而言之,K-Means算法是投资实践中最常用的算法之一,特别是在高维数据中发现特有模式及作为现有静态行业分类的替代方法等方面。

分层聚类

分层聚类是一种用于构建层次类结构的迭代过程。在K-Means聚类中,算法将数据分割成预定数目的聚类;类之间没有定义的关系。然而,在分层聚类中,算法会创建大小递增(“内聚”)或递减(“分离”)的中间类,直到达到最终的聚类。正如“分层”一词所暗示的,该过程在多层类之间创建关系。虽然与K-Means聚类相比,分层聚类的计算量更大,但它的优点是允许分析师在决定使用哪种间隔的数据之前检查不同间隔数据的分段。

更详细地说,内聚式(自下至上)分层聚类先将每个观察值作为自己的类。然后,算法根据距离(相似度)的度量找到两个最近的类,并将它们合并成一个新的更大的类。这个过程不断重复,直到所有的观察值都聚集成一个类。下表中的A表描述了一个内聚聚类的假想示例,其中的观察结果用字母表示(A到K),观察结果周围的圆圈表示类。这个过程从11个单独的类开始,然后生成分组序列。第一个序列包括6个类,有5个类各自有2个观测值,1个类有单个观测值G。接下来生成2个类,一个类有6个观测值,另一个类有5个观测值。最后的结果是一个包含所有11个观测值的大类,该大类包括两个主要的子类,每个子类包含三个较小的孙类。

相反,分离式(自上而下)分层聚类从单个类的所有观察值开始。然后根据距离(相似度)将观测结果分成两个类。然后,该算法逐步将中间类划分为更小的类,直到每个类只包含一个观察值。B表描述了分离式聚类的步骤,它以一个包含11个观察值的类开始,算法生成两个较小的类,一个有6个观测值,另一个有5个观测值;然后再分为6个类;最后生成11个类,每个类只包含一个观测值。

在这个假设的例子中,内聚式和分离式聚类产生了相同的结果:两个主要的子类,每个子类有三个更小的孙类。我们可以在6个类或2个类之间进行选择。由于计算速度快,内聚式聚类是处理数据集的常用方法。内聚式聚类算法根据局部模式进行决策,不考虑数据的全局结构。因此,内聚式聚类非常适合于对较小的类进行识别。由于分离式聚类先从整体开始,所以常被侧重于分析数据的全局结构,因此更适合于识别较大的类。

为了确定内聚式和分离式聚类的最佳结果,需要对两个类之间的距离有明确的定义。一些常用的定义包括求每个类中所有观测值之间直线距离的最小值、最大值或平均值。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 聚类算法
    +关注

    关注

    2

    文章

    118

    浏览量

    12077
  • 机器学习
    +关注

    关注

    66

    文章

    8116

    浏览量

    130546
  • K-means
    +关注

    关注

    0

    文章

    28

    浏览量

    11225
收藏 人收藏

    评论

    相关推荐

    监督域自适应场景:基于检索增强的情境学习实现知识迁移

    本文对比了多种基线方法,包括无监督域自适应的传统方法(如Pseudo-labeling和对抗训练)、基于检索的LM方法(如REALM和RAG)和情境
    发表于 12-05 14:14 196次阅读
    无<b class='flag-5'>监督</b>域自适应场景:基于检索增强的情境<b class='flag-5'>学习</b>实现知识迁移

    stm32学习方法及资料

    1、 共 24 个库,不可能都学,都学也没用。按照我的工作需求必须学的有 16 个,这 16 个也不是全学。主要学习来源是各种例程代码、“固件函数库用户手册”和“参考手册”。具体学习方法是通读
    发表于 10-13 06:30

    深度学习的由来 深度学习的经典算法有哪些

    深度学习作为机器学习的一个分支,其学习方法可以分为监督学习和无监督学习。两种
    发表于 10-09 10:23 355次阅读
    深度<b class='flag-5'>学习</b>的由来 深度<b class='flag-5'>学习</b>的经典算法有哪些

    《电子工程师必备——九大系统电路识图宝典》+附录5学习方法

    寻找适合自己的学习路径时感到迷茫?本文将为你提供一种全新的学习电子技术的自主学习法,帮助你更高效地掌握这技术。 自主
    发表于 10-06 23:25

    STM32的学习方法

    STM32学习方法
    发表于 09-28 06:18

    梳理单片机学习方法、产品开发流程

    梳理单片机学习方法、产品开发流程
    的头像 发表于 09-21 17:20 388次阅读
    梳理单片机<b class='flag-5'>学习方法</b>、产品开发流程

    Sentry ND网络防御:实时无监督机器学习解决方案

    电子发烧友网站提供《Sentry ND网络防御:实时无监督机器学习解决方案.pdf》资料免费下载
    发表于 09-13 10:19 0次下载
    Sentry ND网络防御:实时无<b class='flag-5'>监督</b><b class='flag-5'>机器</b><b class='flag-5'>学习</b>解决方案

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?
    的头像 发表于 08-17 16:30 1389次阅读

    深度学习框架和深度学习算法教程

    了基于神经网络的机器学习方法。 深度学习算法可以分为两大类:监督学习和无监督学习监督学习的基本
    的头像 发表于 08-17 16:11 709次阅读

    尝试另一种让画面渐隐渐显的方法

    电源电压电路原理
    学习电子知识
    发布于 :2023年08月15日 21:51:04

    方法概述(2)#机器学习

    机器学习
    未来加油dz
    发布于 :2023年07月14日 17:01:32

    方法概述(1)#机器学习

    机器学习
    未来加油dz
    发布于 :2023年07月14日 17:00:10

    #机器学习

    机器学习
    未来加油dz
    发布于 :2023年07月14日 16:59:15

    常用集成学习方法#机器学习

    机器学习
    未来加油dz
    发布于 :2023年07月14日 16:04:14

    联合学习在传统机器学习方法中的应用

    联合学习在传统机器学习方法中的应用
    的头像 发表于 07-05 16:30 535次阅读
    联合<b class='flag-5'>学习</b>在传统<b class='flag-5'>机器</b><b class='flag-5'>学习方法</b>中的应用