K-meas 聚类、KNN算法、决策树、随机森林

K-means 算法步骤

K-means 聚类的流程分为两个主要步骤:分配(Assignment)和更新(Update)。以下是详细步骤:

  1. 选择 K 值: 设定簇的数量 K。
  2. 初始化簇中心:随机选择 K 个数据点作为初始簇中心(centroids)。
  3. 分配步骤(Assignment Step): 对于数据集中的每个点,将它分配到最近的簇中心对应的簇。这里的"距离"通常使用欧氏距离(Euclidean distance)。
  4. 更新步骤(Update Step): 根据当前的簇分配,重新计算每个簇的中心,即计算簇内所有点的均值作为新的簇中心。
  5. 重复 3 和 4 步:不断重复分配和更新步骤,直到簇中心不再发生变化(收敛)或达到指定的最大迭代次数。

随机森林:

1. 原理

随机森林是一种集成学习方法,它由多个决策树组成,每个决策树都是一个弱学习器。在随机森林中,每个决策树都是基于对训练数据的随机子集进行训练而生成的。在进行预测时,随机森林会对每棵树的预测结果进行平均或投票,以得到最终的预测结果。

2. 工作流程

随机森林回归的工作流程如下:

步骤1:随机选择样本集

从训练数据集中随机选择一个样本集,这个样本集的大小通常和原始训练数据集的大小相同,但是每个样本的选择是随机的,并且可能会有重复。

步骤2:随机选择特征

对于每个决策树的训练过程中,从所有特征中随机选择一个子集。这个子集的大小通常小于总特征数,这样可以保证每个决策树的差异性。

步骤3:训练决策树

使用步骤1和步骤2中选择的样本集和特征子集,训练一个决策树模型。通常使用基尼系数或信息增益等指标来进行节点的划分,直到达到停止条件(如树的深度达到预定值)为止。

步骤4:重复步骤2和步骤3

重复多次步骤2和步骤3,生成多棵决策树。每棵树都是通过不同的样本集和特征子集训练得到的,因此它们之间具有一定的差异性。

步骤5:预测

对于回归问题,随机森林通过对每棵树的预测结果进行平均,得到最终的预测结果。

对于分类问题,对预测结果进行投票,获取投票最多的结果作为分类结果

3. 优缺点

优点:

鲁棒性强: 随机森林能够处理缺失数据和不平衡数据,并且不容易受到噪声的影响。

准确性高: 由于随机森林是通过多棵决策树集成而成,因此通常具有较高的准确性。

可解释性: 可以通过分析每棵树的结构来理解模型的预测过程,提高模型的可解释性。

缺点:

计算资源消耗大: 随机森林由多个决策树组成,训练和预测过程需要消耗大量的计算资源。

可能过拟合: 当训练样本较少或者特征维度较高时,随机森林容易过拟合。

不适合处理高维稀疏数据: 随机森林在处理高维稀疏数据时效果不佳。

KNN算法:

1、原理

K近邻(K-Nearest Neighbors)是一种基于实例的惰性学习 算法,用于分类与回归任务。其核心思想:相似样本在特征空间中距离相近。通过计算待测样本与训练集的距离,选取最近的K个邻居,根据邻居的类别投票决定分类结果。

2、 核心流程

  1. 输入:带标签的训练集、待分类样本、K值(邻居数)

  2. 计算距离:待测样本与所有训练样本的距离(如欧氏距离)

  3. 选择邻居:取距离最近的K个样本

  4. 投票决策:统计K个邻居的类别标签,多数类即为预测结果

3、K值选择

相关推荐
方案开发PCBA抄板芯片解密6 小时前
什么是算法:高效解决问题的逻辑框架
算法
songx_996 小时前
leetcode9(跳跃游戏)
数据结构·算法·游戏
小白狮ww7 小时前
RStudio 教程:以抑郁量表测评数据分析为例
人工智能·算法·机器学习
AAA修煤气灶刘哥7 小时前
接口又被冲崩了?Sentinel 这 4 种限流算法,帮你守住后端『流量安全阀』
后端·算法·spring cloud
kk”8 小时前
C语言快速排序
数据结构·算法·排序算法
纪元A梦8 小时前
贪心算法应用:基因编辑靶点选择问题详解
算法·贪心算法
3壹8 小时前
数据结构精讲:栈与队列实战指南
c语言·开发语言·数据结构·c++·算法
skytier9 小时前
Construct内报错和定位解决
算法
skytier9 小时前
Ascend print数据落盘使用
算法