当前位置: 首页 > news >正文

机器学习核心概念详解(回归、分类和聚类)

一、前言

机器学习中有三个最核心、最基础的概念:回归分类聚类。它们代表了三种不同的任务类型和思维方式。首先,我们可以通过一个表格快速把握三者的核心区别:

任务类型关键词问题类型输出算法类型典型例子
回归预测、连续值“有多少?”连续的数值监督学习预测房价、预测销量
分类判断、类别、标签“是哪个?”离散的类别监督学习垃圾邮件识别、图像分类
聚类分组、发现结构“怎么分群?”数据的内在分组无监督学习客户细分、新闻主题分组

二、详解

1. 回归

核心思想:预测一个连续的数值。

  • 目标:根据输入数据(特征),建立一个模型,来预测一个连续的、定量的输出值。
  • “回归”一词的由来:源于弗朗西斯·高尔顿的“回归平庸”现象,但现代机器学习中,它更广泛地指“数值预测”。
  • 输入/输出
    • 输入:特征(例如,房屋面积、地段、卧室数量)。
    • 输出:一个具体的数值(例如,房屋的价格:350万元)。
  • 典型算法
    • 线性回归:最简单、最基础的方法,尝试用一条直线(或超平面)来拟合数据。
    • 决策树回归:通过一系列“如果…那么…”的规则进行预测。
    • 支持向量回归(SVR):尝试在容忍一定误差的情况下,用一个“管道”来拟合数据。
    • 神经网络:强大的非线性回归模型。
  • 应用场景
    • 股票价格预测:根据历史数据预测未来股价。
    • 销售额预测:根据广告投入、季节等因素预测下个月销售额。
    • 疾病风险评分:根据患者年龄、体重、血压等指标预测其患某病的风险系数。

简单比喻:回归就像是预测一个具体的分数。比如,根据一个学生的学习时间、错题数量,预测他这次考试能考85分


2. 分类

核心思想:预测一个离散的类别标签。

  • 目标:根据输入数据,将其划分到预先定义好的、有限的类别中。
  • 输入/输出
    • 输入:特征(例如,邮件的关键词、发件人地址;图片的像素值)。
    • 输出:一个离散的类别标签(例如,邮件是“垃圾邮件”或“正常邮件”;图片是“猫”或“狗”)。
  • 类别数量
    • 二分类:只有两个类别(是/否,正/负)。最常见,如垃圾邮件过滤。
    • 多分类:类别数量大于两个(如,识别手写数字0-9;图像识别1000种物体)。
  • 典型算法
    • 逻辑回归:名字带“回归”,但本质是分类算法,尤其擅长二分类。
    • 决策树随机森林梯度提升树(如XGBoost):非常强大且常用的分类器。
    • 支持向量机(SVM):擅长在小样本、高维度数据上找到复杂的分类边界。
    • K近邻(K-NN):根据“最近的K个邻居”的类别来投票决定。
    • 神经网络:尤其在图像、语音、文本分类上表现卓越。
  • 应用场景
    • 垃圾邮件识别:将邮件分为“垃圾”或“非垃圾”。
    • 图像识别:识别图片中的物体是猫、狗、汽车等。
    • 医疗诊断:根据医学影像判断肿瘤是“良性”或“恶性”。
    • 情感分析:判断一条评论的情感是“正面”、“负面”还是“中性”。

简单比喻:分类就像是做选择题。题目是输入的数据,选项是预先定义好的类别(A/B/C/D),模型的任务是选出最正确的那个。


3. 聚类

核心思想:发现数据内在的群组结构,无需预先定义标签。

  • 目标:将数据集中的样本划分成若干个组(称为“簇”),使得同一簇内的样本彼此相似,而不同簇的样本差异较大
  • 与分类的关键区别:聚类是无监督学习,我们不知道也没有预先给定的类别标签。聚类算法是自己去“发现”数据中潜在的自然分组。
  • 输入/输出
    • 输入:只有特征,没有标签。
    • 输出:每个样本被分配到一个“簇”的编号(如0,1,2…),但这些编号的含义需要人工事后解读。
  • 典型算法
    • K均值聚类:最著名、最常用的聚类算法。需要预先指定要聚成几个簇(K值)。
    • 层次聚类:不需要指定K值,会形成一个树状的聚类结构(树状图),可以按需切割。
    • DBSCAN:基于密度的算法,能发现任意形状的簇,并能识别出离群点(噪声)。
  • 应用场景
    • 客户细分:根据用户的购买行为、人口属性将其分成不同的群组,以便精准营销。
    • 社交网络分析:发现社区群体。
    • 异常检测:偏离所有簇的数据点可能就是异常值或欺诈行为。
    • 文档/新闻分组:将海量未标记的文档按照主题自动归类。

简单比喻:聚类就像是**“物以类聚,人以群分”**。你走进一个陌生的聚会,你不知道有哪些小圈子(无标签),但你会通过观察(算法计算),自然而然地将人群分成“聊体育的一群”、“聊电影的一群”、“聊政治的一群”。


4. 总结与对比

特性回归分类聚类
学习类型监督学习监督学习无监督学习
输出类型连续数值(整数/实数)离散类别(标签)簇的编号(无预设意义)
是否有标签需要已知的输入和输出标签来训练模型需要已知的输入和输出标签来训练模型不需要标签,算法自行探索
核心目标预测一个值预测一个类别发现数据的内在结构/分组
评估指标均方误差(MSE)、R²分数准确率、精确率、召回率、F1分数轮廓系数、Calinski-Harabasz指数

5.算法对比

算法类型学习类型任务类型核心目标评估指标sklearn类
线性回归监督学习线性回归预测一个值均方误差(MSE)、R²分数sklearn.linear_model.LinearRegression
回归决策树监督学习非线性回归预测一个值均方误差(MSE)、R²分数sklearn.tree.DecisionTreeRegressor
支持向量回归(SVR)监督学习回归预测一个值均方误差(MSE)、R²分数sklearn.svm.SVR
随机森林回归监督学习非线性回归预测一个值均方误差(MSE)、R²分数sklearn.ensemble.RandomForestRegressor
回归梯度提升树(Boosting)监督学习回归预测一个值sklearn.ensemble.GradientBoostingRegressor
逻辑回归监督学习二分类/多分类预测一个类别sklearn.linear_model.LogisticRegression
分类决策树监督学习分类预测一个类别sklearn.tree.DecisionTreeClassifier
随机森林分类监督学习分类预测一个类别sklearn.ensemble.RandomForestClassifier
分类梯度提升树(Boosting)监督学习分类预测一个类别sklearn.ensemble.GradientBoostingClassifier
支持向量分类(SVC)监督学习分类预测一个类别sklearn.svm.SVC|sklearn.svm.LinearSVC

注意:1、​sklearn.svm.SVR既可以做线性回归,也可以做非线性回归,这完全取决于你选择的核函数(kernel)
2、决策树、随机森林、梯度提升树、支持向量既可以用于回归也可以用作分类
3、SVM=Support Vector Machine 是支持向量机
SVC=Support Vector Classification就是支持向量机用于分类,
SVC=Support Vector Regression.就是支持向量机用于回归分析,

如何选择?

  • 如果你想预测一个具体的数量(比如价格、温度、销量) -> 用回归
  • 如果你想判断数据属于哪一类(比如是否患病、是哪类用户)并且已有明确的类别定义 -> 用分类
  • 如果你不知道数据有哪些类别,想探索数据,发现潜在的自然分组 -> 用聚类
http://www.dtcms.com/a/557001.html

相关文章:

  • 基于SpringBoot+Vue的零食仓库管理系统(redis缓存、摄像头、扫描二维码)
  • ant design 做网站wordpress 上传文件名
  • 跨网络互联技术(加密算法)
  • uniapp/flutter中实现苹果IOS 26 毛玻璃效果、跟随滑动放大动画
  • I.MX6U 启动方式详解
  • flutter 生命周期管理:从 Widget 到 State 的完整解析
  • Python Selenium详解:从入门到实战,Web自动化的“瑞士军刀”
  • 正品海外购网站有哪些郑州网络推广软件
  • 腾讯网站开发规范加强档案网站建设
  • 鸿蒙原生系列之手势事件自定义处理
  • OkHttp不同类型的HTTP请求的示例
  • 【Java Web学习 | 第四篇】CSS(3) -背景
  • PySide6集成yolo v8实现图片人物检测、视频人物检测以及摄像头人物检测
  • 求解器的智能决策之道
  • 卡片式网站p2p网站建设公司哪家好
  • Spring AI实现一个智能客服
  • 【浅析赛题,一等奖水平】思路模型数据相关资料!2025 年“大湾区杯”粤港澳金融数学建模竞赛B 题 稳定币的综合评价与发展分析~
  • 【攻防实战】通达OA文件上传联动Cobalt Strike打穿三层内网(上)
  • Linux应用开发-7-串口通讯与终端设备
  • 河北廊坊做网站一个网站后台怎么做
  • 企业培训考试系统源码php答题考试、题库、错题、练习考试等功能
  • 开拓视野:漫谈WebView领域相关技术
  • 如何在机器学习中使用特征提取对表格数据进行处理
  • UMI企业智脑助力数字化转型与智能化升级
  • xshell使用scp命令上传和下载文件
  • 命令行传参及调试——vscode平台
  • 【面试进阶】JavaScript 函数与对象进阶知识总结(重难点+记忆模板)
  • 《赋能AI解锁Coze智能体搭建核心技能(2)--- 智能体开发基础》
  • 自贡网站优化js网站开发视频教程
  • 驱动增长,而非浪费:8步整合SEO与PMax,解锁Google AI的隐藏流量