文章目- K-Means 一维数据计算示例 数据样本 及 初始值
- K-Means 一维数据 距离计算方式
- K-Means 算法 步骤
- 第一次迭代 : 步骤 ( 1 ) 计算距离
- 第一次迭代 : 步骤 ( 2 ) 聚类分组
- 第一次迭代 : 步骤 ( 3 ) 计算中心值
- 第二次迭代 : 步骤 ( 1 ) 计算距离
- 第二次迭代 : 步骤 ( 2 ) 聚类分组
- 第二次迭代 : 步骤 ( 3 ) 计算中心值
- 第三次迭代 : 步骤 ( 1 ) 计算距离
- 第三次迭代 : 步骤 ( 2 ) 聚类分组
- 第三次迭代 : 步骤 ( 3 ) 计算中心值
- 第四次迭代 : 步骤 ( 1 ) 计算距离
- 第四次迭代 : 步骤 ( 2 ) 聚类分组
K-Means 一维数据计算示例 数据样本 及 初始值
1 . 数据集样本 :
个人 , 根据其年龄 , 将数据集分成
组 ;
2 . 选定初始的中心值 :
,
,
;
K-Means 一维数据 距离计算方式
1 . 距离公式选择 : 一维数据 直接使用 曼哈顿距离 计算即可 , 二维数据 需要使用 欧几里得距离 计算 ;
2 . 曼哈顿距离 : 这里直接使用曼哈顿距离 , 即样本值 , 直接相减得到的值取绝对值 , 就是曼哈顿距离 ;
K-Means 算法 步骤
K-Means 算法 步骤 : 给定数据集
, 该数据集有
个样本 , 将其分成
个聚类 ;
① 中心点初始化 : 为
个聚类分组选择初始的中心点 , 这些中心点称为 Means ; 可以依据经验 , 也可以随意选择 ;
② 计算距离 : 计算
个对象与
个中心点 的距离 ; ( 共计算
次 )
③ 聚类分组 : 每个对象与
个中心点的值已计算出 , 将每个对象分配给距离其最近的中心点对应的聚类 ;
④ 计算中心点 : 根据聚类分组中的样本 , 计算每个聚类的中心点 ;
⑤ 迭代直至收敛 : 迭代执行 ② ③ ④ 步骤 , 直到 聚类算法收敛 , 即 中心点 和 分组 经过多少次迭代都不再改变 , 也就是本次计算的中心点与上一次的中心点一样 ;
第一次迭代 : 步骤 ( 1 ) 计算距离
计算
个样本 与
个中心点的距离 :
① 表格含义 : 如下
与
对应的表格位置值是
样本 与
中心点的曼哈顿距离 , 即 两个值相减取绝对值 ;
② 计算方式 : 计算
与
之间的距离 , 直接将两个数值相减取平均值即可 ;
取值范围 ,
,
的取值范围
;
③ 计算示例 : 如
样本 与
中心点的距离计算 ,
样本的年龄属性值是
,
中心点值为
;
表示两个点之间的距离 ;
下表中的
行
列对应的值是
, 即上面计算出来的距离值 ;
年龄 | ||||
---|---|---|---|---|
聚类 | C 1 C_1 C1 | C 2 C_2 C2 | C 3 C_3 C3 | |
中心值 | 1 1 1 | 20 20 20 | 40 40 40 | |
P 1 P_{1} P1 | 1 1 1 | 0 0 0 | 19 19 19 | 39 39 39 |
P 2 P_2 P2 | 3 3 3 | 2 2 2 | 17 17 17 | 37 37 37 |
P 3 P_3 P3 | 5 5 5 | 4 4 4 | 15 15 15 | 35 35 35 |
P 4 P_4 P4 | 8 8 8 | 7 7 7 | 12 12 12 | 32 32 32 |
P 5 P_5 P5 | 9 9 9 | 8 8 8 | 11 11 11 | 31 31 31 |
P 6 P_6 P6 | 11 11 11 | 10 10 10 | 9 9 9 | 29 29 29 |
P 7 P_7 P7 | 12 12 12 | 11 11 11 | 8 8 8 | 28 28 28 |
P 8 P_8 P8 | 13 13 13 | 12 12 12 | 7 7 7 | 27 27 27 |
P 9 P_9 P9 | 37 37 37 | 36 36 36 | 17 17 17 | 3 3 3 |
P 10 P_{10} P10 | 43 43 43 | 42 42 42 | 23 23 23 | 3 3 3 |
P 11 P_{11} P11 | 45 45 45 | 44 44 44 | 25 25 25 | 5 5 5 |
P 12 P_{12} P12 | 49 49 49 | 48 48 48 | 29 29 29 | 9 9 9 |
P 13 P_{13} P13 | 51 51 51 | 50 50 50 | 31 31 31 | 11 11 11 |
P 14 P_{14} P14 | 65 65 65 | 64 64 64 | 45 45 45 | 25 25 25 |
中心值
第一次迭代 : 步骤 ( 2 ) 聚类分组
1 . 为
这
个样本分组 :
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
2 . 当前分组依据的中心点 :
3 . 当前分组结果 :
第一次迭代 : 步骤 ( 3 ) 计算中心值
根据新的聚类分组计算新的中心值 :
① 计算
分组的中心值 :
, 计算过程如下 :
② 计算
分组的中心值 :
, 计算过程如下 :
③ 计算
分组的中心值 :
, 计算过程如下 :
最新计算出的
中心点是
第二次迭代 : 步骤 ( 1 ) 计算距离
计算
个样本 与
个中心点的距离 :
① 表格含义 : 如下
与
对应的表格位置值是
样本 与
中心点的曼哈顿距离 , 即 两个值相减取绝对值 ;
② 计算方式 : 计算
与
之间的距离 , 直接将两个数值相减取平均值即可 ;
取值范围 ,
,
的取值范围
;
③ 计算示例 : 如
样本 与
中心点的距离计算 ,
样本的年龄属性值是
,
中心点值为
;
表示两个点之间的距离 ;
下表中的
行
列对应的值是
, 即上面计算出来的距离值 ;
年龄 | ||||
---|---|---|---|---|
聚类 | C 1 C_1 C1 | C 2 C_2 C2 | C 3 C_3 C3 | |
中心值 | 5 5 5 | 12 12 12 | 48 48 48 | |
P 1 P_{1} P1 | 1 1 1 | 4 4 4 | 11 11 11 | 47 47 47 |
P 2 P_2 P2 | 3 3 3 | 2 2 2 | 9 9 9 | 45 45 45 |
P 3 P_3 P3 | 5 5 5 | 0 0 0 | 7 7 7 | 43 43 43 |
P 4 P_4 P4 | 8 8 8 | 3 3 3 | 4 4 4 | 40 40 40 |
P 5 P_5 P5 | 9 9 9 | 4 4 4 | 3 3 3 | 39 39 39 |
P 6 P_6 P6 | 11 11 11 | 6 6 6 | 1 1 1 | 37 37 37 |
P 7 P_7 P7 | 12 12 12 | 7 7 7 | 0 0 0 | 36 36 36 |
P 8 P_8 P8 | 13 13 13 | 8 8 8 | 1 1 1 | 35 35 35 |
P 9 P_9 P9 | 37 37 37 | 25 25 25 | 17 17 17 | 11 11 11 |
P 10 P_{10} P10 | 43 43 43 | 38 38 38 | 31 31 31 | 5 5 5 |
P 11 P_{11} P11 | 45 45 45 | 40 40 40 | 33 33 33 | 3 3 3 |
P 12 P_{12} P12 | 49 49 49 | 44 44 44 | 37 37 37 | 1 1 1 |
P 13 P_{13} P13 | 51 51 51 | 46 46 46 | 39 39 39 | 3 3 3 |
P 14 P_{14} P14 | 65 65 65 | 60 60 60 | 53 53 53 | 17 17 17 |
中心值
第二次迭代 : 步骤 ( 2 ) 聚类分组
1 . 为
这
个样本分组 :
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
2 . 当前分组依据的中心点 :
3 . 当前分组结果 :
第二次迭代 : 步骤 ( 3 ) 计算中心值
根据新的聚类分组计算新的中心值 :
① 计算
分组的中心值 :
, 计算过程如下 :
② 计算
分组的中心值 :
, 计算过程如下 :
③ 计算
分组的中心值 :
, 计算过程如下 : ( 与上次对比没有变化 )
最新计算出的
中心点是
第三次迭代 : 步骤 ( 1 ) 计算距离
计算
个样本 与
个中心点的距离 :
① 表格含义 : 如下
与
对应的表格位置值是
样本 与
中心点的曼哈顿距离 , 即 两个值相减取绝对值 ;
② 计算方式 : 计算
与
之间的距离 , 直接将两个数值相减取平均值即可 ;
取值范围 ,
,
的取值范围
;
③ 计算示例 : 如
样本 与
中心点的距离计算 ,
样本的年龄属性值是
,
中心点值为
;
表示两个点之间的距离 ;
下表中的
行
列对应的值是
, 即上面计算出来的距离值 ;
年龄 | ||||
---|---|---|---|---|
聚类 | C 1 C_1 C1 | C 2 C_2 C2 | C 3 C_3 C3 | |
中心值 | 4 4 4 | 11 11 11 | 48 48 48 | |
P 1 P_{1} P1 | 1 1 1 | 3 3 3 | 10 10 10 | 47 47 47 |
P 2 P_2 P2 | 3 3 3 | 1 1 1 | 8 8 8 | 45 45 45 |
P 3 P_3 P3 | 5 5 5 | 1 1 1 | 6 6 6 | 43 43 43 |
P 4 P_4 P4 | 8 8 8 | 4 4 4 | 3 3 3 | 40 40 40 |
P 5 P_5 P5 | 9 9 9 | 5 5 5 | 2 2 2 | 39 39 39 |
P 6 P_6 P6 | 11 11 11 | 7 7 7 | 0 0 0 | 37 37 37 |
P 7 P_7 P7 | 12 12 12 | 8 8 8 | 1 1 1 | 36 36 36 |
P 8 P_8 P8 | 13 13 13 | 9 9 9 | 2 2 2 | 35 35 35 |
P 9 P_9 P9 | 37 37 37 | 33 33 33 | 26 26 26 | 11 11 11 |
P 10 P_{10} P10 | 43 43 43 | 39 39 39 | 32 32 32 | 5 5 5 |
P 11 P_{11} P11 | 45 45 45 | 41 41 41 | 34 34 34 | 3 3 3 |
P 12 P_{12} P12 | 49 49 49 | 45 45 45 | 38 38 38 | 1 1 1 |
P 13 P_{13} P13 | 51 51 51 | 47 47 47 | 40 40 40 | 3 3 3 |
P 14 P_{14} P14 | 65 65 65 | 61 61 61 | 54 54 54 | 17 17 17 |
中心值
第三次迭代 : 步骤 ( 2 ) 聚类分组
1 . 为
这
个样本分组 :
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
2 . 当前分组依据的中心点 :
3 . 当前分组结果 :
第三次迭代 : 步骤 ( 3 ) 计算中心值
根据新的聚类分组计算新的中心值 :
① 计算
分组的中心值 :
, 计算过程如下 :
② 计算
分组的中心值 :
, 计算过程如下 :
③ 计算
分组的中心值 :
, 计算过程如下 : ( 与上次对比没有变化 )
最新计算出的
中心点是
第四次迭代 : 步骤 ( 1 ) 计算距离
计算
个样本 与
个中心点的距离 :
① 表格含义 : 如下
与
对应的表格位置值是
样本 与
中心点的曼哈顿距离 , 即 两个值相减取绝对值 ;
② 计算方式 : 计算
与
之间的距离 , 直接将两个数值相减取平均值即可 ;
取值范围 ,
,
的取值范围
;
③ 计算示例 : 如
样本 与
中心点的距离计算 ,
样本的年龄属性值是
,
中心点值为
;
表示两个点之间的距离 ;
下表中的
行
列对应的值是
, 即上面计算出来的距离值 ;
年龄 | ||||
---|---|---|---|---|
聚类 | C 1 C_1 C1 | C 2 C_2 C2 | C 3 C_3 C3 | |
中心值 | 3 3 3 | 10 10 10 | 48 48 48 | |
P 1 P_{1} P1 | 1 1 1 | 2 2 2 | 9 9 9 | 47 47 47 |
P 2 P_2 P2 | 3 3 3 | 0 0 0 | 7 7 7 | 45 45 45 |
P 3 P_3 P3 | 5 5 5 | 2 2 2 | 5 5 5 | 43 43 43 |
P 4 P_4 P4 | 8 8 8 | 5 5 5 | 2 2 2 | 40 40 40 |
P 5 P_5 P5 | 9 9 9 | 6 6 6 | 1 1 1 | 39 39 39 |
P 6 P_6 P6 | 11 11 11 | 8 8 8 | 1 1 1 | 37 37 37 |
P 7 P_7 P7 | 12 12 12 | 9 9 9 | 2 2 2 | 36 36 36 |
P 8 P_8 P8 | 13 13 13 | 10 10 10 | 3 3 3 | 35 35 35 |
P 9 P_9 P9 | 37 37 37 | 34 34 34 | 27 27 27 | 11 11 11 |
P 10 P_{10} P10 | 43 43 43 | 40 40 40 | 33 33 33 | 5 5 5 |
P 11 P_{11} P11 | 45 45 45 | 42 42 42 | 35 35 35 | 3 3 3 |
P 12 P_{12} P12 | 49 49 49 | 46 46 46 | 39 39 39 | 1 1 1 |
P 13 P_{13} P13 | 51 51 51 | 48 48 48 | 41 41 41 | 3 3 3 |
P 14 P_{14} P14 | 65 65 65 | 62 62 62 | 55 55 55 | 17 17 17 |
中心值
第四次迭代 : 步骤 ( 2 ) 聚类分组
1 . 为
这
个样本分组 :
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
与
三个中心点中的
距离最近 , 距离是
,
样本 分组到
组 ;
2 . 当前分组依据的中心点 :
3 . 当前分组结果 :
本次分组与上一次分组没有变化 , 说明聚类算法已经收敛 , 该结果就是聚类最终结果 ;