码迷,mamicode.com
首页 > 其他好文 > 详细

机器学习-鸢尾花

时间:2020-04-14 09:12:42      阅读:112      评论:0      收藏:0      [点我收藏+]

标签:随机   idt   otl   red   src   numpy   clu   k均值聚类   com   

1). 扑克牌手动演练k均值聚类过程:>30张牌,3类

 

随机选三个中心

技术图片

 

 

 

技术图片

 

 

经过聚类后选出三个新中心

 

 技术图片

 

 

 再通过聚类后又重新选出三个新中心,已不能再分就是最终结果为6 、17 、 26

技术图片

 

 

2). 用sklearn.cluster.KMeans,鸢尾花花瓣长度数据做聚类,并用散点图显示.

# -*- coding:utf-8 -*-
# 文件名称:机器学习-鸢尾花.py

import matplotlib.pyplot as plt import numpy as np from sklearn.datasets import load_iris from sklearn.cluster import KMeans iris = load_iris()#导入数据 sj = iris.data[:, 2]#第三列花瓣长度 x = sj.reshape(-1, 1) km_model = KMeans(n_clusters=3) km_model.fit(x)#训练 y = km_model.predict(x)#预测 plt.scatter(x[:, 0], x[:, 0], c=y, s=50, cmap="rainbow") plt.show()

 

预测结果如下图

 技术图片

 

使用鸢尾花花瓣长度数据做聚类散点图如下

技术图片

 

 

3). 鸢尾花完整数据做聚类并用散点图显示.

# -*- coding:utf-8 -*-
# 文件名称:机器学习-鸢尾花.py
import matplotlib.pyplot as plt
import numpy as np
from sklearn.datasets import load_iris
from sklearn.cluster import KMeans


iris = load_iris()#导入数据
x = iris.data
km_model = KMeans(n_clusters=3)
km_model.fit(x)#训练
y = km_model.predict(x)#预测
y
plt.scatter(x[:,2],x[:,3],c=y, s=50 ,cmap="rainbow")
plt.show()

  预测值

技术图片

 

 散点图如下:

技术图片

 

 

 

4).想想k均值算法中以用来做什么?

k均值算法中以用来做像素处理,图像的每个像素颜色即代表训练样本x,通过K均值算法寻找16种颜色代表图像中的所有像素的颜色,即也就是寻找16个聚类中心,最后,将所有的像素颜色替换为16个聚类中心所对应的颜色。

 

 

 

 

机器学习-鸢尾花

标签:随机   idt   otl   red   src   numpy   clu   k均值聚类   com   

原文地址:https://www.cnblogs.com/zhff/p/12695403.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!