【数据科学家学习小组】之机器学习第一期第八周作业

k-means定义:

聚类通过将数据集中的样本划分为若干个通常是不相交的子集,每个子集成为一个“簇”,每个簇可能对应于一些潜在的概念(也就是类别),是无监督的学习算法

模型原理:

对于给定的样本集,按照样本之间的距离大小,将样本集划分为K个簇。让簇内的点尽量紧密的连在一起,而让簇间的距离尽量的大

收敛过程

1 随机选取k个中心点
2 遍历所有数据,将每个数据划分到最近的中心点中
3 计算每个聚类的平均值,并作为新的中心点
4 重复2-3,直到这k个中线点不再变化(收敛了),或执行了足够多的迭代
时间复杂度:O(Inkm)
空间复杂度:O(n
m)
其中m为每个元素字段个数,n为数据量,I为迭代个数。一般I,k,m均可认为是常量,所以时间和空间复杂度可以简化为O(n),即线性的。

超参数的选择

可以通过枚举,令k从2到一个固定值如10,在每个k值上重复运行数次kmeans(避免局部最优解),并计算当前k的平均轮廓系数,最后选取轮廓系数最大的值对应的k作为最终的集群数目。

K-Means算法

给定样本集D,k-means算法针对聚类所得簇划分C最小化平方误差。

image

E值越小则簇内样本相似度越高。
算法流程如下:

image

其中第一行对均值向量进行初始化,在第4-8行与第9-16行依次对当前簇划分及均值向量迭代更新,若迭代更新后聚类结果保持不变,则在第18行将当前簇划分结果返回。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 常见分类模型( svm,决策树,贝叶斯等)的优缺点,适用场景以及如何选型 解决过拟合的方法有哪些? KNN(分类与...
    城市中迷途小书童阅读 858评论 0 9
  • 机器学习模型概念 LR : 事件发生的对数几率是输入的线性函数 优点:1)实现简单,广泛的应用于工业问题上;2)计...
    熊大状阅读 2,148评论 0 1
  • 常见分类模型( svm,决策树,贝叶斯等)的优缺点,适用场景以及如何选型解决过拟合的方法有哪些? KNN(分类与回...
    至极L阅读 3,282评论 1 21
  • 苹果新品一出,杜蕾斯又蹭了一波热点,杜蕾斯蹭热点已经成了惯例,看也有不少人说这样抖机灵的文案,没有说产品价值点,没...
    哲子的二三条阅读 232评论 0 0
  • 这一年,正值樱花盛开的季节。某县医院8楼12号病房里,洛英虚弱地躺在病床上,怡墨守候在她床边。她的病是肝癌晚期,癌...
    晨曦_c503阅读 475评论 0 9