1.K均值聚类
K均值聚类是一种常见的无监督学习算法,用于将数据集分成k个不同的组或聚类。该算法的目标是最小化组内平方误差之和,组内平方差之和是每个点到其所属聚类中心的距离的平方和。
K均值聚类的过程通常如下:
- 随机选择k个中心点作为初始聚类中心。
- 对于每个数据点,计算其到k个中心点的距离,并将其分配给最近的聚类中心。
- 计算每个聚类中心的平均值,并将其作为新的聚类中心。
- 重复步骤2和3,直到聚类中心不再改变或达到预设的迭代次数。
K均值聚类有优点也有一定的限制,优点便于理解和实现但是需要指定聚类数K和对初始中心点的敏感性。
2.KNN VS. K-means
KNN 和 K-means 都是机器学习算法,但它们有不同的目的和工作方式。
KNN 是一种监督学习算法,用于分类和回归任务。给定一个新的数据点,它会识别其最近邻的 K 个数据点,并根据它们的标签或值来预测该数据点的标签或值。
K-means 是一种无监督学习算法,用于聚类任务。它将数据点分成 K 个簇,使得每个簇内的数据点之间的距离最小,而不同簇之间的距离最大。这些簇通常用于发现数据中的隐藏模式和结构。
3.主成分分析
主成分分析(PCA)是一种常见的无监督学习算法,用于降维、数据可视化、特征提取和数据压缩等任务。
PCA的目标是从原始数据中提取出最重要的特征或主成分,以减少数据的维度。这些主成分是原始特征的线性组合,且彼此之间相互独立。通过选择最重要的K个主成分,可以将数据从高维空间压缩到低维空间,从而减少计算成本和存储空间。
PCA在许多领域得到广泛应用,如图像处理、语音识别、金融分析、生物医学等。