登录/注册

机器学习基础知识要点

更多

好的,这是一份用中文整理的机器学习基础知识要点,力求涵盖核心概念、流程和技术:

一、 核心概念与基础

  1. 什么是机器学习 (ML)

    • 一种人工智能的方法。
    • 让计算机系统无需进行明确的编程指令,就能通过从数据中学习模式和规律来改进特定任务的性能。
    • 核心思想:数据驱动,通过经验(数据)提高性能(预测/决策)
  2. 数据集

    • 训练集:用于训练模型、拟合参数的主要数据集。
    • 验证集:用于在训练过程中(或训练后)调整超参数、选择模型、避免过拟合的独立数据集。
    • 测试集:用于最终评估模型在从未见过的数据上的泛化能力的独立数据集。
    • 关键原则: 三者必须互斥,测试集仅在最终评估时使用一次,以确保评估的公正性。
  3. 特征

    • 数据集中代表样本属性的变量或指标(例如:房价预测中的面积、房间数、地段)。
    • 是模型的输入。
    • 特征工程的好坏极大影响模型性能(“垃圾进,垃圾出”)。
  4. 标签/目标变量

    • 监督学习中,我们想要预测的变量(例如:房价、电子邮件是否是垃圾邮件、图片中的物体类别)。
    • 是模型的输出目标。
  5. 样本/实例

    • 数据集中的一个具体数据点,通常由其特征值和(对于监督学习)可能的标签值组成(例如:一套房子的具体信息)。
  6. 模型

    • 机器学习算法的学习结果,是一个数学函数或规则集合,它能够根据输入特征进行预测或决策。
    • 训练过程就是寻找最优模型参数的过程。
  7. 训练

    • 使用训练集数据,通过特定的学习算法,调整模型的参数,使其能够从数据中学习模式的过程。
  8. 预测

    • 使用训练好的模型,对新样本/未知数据(没有标签的数据)的输出进行估计的过程。
  9. 泛化能力

    • 模型在从未见过的、与训练数据同分布的新数据上表现良好的能力。这是机器学习的核心目标。
  10. 过拟合

    • 模型在训练集上表现得非常好(甚至完美拟合),但在新数据(验证集/测试集) 上表现很差
    • 原因:模型过于复杂,学习了训练数据中的噪声和特异性,而不是普适的规律(“死记硬背”)。
    • 解决方法:获取更多数据、简化模型(降低复杂度)、正则化、交叉验证、早停等。
  11. 欠拟合

    • 模型在训练集上就表现得不够好
    • 原因:模型过于简单,无法捕捉数据中的基本结构和规律(“没学会”)。
    • 解决方法:增加模型复杂度、增加更多特征、减少正则化强度、增加训练轮数等。
  12. 偏差与方差

    • 偏差:模型预测值与真实值之间的平均误差。高偏差通常与欠拟合相关(模型对数据的基本关系认识错误或不充分)。
    • 方差:模型预测值对于训练数据微小变化的敏感程度(波动性)。高方差通常与过拟合相关(模型对噪声过于敏感)。
    • 目标:在模型的偏差和方差之间取得平衡,以最小化总误差(偏差-方差权衡)。
  13. 超参数

    • 在模型训练之前就需要设定的配置参数,不能通过训练过程自动学习得到。
    • 作用:控制模型结构、学习过程或正则化强度等(例如:学习率、神经网络层数和每层神经元个数、决策树的深度、KNN中的K值、正则化系数λ)。
    • 调整:需要通过实验(如网格搜索、随机搜索)结合验证集交叉验证来优化。
  14. 参数

    • 模型内部固有的变量,在训练过程中会随着数据而自动学习和调整(例如:线性回归中的权重和偏置项、神经网络中的连接权重)。

