什么是机器学习?

机器学习(Machine Learning, ML) 是人工智能(AI)的一个分支,它让计算机从数据中学习规律,并在没有明确编程的情况下做出预测或决策

传统编程:规则 + 数据 → 结果
机器学习:数据 + 结果 → 规则(模型)

举例:

  • 输入:过去三年的房价与房屋面积数据
  • 输出:房价预测模型
  • 应用:预测未来房子的价格

机器学习的分类

监督学习(Supervised Learning)

  • 有标签的数据
  • 任务:
    • 回归(预测连续值)
    • 分类(预测类别)

无监督学习(Unsupervised Learning)

  • 无标签的数据
  • 任务:
    • 聚类
    • 降维

强化学习(Reinforcement Learning)

  • 模型在环境中试错学习
  • 核心概念:
    • Agent(智能体)
    • Environment(环境)
    • Reward(奖励)
    • Policy(策略)

机器学习流程

  1. 数据收集:CSV、数据库、爬虫、API
  2. 数据预处理:缺失值、异常值、归一化
  3. 特征工程:特征选择、编码、提取
  4. 模型选择:选择算法(线性回归、随机森林等)
  5. 模型训练:用训练集学习
  6. 模型评估:MSE、准确率、F1-score
  7. 模型优化:调参、正则化、集成学习
  8. 部署应用:保存模型并上线

监督学习(Supervised Learning)

监督学习(Supervised Learning)是机器学习中的一种核心方法,它通过已有的标注数据来训练模型,使模型能够对未知数据进行预测或分类。简而言之,监督学习的目标是学习一个从输入到输出的映射关系。

核心概念

  1. 输入(Features)
    指模型用来做预测的特征数据。例如房屋面积、房间数量、地段等。通常用xx表示。

  2. 输出(Labels / Targets)
    指模型需要预测的结果。例如房价、是否会患病、图像所属类别等。通常用yy表示。

  3. 训练数据(Training Data)
    包含已知输入和对应输出的样本,用于训练模型。

  4. 测试数据(Test Data)
    用于评估模型性能的独立样本,不能在训练中使用。

常见类型

  1. 回归(Regression)
    预测连续数值。例如预测房价、股票价格、温度等。

  2. 分类(Classification)
    预测离散类别。例如垃圾邮件识别、图像分类、疾病诊断等。

流程概览

  1. 数据收集与标注。
  2. 特征工程(数据清洗、特征选择与转换)。
  3. 模型训练(利用训练数据拟合模型)。
  4. 模型评估(用测试数据计算准确率、均方误差等指标)。
  5. 部署与预测(将训练好的模型应用于新数据)。

特点

  • 依赖高质量标注数据
  • 模型输出是已知类别或数值
  • 对新数据的预测依赖于训练过程中学到的映射关系。

系列文章所有符号介绍

数据与特征

符号类型含义维度 / 备注
x(i)x^{(i)}标量 / 向量ii 个样本的特征x(i){R,n=1Rn,n>1\displaystyle x^{(i)} \in \begin{cases} \mathbb{R}, & n=1 \\ \mathbb{R}^n, & n>1 \end{cases}
xj(i)x_j^{(i)}标量ii 个样本的第 jj 个特征分量j=1,,nj = 1, \dots, n
XX矩阵 / 张量样本特征矩阵或高阶输入XRm×nX \in \mathbb{R}^{m \times n},多维输入可扩展到 XRm×H×W×CX \in \mathbb{R}^{m \times H \times W \times C}
D\mathcal{D}集合数据集D={(x(i),y(i))}i=1m\mathcal{D} = \{(x^{(i)}, y^{(i)})\}_{i=1}^{m}
X\mathcal{X}集合特征空间限定 f(x)f(x) 可接受的输入

标签与预测

符号类型含义维度 / 备注
y(i)y^{(i)}标量 / 向量ii 个样本的真实标签单输出标量,多输出向量 y(i)Rcy^{(i)} \in \mathbb{R}^c
yj(i)y_j^{(i)}标量ii 个样本的第 jj 个输出分量j=1,,cj = 1, \dots, c
YY矩阵样本集合真实标签YRm×cY \in \mathbb{R}^{m \times c}
y^(i)\hat{y}^{(i)}标量 / 向量ii 个样本预测值y^(i)=f(x(i))\hat{y}^{(i)} = f(x^{(i)})
y^j(i)\hat{y}_j^{(i)}标量ii 个样本的第 jj 个预测分量对应 yj(i)y_j^{(i)}
Y^\hat{Y}矩阵样本集合预测值Y^Rm×c\hat{Y} \in \mathbb{R}^{m \times c}
f(x)f(x)函数 / 预测值预测函数或预测值xXx \in \mathcal{X} 时表示预测值 y^\hat{y},输出标量/向量依任务而定
f(X)f(X)函数 / 预测值批量预测函数输出输出 Y^\hat{Y}

模型参数

符号类型含义维度 / 备注
ww向量权重向量wRnw \in \mathbb{R}^n
wjw_j标量jj 个特征权重xjx_j 对应
bb标量 / 向量偏置单输出标量,多输出 bRcb \in \mathbb{R}^c
θ\theta向量 / 参数集所有模型参数可包含 w,bw, b 或深度网络权重
θ^\hat{\theta}向量参数估计MLE / MAP 得到的值

激活函数与神经网络

符号类型含义维度 / 备注
zz标量 / 向量神经元线性组合输入z=wTx+bz = w^T x + b
aa向量激活值 / 神经元输出a=ϕ(z)a = \phi(z)
ϕ(z)\phi(z)函数激活函数ReLU, Sigmoid, tanh 等
σ(z)\sigma(z)函数Sigmoid 激活σ(z)=1/(1+ez)\sigma(z) = 1/(1+e^{-z})
Z[l]Z^{[l]}矩阵ll 层线性组合n[l]×mn^{[l]} \times m
A[l]A^{[l]}矩阵ll 层激活输出n[l]×mn^{[l]} \times m

损失与优化

符号类型含义维度 / 备注
(y^(i),y(i))\ell(\hat{y}^{(i)}, y^{(i)})标量单样本损失函数可为 MSE, Cross-Entropy 等
L(θ)\mathcal{L}(\theta)标量总损失函数L(θ)=1mi=1m(y^(i),y(i))+R(θ)\mathcal{L}(\theta) = \frac{1}{m} \sum_{i=1}^m \ell(\hat{y}^{(i)}, y^{(i)}) + R(\theta)
θL\nabla_\theta \mathcal{L}向量损失梯度用于梯度下降
η\eta标量学习率控制更新步长
ϵ\epsilon标量随机噪声 / 残差回归残差常用

正则化

符号类型含义
λ\lambda标量正则化系数
w22|w|_2^2标量L2 正则(Ridge / 权重衰减)
w1|w|_1标量L1 正则(Lasso / 稀疏模型)

概率与统计

符号类型含义
$p(yx)$概率
E[]\mathbb{E}[\cdot]运算符期望
Var[]\text{Var}[\cdot]运算符方差
I[]\mathbb{I}[\cdot]函数指示函数,I[condition]=1\mathbb{I}[condition] = 1 if True else 0

批量与张量(深度学习常用)

符号类型含义维度 / 备注
XbatchX_{batch}矩阵 / 张量批量输入XbatchRmbatch×nX_{batch} \in \mathbb{R}^{m_{batch} \times n}
YbatchY_{batch}矩阵批量标签YbatchRmbatch×cY_{batch} \in \mathbb{R}^{m_{batch} \times c}
W[l]W^{[l]}矩阵ll 层权重矩阵n[l]×n[l1]n^{[l]} \times n^{[l-1]}
B[l]B^{[l]}向量ll 层偏置n[l]×1n^{[l]} \times 1

线性回归(Linear Regression)模型简介

线性回归是最经典、最基础的回归方法之一,用于预测连续数值型目标。它假设目标变量与一个或多个特征之间存在线性关系

通俗图解

假设我们需要根据房屋距离市中心距离来预测每平米房价,我们前期已经获取了部分数据后使用最小二乘法得到如图: