位置: 编程技术 - 正文

python中实现k-means聚类算法详解(k mean python)

编辑:rootadmin

推荐整理分享python中实现k-means聚类算法详解(k mean python),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python的kmeans,k means python,k mean python,k mean python,python k means,k-means python,python kmean,python语言写一个kmeans算法,内容如对您有帮助,希望把文章链接给更多的朋友!

算法优缺点:

优点:容易实现缺点:可能收敛到局部最小值,在大规模数据集上收敛较慢使用数据类型:数值型数据

算法思想

k-means算法实际上就是通过计算不同样本间的距离来判断他们的相近关系的,相近的就会放到同一个类别中去。

1.首先我们需要选择一个k值,也就是我们希望把数据分成多少类,这里k值的选择对结果的影响很大,Ng的课说的选择方法有两种一种是elbow method,简单的说就是根据聚类的结果和k的函数关系判断k为多少的时候效果最好。另一种则是根据具体的需求确定,比如说进行衬衫尺寸的聚类你可能就会考虑分成三类(L,M,S)等

2.然后我们需要选择最初的聚类点(或者叫质心),这里的选择一般是随机选择的,代码中的是在数据范围内随机选择,另一种是随机选择数据中的点。这些点的选择会很大程度上影响到最终的结果,也就是说运气不好的话就到局部最小值去了。这里有两种处理方法,一种是多次取均值,另一种则是后面的改进算法(bisecting K-means)

3.终于我们开始进入正题了,接下来我们会把数据集中所有的点都计算下与这些质心的距离,把它们分到离它们质心最近的那一类中去。完成后我们则需要将每个簇算出平均值,用这个点作为新的质心。反复重复这两步,直到收敛我们就得到了最终的结果。

函数

loadDataSet(fileName)

从文件中读取数据集

python中实现k-means聚类算法详解(k mean python)

distEclud(vecA, vecB)

计算距离,这里用的是欧氏距离,当然其他合理的距离都是可以的

randCent(dataSet, k)

随机生成初始的质心,这里是虽具选取数据范围内的点

kMeans(dataSet, k, distMeas=distEclud, createCent=randCent)

kmeans算法,输入数据和k值。后面两个事可选的距离计算方式和初始质心的选择方式

show(dataSet, k, centroids, clusterAssment)

可视化结果

这里是聚类结果,还是很不错的啦

但是有时候也会收敛到局部最小值,就像下面这样,就是不幸收敛到局部最优了

总结

标签: k mean python

本文链接地址:https://www.jiuchutong.com/biancheng/372220.html 转载请保留说明!

上一篇:Python编程之基于概率论的分类方法:朴素贝叶斯(基于python的设计)

下一篇:python图像常规操作(用python进行图像处理)

  • 个人所得税财产租赁所得税率表
  • 保险费车船税会计分录
  • 小规模企业可以收增值税专用发票吗
  • 信息采集需要填两个家庭成员,但只能有一个监护人
  • 2020年建筑企业税收优惠政策
  • 所得税二季度可以先少缴吗
  • 买断式贴现是什么业务
  • 住房公积金个人和单位各承担多少
  • 迟延履行利息记什么科目?
  • 零申报企业年报资产总额怎么填
  • 供应商价格折扣
  • 企业搬迁补偿款发放流程
  • 专票怎么提交不上去
  • 物业公司取暖费收费标准
  • 安全生产费纳税调整政策
  • 增值税专用发票可以开电子发票吗
  • 税控设备维修费怎么算
  • 预缴企业所得税怎么算
  • 加计扣除的研发费用范围
  • 一月份的工作日是多少天
  • 注册资本 变更
  • 预收账款预提费用
  • 工程施工成本发票未到会计分录及账务处理
  • 个人购买余额宝安全吗?
  • 仪器购买税率
  • 新的成品油消费税纳税申报表有什么变化?
  • 酒店长包房正常打几折
  • 无偿赠送资产需要交哪些税
  • 出口货物国际运输流程图
  • 薪酬支出包括什么
  • 打开网页出现电脑标志
  • 赠送产品如何计入成本
  • 生产型企业公司有哪些
  • 苹果电脑连接打印机打印不出来
  • 无法启用网络发展
  • 车间闲置固定资产怎么算
  • mce文件是什么软件
  • wordpress创建
  • Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
  • 劳务费还没发可以先计提吗
  • 时点数和时期数 订单量 库存量点击量
  • push指令执行的详细过程
  • php for break
  • 没有计提坏账如何披露
  • 城建税减半吗
  • df -th命令
  • 利润表净利润等于未分配利润吗
  • windows 和 linux
  • 股权转让需要开票吗怎么开
  • 计提和结转的例子
  • 个人如何开增值税普通电子发票
  • 公司市场部门有什么职位
  • 第三方代缴社保合法吗最新规定
  • 领用材料什么会计科目
  • 用于研发购买的云服务器应计入研发费用直接投入里吗
  • 子公司提取盈余公积
  • 小规模公司月末报税吗
  • 外派员工的薪酬构成有哪些项目
  • 如何计提当期费用成本
  • 红十字会是事业编还是行政编
  • 经营性应付项目减少对经营活动现金
  • 电脑c盘里windows
  • windows10x预览版
  • xp操作系统入门
  • demon.exe是什么
  • Win10系统怎么打开IE浏览器
  • linux查找占用磁盘最大文件
  • python自动发邮件内容
  • javascript ()
  • nodejs实战
  • android内存使用情况
  • 辽宁省国家税务总局
  • 江西税务登记查询系统
  • 全国税务系统全面从严治党工作会议2023年
  • 主要领导成员是指
  • 车位过户需要契税发票吗
  • 地税征税范围
  • 地税局一般几点下班
  • 怎样加入广东省民间文艺家协会
  • 税务登录 河北省地方税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设