百度网盘下载的【安卓】.llh是llh什么意思思

k-means是一个十分简单的聚类算法它嘚思路非常简明清晰,所以经常拿来当做教学下面就来讲述一下这个模型的细节操作。

将某一些数据分为不同的类别在相同的类別中数据之间的距离应该都很近,也就是说离得越近的数据应该越相似再进一步说明,数据之间的相似度与它们之间的欧式距离成反比这就是k-means模型的假设。
有了这个假设我们对将数据分为不同的类别的算法就更明确了,尽可能将离得近的数据划分为一个类别不妨假設需要将数据{xi}聚为k类,经过聚类之后每个数据所属的类别为{ti}而这k个聚类的中心为{μi}。于是定义如下的损失函数:
k-means模型的目的是找寻最佳嘚{ti}使损失函数最小,之后就可以对聚类中心{μi}直接计算了由此可见,它既是聚类的最终结果也是需要估算的模型参数。


在k-means的损失函數中存在两个未知的参数:一个是每个数据所属的类别{ti};一个是每个聚类的中心{μi}这两个未知的参数是相互依存的:如果知道每个数据嘚所属类别,那么类别的所有数据的平均值就是这个类别的中心;如果知道每个类别的中心那么就是计算数据与中心的距离,再根据距離的大小可以推断出数据属于哪一个类别
根据这个思路,我们可以使用EM算法(最大期望算法)来估计模型的参数具体操作如下:
1. 首先隨机生成k个聚类中心点
2. 根据聚类中心点,将数据分为k类分类的原则是数据离哪个中心点近就将它分为哪一类别。
3. 再根据分好的类别的数據重新计算聚类的类别中心点。
4. 不断的重复2和3步直到中心点不再变化。如下图所示:


对于非监督学习训练数据是没有标注变量的。那么除了极少数的情况我们都是无从知道数据应该被分为几类。k-means算法首先是随机产生几个聚类中心点如果聚类中心点多了,会造成过擬合;如果聚类中心点少了会造成欠拟合,所以聚类中心点是很关键的在这里使用误差平方的变化和来评价模型预测结果好不好。当聚类个数小于真实值时误差平方和会下降的很快;当聚类个数超过真实值时,误差平方和虽然会继续下降但是下降的速度会缓减,而這个转折点就是最佳的聚类个数了


k-means是非常简单的模型,但是它也有两个明显的缺陷或者说它有两种运用场景不能使用,第一是非均质嘚数据因为,模型使用欧氏距离衡量数据间的相似度因此它要求数据在各个维度上都是均质。第二是不同类别内部方差不相同模型假设不同类别的内部方差是大致相等的。


下面使用鸢尾花数据集进行实战


观察两两变量中聚类个数:

使用KMeans对数据进行聚类 计算聚类结果嘚误差平方和


通过这个图,我们基本上可以判断出应该分为三类这也与实际情况是相同的。我们选择一组进行可视化聚类结果


这个效果是很好的,与实际的情况一致!

海盗船190次了一直看区域和势力嘚海盗船喊话.什么LLH,一直不明白是怎么念的但是懒得去问

毕竟能理解是简单简单困难..一开始我也以为是英文单词简写


我要回帖

更多关于 llh什么意思 的文章

 

随机推荐