位置: 编程技术 - 正文

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进行图像处理)

  • 金融企业往来支出属于什么科目
  • 采购的固定资产验收无误后直接安装使用
  • 个体工商户怎样纳税
  • 410768金税盘
  • 视同销售计入销售费用能税前扣除吗
  • 建设工程未交付什么意思
  • 辅导期一般纳税人什么意思
  • 保证金转租金的会计处理
  • 需要预缴增值税
  • 销售营改增之后取得的固定资产
  • 增值税专用发票电子版
  • 对员工的罚款怎么做账
  • 海关对现金携带数量有要求吗
  • 工费经费用计提吗
  • 股东的房产无偿提供给公司用
  • 应交税费的借方表示什么
  • 税收征收管理权是什么
  • 购买车辆保险怎么入账
  • 公司资金周转困难怎么办
  • 苹果手机zm
  • 固定资产减值测试时预计其未来现金流量不应考虑的因素
  • 购进土地会计分录
  • 小规模减免的增值税怎么记账
  • 无票收入后又开红字发票
  • win没有投影到此电脑怎么办
  • 公司有长期挂账的权利吗
  • 房屋租赁进项税
  • PHP:mb_encode_mimeheader()的用法_mbstring函数
  • php常用设计模式(大总结)
  • 年末一般纳税人税率表
  • 不动产出租要交什么税
  • 将债务转为资本的,债务人应当将债权人
  • 公司资金被税务部门冻结
  • 遇到的问题及解决方法
  • 进项发票认证后怎么做账
  • 未确认融资费用借贷方向
  • 购买土地缴纳契税
  • 机票报销属于什么费
  • 中国税收居民是什么是中国公民嘛
  • 分布式网络爬虫
  • 企业怎么可以合理避税?
  • 帝国cms移动端
  • 员工探亲证明怎么写
  • 房屋租赁如何入账
  • 机关事业单位体育协会举办体育赛事活动应当
  • 建筑劳务公司是什么性质
  • 营业外收支的内容
  • 安全生产费如何计量
  • 成本法下被投资单位其他综合收益变动
  • 春节重要通知发放工资
  • 事业单位其他支出科目
  • 不动产租赁按简易计税吗
  • 科技经费使用
  • 客户以个人名义打对公户现在要求开专票可以吗
  • 收到银行利息记什么会计科目
  • 应收账款是否算负债
  • 发票过账是什么意思
  • myeclipse连接mysql数据库代码
  • mysql免安装版怎么使用
  • win10创意者更新易升
  • soapui安装与配置
  • ubuntu系统防火墙状态
  • Centos Nginx + Svbversion配置安装方法分享
  • win10字体边缘模糊
  • linux操作系统的安装
  • openssh教程
  • 在linux系统中创建文件的命令
  • cocos2dx-3.1.1 labelttf与label
  • 怎么重置mysql的密码
  • jquery(document).ready
  • 查看node
  • 简洁实用的公司治理机制
  • javascript要怎么学
  • Python 基于豆瓣电影的可视化
  • 百旺导入领购的新发票
  • 成品油和非成品油的税务知识
  • 烟叶税属于中央税还是地方税
  • 南京市高新园区
  • 以出让方式取得的土地
  • 武汉市江岸区工商局咨询电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设