从零开始理解机器学习:知识体系 + 核心术语详解

你可能听说过“机器学习”,觉得它很神秘,像是让电脑自己学会做事。其实,机器学习的本质很简单:通过数据来自动建立规则,从而完成预测或决策任务

这篇文章将带你系统梳理机器学习的知识体系,并用贴近生活的语言解释其核心术语,帮助你真正理解它的原理、方法和应用。


一、什么是机器学习?它是怎么“学”的?

1.1 它不是“会思考的电脑”,而是“从数据中找规律的工具”

你可以把机器学习想象成一个擅长总结经验的助手。你给它一堆例子(比如很多张猫的照片),它就能慢慢学会“什么样的图像是猫”。然后即使你给它一张新照片,它也能判断是不是猫。

一句话总结:机器学习是一种根据已有数据自动找出规律,并用于新数据预测的方法。


二、机器学习的基本分类:三种主要任务类型

根据任务目标的不同,机器学习通常分为三类:

2.1 监督学习(Supervised Learning)

就像老师带学生一样,你告诉模型每个输入对应的正确答案,它从中学习规律。

常见任务:
  • 分类(Classification):判断是哪种类型,比如垃圾邮件识别。

  • 回归(Regression):预测一个数值,比如房价预测。

常见算法:
  • 线性回归、逻辑回归

  • 决策树、随机森林

  • 支持向量机(SVM)

  • K近邻(KNN)


2.2 无监督学习(Unsupervised Learning)

没有“标准答案”,模型自己去找数据中的模式。

常见任务:
  • 聚类(Clustering):把相似的数据分组,比如客户分群。

  • 降维(Dimensionality Reduction):压缩数据,提取关键特征。

  • 异常检测(Anomaly Detection):发现不寻常的数据点。

常见算法:
  • K均值聚类(K-Means)

  • 主成分分析(PCA)

  • 自编码器(Autoencoder)


2.3 强化学习(Reinforcement Learning)

像玩游戏一样不断试错,根据反馈调整策略,最终找到最优解。

常见任务:
  • 游戏AI(如AlphaGo)

  • 机器人控制

  • 自动驾驶决策

核心概念:
  • 智能体(Agent)

  • 动作(Action)

  • 状态(State)

  • 奖励(Reward)


三、机器学习的工作流程:从准备数据到部署模型

虽然不同类型的机器学习任务略有差异,但它们的整体流程大致相同:

3.1 数据准备(Data Preparation)

这是最基础也是最重要的一步:

  • 数据清洗:去除错误、缺失或重复的数据。

  • 特征工程:挑选或构造对任务有帮助的特征(例如“收入”、“年龄”等)。

  • 标准化/归一化:统一数据范围,避免某些特征主导结果。


3.2 模型训练(Model Training)

选择合适的算法后,使用训练数据“教”模型如何做判断:

  • 输入:数据 + 正确答案(监督学习)

  • 输出:模型参数(即学到的规则)


3.3 模型评估(Model Evaluation)

不能只看模型在训练数据上的表现,还要测试它是否真的学会了规律:

  • 准确率(Accuracy)

  • 精确率(Precision)、召回率(Recall)

  • F1 分数

  • AUC-ROC 曲线


3.4 模型调优(Hyperparameter Tuning)

调整模型的“设置”,让它表现更好:

  • 学习率、正则化强度、树的深度等

  • 方法包括网格搜索(Grid Search)、随机搜索(Random Search)、贝叶斯优化


3.5 部署上线(Deployment)

把训练好的模型放到真实环境中使用:

  • Web服务接口(API)

  • 移动端嵌入

  • 边缘设备部署(Edge AI)


四、常见模型及其适用场景

模型适用任务特点
线性回归回归简单、可解释性强
逻辑回归分类快速、适合二分类
决策树分类/回归可视化强、易解释
随机森林分类/回归性能稳定、抗过拟合能力强
支持向量机(SVM)分类在高维空间表现好
K近邻(KNN)分类/回归简单直观,但计算开销大
聚类算法(KMeans)无监督发现数据内在结构

五、机器学习常用术语详解:从“分类”到“过拟合”

下面我们将结合生活化的类比,解释机器学习中最常见的术语,让你不再被这些词吓退。

5.1 分类(Classification)

🔹 通俗解释:就像老师给学生分等级——是优、良、还是差?分类就是判断一个样本属于哪一类。

🔹 专业解释:输出为离散标签的任务。例如判断一封邮件是否是垃圾邮件(是/否)、一张图是不是猫(猫/狗/其他)。


5.2 回归(Regression)

🔹 通俗解释:预测一个具体的数字,比如明天的温度是多少度,或者这套房子值多少钱。

🔹 专业解释:输出为连续数值的任务。例如房价预测、销量预测、体重估计等。


5.3 聚类(Clustering)

🔹 通俗解释:像整理衣柜一样,把相似的衣服放在一起,不知道类别,只是根据特征自动分组。

🔹 专业解释:无监督学习的一种,用于发现数据中的自然分组结构,如客户分群、图像分割等。


5.4 过拟合(Overfitting)

🔹 通俗解释:模型学得太死板,把训练题全部背下来了,但遇到新题就不会了。

🔹 专业解释:模型在训练集表现很好,但在测试集上表现差,通常因为模型过于复杂或训练数据不足。


5.5 欠拟合(Underfitting)

🔹 通俗解释:模型太简单,连训练题都没学会,考试全错。

🔹 专业解释:模型在训练集和测试集上都表现不好,说明没有充分捕捉数据规律。


5.6 正则化(Regularization)

🔹 通俗解释:给模型加个提醒:“别想得太复杂,要简洁一点。”

🔹 专业解释:通过对权重施加惩罚项(L1/L2),限制模型复杂度,防止过拟合。


5.7 准确率(Accuracy)

🔹 通俗解释:模型猜对了多少次。比如考试10道题,对了8道,准确率就是80%。

🔹 专业解释:正确预测数 / 总样本数,适用于类别均衡情况。

越高越好

📍 适用场景:类别分布均匀时有效。


5.8 精确率(Precision)

🔹 通俗解释:你推荐的电影中,有多少是我喜欢的?

🔹 公式真正例 / (真正例 + 假正例)

越高越好

📍 适用场景:假阳性代价高时,如垃圾邮件检测。


5.9 召回率(Recall)

🔹 通俗解释:我喜欢的电影中,你推荐了多少?

🔹 公式真正例 / (真正例 + 假反例)

越高越好

📍 适用场景:漏检代价高时,如疾病筛查、欺诈检测。


5.10 F1 分数(F1 Score)

🔹 通俗解释:精确率和召回率的“平衡打分”,相当于综合考虑两个指标的表现。

🔹 公式2 × (精确率 × 召回率) / (精确率 + 召回率)

越高越好

📍 适用场景:类别不平衡,同时希望兼顾精确率和召回率。


5.11 AUC-ROC 曲线(Area Under the Curve - Receiver Operating Characteristic)

🔹 通俗解释:衡量模型区分好坏的能力,AUC 越高,说明模型越能分清“是猫”和“不是猫”。

🔹 专业解释:通过不同阈值下真正例率(TPR)与假正例率(FPR)的关系曲线计算面积。

越高越好

📍 适用场景:二分类问题,需要评估整体性能而非特定阈值下的表现。


5.12 MAE & MSE(平均绝对误差 & 均方误差)

🔹 通俗解释:MAE 是预测值和真实值之间的平均差距;MSE 不仅看差距,还惩罚大的错误。

🔹 公式

  • MAE:平均(|预测值 - 真实值|)

  • MSE:平均((预测值 - 真实值)^2)

越低越好

📍 适用场景:回归任务,尤其是需要量化误差大小时。


5.13 R² 决定系数(R-squared)

🔹 通俗解释:模型解释了多少数据的变化?1表示完美拟合,0表示模型没用。

🔹 公式1 - (残差平方和 / 总平方和)

越高越好

📍 适用场景:比较不同回归模型的整体拟合效果。


5.14 Log Loss(对数损失)

🔹 通俗解释:不仅看是否预测对了,还要看它有多自信。

🔹 公式:基于交叉熵损失计算

越低越好

📍 适用场景:需要概率输出的模型评估,如广告点击率预测。


六、总结:术语再多,本质还是“找规律 + 做判断”

机器学习虽然听起来很技术,但它本质上是在解决这样一个问题:

给我一堆数据,我能不能从中找出规律,并用这个规律去预测未来的事情?

每一个术语的背后,其实都是围绕这个目标设计的方法或工具。掌握这些术语,不仅有助于你读懂论文和技术文档,还能帮助你更好地使用和调试机器学习模型。


七、附录:术语与指标一览表

术语/指标类型含义是否越高越好适用场景
分类任务判断是哪种类型✅ 是类别判断
回归任务预测一个具体数值✅ 是数值预测
聚类任务自动分组✅ 是无监督任务
过拟合泛化学得太死记硬背❌ 否模型调优
欠拟合泛化学得太浅显❌ 否模型调优
准确率评估对了几成✅ 是类别均衡
精确率评估推荐的东西有多准✅ 是不想误判正样本
召回率评估我喜欢的你推荐了多少✅ 是不想漏判正样本
F1 分数评估精确和召回的平衡打分✅ 是平衡两者
AUC-ROC评估区分好坏的能力✅ 是整体性能评估
MAE评估平均误差大小❌ 否衡量偏差
MSE评估更关注大误差❌ 否惩罚大误差
评估解释力程度✅ 是回归模型对比
Log Loss评估概率输出质量❌ 否概率输出评估

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/news/907680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot集成websocket给前端推送消息

一般通常情况下,我们都是前端主动朝后端发送请求,那么有没有可能,后端主动给前端推送消息呢?这时候就可以借助websocket来实现。下面给出一个简单的实现样例。 首先创建一个websocketDemo工程,该工程的整体结构如下&a…

【清晰教程】查看和修改Git配置情况

目录 查看安装版本 查看特定配置 查看全局配置 查看本地仓库配置 设置或修改配置 查看安装版本 打开命令行工具,通过version命令检查Git版本号。 git --version 如果显示出 Git 的版本号,说明 Git 已经成功安装。 查看特定配置 如果想要查看特定…

【Github/Gitee Webhook触发自动部署-Jenkins】

Github/Gitee Webhook触发自动部署-Jenkins #mermaid-svg-hRyAcESlyk5R2rDn {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-hRyAcESlyk5R2rDn .error-icon{fill:#552222;}#mermaid-svg-hRyAcESlyk5R2rDn .error-tex…

C语言数据结构-链式栈

头文件&#xff1a;stack.h #ifndef __STACK_H__ #define __STACK_H__ #include <stdio.h> #include <stdlib.h> typedef int DataType; /* 链式栈节点类型 */ typedef struct staNode { DataType data; struct staNode *pNext; }StackNode; /* 链式栈…

M4Pro安装ELK(ElasticSearch+LogStash+Kibana)踩坑记录

ElasticSearch安装&#xff0c;启动端口9200&#xff1a; docker pull elasticsearch:8.13.0 新增配置文件elasticsearch.yml&#xff1a; cd /opt/homebrew/etc/ mkdir elasticsearch_config cd elasticsearch_config vi elasticsearch.yml cluster.name: "nfturbo…

uni-app学习笔记十六-vue3页面生命周期(三)

uni-app官方文档页面生命周期部分位于页面 | uni-app官网。 本篇再介绍2个生命周期 1.onUnload&#xff1a;用于监听页面卸载。 当页面被关闭时&#xff0c;即页面的缓存被清掉时触发加载onUnload函数。 例如:在demo6页面点击跳转到demo4&#xff0c;在demo4页面回退不了到d…

Java互联网大厂面试:从Spring Boot到Kafka的技术深度探索

Java互联网大厂面试&#xff1a;从Spring Boot到Kafka的技术深度探索 在某家互联网大厂的面试中&#xff0c;面试官A是一位技术老兵&#xff0c;而被面试者谢飞机&#xff0c;号称有丰富的Java开发经验。以下是他们的面试情景&#xff1a; 场景&#xff1a;电商平台的后端开发…

机器学习算法——KNN

一、KNN算法简介 1.KNN思想 &#xff08;1&#xff09;K-近邻算法 根据你的“邻居”来推断你是什么类别 KNN算法思想&#xff1a;如果一个样本在特征空间&#xff08;训练集&#xff09;中的k个最相似的样本中的大多数属于某一个类别。则该样本也属于这个类别 &#xff08…

如何评估CAN总线信号质量

CAN总线网络的性能在很大程度上取决于其信号质量。信号质量差可能导致通信错误&#xff0c;进而引发系统故障、效率降低甚至安全隐患。因此&#xff0c;评估和确保CAN总线信号质量是维护系统健康和可靠性的关键。 在CAN总线网络中&#xff0c;数据通过双绞线上的差分信号传输。…

封装一个小程序选择器(可多选、单选、搜索)

组件 <template><view class"popup" v-show"show"><view class"bg" tap"cancelMultiple"></view><view class"selectMultiple"><view class"multipleBody"><view class&…

2.1HarmonyOS NEXT开发工具链进阶:DevEco Studio深度实践

HarmonyOS NEXT开发工具链进阶&#xff1a;DevEco Studio深度实践 在HarmonyOS NEXT全栈自研的技术体系下&#xff0c;DevEco Studio作为一站式开发平台&#xff0c;通过深度整合分布式开发能力&#xff0c;为开发者提供了从代码编写到多端部署的全流程支持。本章节将围绕多设…

LLMs之Tool:Workflow Use的简介、特点、安装和使用方法、以及案例应用

LLMs之Tool&#xff1a;Workflow Use的简介、特点、安装和使用方法、以及案例应用 目录 Workflow Use的简介 1、Workflow Use的特点 2、Workflow Use的愿景和路线图 Workflow Use的安装和使用方法 1、安装 2、使用方法 查看所有命令 从 Python 中使用&#xff1a; 启动…

二分法算法技巧-思维提升

背景&#xff1a; 在写力扣题目“搜素插入位置 ”时&#xff0c;发现二分法的一个细节点&#xff0c;打算记录下来&#xff0c;先看一张图&#xff1a; 我们知道&#xff0c;排序数组&#xff0c;更高效的是二分查找法~~~而二分法就是切割中间&#xff0c;定义left是最开始的&…

Python 训练营打卡 Day 40

训练和测试的规范写法 一、黑白图片的规范写法&#xff0c;以MNIST数据集为例 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms # 用于加载MNIST数据集 from torch.utils.data import DataLoader # 用于创建…

数据结构之栈:原理与常用方法

1. 栈的定义 Stack是Vector的一个子类&#xff0c;它实现标准的后进先出堆栈。Stack只定义了创建空堆栈的默认构造方法。&#xff08;实际上是实现了List接口&#xff0c;因为Vector是List的子类&#xff09;。 Stack() // 创建一个空栈 2. 栈的基本操作 // 压栈操作 publi…

鸿蒙OSUniApp 开发支持图片和视频的多媒体展示组件#三方框架 #Uniapp

使用 UniApp 开发支持图片和视频的多媒体展示组件 前言 在现代移动应用中&#xff0c;图片和视频已成为内容展示的主流形式。一个优秀的多媒体展示组件不仅能提升用户体验&#xff0c;还能增强产品的互动性和视觉冲击力。随着鸿蒙&#xff08;HarmonyOS&#xff09;生态的不断…

STM32CubeMX,arm-none-eabi-gcc简单试用

在windows下&#xff0c;为stm32系列单片机编程&#xff0c;keil有了免费的试用版&#xff0c;有很多开发板示例&#xff0c;给学习单片机编程带来很大的方便。 STM32CubeMX提供了stm32单片机的功能设置&#xff0c;在输出方式上给出了几种方式&#xff0c;有mdk&#xff08;k…

灌水论坛系统总体设计文档

一、实验题目 灌水论坛系统 二、实验目的 旨在通过一个相对完整且功能丰富的Web应用实例&#xff0c;全面地实践和巩固Web开发所需的各项核心技术和工程方法&#xff0c;从而提升其综合应用能力和解决实际开发问题的能力。它不仅仅是完成一个软件&#xff0c;更是一个学习、…

Android 13中 配置签名文件与内置相应的Apk

目录 1.问题场景 2.实现思路 3.将测试代码做成APK并配置签名 4.将apk内置到系统当中的方法 1.问题场景 在展讯平台中Android13的源码已知的情况下&#xff0c;客户写了一个测试类用于调用系统中的一些接口来检验一些功能。为了方便调试排查问题我首先的思路是将客户写的测试…

HarmonyOS 5 应用开发导读:从入门到实践

一、HarmonyOS 5 概述 HarmonyOS 5 是华为推出的新一代分布式操作系统&#xff0c;其核心设计理念是"一次开发&#xff0c;多端部署"。与传统的移动操作系统不同&#xff0c;HarmonyOS 5 提供了更强大的跨设备协同能力&#xff0c;支持手机、平板、智能穿戴、智慧屏…