二、 主要机器学习问题类型

  1. 监督学习

    • 训练数据包含输入特征和对应的输出标签
    • 目标:学习从输入到输出的映射关系,用于预测新数据的标签。
    • 主要任务
      • 回归:预测连续值标签(如:房价预测、温度预测)。
      • 分类:预测离散类别标签(如:垃圾邮件识别、图像分类、疾病诊断)。
  2. 无监督学习

    • 训练数据只有输入特征,没有对应的标签
    • 目标:发现数据中隐藏的结构、模式或关系。
    • 主要任务
      • 聚类:将相似的样本分组(如:客户细分、新闻主题分组)。
      • 降维:在保留关键信息的前提下减少数据特征数量(如:主成分分析-PCA、t-SNE,用于可视化或简化数据)。
      • 异常检测:识别与大多数数据显著不同的异常点。
      • 关联规则学习:发现数据项之间的有趣关联(如:购物篮分析)。
  3. 强化学习

    • 模型(智能体)在与环境的交互中学习。
    • 智能体采取行动 -> 环境给出奖励/惩罚和新状态
    • 目标:学习一个策略(行动指南),以最大化长期累积奖励。
    • 应用:游戏AI(如AlphaGo)、机器人控制、资源管理等。
  4. 半监督学习:结合少量有标签数据和大量无标签数据进行学习。

三、 核心机器学习流程

  1. 问题定义:明确业务目标,将其转化为一个可量化的ML问题(回归、分类等)。
  2. 数据收集与准备
    • 获取相关数据源。
    • 数据清洗:处理缺失值、异常值、重复值。
    • 数据探索:理解数据分布、特征关系(可视化)。
    • 特征工程
      • 特征提取:从原始数据构造新特征(更有意义)。
      • 特征选择:选择信息量最大、最相关的特征子集。
      • 特征转换:标准化/归一化、离散化、编码分类变量等。
  3. 模型选择与训练
    • 根据问题类型(回归/分类/聚类)和数据特点选择合适的模型算法。
    • 训练集输入算法进行训练。
    • 可能需要使用验证集进行初步模型评估和超参数调整。
  4. 模型评估
    • 使用测试集对最终模型的性能进行无偏评估。
    • 常用评估指标
      • 回归:均方误差(MSE)、均方根误差(RMSE)、平均绝对误差(MAE)、决定系数(R²)。
      • 分类:准确率(Accuracy)、精确率(Precision)、召回率(Recall/查全率)、F1分数(F1-Score)、ROC曲线、AUC值、混淆矩阵。
      • 聚类:轮廓系数(Silhouette Score)、Calinski-Harabasz指数、簇内相似度和簇间分离度(常需要领域知识辅助评估)。
    • 分析评估结果,判断模型是否满足需求(避免过拟合/欠拟合)。
  5. 模型调优与优化
    • 根据评估结果调整模型或数据。
    • 包括:修改特征工程步骤、尝试不同模型、优化超参数(反复使用验证集或交叉验证)。
  6. 模型部署与监控
    • 将训练好的模型集成到实际应用或系统中。
    • 持续监控模型在生产环境中的性能,收集新数据。
    • 模型漂移:由于现实世界变化,模型性能随时间下降,需要重新训练或更新模型。

四、 关键技术要点

  1. 交叉验证
    • 一种评估模型泛化能力的强大技术,尤其在小数据集上。
    • K折交叉验证:将训练集随机分成K个大小相似的子集(“折”)。轮流使用其中K-1折训练模型,用剩下的一折进行验证。重复K次,每次使用不同的验证折。最终结果取K次验证结果的平均值。有效利用有限数据并降低评估结果的方差。
  2. 正则化
    • 防止过拟合的核心技术。
    • 在损失函数中添加一个对模型复杂度的惩罚项(惩罚大参数值)。
    • 目的:约束模型复杂度,鼓励模型学习更简单、更泛化的模式。
    • 常用方法
      • L1正则化 (Lasso):惩罚项为参数绝对值之和。倾向于产生稀疏解(某些特征系数为0),具有特征选择作用。
      • L2正则化 (岭回归):惩罚项为参数平方和。惩罚大参数值,使所有参数普遍变小但不一定为0。
      • 弹性网络:结合L1和L2。
  3. 学习率
    • 梯度下降等优化算法中非常重要的超参数。
    • 控制每次迭代更新模型参数的步长大小
    • 太高:可能导致在最优解附近震荡甚至发散(无法收敛)。
    • 太低:可能导致收敛速度极慢,需要更多迭代轮数。
    • 常使用学习率衰减策略(随训练逐步减小学习率)来优化收敛。

