全文共684个字,1张图,预计阅读时间6分钟。

K-means原理

K-means算法是输入聚类个数k,以及包含 n个数据对象的数据库,输出满足方差最小标准k个聚类的一种算法。

基本流程:

  • 步骤1:
    从n个数据对象任意选择 k 个对象作为初始聚类中心;而对于所剩下其它对象,则根据它们与这些聚类中心的相似度(距离),分别将它们分配给与其最相似的
    (聚类中心所代表的)聚类;

  • 步骤2:
    再计算每个所获新聚类的聚类中心(该聚类中所有对象的均值);

  • 步骤3:
    不断重复这一过程直到标准测度函数开始收敛为止。

一般都采用均方差作为标准测度函数. k个聚类具有以下特点:各聚类本身尽可能的紧凑,而各聚类之间尽可能的分开。

算法的时间复杂度上界为O(n*k*t), 其中t是迭代次数。

k-means算法是一种基于样本间相似性度量的间接聚类方法,属于非监督学习方法。此算法以k为参数,把n 个对象分为k个簇,以使簇内具有较高的相似度,而且簇间的相似度较低。

我们使用sklearn库来实现k-means。

 if mini_batch:k_means=MiniBatchKMeans(n_clusters=true_k,init='k-means++',n_init=1,                        init_size=1000,batch_size=1000,verbose=False)else:k_means=KMeans(n_clusters=true_k,init='k-means++',max_iter=300,n_init=1,               verbose=False)

中心点的个数从3到80对应的误差值的曲线

10个簇的数据集的个数

Cluster distribution:{3: 133, 9: 93, 1: 131, 4: 497, 5: 328, 6: 263, 8: 78, 2: 46, 0: 164, 7: 67}

10个类的tfidf标签结果

Top terms per cluster:Cluster 0 工作 人类 时间 学习 事情 员工 研究 生活 团队 能力Cluster 1 区块 货币 比特 加密 星球 数字 交易所 交易 项目 技术Cluster 2 公寓 房租 长租 租金 租赁 租房 房源 上涨 北京 资本Cluster 3 手机 苹果 三星 小米 华为 科技 智能手机 厂商 发布 推出Cluster 4 中国 特斯拉 电影 美国 明星 马斯克 谷歌 科技 产品 攻略Cluster 5 融资 投资 企业 中国 教育 服务 平台 行业 产品 亿美元Cluster 6 用户 品牌 平台 内容 产品 视频 电商 社交 程序 消费Cluster 7 城市 房价 上海 房地产 房子 北京 上涨 经济 一线 数据Cluster 8 汽车 驾驶 自动 特斯拉 生产 技术 中国 未来 亿美元 苹果Cluster 9 腾讯 游戏 用户 玩家 中国 内容 娱乐 视频 平台 世界

评分

0.8191335472911944

说明

代码大部分来自这篇文章:K-means算法及文本聚类实践,只是没有数据集,然后自己手撕写了个36kr文章的爬虫的程序。φ(>ω<*)

代码地址上传到github:text-cluster

相关文章

K-MEANS算法_百度百科

K-means算法及文本聚类实践 - CodeMeals - 博客园

【文本聚类】用k-means对文本进行聚类 - CSDN博客

K-means算法及文本聚类实践 - CSDN博客

原文链接:https://www.jianshu.com/p/af413a9d2b4a

查阅更为简洁方便的分类文章以及最新的课程、产品信息,请移步至全新呈现的“LeadAI学院官网”:

www.leadai.org

请关注人工智能LeadAI公众号,查看更多专业文章

大家都在看

LSTM模型在问答系统中的应用

基于TensorFlow的神经网络解决用户流失概览问题

最全常见算法工程师面试题目整理(一)

最全常见算法工程师面试题目整理(二)

TensorFlow从1到2 | 第三章 深度学习革命的开端:卷积神经网络

装饰器 | Python高级编程

今天不如来复习下Python基础

