前言

机器学习监督学习、无监督学习两大阵营里,线性回归(回归任务・监督)、逻辑回归(分类任务・监督)、K-Means 聚类(无监督聚类) 是入门必学三巨头。

  • 线性回归:预测连续数值(房价、销量)
  • 逻辑回归:预测离散类别(是否患病、是否违约)
  • K-Means 聚类:无标签自动分组(用户分群、样本聚类,你的示例数据就是 K-Means 实操)

结合你提供的 K-Means 实验数据:x1[2,2],x2[2,3],x3[7,3],x4[8,2],x5[4,7],x6[5,7](3 簇聚类结果),从原理、公式、流程图、实例、适用场景逐个拆解。

一、线性回归(监督学习・回归问题)

1. 核心思想

寻找一条最优拟合直线 / 超平面,让样本点到直线的整体误差最小,输入特征X,输出连续实数 Y

举例:用房屋面积预测房价(面积 X→房价 Y,Y 是连续数值)

2. 数学公式

一元线性回归(单特征): y^​=wx+b

  • w:权重(斜率),b:偏置(截距);y^​:模型预测值

损失函数(均方误差 MSE,最小二乘法): Loss=n1​∑i=1n​(yi​−y^​i​)2 优化目标:不断更新、,最小化整体损失,常用梯度下降求解最优参数。

3. 算法流程图

4. 优缺点 & 适用场景

✅优点:模型简单、可解释性强、训练速度快; ❌缺点:只能拟合线性关系,对异常值敏感; 📌场景:销量预测、房价预估、温度预测等连续值预测任务

二、逻辑回归(监督学习・二分类问题,名字带回归实际是分类)

1. 核心思想

在线性回归基础上套Sigmoid 激活函数,把线性输出映射到[0,1]概率区间,设定阈值(常用 0.5)划分类别。

举例:肿瘤大小 X→是否恶性(1 = 恶性,0 = 良性,离散二分类)

2. 数学公式

  1. 线性得分:z=wX+b
  2. Sigmoid 映射概率: σ(z)=1+e−z1​∈(0,1)
  • 输出 > 0.5 → 类别 1;输出 < 0.5 → 类别 0

损失函数:交叉熵损失(解决 MSE 梯度消失问题) Loss=−n1​∑[yi​⋅log(y^​i​)+(1−yi​)⋅log(1−y^​i​)]

3. 算法流程图

4. 优缺点 & 适用场景

✅优点:输出概率可解释、训练快、工程落地稳定; ❌缺点:只能处理线性可分数据,复杂非线性场景效果差; 📌场景:风控违约预测、疾病二分类、广告点击率预估。

线性回归 VS 逻辑回归对比表

项目 线性回归 逻辑回归
任务类型 连续值回归预测 0/1 二分类
激活函数 Sigmoid
损失函数 MSE 均方误差 交叉熵
输出值域 (−∞,+∞)

(0,1)概率

三、K-Means 聚类(无监督学习・无标签自动分组,你的实验案例)

1. 核心思想

预先指定聚类数K,随机初始化K个簇质心,分配样本→更新质心迭代循环,直到质心不再变化(收敛),自动把相似样本划为同一簇。

你的实验:\(K=3\),6 个样本,第 2 轮迭代收敛,最终 3 簇: 簇 1:\(x_1[2,2]\);簇 2:\(x_2[2,3]\);簇 3:\(x_3,x_4,x_5,x_6\)共 4 个样本

2. 算法步骤(对应你的数据)

  1. 设定 K=3,随机选 3 个初始质心;
  2. 样本分配:用欧式距离 \(d=\sqrt{(x_a-x_b)^2+(y_a-y_b)^2}\),每个样本划归距离最近的质心所属簇;
  3. 更新质心:每一簇所有样本坐标均值 = 新质心(你最终质心:簇 1 (2,2)、簇 2 (2,3)、簇 3 (6,4));
  4. 收敛判定:质心不再变动,迭代结束(本次第 2 次迭代收敛)。

3. K-Means 流程图

4. 结合你的实验数据解析

原始样本: \(x_1(2,2)、x_2(2,3)、x_3(7,3)、x_4(8,2)、x_5(4,7)、x_6(5,7)\) 最终聚类分配:

  • 簇 1 (2.00,2.00):\(x_1\)
  • 簇 2 (2.00,3.00):\(x_2\)
  • 簇 3 (6.00,4.00):\(x_3,x_4,x_5,x_6\) 对应可视化图:红 = 簇 1、蓝 = 簇 2、绿 = 簇 3,黑色叉号 = 各簇质心。

5. 优缺点 & 适用场景

✅优点:原理简单、运算高效、工业常用; ❌缺点:需要提前指定 K 值、受初始质心和异常值影响大; 📌场景:用户画像分群、商品分层、图像分割、异常检测。

四、三大算法整体横向对比

算法 学习类型 标签需求 任务目标 输出形式
线性回归 监督学习 需要连续标签 回归预测 连续数值
逻辑回归 监督学习 需要 0/1 分类标签 二分类 0~1 概率 + 类别
K-Means 聚类 无监督学习 不需要标签 样本自动分组 簇分类编号

预览

查看代码

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