机器学习概述

8 minBeginner2026/6/14

机器学习基本概念、学习范式分类、核心术语与工作流程。

1. 机器学习基本概念

机器学习(Machine Learning)是人工智能的核心分支,通过从数据中自动学习规律,使计算机无需显式编程即可完成特定任务。

1.1 形式化定义

给定训练数据集 D={(x1,y1),(x2,y2),,(xn,yn)}\mathcal{D} = \{(\mathbf{x}_1, y_1), (\mathbf{x}_2, y_2), \ldots, (\mathbf{x}_n, y_n)\},机器学习的目标是从假设空间 H\mathcal{H} 中寻找最优函数 hHh^* \in \mathcal{H},使得期望风险最小化:

h=argminhHE(x,y)P[L(h(x),y)]h^* = \arg\min_{h \in \mathcal{H}} \mathbb{E}_{(\mathbf{x}, y) \sim P} [L(h(\mathbf{x}), y)]

其中 LL 为损失函数,PP 为数据分布。由于真实分布未知,我们用经验风险近似:

hargminhH1ni=1nL(h(xi),yi)h^* \approx \arg\min_{h \in \mathcal{H}} \frac{1}{n} \sum_{i=1}^{n} L(h(\mathbf{x}_i), y_i)

1.2 核心术语

术语符号说明
特征(Feature)x\mathbf{x}输入变量,xRd\mathbf{x} \in \mathbb{R}^d
标签(Label)yy输出变量(监督学习)
样本(Sample)(xi,yi)(\mathbf{x}_i, y_i)一条训练数据
假设(Hypothesis)h(x)h(\mathbf{x})学习到的映射函数
损失函数L(y^,y)L(\hat{y}, y)单个预测的误差度量
代价函数J(θ)J(\theta)所有样本的平均损失
参数θ\theta模型需要学习的量
超参数需要人为设定的量

2. 学习范式分

2.1 监督学习(Supervised Learning)

带标签的数据中学习输入到输出的映射:

f:XYf: \mathbf{X} \rightarrow Y

输出典型算法应用
离散值SVM、决策树、逻辑回归垃圾邮件识别
回归连续值线性回归、随机森林房价预测

2.2 无监督学习(Unsupervised Learning)

无标签的数据中发现隐含结构:

目标典型算法应用
分组K-Means、DBSCAN客户分群
降维压缩PCA、t-SNE数据可视化
关联规则发现关系Apriori购物篮分析
生成模型学习分布GMM、VAE数据生成

2.3 半监督学习(Semi-Supervised Learning)

利用少量有标签数据和大量无标签数据:

有标签数据: 100条 (标注成本高)
无标签数据: 10000条 (容易获取)

策略:
  1. 自训练(Self-Training):用有标签数据训练,预测无标签数据,高置信度加入训练集
  2. 协同训练(Co-Training):两个分类器互相标注
  3. 图方法:基于数据相似度构建图,标签在图上传播

2.4 强化学习(Reinforcement Learning)

智能体通过与环境交互获得奖励来学习最优策略:

π=argmaxπE[t=0γtrt]\pi^* = \arg\max_{\pi} \mathbb{E}\left[\sum_{t=0}^{\infty} \gamma^t r_t\right]

要素说明
状态 ss环境的当前描述
动作 aa智能体的行为
奖励 rr环境的反馈信号
策略 π\pi状态到动作的映射
折扣因子 γ\gamma未来奖励的衰减系数

3. 机器学习工作流程

3.1 完整流程

业务理解 → 数据收集 → 数据预处理 → 特征工程 → 模型选择 → 模型训练 → 模型评估 → 模型部署
    │          │          │            │          │          │          │          │
    ▼          ▼          ▼            ▼          ▼          ▼          ▼          ▼
 定义目标   获取数据   清洗/转换    选择/构造   算法选择   参数学习   性能度量   在线/离线
           多源融合   缺失值处理   特征选择    超参设定   正则化     交叉验证   A/B测试

3.2 数据预处理

步骤方法说明
缺失值处理均值/中位数/众数填充、删除保证数据完整性
异常值检测3σ原则、IQR方法避免极端值干扰
数据标准化Z-Score:z=xμσz = \frac{x - \mu}{\sigma}消除量纲影响
数据归一化Min-Max:x=xminmaxminx' = \frac{x - \min}{\max - \min}映射到[0,1]
编码One-Hot、Label Encoding处理别变量

3.3 数据集划分

数据集=训练集(6080%)+验证集(1020%)+测试集(1020%)\text{数据集} = \text{训练集}(60\sim80\%) + \text{验证集}(10\sim20\%) + \text{测试集}(10\sim20\%)

  • 训练集:用于模型学习参数
  • 验证集:用于超参数调优和模型选择
  • 测试集:用于最终性能评估(只用一次)

交叉验证:K折交叉验证将数据分为K份,轮流作为验证集:

CV Score=1Ki=1KScorei\text{CV Score} = \frac{1}{K} \sum_{i=1}^{K} \text{Score}_i

4. 偏差-方差权衡

4.1 误差分解

模型的泛化误差可分解为:

泛化误差=偏差2+方差+噪声\text{泛化误差} = \text{偏差}^2 + \text{方差} + \text{噪声}

组成定义说明
偏差(Bias)预测值与真实值的偏离模型拟合能力不足(欠拟合)
方差(Variance)预测值随训练集变化的波动模型对数据过于敏感(过拟合)
噪声(Noise)数据本身的误差不可约减的误差

4.2 欠拟合与过拟合

问题表现原因解决方案
欠拟合训练集和测试集误差都高模型太简单增加特征、使用更复杂模型
过拟合训练集误差低、测试集误差高模型太复杂正则化、增加数据、早停

4.3 正则化

通过在代价函数中添加惩罚项来限制模型复杂度:

L1正则化(Lasso)

JL1(θ)=J(θ)+λj=1dθjJ_{L1}(\theta) = J(\theta) + \lambda \sum_{j=1}^{d} |\theta_j|

  • 产生稀疏解,可用于特征选择
  • 使部分参数恰好为零

L2正则化(Ridge)

JL2(θ)=J(θ)+λj=1dθj2J_{L2}(\theta) = J(\theta) + \lambda \sum_{j=1}^{d} \theta_j^2

  • 使参数趋向较小的值
  • 防止某个参数过大

弹性网络(Elastic Net)

JEN(θ)=J(θ)+λ1θj+λ2θj2J_{EN}(\theta) = J(\theta) + \lambda_1 \sum |\theta_j| + \lambda_2 \sum \theta_j^2

5. 机器学习发展历程

1950s ── 感知机(Rosenblatt)

1960s ── 线性判别分析、K近邻

1970s ── AI寒冬(感知机局限性暴露)

1980s ── 决策树(ID3)、BP算法

1990s ── SVM、随机森林、Boosting

2000s ── 集成学习、图模型

2010s ── 深度学习爆发(CNN、RNN、GAN)

2020s ── 大模型时代(Transformer、GPT、LLaMA)