k-means算法原理及实战相关推荐

  1. kmeans改进 matlab,基于距离函数的改进k―means 算法

    摘要:聚类算法在自然科学和和社会科学中都有很普遍的应用,而K-means算法是聚类算法中经典的划分方法之一.但如果数据集内相邻的簇之间离散度相差较大,或者是属性分布区间相差较大,则算法的聚类效果十分有 ...

  2. 统计学习方法笔记(一)-k近邻算法原理及python实现

    k近邻法 k近邻算法 算法原理 距离度量 距离度量python实现 k近邻算法实现 案例地址 k近邻算法 kkk近邻法(kkk-NN)是一种基本分类和回归方法. 算法原理 输入:训练集 T={(x1, ...

  3. k均值算法原理详细讲解以及matlab代码实现

    有研究生物电信号处理和机器学习的欢迎加我qq429500506共同交流学习进步. 最近更新文章的频率太低了,主要原因是不想为了发文章而发文章,想潜心研究,写好文章,顺便想说一句开源万岁,最近一个月虽然 ...

  4. k近邻算法原理c语言,实验二 K-近邻算法及应用

    作业信息 一.[实验目的] 理解K-近邻算法原理,能实现算法K近邻算法: 掌握常见的距离度量方法: 掌握K近邻树实现算法: 针对特定应用场景及数据,能应用K近邻解决实际问题. 二.[实验内容] 实现曼 ...

  5. 【MATLAB】Parzen窗与K近邻算法原理与代码详解

    文章目录 1.非参数估计原理 2.Parzen窗 2.1.算法原理 2.2.Matlab实现与参数探究 3.K近邻 3.1.算法原理 3.2.Matlab实现与参数探究 1.非参数估计原理 \qqua ...

  6. 机器学习之K近邻算法原理+应用实例

    1. 基本原理 K最近邻(K-Nearest Neighbor,KNN)分类算法是最简单的机器学习算法之一,其基本思路与"近朱者赤,近墨者黑"的原理类似,当对未分类样本进行分类时, ...

  7. k means算法C语言伪代码,K均值算法(K-Means)

    1. K-Means算法步骤 算法步骤 收敛性定义,畸变函数(distortion function): 伪代码: 1) 创建k个点作为K个簇的起始质心(经常随机选择) 2) 当任意一个点的蔟分配结果 ...

  8. 机器学习-聚类之K均值(K-means)算法原理及实战

    K-means算法 前言 机器学习方法主要分为监督学习和非监督学习两种.监督学习方法是在样本标签类别已知的情况下进行的,可以统计出各类样本的概率分布.特征空间分布区域等描述量,然后利用这些参数进行分类 ...

  9. 机器学习-降维之主成分分析PCA算法原理及实战

    主成分分析 前言 近年来,随着互联网和信息行业的发展,数据已经渗透到各行各业,成为重要的生产因素如数据记录和属性规模的急剧增长.社会已经进入大数据时代,数据越多越好似乎已经成为公理.然而,数据量并不是 ...

  10. 机器学习-集成之AdaBoost算法原理及实战

    Boosting和AdaBoost 简介 Bagging采用的是一种多个分类器简单评分的方式.而Boosting是和Bagging对应的一种将弱分类器组合成为强分类器的算法框架,它根据分类器学习误差率 ...

最新文章

  1. 影子系统、沙箱、虚拟机之间的区别
  2. 【bzoj4881】[Lydsy2017年5月月赛]线段游戏 树状数组+STL-set
  3. [已经完美解决]IE下 'document.getElementById(...)' is null
  4. ROW_NUMBER() OVER (PARTITION BY 字段1 ORDER BY 字段2 DESC)
  5. Open/Close Port in Centos
  6. cmd 调用webservice接口_c# 三种方法调用WebService接口
  7. 【Git学习笔记5】以普通模式合并(--no-ff)、push到远程库及分支管理策略
  8. (五)JS基础知识二(通过图理解原型和原型链)【三座大山之一,必考!!!】
  9. ubuntu20.04的xfce4下面安装百度输入法linux版本
  10. Git初学札记(六)————在远程新建本地Branch与在本地新建远程Branch
  11. 算法题10 最长等差序列问题
  12. 3D打印革命性升级!只要光照几十秒,完美雕像浮出水面丨Science
  13. php内li背景色,CSS_css中ul li的背景小图标属性设置的两种情况,这里我们分两种情况列出: ① - phpStudy...
  14. JDK1.8之ConcurrentHashMap
  15. turbo c 2.0 官方下载_iMyFone MintPDF英文版官方下载2.0.10
  16. fiddler运行原理_fiddler工作原理
  17. SCI投稿记录篇——PRE投稿必须知道的论文格式和流程
  18. 解决a start job is running for dev-disk-by启动错误
  19. 干货!我被面试官绝地反杀了,附详细答案
  20. 【职业人的自我修炼十项原则】

热门文章

  1. 财经计算机财务函数,会计财务最常用的15个公式函数
  2. 汇编指令mrs_专题1:电子工程师 之 软件】 之 【8.arm指令】
  3. php注册登录模板,Phpcms V9 管理后台登陆及会员注册登录模板的修改方法
  4. 装饰者模式-继承模式和接口模式
  5. SQL记录-PLSQL数组
  6. iOS模型输出和打印
  7. 将Excel中读取的科学计数法表示的Double数据转换为对应的字符串
  8. java 数据库查询Date类型字段 没有了时分秒 全为 00 的解决办法
  9. 黑马 程序员——Java基础---IO(下)
  10. 对抗攻击之利用水印生成对抗样本