其他分享
首页 > 其他分享> > 2021-03-11

2021-03-11

作者:互联网

KMeans(K均值聚类)算法
聚类算法:能找出数据内在分类规则,并分成独立的点集(蔟)
特点:无监督学习,遵循”类内误差平方和最小原则”,分类
过程: 1.确定一个K值(由人给出,将样本分为K个类),然后随机选取K个出簇个质心. 2:计算每个样本到每个簇质心的距离(欧式,曼哈顿),样本离最近质心归为该簇,重新确定质心(遵循”类内误差平方和最小原则”) 3:重复第二步,直到质心不再改变.
优点:1:原理简单2:速度快3:能够处理大量的数据(高维数据)
缺点:
1:需要指定聚类数量K (与层次聚类算法结合,基于系统演化的方法,在聚类前建立了相异度评估函数)
2:对异常值(离群点和噪声点)敏感 (无效的数据对于算法求平均值有很大的影响,预处理(能否对于数据引入重要程度的))
3:对初始值敏感(K-均值++)
4:可能局部收敛,(贪心策略导致)
5:在大规模数据集求解较慢(确定最大收敛次数和指定簇中心变化阈值)
注意:
1:模型的输入数据为数值型数据(若是离散数据,需要做哑变量处理)
2:需要将原始数据做标准化处理(防止不同量纲对聚类产生影响)

番外:数据集标签与数据的匹配(自制数据集)
path = “D:\学习\深度学习\Deep Learning project\猫狗\dc_2000\train\dog\dog0.jpg”
将数据集放到path中
int(path.split("\train\")[1].split("\dog0.jpg")[0]==“dog”)
将dog标签为1,每个数据按照路径读取时就打上标签.

标签:11,03,dog,算法,2021,聚类,质心,path,数据
来源: https://blog.csdn.net/SENVENL/article/details/114681146