Python实现Iris数据集(鸢尾花卉数据集)meanshift聚类
一,鸢尾花Iris数据集解析参考博文:https://blog.csdn.net/u010916338/article/details/86487890
二,Python使用meanshift聚类,并绘制聚类散点图。
from sklearn.cluster import MeanShift
from sklearn import datasets
import matplotlib.pyplot as plt
#加载数据集,是一个字典类似Java中的map
lris_df = datasets.load_iris()
#挑选出前两个维度作为x轴和y轴,你也可以选择其他维度
x_axis = lris_df.data[:,0]
y_axis = lris_df.data[:,2]
#构建模型
model = MeanShift()
#训练模型
model.fit(lris_df.data)
#预测全部150条数据
predicted = model.fit_predict(lris_df.data)
#打印出来对150条数据的聚类散点图
plt.scatter(x_axis,y_axis,c=predicted)
meanshift聚类的效果和kmeans聚成两类的效果相当
三,meanshift算法流程
(1)确定滑动窗口半径r,以随机选取的中心点C半径为r的圆形滑动窗口开始滑动。均值漂移类似一种爬山算法,在每一次迭代中向密度更高的区域移动,直到收敛。
(2)每一次滑动到新的区域,计算滑动窗口内的均值来作为中心点,滑动窗口内的点的数量为窗口内的密度。在每一次移动中,窗口向密度更高的区域移动。
(3)移动窗口,计算窗口内的中心点以及窗口内的密度,知道没有方向在窗口内可以容纳更多的点,即一直移动到圆内密度不再增加为止。
(4)步骤一到三会产生很多个滑动窗口,当多个滑动窗口重叠时,保留包含最多点的窗口,然后根据数据点所在的滑动窗口进行聚类。
单个滑动窗口演示:
多个滑动窗口(其中起始点的个数可以为所有样本或者随机抽样,初始值覆盖面广可以解决kmeans局部最优问题)
四,meanshift的优缺点
优点:
(1)不同于K-Means算法,均值漂移聚类算法不需要我们知道有多少类/组。
(2)基于密度的算法相比于K-Means受均值影响较小。
缺点:
窗口大小/半径「r」的选择很重要。
相关知识
python利用c4.5决策树对鸢尾花卉数据集进行分类(iris)
python实践gcForest模型对鸢尾花数据集iris进行分类
TensorFlow 2建立神经网络分类模型——以iris数据为例
用Python识别花卉种类,并自动整理分类!
人工智能考试——k近邻算法对鸢尾花(iris)数据集进行分析
flower花朵识别数据集
Tensorflow鸢尾花分类(数据加载与特征处理)
细粒度分类数据集汇总
Python机器学习基础教程
植物病害识别数据集
网址: Python实现Iris数据集(鸢尾花卉数据集)meanshift聚类 https://www.huajiangbk.com/newsview174204.html
上一篇: 买花要遵循的7个原则 |
下一篇: 喜欢在家中养护花卉,就选择花期长 |
推荐分享

- 1君子兰什么品种最名贵 十大名 4012
- 2世界上最名贵的10种兰花图片 3364
- 3花圈挽联怎么写? 3286
- 4迷信说家里不能放假花 家里摆 1878
- 5香山红叶什么时候红 1493
- 6花的意思,花的解释,花的拼音 1210
- 7教师节送什么花最合适 1167
- 8勿忘我花图片 1103
- 9橄榄枝的象征意义 1093
- 10洛阳的市花 1039