聚类算法12课(尚学堂人工智能之聚类算法)
聚类算法12课(尚学堂人工智能之聚类算法)Global optimal : 枚举所有partition2.方法:partitioning approach1.目标:找出一个分割,使得距离平方和最小
聚类算法
聚类算法就是将一堆数据进行处理,根据它们的相似性对数据进行聚类。
聚类算法有很多种,具体如下:中心聚类、关联聚类、密度聚类、概率聚类、降维、神经网络/深度学习。
聚类算法是机器学习的一个重要组成部分,但是我们要分清聚类与分类的区别,不能将二者混为一谈。分类算法肯定是需要有学习语料,然后通过学习语料的学习之后的模板来匹配我们的测试语料集,将测试语料集合进行按照预先学习的语料模板来分类;聚类算法与分类算法最大的区别是聚类算法没有学习语料集合。
partitioning approach
1.目标:
找出一个分割,使得距离平方和最小
2.方法:
Global optimal : 枚举所有partition
Heuristic method:k-means K-Medoids
3.K-Means算法:
1. 将数据分为k个非空子集
2. 计算每个类中心点(k-means<centroid>中心点是所有点的average),记为seed point
3. 将每个object聚类到最近seed point
4. 返回2,当聚类结果不再变化的时候stop
复杂度:
O(kndt)
-计算两点间距离:d
-指定类:O(kn) k是类数
-迭代次数上限:t
4.K-Medoids算法:
1. 随机选择k个点作为初始medoid
2.将每个object聚类到最近的medoid
3. 更新每个类的medoid,计算objective function
4. 选择最佳参数
4. 返回2,当各类medoid不再变化的时候stop
复杂度:
O((n^2)d)
-计算各点间两两距离O((n^2)d)
-指定类:O(kn) k是类数
5.特点:
-聚类结果与初始点有关(因为是做steepest descent from a random initial starting oint)
-是局部最优解
-在实际做的时候,随机选择多组初始点,最后选择拥有最低TSD(Totoal Squared Distance)的那组
6.KMeans和KMedoid的实现
聚类是数据挖掘中的概念,就是按照某个特定标准(如距离)把一个数据集分割成不同的类或簇,使得同一个簇内的数据对象的相似性尽可能大,同时不在同一个簇中的数据对象的差异性也尽可能地大。也即聚类后同一类的数据尽可能聚集到一起,不同类数据尽量分离。
尚学堂12大精英团队 各类实战项目,真正实现1 1>10的目标效果。帮助学员迅速成长,持久腾飞,成就学员“高富帅”人生;帮助企业技术和团队成长,成就百年中华名企;助力中国持续成为世界强国而贡献力量。尚学堂12大精英团队,覆盖IT行业十大领域,实战团队240人,服务学员累计超过10万人,就业合作企业数量500 。