Browse Source

Update description of k-means

master
bushuhui 2 years ago
parent
commit
436192801b
3 changed files with 53 additions and 17 deletions
  1. +7
    -7
      3_kmeans/1-k-means.ipynb
  2. +45
    -7
      3_kmeans/2-kmeans-color-vq.ipynb
  3. +1
    -3
      3_kmeans/3-ClusteringAlgorithms.ipynb

+ 7
- 7
3_kmeans/1-k-means.ipynb View File

@@ -24,7 +24,7 @@
"source": [
"## 1. 方法\n",
"\n",
"由于具有出色的速度和良好的可扩展性,K-Means聚类算法最经典的聚类方法。***k-Means算法是一个重复移动类中心点(重心,centroids)的过程***:\n",
"由于具有出色的速度和良好的可扩展性,K-Means最经典的聚类方法。***k-Means算法是一个重复移动类中心点(重心,centroids)的过程***:\n",
"* 移动中心点到其包含成员的平均位置;\n",
"* 然后重新划分其内部成员。\n",
"\n",
@@ -51,7 +51,7 @@
"## 2. 算法\n",
"求解成本函数最小化的参数就是一个重复配置每个类包含的观测值,并不断移动类重心的过程。\n",
"\n",
"输入:$T=\\{ x_1, x_2, ..., x_N\\}$,其中$x_i \\in R_n$,i=1,2...N\n",
"输入:$T=\\{ x_1, x_2, ..., x_N\\}$,其中$x_i \\in \\mathbb{R}^D$,i=1,2...N\n",
"\n",
"输出:聚类集合$C_k$, 聚类中心$u_k$, 其中k=1,2,...K\n",
"\n",
@@ -236,7 +236,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"再重复上面的方法就会发现类的重心不变了,k-Means会在条件满足的时候停止重复聚类过程。通常,条件是前后两次迭代的成本函数值的差达到了限定值,或者是前后两次迭代的重心位置变化达到了限定值。如果这些停止条件足够小,k-Means就能找到最优解不过这个最优解不一定是全局最优解。\n",
"再重复上面的方法就会发现类的重心不变了,k-Means会在条件满足的时候停止重复聚类过程。通常,条件是前后两次迭代的成本函数值的差达到了限定值,或者是前后两次迭代的重心位置变化达到了限定值。如果这些停止条件足够小,k-Means就能找到最优解不过这个最优解不一定是全局最优解。\n",
"\n"
]
},
@@ -249,7 +249,7 @@
},
{
"cell_type": "code",
"execution_count": 14,
"execution_count": 5,
"metadata": {},
"outputs": [
{
@@ -511,7 +511,7 @@
},
{
"cell_type": "code",
"execution_count": 17,
"execution_count": 6,
"metadata": {},
"outputs": [
{
@@ -564,7 +564,7 @@
},
{
"cell_type": "code",
"execution_count": 18,
"execution_count": 7,
"metadata": {},
"outputs": [
{
@@ -618,7 +618,7 @@
},
{
"cell_type": "code",
"execution_count": 19,
"execution_count": 8,
"metadata": {
"scrolled": true
},


+ 45
- 7
3_kmeans/2-kmeans-color-vq.ipynb
File diff suppressed because it is too large
View File


+ 1
- 3
3_kmeans/3-ClusteringAlgorithms.ipynb View File

@@ -8,9 +8,7 @@
"\n",
"这个例子展示了不同的聚类算法在数据集上的表现,这些数据集虽然有趣但仍然是2D的。除了最后一个数据集以外,每一个数据集的参数都经过调整为了产生更好的效果。一些算法对于参数值比其他算法更加敏感。\n",
"\n",
"最后一个数据集是一个\"null\"情况下的聚类:数据是同构的,没有良好的聚类。对于本例,null数据集使用与上面一行中的数据集相同的参数,这表示参数值和数据结构不匹配。\n",
"\n",
"这些例子虽然这些例子给出了一些关于算法的直觉,但这种直觉可能不适用于非常高维的数据。"
"虽然这些例子给出了一些关于算法的直觉认识,但这种直觉可能不适用于非常高维的数据。"
]
},
{


Loading…
Cancel
Save