机器学习算法—KMEANS算法原理及阿里云PAI平台算法模块参数说明

简介: 阿里云PAI平台提供了大量已经封装完成可以直接使用的机器学习算法模块,本文说明KMEANS算法的原理并在原理的基础上说明PAI平台KMEANS模块中参数设置的意义,根据原理介绍算法的优点和缺点

概述:

KMEANS算法又被成为K均值算法,是一种常用的聚类算法,由于不需要根据给定的训练集训练模型因此是一种无监督学习算法。其本质是根据选定的参数K将数据分类成K类,在聚类过程中从单一样本开始通过不断计算聚类数据的均值来作为整个类的中心进而再将距离此类别中心最近的数据纳入同一类。

算法原理:

1、以下图样本散点图展示数据集的整体分布情况
KM001.png
2、K值是KMEANS最重要的选择参数,直接决定着数据聚类的类别数量,在选择K值后,会在数据中随机选择K个数据样本最为初始中心点,如K=3,则结果如下图所示
KM002.png
3、计算和中心点距离最近的点,将其归入同类
KM003.png
4、每个类别当有了两个以上的数据时,类的中心就会发生变化,因此类中一旦有新的数据被划入时就需要重新计算整个类的中心点,这一步的计算也是整个算法的核心,所以称为K均值算法
KM004.png
5、通过几步计算之后的结果,能够更直观的展示出类的聚合情况和中心点的位置情况
KM005.png
6、判断聚类过程结束的标准有两个,一是中心点的位置不再发生变化,即结果收敛;二是执行了最够多次的迭代次数(通俗可以理解为计算了几次中心点位置)
KM006.png

注意事项:

1、K值是整个算法中最重要的参数,但是也是最不好确定的参数,如果需要比较好的确定K值,需要采用其他验证算法,如计算样本离最近聚类中心的总和,总和越小,则聚类的效果越好;轮廓系数,轮廓系数的范围为-1至1之间,数字越大则聚类效果越好;兰德指数,范围为-1至1之间,数字越大则聚类效果越好;同质化得分,如果所有的聚类都只包含属于单个类的成员的数据点则聚类结果将满足同质性,其取值范围为0至1之间,值越大意味着聚类结果与真实情况越吻合。
2、以上验证方法虽然对于确定K值有效,但是验证过程需要额外的计算力资源,并且占用的计算力接近于聚类过程所需要的计算力资源,数据集如果较大,则计算力的消耗会产生叠加效应。
3、较为简易的方法为,从数据集中随机抽取部分小规模数据,以散点图等可视化手段来观察数据的可能聚类数量,以此来判断K的取值。这种方法可以认为是经验法的一种表现形式,相比经验法的完全定性分析,随机抽取数据观察能够在经验的基础上增加定量的分析部分,虽然随机抽取的数据也可能有误差,但是抽取的数据量越多,则准确度越高。
4、因为初始的中心点选择是根据K的值随机选择K个点,所以选择的随机性加上迭代过程造成算法的结果只是局部最优解,毕竟反复的计算最短距离的点和类的中心都是在局部已经聚合的类的基础上进行的,而不是从全局的范围进行。

算法使用场景:

1、隐含类别的数据较为平衡的情况,如隐含类别的数据量差别较大,则聚类的效果就较差。
2、数据最好是凸数据,即隐含类别间的差异越大,则聚类效果越好,因为中心点不再变化所需要的迭代次数较少,比较容易收敛。
3、一般作为数据预处理,或者用于辅助分类贴标签使用,因为在已经经过分类的数据上再进行聚类,准确度会非常高。

阿里云PAI平台算法模块及参数设置说明:

inputTableName :输入表表名
selectedColNames:输入表中用于训练的列名,默认选择所有列
inputTablePartitions:输入表中指定哪些分区参与训练,默认选择所有分区
centerCount:聚类数K,是算法中最重要的参数,决定数据的聚类数量
loop:最大迭代次数,算法中非常重要的参数,当最大迭代次数到达但是仍然无法收敛时,则停止计算
accuracy:中心点计算终止条件,如果两次迭代之间变化低于该值,算法终止,默认值0.0,值过大则会出现欠拟合情况,值较小则中心点容易在小范围间变化造成计算结果无法收敛
distanceType:距离度量方式,euclidean(欧式距离),cosine(夹角余弦),cityblock(曼哈顿距离),默认为欧式距离
initCenterMethod:质心初始化方法,random(随机采样),topk(输入表前k行),uniform(均匀分布),external(指定初始质心表),默认值为随机采样
initCenterTableName:初始质心表名,当质心初始化方法采用指定初始质心表方式时采用
seed:初始随机种子数,正整数,默认值为当前时间,seed设置为固定值则每次聚类结果是稳定的
enableSparse:输入表数据是否为稀疏格式, 默认值为非稀疏格式
itemDelimiter:当输入表数据为稀疏格式时,kv间的分割符,默认值为空格
kvDelimiter:当输入表数据为稀疏格式时,key和value的分割符,默认值冒号
modelName:输出模型的模型名
idxTableName:输出聚类结果表,和输入表对应,并指明聚类后每条记录所属的类号
idxTablePartition:输出聚类结果表的分区表名
clusterCountTableName :输出聚类统计表,统计各个聚类包含的点的数目
centerTableName:输出聚类中心表
coreNum:节点个数,与参数memSizePerCore配对使用,正整数,默认自动计算
memSizePerCore :单个节点内存大小,单位M,正整数,默认自动计算
lifecycle:指定输出表的生命周期,默认没有生命周期

