聚类分析过程

一般聚类分析的数据源是需要相对干净的,即需要做统一的特征清洗、特征变换过程,即空值、非法值、异常值、类别变量等的处理。主要过程如下:

数据采集:我们可以认为是统一的ETL过程,这里涉及埋点、转发、存储、提取等过程。是典型的数据分析前置过程。

特征变换/特征选择:聚类对异常数据特别敏感,同时原始数据直接进入聚类分析不大现实。特征处理包含行维度、列维度的处理,行维度主要包括:空值、非法值、异常值等方面的处理,而列维度涉及降维处理,冗余的列对聚类影响较大,所以一般聚类分析之前会做一次PCA。

聚类分析、聚类评估:下文将重点举例描述

结果解读:无监督学习,一般没有label,聚类的数量也是未知的,需要结合业务知识进一步解读聚类结果,比如从用户画像维度进一步切分同个分类的数据,从统计维度挖掘特征。

知识发现:解读结果之后,需要落地实现或者输出报告,我们把这个过程称为知识发现的过程。聚类结果产生的label结果,往往可以作为监督学习的来源。

下面举两个经典的聚类分析算法进一步说明。

Kmeans

基于距离聚类的聚类算法

算法步骤:

1、根据设定分类数量,随机生成N个中心点

2、每个点计算与中心点距离,按最近距离合并分类

3、基于2重新计算每个分类的中心点

4、重复2~3,直到中心点收敛

sklearn实现

from sklearn.cluster import KMeans

kmeans = KMeans(n_clusters=3)

pred = kmeans.fit_predict(X)

聚类效果

GMM

高斯混合模型是几个高斯分布的叠加,每一个分布代表一个分类

算法步骤:

1、设定分类数量

2、对每一个高斯分布均值、方差随机初始化

3、计算每个样本的在各个高斯分布的概率、权重值,Expectation-step

4、根据最大似然重新估算高斯分布均值、方差,Maximization-step

5、重复3~4直到高斯分布均值和方差收敛

sklearn实现

from sklearn.mixture import GaussianMixture

gmm = GaussianMixture(n_components=3)

gmm = gmm.fit(X)

pred_gmm = gmm.predict(X)

聚类效果

模型评价

GMM和KMeans分类结果有一定的随机性,可能得到局部优化解,需要多次微调。

GMM是概率分类结果,可以对比topN分类,比如文档聚类;GMM计算代价更大,大数据集是个负担。

评估指标

聚类算法的评估主要衡量两个方面:同类紧密程度、类间分散程度;从不同指标看,同类越紧密、类间越分散,聚类效果越好

基本上为无监督聚类,所以“Rand Index”之类的指标不是太实用,常用EIBOW方法 ,根据SSE评估聚类效果,另外对于聚类结果评估可以采用以下两种方式:

1、Silhouette index

s = (b-a)/max(a,b)

ai:同分类内,单点与其他点的平均距离

bi:分类中的点与最近分类点的平均距离

a:所有点ai的均值

b:所有点bi的均值

基于轮廓的衡量方法,可能不适合 Single link、Complete link、DBSCANE等聚类方法。

2、Calinski-Harabasz

CH指标通过“同类”、“类间”协方差矩阵的迹(各个变量的方差)衡量,计算速度较快。

kmeans及模型评估指标_聚类分析的过程和两个常用的聚类算法相关推荐

  1. kmeans及模型评估指标_机器学习模型评估指标总结

    常用机器学习算法包括分类.回归.聚类等几大类型,以下针对不同模型总结其评估指标 一.分类模型 常见的分类模型包括:逻辑回归.决策树.朴素贝叶斯.SVM.神经网络等,模型评估指标包括以下几种: (1)二 ...

  2. kmeans及模型评估指标_使用sklearn评估器构建聚类模型

    原标题:使用sklearn评估器构建聚类模型 作者:徐瑶佳 来源:人工智能学习圈 工作内容: 聚类算法是在没有给定划分类别的情况下,根据数据样本的相似度进行样本分组的一种算法.聚类算法过程是无监督的, ...

  3. kmeans及模型评估指标_如何评估聚类模型?兰德指数、轮廓系数、Calinski Harabaz指数...

    我们可以通过对一系列曲目进行聚类来创建歌曲的自动播放列表,我们可以展示如何自动创建相似歌曲的子组.通过我们现有的歌曲知识,我们能够验证该聚类练习的结果. 但是,如果我们对数据没有这种先验知识怎么办?如 ...

  4. kmeans及模型评估指标_基于K-MEANS聚类模型和RFM价值分类模型的订单交易用户价值分析...

    用户数据化运营是互联网运营工作必备工作之一,且产品的生存必须有用户.而会员价价值度是用来评估用户的价值情况,是区分会员价值的重要性模型和参考依据,也是衡量不同营销效果的关键指标之一,我们可以通过复购率 ...

  5. kmeans及模型评估指标_模型评估常用指标

    一. ROC曲线和AUC值 在逻辑回归.随机森林.GBDT.XGBoost这些模型中,模型训练完成之后,每个样本都会获得对应的两个概率值,一个是样本为正样本的概率,一个是样本为负样本的概率.把每个样本 ...

  6. 模型评估指标_精准率、召回率、F1-score、ROC曲线、AUC曲线

    一.分类结果混淆矩阵 1.T.F.P.N辨析 P(Positive).N(Negative)针对的是预测值的结果. P表示对样本的预测结果为正例, N表示对样本的预测结果为反例. T(True).F( ...

  7. CV之NS之ME/LF:图像风格迁移中常用的模型评估指标/损失函数(内容损失、风格损失)简介、使用方法之详细攻略

    CV之NS之ME/LF:图像风格迁移中常用的模型评估指标/损失函数(内容损失.风格损失)简介.使用方法之详细攻略 目录 图像风格迁移中常用的几种损失函数 1.内容损失 2.风格损失 3.定义总损失 图 ...

  8. 【论文常用笔记】回归模型评估指标

    范数 一.什么是回归问题? 二.常用回归模型评估指标有哪些? 1.绝对误差: yi−y^iy_{i}-\hat{y}_{i}yi​−y^​i​ 2.相对误差: yi−y^iyi\frac{y_{i}- ...

  9. 机器学习模型评估指标总结

    常用机器学习算法包括分类.回归.聚类等几大类型,以下针对不同模型总结其评估指标 一.分类模型 常见的分类模型包括:逻辑回归.决策树.朴素贝叶斯.SVM.神经网络等,模型评估指标包括以下几种: (1)二 ...

最新文章

  1. [网摘学习]在Ubuntu上安装和配置OpenStack Nova之二
  2. VS2013自带的Browser Link功能引发浏览localhost网站时不停的轮询
  3. Assembly--及相关内容
  4. linux——Shell脚本说明、创建、执行、调试
  5. js uri解码_js进行URL编码(escape,encodeURI,encodeURIComponent)
  6. 如何关闭SAP CRM中间件的delta download方式
  7. java版电子商务spring cloud分布式微服务b2b2c社交电商(四)SpringBoot 整合JPA
  8. Pat乙级1011题:A+B和C
  9. Java类类getGenericSuperclass()方法及示例
  10. 英特尔西安团队将被裁撤 波及约200人?回应...
  11. Junit使用方法总结
  12. Spark的Master、Worker、Executor以及task等概念
  13. Ajax运用json数组传输数据
  14. 洛谷P5170 【模板】类欧几里得算法(数论)
  15. 编译器的差别gcc和VS
  16. [Android][Kernel]基于crash工具搭建分析ramdump的平台
  17. 3w服务器把信息组织成,HTML小白入坑日记~qwq
  18. Windows Terminal 使用及美化
  19. lotus interop.5.5
  20. Linux下的Web开发工具(一)

热门文章

  1. 输入 3 个正数,判断能否构成一个三角形
  2. jenkins 安装 和自动部署的 一些配置
  3. mui封装的ajax请求
  4. 蓝桥杯试题:矩阵翻硬币
  5. 一个用js写的接口http调试程序
  6. 缓存MEMCACHE 使用原子性操作add,实现并发锁
  7. Android开发工具大全【转】
  8. Linux系统配置成简单的路由器
  9. 敏捷图书排行 (2011年修订)【转】
  10. 46 - 算法 -Leetcode-141-环形链表-快慢指针