| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 【Python数据分析】数据挖掘建模——聚类分析 -> 正文阅读 |
|
[人工智能]【Python数据分析】数据挖掘建模——聚类分析 |
聚类算法是在没有给定划分类别的情况下,根据数据相似度进行样本分组的一种方法,是一种无监督学习方法。聚类的输入是一组未被标记的样本,聚类根据数据自身的距离或相似度将他们划分为若干组,划分的原则是组内样本最小而组间距离最大化。 常用的聚类方法有: 常见的聚类分析算法有: 这里主要介绍一下最常用的K-Means聚类算法 一、K-Means聚类算法简介K-Means算法是典型的基于距离的非层次聚类算法,在最小化误差函数的基础上将数据划分为预定的类数k,采用距离作为相似性评价指标,即认为两个对象的距离越近,其相似度就越大。 1.算法过程(1)从n个样本数据中随机选取k个对象作为初始聚类中心; (2)分别计算每个样本到各个聚类中心的距离,将对象分配到距离最近的聚类中; (3)所欲对象分配完后,重新计算k个聚类的中心; (4)与前一次计算得到的k个聚类中心比较,如果聚类中心发生变化,转至步骤(2),否则转至步骤(5); (5)当质心不发生变化时,停止并输出聚类结果。 2.聚类算法的优缺点2.1 优点
2.2 缺点
聚类的结果可能依赖于初始聚类中心的随机选择,使得结果严重偏离全局最优分类。因此,在实践中为了得到较好的结果,通常选择不同的初始聚类中心,多次运行k-means算法。在计算k个聚类中心的时候,对于连续数据,聚类中心取该簇的均值但是当样本的某些属性是分类变量时,均值可能无定义,此时可以使用k-众数方法。 3.相似性的度量对于连续属性,要先对各属性值进行零-均值规范,再进行距离的计算。度量样本之间的相似性最常用的是欧几里得距离、曼哈顿距离和闵可夫斯基距离。 ?4.目标函数使用误差平方和SSE作为度量聚类质量的目标函数。 ?簇的聚类中心的计算公式 其中 k表示聚类簇的个数,表示第i个簇,x代表样本,表示簇的聚类中心,n表示数据集中样本的个数,表示第i个簇中样本的个数。 二、用Python实现K-Means聚类算法1、导入数据并进行标准化?
数据如下: 该数据集表示餐饮客户的消费行为特征?
2.构建kmeans模型
3.结果展示
得到结果如下,显示了每个特征在每个簇下的中心位置。 ? ?详细输出原始数据及其类别
我们还可以用聚类结果可视化工具——TSNE将数据进行降维并在二维或者三维空间展示出来。
结果如下:? ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 20:34:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |