尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

机器学习入门核心术语详解:从特征到泛化

发布时间:2026/9/18 6:30:46

资讯中心
01
ARTICLE

机器学习入门核心术语详解:从特征到泛化

机器学习入门核心术语详解:从特征到泛化
直接说结论机器学习入门最难的坎不是数学不是编程而是第一周就被各种术语砸晕。“特征”“标签”“过拟合”“泛化”“监督学习”这些词单独看每个字都认识凑在一起就不知道在说什么。我见过太多人卡在这一步——收藏了一堆教程打开一本西瓜书翻到第一章就放弃。其实没必要术语这关过了后面整个体系就顺了。这也是为什么我一直强调学机器学习一定要先花时间把基本术语吃透而不是一上来就调库跑模型。这篇文章就用一个贯穿全文的例子——“让机器认识猫”把机器学习里最核心的基本术语挨个讲清楚。我会告诉你每个词背后解决的是什么问题而不是给你一堆干巴巴的定义。不管是刚入门的新手还是准备期末复习、面试突击的读者把这套术语串起来你再看任何教程都不会有那种“每个字都认识但不知道在说什么”的感觉了。1. 先搭骨架数据、样本、特征、标签是绕不开的地基1.1 从“认识猫”说起机器到底在看什么假设你想让计算机自己学会辨认一张图片里有没有猫。很多人第一反应是把图片给电脑看它不就知道了问题是电脑看到的不是“毛茸茸的、会喵喵叫的”那个概念它看到的是一堆像素点的数值。一张 224x224 的彩色图片在电脑眼里就是 224x224x3 个数长乘宽乘三个颜色通道RGB 各一个。这里就引出了机器学习里最基础的一组词数据、样本、特征、标签。数据Data你手里所有用来学习的素材集合。比如你收集了 1 万张图片其中 5000 张是猫5000 张不是猫这一批素材就是数据。样本Sample数据里的每一条个体。一张猫图片就是一个样本。平时听人说“样本量”“抽样”指的就是样本。特征Feature描述这个样本的属性在图片场景里通常指像素值。如果你做的是一个简单任务特征也可以是人手工设计的比如“耳朵是不是尖的”“有没有胡子”“体型多大”。标签Label样本对应的标准答案。一张图里是猫标签就是“猫”不是猫标签就是“非猫”。这四者的关系用一句话概括数据是由无数个带特征的样本组成的标签是这些样本对应的正确答案。机器学习的核心流程就是告诉计算机——“你看这些样本配上这些特征它们的正确答案是这些标签你从里面找一个规律出来。”1.2 特征工程喂给机器的“数字描述”刚才说了机器只能处理数字。所以“特征”必须是一个一个可以计算的数值而不是一堆形容词。你不可能直接扔给计算机一句“这张图的猫是橘色的、很胖”你得把它变成“颜色通道均值是 210.5轮廓周长是 180 像素”这种形式。把原始数据变成模型能吃的数值化特征这个过程叫特征工程Feature Engineering。在传统的机器学习里特征工程是决定模型上限的关键。你特征设计得好不好直接决定模型能学到什么程度。比如你要判断猫和狗你提取“耳朵形状”“吻部长度”这些特征效果就会比只用“图片整体亮度”好得多。这里要补一个词特征向量Feature Vector。一个样本的所有特征排成一列就是特征向量。比如你用 4 个特征描述一张图片颜色均值、边缘数量、耳朵尖度、体型那每个样本就是一个四维向量写成 [210.5, 35, 0.8, 12]。你还会听到“维度灾难”这种说法——当特征向量的维度特别高时比如直接拿全部像素当特征几万维数据会变得稀疏很多模型就不好用了。所以特征工程里也有“降维”这种操作把重要的特征留下来。但是先别急着抠细节。你现在只需要记住特征是模型的输入标签是模型的输出标准样本是载体数据是全集。这四个词是所有后续术语的基础后面的模型、训练、测试全是在这四个概念上长出来的。2. 数据集的切分逻辑训练集、验证集、测试集各司其职2.1 为什么不能用全部数据来训练如果手里有 1 万张猫图能不能全部拿去训练答案是不能。原因很简单——你要检验学得怎么样。想象你背了一本练习册把每道题的答案都背得滚瓜烂熟。这时候你拿练习册里的题去考自己肯定能拿满分但这能说明你学会了吗不能你可能只是背答案而不是掌握了解题方法。真到了考试换上从没见过的新题目你未必会做。机器学习也是一样的道理。训练的目的是让模型在“没见过的数据”新图片上也表现好这叫泛化能力Generalization。为了验证有没有泛化能力我们必须留出一部分数据假装它们不存在等模型训练完之后再去考它。于是就有了数据集的切分。2.2 三个集训练集、验证集、测试集最常见的划分是三分法训练集Training Set用来拟合模型的数据。模型通过看训练集里的样本和标签学习输入到输出的映射关系。验证集Validation Set用来调参和选择模型。每次调完参数先在验证集上看看效果好不好再决定要不要继续调。它的角色是“模拟考”。测试集Test Set整个训练过程完全结束之后才用来做最终检验的数据。它是“正式高考”模型绝对不能提前接触。这里有一个新手最容易犯的顺序错误训练的时候反复看测试集的表现来调参。一旦这么干测试集的信息就“泄漏”到了模型调参决策中最后测试集的分数就不准了看起来效果好实际换新数据就翻车。标准的流程是用训练集训练 → 用验证集调参 → 再用测试集做最终评估。测试集一辈子只能用一次用完就废了。2.3 校准集一个容易被忽视但很实用的角色有很多教材只讲“训练集、验证集、测试集”三分法但在实际工程里还有一个更细致的角色——校准集Calibration Set。什么叫校准很多模型输出的不是直接的类别判断而是一个概率比如“这张图是猫的概率 87%”。但这个概率不一定准确模型可能过分自信也可能太保守。我们希望在阈值上做个调整比如原本默认“概率大于 50% 就算猫”但实际数据里可能存在类别不平衡或者误判猫比漏判猫的代价更高那就可以把阈值调高到 70%。这个调整阈值的环节就需要用校准集来尝试不同的阈值找出最合适的那个。简单理解校准集是验证集的“进阶版”专门用来把模型的输出从“相对分数”调成“可信概率”。做比赛或者做工程的时候校准能实实在在提升效果。网上很多人说“为什么我的准确率到 90% 就上不去了”有时候不是因为模型不行而是因为他没做阈值校准或者没有专门留校准集去调这一步。你要是看到某个开源项目里有 calibration 这个词知道这是校准就好这是工程里很常见的一步。2.4 交叉验证数据不够用时的周转方案现实场景里数据往往不够多。如果你只有 2000 张图再切成 70% 训练、15% 验证、15% 测试训练数据就剩 1400 张不太够用。这时候就有交叉验证Cross-Validation。最常见的叫 K 折交叉验证。以 5 折为例把训练数据分成 5 份每次拿 4 份训练、1 份验证轮流来 5 次最后把 5 次的分取平均。这样每份数据既当过训练数据也当过验证数据用得更充分。交叉验证在调参和模型选型的时候尤其有用因为它的得分比单次划分更稳定不容易因为某一次“运气好”或者“运气差”就做出错误判断。3. 模型是怎么“学”出来的训练过程里的那些术语3.1 模型、算法、学习器一字之差意义完全不同很多人会把模型和算法混着用但实际上它们是两个层面的东西。算法Algorithm是指“用来学习”的方法比如线性回归算法、决策树算法、支持向量机算法。它是一套固定的流程不是具体的结果。模型Model是算法跑完训练数据之后得到的产物是“学到的那个规律”。比如线性回归算法在数据上训练完得到了一条趋势线 y 2.5x 1.3这条趋势线就是一个模型。学习器Learner是一个更学术的叫法学界喜欢把从数据中学习的算法称为学习器。你在周志华老师的《机器学习》西瓜书里经常能看到这个词它本质上表达的就是“能通过经验改善自身的程序”。举个例子帮助理解做菜。算法是“菜谱”模型是你按照菜谱做出来的一盘鱼香肉丝。菜谱是通用的但每个人按菜谱做的菜因为食材火候不同结果有差异。模型就是这一批数据下训练出来的那个独一无二的结果。还有一个高频词叫学习Learning在机器学习里它不是一个过程性的动作而是指“从数据中自动总结规律的能力”。所谓的“机器学习”准确说是让程序在数据驱动下自动改善自身性能而不用人类显式地编写每个判断规则。3.2 损失函数机器为什么知道自己错了训练的本质是调参数但调参之前得先知道“现在有多烂”。于是有了损失函数Loss Function。损失函数是一个衡量“模型预测值和真实标签差距”的函数。预测对了损失小预测错了损失大。整个训练过程就是在不断调整模型参数让损失函数的值尽量小。可以把它理解成一个“记分牌”每做一次预测记分牌就跳出一个数字数字越低说明表现越好。常见的有均方误差MSE多用于回归问题和交叉熵Cross-Entropy多用于分类问题。均方误差就是把每个样本的预测值和真实值的差平方后求平均交叉熵衡量的是模型预测的概率分布和真实分布的差异。这里不需要背公式但要记住选择不同的损失函数就是选择不同的“好坏标准”。同样是图像分类用交叉熵通常比用均方误差更适合因为它对概率分布更敏感梯度更好更新。3.3 参数与超参数谁在训练过程中被更新参数Parameters模型自己学出来的东西是模型内部的可变部分。线性回归里的 w 和 b神经网络的权重和偏置这些都是在训练中通过数据不断更新得到的。超参数Hyperparameters在训练开始之前由人设定的值。比如学习率设多少、树的最大深度、神经网络的层数、迭代多少轮。超参数不是模型自己学的而是靠人的经验或搜索策略去调。一个特别容易混淆的点是训练过程更新的是参数而不是超参数。超参数一变训练出来的模型参数也会变。所以“调参”这个词虽然大家经常说但严谨讲应该叫“调超参数”。你去 Kaggle 上看到别人分享“我把学习率设成 0.001 效果最好”说的就是超参数调优。3.4 梯度下降、批次与轮次训练循环是怎么转起来的梯度下降Gradient Descent是最核心的优化算法。它的思想非常朴素既然我们要让损失变小那就沿着损失函数下降最快的方向走一步再重新计算损失再走下一步直到走到一个低点。现实中你找不到山谷的最低点但你能感受到脚下的坡度哪边下坡你就往哪边走——这就是梯度下降的直观图景。训练的时候数据也不是一次全塞进去。你经常听到三个词批次Batch每次更新参数用的一小撮样本。一次用一个样本叫随机梯度下降SGD一次用一小部分叫小批量梯度下降Mini-batch Gradient Descent一次性用全部叫批量梯度下降。轮次Epoch把所有训练样本完整地过一遍叫一个 epoch。通常需要跑多个 epoch 才能把损失降到足够低。迭代Iteration每用一批次更新一次参数算一次迭代。举个例子方便理解你有 1000 张训练图片设 batch size 100。那么一个 epoch 里有 1000 ÷ 100 10 次迭代跑完这 10 次迭代更新了 10 次参数才算跑完一个 epoch。如果设 total epochs 20那整个训练过程要跑 20 轮参数总共更新 200 次。4. 泛化机器学习真正的灵魂也是最容易翻车的地方4.1 泛化能力与泛化误差衡量标准只有一个看新数据前面提到了泛化能力。这里需要展开讲因为它是机器学习里最核心的概念没有之一。泛化能力Generalization指模型对新样本的适应能力。你在数据上训练模型最终目标不是让它记住训练集里的每一张猫脸而是让它看到一只从未见过的猫也能认出来。这个能力好不好要用测试集来评估。用测试集算出来的误差就是我们常说的测试误差Test Error而模型在不知道真实分布时理论上能在全体样本上达到的误差期望叫做泛化误差Generalization Error。有读者可能看到过“泛化误差界”这个热搜词。这是机器学习理论里的内容——我们没法直接测量真正的泛化误差因为拿不到全宇宙所有数据但理论上可以证明当训练样本足够多、模型复杂度合适时泛化误差会以很大的概率被一个上界约束住。简单说泛化误差界就是“我们有多大的信心模型在新数据上的表现不会差到离谱”。虽然入门不需要深入推导这个数学理论但理解“泛化误差”和“训练误差”这组对照关系对后面理解过拟合非常有帮助。4.2 过拟合与欠拟合模型学习的两大极端欠拟合Underfitting模型太简单连训练数据里的规律都没学到。就像你复习完全没背重点连原题都做不对。表现是训练误差高测试误差也高。过拟合Overfitting模型复杂过了头把训练数据里没必要的噪声和细节也全背下来了。就像你背书把自己个性化的答题习惯都当成标准答案记下来结果换张新卷子就崩。表现是训练误差很低但测试误差高。怎么判断过拟合最简单的办法就是盯着训练集和验证集的误差曲线看——训练误差一直降验证误差降了一段时间之后开始回升那个回升的“拐点”就是过拟合开始发生的地方。应对过拟合的常用手段包括增加训练数据、降低模型复杂度比如减少神经网络的层数、引入正则化、做数据增强对图片做随机裁剪、翻转、调色让模型见到更多变化。应对欠拟合则相反——换更复杂的模型、增加特征、减少正则化强度。为了更直观我把这两个问题对照一下表现欠拟合过拟合学习程度没吃透训练数据吃太透连噪声都背下来了训练误差偏高很低甚至接近 0验证/测试误差偏高偏高常见原因模型太简单、特征不够模型太复杂、数据太少解决思路加特征、换复杂模型、减少正则加数据、简化模型、加正则、交叉验证4.3 偏差与方差从另一个角度理解泛化误差很多教材会提到偏差-方差分解Bias-Variance Decomposition。这是理解泛化误差的一种数学工具但入门阶段只需要理解直觉。偏差Bias模型预测的平均值和真实值的差异。偏差大说明模型系统性地预测错了一般对应欠拟合。方差Variance模型预测结果在不同训练集上的波动程度。方差大说明模型对数据的细节太敏感换一批数据结果就大变一般对应过拟合。回到打靶的类比偏差是子弹散落中心是否偏离靶心方差是子弹是否密集。理想情况是既准又集中。现实中偏差和方差往往此消彼长这就叫偏差-方差权衡。模型简单偏差大方差小模型复杂方差大偏差小。调模型的过程其实就是在找这个平衡点。4.4 正则化给模型“上枷锁”正则化Regularization是对付过拟合最常用的武器之一。它的思路是在损失函数后面加一个惩罚项限制模型的参数不能太大。参数太大会导致模型对细微变化过于敏感加上惩罚项之后模型就被“约束”得平滑一些。最常见的两种是 L1 正则化和 L2 正则化。L1 倾向于让一部分参数变成 0适合做特征选择L2 倾向于让参数整体变小但不会变成 0更常用。哦对了你一定听过 dropout——深度学习里的 dropout 就是随机把一部分神经元暂时“屏蔽”掉人为制造稀疏防止网络过于依赖某条路径这也可以理解成一种正则化手段。4.5 评估指标怎么量化“模型好不好”测试集上预测完怎么打分这是个术语密集区也是期末和面试的高频考点。准确率Accuracy预测正确的样本数占所有样本的比例。但它有一个大坑——如果 99% 的样本是“非猫”模型全预测“非猫”也有 99% 准确率可它一个猫都认不出来。精确率Precision在所有被模型预测为“猫”的结果里真的是猫的比例。它衡量的是“模型说是猫的时候靠不靠谱”。召回率Recall在所有真的猫里被模型找出来的比例。它衡量的是“模型有没有漏掉猫”。F1 分数F1-Score精确率和召回率的调和平均用来综合两者。混淆矩阵Confusion Matrix把预测结果分成四类组合——真正例、假正例、真负例、假负例给人非常直观的判断。AUC是指 ROC 曲线下的面积AUC 越接近 1 越好。它反映模型将正样本排在负样本前面的能力对类别不平衡相对不敏感。在医疗、风控场景里精确率和召回率的取舍很重要。比如检测猫的时候如果把“狗”误判成“猫”代价很小那可以牺牲精确率提高召回率但如果是在做“病变检测”漏诊的代价更大就得更注重召回率。选哪个指标取决于业务要什么没有任何指标是万能的这就是为什么入门阶段一定得把每个指标的真实含义搞清楚。5. 任务类型与学习范式别再把“超类”混为一谈5.1 监督学习、无监督学习、半监督学习、强化学习这个分类是机器学习最常见的划分维度。监督学习Supervised Learning训练数据里既有特征又有标签。比如“图片 是猫/不是猫”的答案。上一节提到的分类和回归都属于监督学习。无监督学习Unsupervised Learning训练数据只有特征没有标签。你要做的是从数据中自己找结构。最典型的任务是聚类Clustering把数据分成几堆每一堆内部相似。比如拿到一批用户行为数据不做任何标注让算法自动把用户分成几类再用人工去命名。半监督学习Semi-Supervised Learning一部分数据有标签一部分没有。现实中打标签很贵要人工标注但没标签的数据大量存在。半监督学习利用数据分布的结构让没标签的数据也帮忙训练性价比很高。强化学习Reinforcement Learning没有现成的答案只有环境给的奖励或惩罚。模型通过不断尝试学习哪个动作能得到更多累积奖励。AlphaGo 下围棋用的就是强化学习的思路还有个经典场景是训练机器人走迷宫。很多人容易把“无监督”和“强化学习”搞混。一句话区分无监督是“没有标准答案自学结构”强化学习是“没有标准答案但有反馈信号通过试错学到策略”。反馈不是正确答案只是一个分数或奖励模型要自己摸索怎么拿高分。5.2 分类、回归、聚类、降维按任务类型再看一遍分类Classification输出是离散的类别。比如“猫/狗/鸟”。回归Regression输出是连续的数值。比如预测房价、预测明天温度。聚类Clustering无监督任务把相似样本自动分组。降维Dimensionality Reduction把高维数据压缩到低维同时尽量保留关键信息方便可视化或加速计算。判断是分类还是回归就看输出是离散标签还是连续数值这是入门阶段最容易判定的两个任务。聚类和分类虽然中文听起来差不多但本质上完全不同分类有标签是监督学习聚类没有标签是无监督学习。5.3 人工智能、机器学习、深度学习三者到底是什么关系这个关系网上的图很多但核心就一句话人工智能是最大的范畴机器学习是实现人工智能的一种主流方式深度学习是机器学习的一个子集。人工智能AI让机器表现出智能的总称范围最大。早期的专家系统也算 AI但它不需要学习靠人类规则直接写死。机器学习Machine LearningAI 的一个分支强调从数据中自动学习规律而不靠人写死规则。深度学习Deep Learning机器学习下的一个分支核心是多层神经网络通过大量层级的特征组合提取复杂规律。现在图像识别、自然语言处理里效果最好的基本都是深度学习方法。很多人会有个疑问既然深度学习这么强为什么还要学传统机器学习答案是深度学习往往需要大量数据和算力而传统机器学习在小数据、可解释性要求高、资源有限的场景里仍然不可替代。你做一个需要向领导解释决策依据的风控或医疗模型用线性回归或决策树比用深度神经网络更合适。所以真正入门的路径一定是先吃透传统机器学习的基本范式再去看深度学习。另外我还见到一个很常见的说法“机器学习模型”和“深度学习模型”。其实深度学习模型本身也是机器学习模型的一种只是它靠神经网络这种特殊结构来做特征表达。区分它们不是看模型名字而是看有没有多层神经网络、数据量和算力门槛高不高。6. 把术语串起来跑一遍流程比单背十个定义有用得多6.1 一个真实的迷你项目流程从原始图片到部署与其一个个背术语不如把一个机器学习项目从头到尾的流程走一遍每个环节对照刚才介绍过的术语你会发现它们全部串起来了。第一步收集数据。你要识别猫从网上爬了 5000 张猫图和 5000 张非猫图。这时候你处理的是原始数据。第二步划分数据集。把 1 万张图按 8:1:1 分成训练集、验证集、测试集。记住这个口决训练集用来学验证集用来调测试集用来考测试集绝对不能提前碰。第三步特征工程。图片不是直接塞给传统模型的先把图像缩放、像素归一化再提取颜色直方图、边缘特征等。在现代深度学习里这一步很多时候被神经网络替代了网络自己从原始像素学特征但你得先熟悉特征这个概念。第四步选模型和损失函数。图像分类任务传统机器学习可以选支持向量机深度学习可以选卷积神经网络。分类任务损失函数用交叉熵。第五步训练。把训练集一批批喂进模型用梯度下降更新参数记录训练损失。设好超参数——学习率、batch size、epoch 数量。每个 epoch 结束到验证集上看一下效果。第六步调参。如果验证集上准确率不理想回去改超参数、加正则化、做数据增强。这时候用验证集来选最优的超参数组合。第七步校准集与阈值调整。如果业务要求“宁可多报不可漏报”就把阈值调低一点用校准集验证调整后的效果。第八步最终评估。所有调试结束后用测试集跑一次记录准确率、精确率、召回率写在项目报告里。第九步部署上线。把训练好的模型接到实际环境中。之后还要继续收集新数据做模型迭代——因为真实世界的数据分布可能一直在变。这几步做一遍你会发现自己对术语的记忆牢固得多。学校实验室搭机器学习服务器、配置 Python 环境、跑开源项目本质上都只是在为这九步流程提供工具术语骨架才是真正的核心。6.2 面试与期末复习最容易被追问的 10 个术语陷阱结合我之前带新人的经验把那些高频考题和容易踩的坑统一列一下你可以拿来自测术语组易错点一句话自检训练/验证/测试集把验证集和测试集搞混验证集是模拟考测试集是高考参数/超参数把学习率当成模型参数学习率是训练前人为设的属于超参数有监督/无监督以为分类都是无监督看标签有没有不是看任务名精确率/召回率只背公式不理解场景精确率管误报召回率管漏报过拟合/欠拟合只知道名字不会判断看训练误差和验证误差的差距偏差/方差和过拟合欠拟合对不上偏差大→欠拟合方差大→过拟合模型/算法混用算法是方法模型是训练后的结果准确率/精确率觉得差不多类别不平衡时准确率会骗人泛化误差/训练误差只测训练集就说效果好一定要看没见过的数据分类/回归只看名字不看输出类型离散是分类连续是回归面试官特别爱问的一个组合是“你训练误差很低但测试误差很高是什么问题怎么解决”听到这种问题脑子里立刻要弹出过拟合。然后紧接着给出对策加正则化、加数据、增强、交叉验证、早停。能把这套话连贯说出来这关就过了。6.3 给零基础的学习路线建议先记术语骨架再逐步扩展最后给一条我比较推荐的学习路径也顺便解释一下那些热搜词背后的学习场景。第一阶段先把本文这套基本术语过一遍能在不看笔记的情况下自己画出一个“数据→训练→评估→上线”的完整流程图每个环节能说出对应的术语。这时候你已经有骨架了。第二阶段选一门课程系统学。吴恩达老师的机器学习课程和李宏毅老师的课程都是很经典的入门资源西瓜书周志华《机器学习》适合作参考书遇到一个术语不确定就去翻对应章节。网上的理论学习如果一开始看到“泛化误差界”这种数学推导太抽象先跳过知道它是“关于泛化能力的理论保证”就够了等后面数学基础跟上再回来看。第三阶段动手跑一个小项目。不用一上来就挑战人脸识别这种复杂项目先做一个“猫狗分类”或者“手写数字识别”。有条件就在自己的笔记本上用 Python 配好 Jupyter 环境没有的话可以用学校实验室的机器学习服务器。过程中遇到环境配置问题很正常这是每个机器学习工程师都必经的一段路。第四阶段吃透一门算法的细节。比如把线性回归从损失函数到梯度下降细节全部手推一遍再看逻辑回归再看决策树再过渡到神经网络。这些模型本质上都是“损失函数 优化算法 模型结构”的组合你把框架吃透了换模型只是换这三位成员而已。我个人带新人的时候最深的体会是术语不是用来背的是用来“对号入座”的。每学一个新算法问自己三个问题——它的输入特征是什么它的输出是什么它用哪个损失函数、怎么更新参数能把这些问题答清楚就说明你真的把术语吃透了。当你做到这一步后面再接触什么深度学习、自然语言处理都不会觉得是在学新世界只是在这个骨架上填新的模型和玩法而已。
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。