五、 常见的经典算法(了解本质思想)

六、 重要基石:数学基础(需掌握概念)

  1. 线性代数:向量、矩阵运算(矩阵乘法、转置、逆、特征值/特征向量)是理解模型结构(如神经网络)和优化(梯度计算)的基础。
  2. 概率论与统计:概率分布(正态分布等)、条件概率、贝叶斯定理、期望、方差、协方差、相关性、最大似然估计、统计检验。
  3. 微积分(偏导数):理解优化算法(如梯度下降)如何通过梯度(函数在各个方向上的变化率)来更新参数。链式法则在反向传播中至关重要。

七、 实践建议

这份要点涵盖了机器学习的核心骨架。深入学习每个部分,结合实践项目,是掌握机器学习的有效途径。祝你学习顺利!

图解 72 个机器学习基础知识

来源:尤而小屋 、数据派THU 图解机器学习算法系列 以图解的生动方式,阐述机器学习

2023-04-10 12:50:04

强化学习基础知识和6种基本算法解释

来源:DeepHubIMBA强化学习的基础知识和概念简介(无模型、在线学习、离线强化学

2023-01-05 14:54:05

C语言基础知识科普

C语言是单片机开发中的必备基础知识,本文列举了部分STM32学习中比较常见的一些C语言基础知识。

2022-07-21 10:58:28

机器视觉基础知识详解模板

机器视觉基础知识详解模板下载。

资料下载 姚小熊27 2021-05-28 14:48:38

机器视觉系统基础知识与基本原理

机器视觉系统基础知识与基本原理说明。

资料下载 姚小熊27 2021-05-27 14:44:05

三个被动元件的基础知识及应用

三个被动元件的基础知识及应用

资料下载 xuelonghao 2021-03-24 09:41:35

直流稳压电路的基础知识学习课件免费下载

本文档的主要内容详细介绍的是直流稳压电路的基础知识学习课件免费下载

资料下载 佚名 2021-02-02 11:59:26

机器学习基础知识详细说明

本文档的主要内容详细介绍的是机器学习的基础知识详细说明。

资料下载 h1654155702.2270 2020-03-24 08:00:00

使用Kotlin构建Android应用的基础知识

进行 Android 开发,构建 Android 应用。在此课程中,学生将学习编程的基础知识和 Kotlin 编程语言的基础知识。

2022-03-29 09:20:44

单片机基础知识学习笔记分享

单片机基础知识学习笔记有关总线1.IIC总线2.SPI总线

2021-11-23 07:37:44

STM32学习基础知识

STM32学习基础知识对于具体开发过程中IO口的使用查阅硬件资料里的数据手册即可!(标注FT的都可以5V)小结和51单片机相比,操作寄存器这种方法的劣势是你需要去掌握每个寄存器的用法,你才能正确

2021-08-16 07:42:09

了解一下机器学习中的基础知识

机器学习中的基础知识 demi 在 周四, 03/07/2019 - 09:16 提交

2021-03-31 17:08:01

机器视觉系列——+Vision+基础知识

机器视觉系列——+Vision+基础知识上和下,自行下载解析如何选相机、镜头、图像处理等知识。

2021-03-01 20:27:26

怎么学习嵌入式系统基础知识

如何学习嵌入式系统基础知识

2021-02-19 06:28:00

学习PLC必备四方面基础知识

PLC本身就是控制电器线路,故学习PLC必备基础中以电工基础最重要。零基础学习PLC其实是从学习电工

2020-01-15 08:59:20

7天热门专题 换一换
相关标签