27.1 机器学习开发流程
27.2 机器学习模型是什么
-
定义:通过一种映射关系将输入值到输出值
27.3 机器学习算法分类
- 监督学习
- 分类 k-近邻算法、贝叶斯分类、决策树与
- 随机森林、逻辑回归、神经网络
- 回归 线性回归、岭回归
- 标注 隐马尔可夫模型 (不做要求)
- 无监督学习
-
聚类 k-means
-
27.3.1 无监督学习
无监督学习(英语:Supervised learning),可以由输入数据中学到或建立一个模型,并依此模式推测新的结果。输入数据是由输入特征值所组成。
27.3.2 分类问题
27.3.3 回归问题
27.4 实验:聚类-kmeans
In:
from sklearn.cluster import KMeans
import numpy as np
In:
X = np.random.rand(1000,3)
In:
km = KMeans(n_clusters=3)
In:
y = km.fit_predict(X)
In:
km.cluster_centers_ #中心点坐标
out:
array([[0.238751 , 0.41810177, 0.68977702],
[0.7904263 , 0.49175485, 0.65328186],
[0.46976168, 0.55723704, 0.1903177 ]])
In:
km.labels_ #预测结果
out:
array([0, 2, 1, 2, 1, 2, 0, 2, 0, 1, 2, 1, 0, 2, 1, 0, 0, 1, 0, 0, 0, 2,
0, 2, 0, 2, 2, 1, 1, 1, 2, 0, 0, 2, 2, 1, 1, 2, 2, 0, 2, 2, 0, 1,
2, 0, 1, 2, 2, 1, 0, 0, 2, 0, 0, 2, 2, 0, 2, 0, 0, 1, 2, 1, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 0, 1, 1, 1, 0, 2, 2, 2, 2, 0, 1, 2,
0, 1, 1, 2, 1, 1, 1, 1, 0, 2, 2, 2, 2, 0, 0, 1, 1, 0, 0, 0, 0, 2,
1, 0, 2, 1, 0, 2, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 2, 2, 1, 1, 0,
2, 1, 1, 1, 1, 1, 2, 2, 0, 0, 0, 0, 2, 0, 2, 0, 0, 1, 2, 0, 2, 0,
1, 1, 1, 0, 1, 0, 0, 1, 2, 2, 0, 0, 1, 0, 2, 2, 2, 2, 0, 1, 0, 1,
1, 2, 2, 2, 2, 0, 1, 1, 2, 1, 2, 0, 0, 2, 1, 0, 2, 0, 0, 1, 0, 2,
1, 0, 0, 0, 2, 0, 2, 2, 0, 2, 1, 2, 2, 2, 0, 1, 0, 2, 0, 2, 0, 0,
2, 2, 2, 2, 0, 0, 2, 1, 2, 2, 1, 0, 0, 2, 1, 0, 0, 0, 0, 0, 2, 1,
2, 1, 2, 1, 0, 1, 2, 0, 2, 1, 2, 2, 2, 0, 2, 2, 1, 0, 1, 2, 2, 1,
2, 2, 0, 2, 1, 1, 0, 2, 1, 2, 2, 2, 1, 0, 0, 0, 0, 2, 2, 2, 1, 2,
2, 0, 0, 2, 0, 0, 1, 0, 1, 0, 2, 2, 0, 0, 1, 2, 2, 2, 2, 1, 0, 1,
2, 0, 0, 2, 2, 2, 2, 1, 2, 0, 1, 1, 1, 1, 1, 0, 0, 2, 0, 0, 2, 0,
2, 1, 1, 1, 2, 2, 0, 0, 2, 2, 1, 2, 2, 2, 2, 2, 1, 0, 1, 2, 2, 2,
2, 2, 0, 0, 2, 2, 0, 2, 1, 1, 1, 1, 1, 2, 1, 1, 0, 0, 2, 0, 2, 1,
1, 1, 0, 0, 0, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 1, 2, 2, 0, 1, 2,
1, 0, 0, 1, 1, 2, 2, 1, 0, 0, 0, 0, 2, 1, 1, 0, 0, 1, 0, 2, 2, 1,
1, 2, 2, 2, 1, 2, 0, 2, 1, 2, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 2, 2,
2, 2, 2, 1, 2, 1, 1, 0, 1, 1, 1, 2, 0, 2, 0, 2, 1, 2, 0, 0, 0, 0,
1, 1, 1, 1, 1, 1, 0, 2, 1, 1, 1, 2, 2, 2, 2, 1, 0, 0, 2, 0, 2, 0,
0, 0, 1, 0, 2, 0, 1, 2, 2, 1, 1, 0, 2, 0, 2, 1, 2, 2, 0, 2, 0, 2,
2, 1, 2, 1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 0, 0, 2, 0, 2, 1, 0,
1, 1, 1, 2, 1, 1, 1, 1, 0, 2, 2, 1, 0, 1, 0, 0, 0, 0, 2, 0, 2, 0,
1, 0, 2, 2, 1, 0, 0, 2, 1, 1, 1, 2, 2, 1, 2, 0, 1, 2, 1, 1, 2, 0,
2, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 2, 0, 1, 2, 2, 0, 0, 2, 2, 2,
1, 0, 0, 2, 2, 1, 1, 0, 0, 2, 2, 2, 2, 1, 0, 0, 2, 2, 1, 0, 1, 0,
0, 0, 2, 0, 1, 2, 0, 1, 2, 1, 1, 1, 1, 0, 2, 1, 0, 1, 2, 0, 2, 0,
1, 2, 0, 0, 2, 2, 0, 2, 2, 0, 1, 1, 0, 1, 2, 0, 2, 2, 2, 0, 0, 1,
2, 1, 1, 0, 1, 1, 1, 2, 0, 1, 1, 1, 0, 2, 2, 2, 0, 1, 2, 0, 2, 0,
1, 2, 0, 1, 2, 1, 2, 2, 2, 1, 2, 1, 0, 1, 1, 0, 2, 2, 0, 0, 1, 1,
2, 0, 2, 1, 2, 2, 0, 0, 1, 1, 1, 2, 0, 2, 1, 0, 0, 1, 2, 1, 2, 0,
1, 2, 0, 0, 1, 2, 2, 1, 0, 0, 2, 1, 2, 2, 0, 2, 1, 2, 0, 1, 2, 0,
1, 1, 0, 2, 1, 2, 1, 2, 0, 0, 1, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 2,
1, 2, 0, 1, 2, 0, 1, 0, 0, 1, 0, 2, 2, 1, 2, 2, 0, 0, 0, 0, 0, 2,
0, 1, 0, 0, 0, 1, 2, 1, 2, 1, 1, 2, 2, 1, 1, 2, 2, 0, 2, 0, 0, 1,
1, 1, 0, 1, 1, 0, 2, 0, 1, 1, 2, 2, 1, 1, 0, 2, 1, 0, 2, 1, 2, 1,
2, 0, 2, 1, 1, 1, 2, 2, 2, 0, 0, 0, 1, 2, 2, 2, 2, 2, 1, 1, 0, 2,
2, 2, 1, 1, 1, 0, 1, 1, 1, 2, 1, 0, 2, 1, 2, 1, 2, 1, 0, 0, 2, 2,
2, 2, 0, 0, 1, 1, 2, 0, 1, 1, 1, 2, 2, 1, 0, 2, 1, 1, 1, 0, 2, 0,
1, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 2, 2, 2, 0, 1, 1, 0, 0, 2, 1,
1, 1, 0, 2, 2, 1, 0, 2, 1, 2, 2, 2, 1, 2, 2, 2, 1, 0, 1, 1, 1, 0,
2, 1, 0, 1, 2, 0, 0, 2, 0, 0, 2, 1, 0, 2, 2, 1, 0, 0, 1, 1, 1, 2,
1, 1, 2, 1, 1, 2, 1, 1, 2, 2, 2, 1, 0, 2, 1, 2, 2, 1, 0, 2, 2, 2,
0, 1, 1, 1, 0, 1, 2, 2, 2, 1])
In:
y #0,1,2
out:
array([0, 2, 1, 2, 1, 2, 0, 2, 0, 1, 2, 1, 0, 2, 1, 0, 0, 1, 0, 0, 0, 2,
0, 2, 0, 2, 2, 1, 1, 1, 2, 0, 0, 2, 2, 1, 1, 2, 2, 0, 2, 2, 0, 1,
2, 0, 1, 2, 2, 1, 0, 0, 2, 0, 0, 2, 2, 0, 2, 0, 0, 1, 2, 1, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 0, 1, 0, 1, 1, 1, 0, 2, 2, 2, 2, 0, 1, 2,
0, 1, 1, 2, 1, 1, 1, 1, 0, 2, 2, 2, 2, 0, 0, 1, 1, 0, 0, 0, 0, 2,
1, 0, 2, 1, 0, 2, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 2, 2, 1, 1, 0,
2, 1, 1, 1, 1, 1, 2, 2, 0, 0, 0, 0, 2, 0, 2, 0, 0, 1, 2, 0, 2, 0,
1, 1, 1, 0, 1, 0, 0, 1, 2, 2, 0, 0, 1, 0, 2, 2, 2, 2, 0, 1, 0, 1,
1, 2, 2, 2, 2, 0, 1, 1, 2, 1, 2, 0, 0, 2, 1, 0, 2, 0, 0, 1, 0, 2,
1, 0, 0, 0, 2, 0, 2, 2, 0, 2, 1, 2, 2, 2, 0, 1, 0, 2, 0, 2, 0, 0,
2, 2, 2, 2, 0, 0, 2, 1, 2, 2, 1, 0, 0, 2, 1, 0, 0, 0, 0, 0, 2, 1,
2, 1, 2, 1, 0, 1, 2, 0, 2, 1, 2, 2, 2, 0, 2, 2, 1, 0, 1, 2, 2, 1,
2, 2, 0, 2, 1, 1, 0, 2, 1, 2, 2, 2, 1, 0, 0, 0, 0, 2, 2, 2, 1, 2,
2, 0, 0, 2, 0, 0, 1, 0, 1, 0, 2, 2, 0, 0, 1, 2, 2, 2, 2, 1, 0, 1,
2, 0, 0, 2, 2, 2, 2, 1, 2, 0, 1, 1, 1, 1, 1, 0, 0, 2, 0, 0, 2, 0,
2, 1, 1, 1, 2, 2, 0, 0, 2, 2, 1, 2, 2, 2, 2, 2, 1, 0, 1, 2, 2, 2,
2, 2, 0, 0, 2, 2, 0, 2, 1, 1, 1, 1, 1, 2, 1, 1, 0, 0, 2, 0, 2, 1,
1, 1, 0, 0, 0, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 1, 2, 2, 0, 1, 2,
1, 0, 0, 1, 1, 2, 2, 1, 0, 0, 0, 0, 2, 1, 1, 0, 0, 1, 0, 2, 2, 1,
1, 2, 2, 2, 1, 2, 0, 2, 1, 2, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 2, 2,
2, 2, 2, 1, 2, 1, 1, 0, 1, 1, 1, 2, 0, 2, 0, 2, 1, 2, 0, 0, 0, 0,
1, 1, 1, 1, 1, 1, 0, 2, 1, 1, 1, 2, 2, 2, 2, 1, 0, 0, 2, 0, 2, 0,
0, 0, 1, 0, 2, 0, 1, 2, 2, 1, 1, 0, 2, 0, 2, 1, 2, 2, 0, 2, 0, 2,
2, 1, 2, 1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 0, 0, 2, 0, 2, 1, 0,
1, 1, 1, 2, 1, 1, 1, 1, 0, 2, 2, 1, 0, 1, 0, 0, 0, 0, 2, 0, 2, 0,
1, 0, 2, 2, 1, 0, 0, 2, 1, 1, 1, 2, 2, 1, 2, 0, 1, 2, 1, 1, 2, 0,
2, 2, 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 2, 0, 1, 2, 2, 0, 0, 2, 2, 2,
1, 0, 0, 2, 2, 1, 1, 0, 0, 2, 2, 2, 2, 1, 0, 0, 2, 2, 1, 0, 1, 0,
0, 0, 2, 0, 1, 2, 0, 1, 2, 1, 1, 1, 1, 0, 2, 1, 0, 1, 2, 0, 2, 0,
1, 2, 0, 0, 2, 2, 0, 2, 2, 0, 1, 1, 0, 1, 2, 0, 2, 2, 2, 0, 0, 1,
2, 1, 1, 0, 1, 1, 1, 2, 0, 1, 1, 1, 0, 2, 2, 2, 0, 1, 2, 0, 2, 0,
1, 2, 0, 1, 2, 1, 2, 2, 2, 1, 2, 1, 0, 1, 1, 0, 2, 2, 0, 0, 1, 1,
2, 0, 2, 1, 2, 2, 0, 0, 1, 1, 1, 2, 0, 2, 1, 0, 0, 1, 2, 1, 2, 0,
1, 2, 0, 0, 1, 2, 2, 1, 0, 0, 2, 1, 2, 2, 0, 2, 1, 2, 0, 1, 2, 0,
1, 1, 0, 2, 1, 2, 1, 2, 0, 0, 1, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 2,
1, 2, 0, 1, 2, 0, 1, 0, 0, 1, 0, 2, 2, 1, 2, 2, 0, 0, 0, 0, 0, 2,
0, 1, 0, 0, 0, 1, 2, 1, 2, 1, 1, 2, 2, 1, 1, 2, 2, 0, 2, 0, 0, 1,
1, 1, 0, 1, 1, 0, 2, 0, 1, 1, 2, 2, 1, 1, 0, 2, 1, 0, 2, 1, 2, 1,
2, 0, 2, 1, 1, 1, 2, 2, 2, 0, 0, 0, 1, 2, 2, 2, 2, 2, 1, 1, 0, 2,
2, 2, 1, 1, 1, 0, 1, 1, 1, 2, 1, 0, 2, 1, 2, 1, 2, 1, 0, 0, 2, 2,
2, 2, 0, 0, 1, 1, 2, 0, 1, 1, 1, 2, 2, 1, 0, 2, 1, 1, 1, 0, 2, 0,
1, 0, 0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 2, 2, 2, 0, 1, 1, 0, 0, 2, 1,
1, 1, 0, 2, 2, 1, 0, 2, 1, 2, 2, 2, 1, 2, 2, 2, 1, 0, 1, 1, 1, 0,
2, 1, 0, 1, 2, 0, 0, 2, 0, 0, 2, 1, 0, 2, 2, 1, 0, 0, 1, 1, 1, 2,
1, 1, 2, 1, 1, 2, 1, 1, 2, 2, 2, 1, 0, 2, 1, 2, 2, 1, 0, 2, 2, 2,
0, 1, 1, 1, 0, 1, 2, 2, 2, 1])