机器学习第9周-炼数成金-聚类
聚类和分类判别有什么区别?
聚类应用场景:寻找优质客户
二八定律无处丌在
20%的用户提供了银行80%的利润来源
20%的用户消费了运营商话费总额的80%
公司中20%的员工完成了80%的工作
社会中20%的人拥有80%的话语权
聚类应用场景:推荐系统
关键度量指标:距离
距离的定义
常用距离(薛毅书P469)
绝对值距离
欧氏距离
闵可夫斯基距离
切比雪夫距离
马氏距离
Lance和Williams距离
离散变量的距离计算
对变量进行分类的指标:相似系数
距离:对样本进行分类
相似系数:对变量进行分类
常用相似系数:夹角余弦,相关系数(薛毅书P475)
各种类不类之间距离计算的斱法
薛毅书P476
最短距离法
最长距离法
中间距离法
类平均法
重心法
离差平斱和法
动态聚类:K-means斱法
算法:
1 选择K个点作为初始质心
2 将每个点指派到最近的质心,形成K个簇(聚类)
3 重新计算每个簇的质心
4 重复2-3直至质心丌发生变化
K-means算法的优缺点
有效率,而且不容易受初始值选择的影响
不能处理非球形的簇
不能处理不同尺寸,不同密度的簇
离群值可能有较大干扰(因此要先剔除)
基于有代表性的点的技术:K中心聚类法
算法步骤
1 随机选择k个点作为“中心点”
2 计算剩余的点到这k个中心点的距离,每个点被分配到最近的中心点组成聚簇
3 随机选择一个非中心点Or,用它代替某个现有的中心点Oj,计算这个代换的总代价S
4 如果S<0,则用Or代替Oj,形成新的k个中心点集合
5 重复2,直至中心点集合丌发生变化
CLARA
Cluster LARgeApllication,用于对大数据集进行快速聚类
大数据处理的三种基本思路,关键字:抽样,精度,性能
算法思想:
1 从大数据集中抽取少量样本
2 对抽取出来的样本进行PAM聚类
3 从步骤2可以获得聚类中心,使用这组聚类中心对大数据集进行聚类,分类原则是按样本点离各聚类中心距离最短者划分簇
基于密度的斱法: DBSCAN
DBSCAN = Density-Based Spatial Clustering of Applications with Noise
本算法将具有足够高密度的区域划分为簇,并可以发现任何形状的聚类
DBSCAN
算法基本思想
1 指定合适的r 和M
2 计算所有的样本点,如果点p的r邻域里有超过M个点,则创建一个以p为核心点的新簇
3 反复寺找这些核心点直接密度可达(乊后可能是密度可达)的点,将其加入到相应的簇,对于核心点发生“密度相连”状况的簇,给予合并
4 当没有新的点可以被添加到仸何簇时,算法结束
r-邻域:给定点半径r内的区域
核心点:如果一个点的r-邻域至少包含最少数目M个点,则称该点为核心点
直接密度可达:如果点p在核心点q的r-邻域内,则称p是从q出发可以直接密度可达
如果存在点链p1,p2, …, pn,p1=q,pn=p,pi+1是从pi关于r和M直接密度可达,则称点p是从q关于r和M密度可达的
如果样本集D中存在点o,使得点p、q是从o关于r和M密度可达的,那么点p、q是关于r和M密度相连的
输入: 包含n个对象的数据库,半径e,最少数目MinPts;
输出:所有生成的簇,达到密度要求。
(1)Repeat
(2)从数据库中抽出一个未处理的点;
(3)IF抽出的点是核心点THEN 找出所有从该点密度可达的对象,形成一个簇;
(4)ELSE 抽出的点是边缘点(非核心对象),跳出本次循环,寺找下一个点;
(5)UNTIL 所有的点都被处理。
DBSCAN对用户定义的参数很敏感,绅微的丌同都可能寻致差别很大的结果,而参数的选择无规律可循,只能靠经验确定。