相关实践学习
使用PAI+LLaMA Factory微调Qwen2-VL模型,搭建文旅领域知识问答机器人
使用PAI和LLaMA Factory框架,基于全参方法微调 Qwen2-VL模型,使其能够进行文旅领域知识问答,同时通过人工测试验证了微调的效果。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
4月前
|
算法 机器人
基于SOA海鸥优化算法的PID控制器最优控制参数计算matlab仿真
本课题研究基于海鸥优化算法(SOA)优化PID控制器参数的方法,通过MATLAB仿真对比传统PID控制效果。利用SOA算法优化PID的kp、ki、kd参数,以积分绝对误差(IAE)为适应度函数,提升系统响应速度与稳定性。仿真结果表明,SOA优化的PID控制器在阶跃响应和误差控制方面均优于传统方法,具有更快的收敛速度和更强的全局寻优能力,适用于复杂系统的参数整定。
|
3月前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
4月前
|
算法 Python
粒子群算法对pi控制器进行参数优化,随时优化pi参数以控制直流无刷电机转速(Simulink仿真实现)
粒子群算法对pi控制器进行参数优化,随时优化pi参数以控制直流无刷电机转速(Simulink仿真实现)
158 9
|
10月前
|
机器学习/深度学习 算法 Python
机器学习特征筛选:向后淘汰法原理与Python实现
向后淘汰法(Backward Elimination)是机器学习中一种重要的特征选择技术,通过系统性地移除对模型贡献较小的特征,以提高模型性能和可解释性。该方法从完整特征集出发,逐步剔除不重要的特征,最终保留最具影响力的变量子集。其优势包括提升模型简洁性和性能,减少过拟合,降低计算复杂度。然而,该方法在高维特征空间中计算成本较高,且可能陷入局部最优解。适用于线性回归、逻辑回归等统计学习模型。
398 7
|
6月前
|
算法 数据可视化 数据挖掘
基于EM期望最大化算法的GMM参数估计与三维数据分类系统python源码
本内容展示了基于EM算法的高斯混合模型(GMM)聚类实现,包含完整Python代码、运行效果图及理论解析。程序使用三维数据进行演示,涵盖误差计算、模型参数更新、结果可视化等关键步骤,并附有详细注释与操作视频,适合学习EM算法与GMM模型的原理及应用。
|
8月前
|
机器学习/深度学习 数据采集 人工智能
20分钟掌握机器学习算法指南
在短短20分钟内,从零开始理解主流机器学习算法的工作原理,掌握算法选择策略,并建立对神经网络的直观认识。本文用通俗易懂的语言和生动的比喻,帮助你告别算法选择的困惑,轻松踏入AI的大门。
|
9月前
|
机器学习/深度学习 存储 Kubernetes
【重磅发布】AllData数据中台核心功能:机器学习算法平台
杭州奥零数据科技有限公司成立于2023年,专注于数据中台业务,维护开源项目AllData并提供商业版解决方案。AllData提供数据集成、存储、开发、治理及BI展示等一站式服务,支持AI大模型应用,助力企业高效利用数据价值。
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
AI训练师入行指南(三):机器学习算法和模型架构选择
从淘金到雕琢,将原始数据炼成智能珠宝!本文带您走进数字珠宝工坊,用算法工具打磨数据金砂。从基础的经典算法到精密的深度学习模型,结合电商、医疗、金融等场景实战,手把手教您选择合适工具,打造价值连城的智能应用。掌握AutoML改装套件与模型蒸馏术,让复杂问题迎刃而解。握紧算法刻刀,为数字世界雕刻文明!
357 6
|
11月前
|
人工智能 编解码 算法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
282 0
|
3月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
364 0