线性回归、逻辑回归、聚类三大经典机器学习算法
前言
机器学习监督学习、无监督学习两大阵营里,线性回归(回归任务・监督)、逻辑回归(分类任务・监督)、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. 数学公式
- 线性得分:z=wX+b
- 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. 算法步骤(对应你的数据)
- 设定 K=3,随机选 3 个初始质心;
- 样本分配:用欧式距离 \(d=\sqrt{(x_a-x_b)^2+(y_a-y_b)^2}\),每个样本划归距离最近的质心所属簇;
- 更新质心:每一簇所有样本坐标均值 = 新质心(你最终质心:簇 1 (2,2)、簇 2 (2,3)、簇 3 (6,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 聚类 | 无监督学习 | 不需要标签 | 样本自动分组 | 簇分类编号 |
预览
查看代码
更多推荐




所有评论(0)