回归、分类、聚类

我们来仔细拆解一下机器学习中最常见的三个任务:回归(Regression)分类(Classification)聚类(Clustering)

简单来说,它们的核心区别在于目标变量(你想预测或发现的东西)的类型


1. 回归 (Regression)

核心目标:预测一个连续的数值。

你可以把它理解为 **"预测具体是多少"** 的问题。

  • 目标变量类型: 连续型变量(例如:价格、温度、销售额、时间)。
  • 学习方式: 监督学习(需要带有真实标签的训练数据)。
  • 常见算法:
    • 线性回归 (Linear Regression):最基础、最经典的回归算法,假设特征与目标变量之间存在线性关系。
    • 多项式回归 (Polynomial Regression):当线性关系不足以拟合数据时,使用多项式来捕捉更复杂的曲线关系。
    • 决策树回归 (Decision Tree Regression)
    • 随机森林回归 (Random Forest Regression):一种集成方法,由多个决策树组成,效果通常更好且不易过拟合。
    • 梯度提升回归 (Gradient Boosting Regression, e.g., XGBoost, LightGBM):另一种强大的集成方法,在许多竞赛和工业界场景中表现优异。
  • 评估指标:
    • 均方误差 (Mean Squared Error, MSE)
    • 均方根误差 (Root Mean Squared Error, RMSE):与 MSE 类似,但单位与原始数据一致,更具解释性。
    • 平均绝对误差 (Mean Absolute Error, MAE)
  • 应用场景举例:
    • 预测未来的房价
    • 根据广告投入预测产品销量
    • 预测股票的价格走势
    • 估计一个人的年龄

2. 分类 (Classification)

核心目标:预测一个离散的类别或标签。

你可以把它理解为 **"预测属于哪一类"** 的问题。

  • 目标变量类型: 离散型变量(例如:类别 A / 类别 B、垃圾邮件 / 非垃圾邮件、患病 / 健康)。
  • 学习方式: 监督学习(需要带有真实类别标签的训练数据)。
  • 常见算法:
    • 逻辑回归 (Logistic Regression) :虽然名字里有 "回归",但它是一个非常常用的分类算法,尤其适合二分类。
    • 支持向量机 (Support Vector Machine, SVM)
    • 决策树分类 (Decision Tree Classification)
    • 随机森林分类 (Random Forest Classification)
    • K 近邻 (K-Nearest Neighbors, KNN)
    • 神经网络 (Neural Networks):在图像识别、自然语言处理等复杂分类任务中表现卓越。
  • 评估指标:
    • 准确率 (Accuracy):预测正确的样本数占总样本数的比例。
    • 精确率 (Precision) 与 召回率 (Recall):尤其在类别不平衡时(如罕见疾病诊断)非常重要。
    • F1 分数 (F1-Score):精确率和召回率的综合指标。
    • 混淆矩阵 (Confusion Matrix):直观地展示模型在各类别上的预测对错情况。
  • 应用场景举例:
    • 垃圾邮件识别:预测一封邮件是 "垃圾邮件" 还是 "正常邮件"。
    • 图像识别:预测图片中的物体是 "猫" 还是 "狗"。
    • 疾病诊断:根据症状预测病人是否患有某种疾病。
    • 情感分析:分析一段文本的情感是 "积极"、"消极" 还是 "中性"。

3. 聚类 (Clustering)

核心目标:发现数据中自然存在的分组或结构。

你可以把它理解为 **"物以类聚,人以群分"**,让算法自动找出数据中的 "同类项"。

  • 目标变量类型: 无(没有预设的目标变量或标签)。
  • 学习方式: 无监督学习(只需要原始数据,不需要人工标注的标签)。
  • 常见算法:
    • K - 均值聚类 (K-Means Clustering):最常用的聚类算法。需要预先指定簇的数量 K,算法会将数据分成 K 个簇。
    • 层次聚类 (Hierarchical Clustering):不需要预先指定 K,而是构建一个聚类树( dendrogram),可以从树中选择不同层级的聚类结果。
    • 密度聚类 (Density-Based Spatial Clustering of Applications with Noise, DBSCAN):根据数据点的密度来划分簇,可以发现任意形状的簇,并且能识别出噪声点。
  • 评估指标: 相对复杂,通常基于簇内紧凑性和簇间分离度。
    • 轮廓系数 (Silhouette Coefficient)
    • Davies-Bouldin 指数
  • 应用场景举例:
    • 用户分群:在电商或互联网产品中,根据用户的行为数据(如购买历史、浏览记录)将用户分成不同的群体,以便进行精准营销。
    • 市场细分:将客户按照消费习惯、地理位置等特征进行分组。
    • 异常检测:找出与其他数据点差异很大的 "离群点",例如信用卡欺诈交易检测。
    • 图像分割:在计算机视觉中,将图像中的像素根据颜色或纹理聚成不同的区域。

总结对比

特性 回归 (Regression) 分类 (Classification) 聚类 (Clustering)
核心任务 预测一个连续值 预测一个离散类别 发现数据中的自然分组
学习方式 监督学习 (有标签) 监督学习 (有标签) 无监督学习 (无标签)
目标变量 连续变量 (如价格、温度) 离散变量 (如类别 A/B、0/1)
典型输出 一个具体的数值 一个类别标签或概率 每个样本所属的簇 ID
例子 预测房价、股票价格 识别垃圾邮件、图像分类 用户分群、市场细分
相关推荐
B站_计算机毕业设计之家4 小时前
深度血虚:Django水果检测识别系统 CNN卷积神经网络算法 python语言 计算机 大数据✅
python·深度学习·计算机视觉·信息可视化·分类·cnn·django
元直数字电路验证11 小时前
感知机:乳腺癌分类实现 & K 均值聚类:从零实现
均值算法·分类·聚类
罗不丢13 小时前
自回归模型例题(AR)与ACF/PACF图绘制
数据挖掘·回归·ar·acf·pacf
油泼辣子多加13 小时前
【实战】自然语言处理--长文本分类(3)HAN算法
算法·自然语言处理·分类
机器学习之心14 小时前
MATLAB遗传算法优化RVFL神经网络回归预测(随机函数链接神经网络)
神经网络·matlab·回归
大大dxy大大19 小时前
机器学习实现逻辑回归-癌症分类预测
机器学习·分类·逻辑回归
~~李木子~~1 天前
Windows软件自动扫描与分类工具 - 技术文档
windows·分类·数据挖掘
Jonathan Star1 天前
MediaPipe 在Python中实现人体运动识别,最常用且高效的方案是结合**姿态估计**(提取人体关键点)和**动作分类**(识别具体运动)
开发语言·python·分类
leo__5202 天前
MATLAB实现高光谱分类算法
支持向量机·matlab·分类