基础知识
机器学习与深度学习
基本概念
泛化能力 (Generalization Ability)
模型在训练集外的数据上,保持良好性能(如准确率、误差等)的能力
训练误差 是模型在训练数据上的表现,泛化能力是模型对新数据的表现;
决策边界
特征空间中模型预测类别发生变化的位置,将不同类别区分开的边界面
数学对象与计算基础
向量 (Vector)
通常指的是一维数组,也就是固定为一维的
张量 (Tensor)
多维数组的统称,可以看作是标量(0阶张量)、向量(1阶张量)、矩阵(2阶张量)在更高维度上的推广
广播机制
PyTorch和NumPy中允许不同形状的张量在运算中自动对齐维度,小张量会被“自动扩展”成跟大张量一样的形状,从而进行逐元素运算,但这个扩展是虚拟的、不会真的复制数据。满足以下两个规则即可触发:
- 两个张量维度相等
- 其中一个维度为 1
张量创建维度传参方式比较
两种写法效果完全一致,仅参数形式不同:
| 写法 | 说明 |
|---|---|
torch.ones(2, 5, 4) |
直接传入多个维度作为参数 |
torch.ones((2, 5, 4)) |
将维度打包成元组传入 |
矢量化(vectorization)
将逐元素的循环操作(如 for-loop)转化为整块的向量或矩阵运算,以便利用底层硬件(如 GPU、SIMD)的并行计算能力,从而加速程序执行。
模型结构与表达
仿射变换(Affine Transformation)
仿射变换是一种保留点、直线和平行关系的几何变换,对空间中的点进行旋转、缩放、剪切和平移,且保持直线性和平行性,但不一定保持角度或距离。
估计值
当我们的输入包含
向量形式:
:偏置项(bias),有时通过在 开头加一个常数 1 将其统一进向量计算中
全连接层(fully-connected layer)/ 稠密层(dense layer)
线性回归中,每个输入都与每个输出相连。
嵌入模型(Embedding)
指将高维、复杂或非结构化的数据(如文本、图像、语音等)
通过某种映射函数,转换成一个低维且稠密的向量表示(通常是实数向量)。
这种向量表示保留了原始数据的语义或特征信息,使得相似的数据在向量空间中距离较近,
从而便于计算机进行相似度比较、聚类、分类和其他机器学习任务。
阈值单元近似(Threshold Unit Approximation)
早期神经网络中,阈值单元(Threshold Unit)是一种模拟生物神经元“激发/不激发”行为的模型:
其中
该函数是一个阶跃函数(Step Function)连续且不可导,无法用于梯度下降等优化方法。
模型训练与优化
超参数(Hyperparameter)
超参数是用于控制模型结构或训练过程的参数,不会在训练过程中被模型自动学习,需要训练开始前由用户设定,或通过搜索算法选定。
超参数影响训练过程和模型性能,不参与反向传播。
调参(hyperparameter tuning)
选择和优化超参数的过程,目标是找到一组能使模型在验证集上表现最好的超参数组合。
模型性能与泛化
训练误差(training error)
模型在训练数据集上计算得到的误差
泛化误差(generalization error)
模型应用在同样从原始样本的分布中抽取的无限多数据样本时,模型误差的期望。
泛化(generalization)
模型在未见过的新数据上表现良好的能力。
过拟合(overfitting)
模型在训练数据上拟合的比在潜在分布中更接近的现象。
正则化(regularization)
用于对抗过拟合
特征表示与编码
独热编码(one-hot encoding)
将类别变量转换为二进制向量的方式。对于有
消除类别之间的“顺序性”或“大小关系”的假象(如果以索引方式0,1,2…模型会认为是一大类,有着先后顺序,one-hot对象距离都是1)。
线性模型由于把索引当作连续变量计算尤其受影响。
概率与统计基础
最大似然估计(MLE)
对于给定的观测数据希望能从所有的参数中找出能最大概率生成观测数据的参数作为估计结果。
以抛硬币为例,假设正面朝上的概率记为
可能会疑惑这似乎不符合实际概率……这只是基于观测数据的估计,并不一定代表真实的硬币概率。事实上,根据大数定律,最大似然估计的参数会逐渐趋近真实概率,这里只是样本数过少而已。
概率(Probability)和似然性(Likelihood)的区别
| 方面 | 概率(Probability) | 似然性(Likelihood) |
|---|---|---|
| 定义 | 给定参数 |
给定数据 |
| 数学表达 | ||
| 变量角色 |
语言模型与知识系统
大语言模型(Large Language Model)
LLM模型是一种基于深度学习的大规模预训练语言模型,能够理解和生成自然语言文本。
重排序器(Reranker)
对初步检索或生成的候选结果进行重新排序,把更相关、更优质的结果排在前面。
知识库 (Knowledge Base,缩写KB)
一个系统化存储、管理和检索结构化或半结构化知识的集合。
它可以包含事实、规则、概念、实体关系等多种信息形式,旨在支持自动推理、问答和决策等任务。
数据与噪声
噪声(Noise)
噪声指数据或信号中随机存在的扰动或误差,通常不包含有用信息。噪声影响模型的训练效果及泛化能力。
白噪声(White Noise)
在时间序列建模(如 AR、MA、ARIMA)中,序列 ({\epsilon_t})(其中 (\epsilon_t) 表示时间 (t) 时刻的噪声值)被称为白噪声需满足以下条件:
- 零均值:
- 常数且有限的方差:
- 无自相关(不同时间点之间不相关):
这里的“无自相关”意味着不同时间点的噪声值之间不存在线性相关关系,但不一定完全独立。
这表明白噪声是一种纯随机过程,不含任何可预测的结构。
“白噪声”名称由来:
类似于光学中的白光包含所有可见光频率,信号处理中的白噪声在频率域上的功率谱密度是均匀分布的,代表所有频率成分权重相等。时间序列中的白噪声对应频谱平坦,意味着没有周期性或结构,完全不可预测。
在时间序列模型中,白噪声通常被用作理想化的随机扰动项,代表纯随机误差。
深度学习核心概念补充
自相关(Autocorrelation)
自相关是一个序列与其自身滞后版本之间的相似度度量,用于分析时间序列中是否存在周期性或结构。
:滞后阶数 :样本均值 :样本数量
卷积神经网络(Convolutional Neural Network, CNN)
CNN 主要用于处理具有网格结构的数据(如图像),通过卷积操作提取局部特征,并利用权值共享降低参数量。
基本操作包括卷积层、激活函数、池化层等。
- 卷积操作:
设输入为二维矩阵
- 卷积层输出计算公式:
其中:
为输入特征图,尺寸为 (高度×宽度×通道数) 为卷积核,尺寸为 (卷积核高×卷积核宽×输入通道数×输出通道数) 为偏置 为输出特征图,尺寸为 池化操作(以最大池化为例):
其中,
CNN 通过堆叠卷积层和池化层,能够自动学习图像中的多层次特征。
卷积(Convolution)
卷积是一种提取局部区域特征的运算,广泛用于图像、语音、序列等数据中。
一维卷积:
二维卷积(常用于图像):
特点:
- 局部连接
- 参数共享
- 可提取边缘、纹理等局部特征
池化(Pooling)
用于降低空间维度、减少计算量、提高平移不变性。
- 最大池化(Max Pooling): 取窗口内最大值
- 平均池化(Average Pooling): 取窗口内平均值
马尔可夫性质(Markov Property)
马尔可夫性质:未来状态仅与当前状态有关,与过去无关。
循环神经网络(Recurrent Neural Network, RNN)
用于处理序列数据,具有记忆信息的能力。
每个时刻
存在梯度消失/爆炸问题,难以捕捉长距离依赖。
长短期记忆网络(Long Short-Term Memory, LSTM)
通过引入门控机制(遗忘门、输入门、输出门)缓解 RNN 的长依赖问题。
门控循环单元(Gated Recurrent Unit, GRU)
GRU 是 LSTM 的简化版本,合并了遗忘门和输入门。
更新公式:
- 更新门:
- 重置门:
- 候选状态:
$$
\tilde{h}t = \tanh(W_h x_t + U_h (r_t \odot h{t-1}))
$$
- 最终状态:
注意力机制(Attention)
注意力机制允许模型在处理每个输入位置时动态关注不同的上下文部分。
最基础的加性注意力或缩放点积注意力公式如下:
:Query 查询 :Key 键 :Value 值 :Key 的维度(用于缩放)
Transformer
Transformer 架构使用自注意力机制,完全抛弃了循环结构,广泛用于自然语言处理和生成任务。
基本结构:
- 多头注意力层(Multi-head Attention)
- 前馈网络(Feed Forward Network)
- 残差连接(Residual Connection)+ LayerNorm
每个子层的形式:
Transformer 的优势:
- 并行训练
- 捕捉长距离依赖
- 可扩展性强
残差连接(Residual Connection)
为解决深层神经网络训练困难,引入“跳跃连接”结构:
:变换函数(如卷积、注意力等) :输入本身
避免梯度消失,便于训练深层模型,是 ResNet、Transformer 等模型的关键结构。
Dropout
Dropout 是一种正则化技术,训练时以一定概率“丢弃”神经元,防止过拟合。
- 训练时:随机丢弃
- 推理时:使用全部神经元,但乘以缩放因子
批归一化(Batch Normalization)
用于加速训练、提高稳定性,在每一小批次数据上对特征进行标准化:
再线性变换:
:第 个特征的批次均值 :方差 :可学习参数
作用:
- 减少内部协变量偏移(Internal Covariate Shift)
- 允许更高学习率
- 减少对初始化的依赖
激活函数(Activation Function)
用于引入非线性,增强模型表达能力。
- Sigmoid:
- Tanh:
- ReLU:
- Leaky ReLU:
- Softmax(用于多分类):
输出为概率分布,常用于输出层。
位置编码(Positional Encoding)
用于为输入序列引入位置信息,使模型具备顺序感。
常用正余弦编码方式:
$$
\text{PE}{(pos, 2i)} = \sin\left(\frac{pos}{10000^{2i / d{model}}} \right)
$$
$$
\text{PE}{(pos, 2i+1)} = \cos\left(\frac{pos}{10000^{2i / d{model}}} \right)
$$
:位置 :维度编号 :嵌入维度
数学
一般
范数(Norm)
是数学中用来衡量向量“大小”或“长度”的一个函数。本质上是一种数学映射关系,作为一个函数,输入向量,输出非负实数,表示这个向量的大小或长度。
簇
指在数据集中,一组彼此相似度较高且相互之间距离较近的数据点集合。换句话说,簇是一类在某种度量标准下被划分到一起的样本点的集合,它们内部的相似性最大,而与其他簇之间的差异最大。
基数(Cardinality)
指一个集合中元素的数量,
平凡解
指显而易见没有讨论的必要的解,但是为了结果的完整性仍需考虑。
一般用不到这个概念。
线性代数
行列式
标量函数,记作
单位矩阵(Identity Matrix)
主对角线为 1,其余为 0 的方阵,记作
协方差矩阵(Covariance Matrix)
协方差矩阵用来衡量各个特征之间的线性相关性。它是一个
协方差公式(样本协方差):
$$
\text{cov}(X_i, X_j) = \frac{1}{n - 1} \sum_{k=1}^{n} (X_{ik} - \bar{X}i)(X{jk} - \bar{X}_j)
$$
其中:
表示第 个样本在第 个特征上的取值。 表示第 个特征的均值。
性质:
- 如果
,说明两个特征正相关。 - 如果
,说明两个特征负相关。 - 如果
,说明两个特征几乎没有线性相关性,但可能存在非线性关系。
为什么分母是 :(选看,公式能推但有点费劲)
- 当我们用样本数据来估计总体的协方差时,使用
作为分母可以得到无偏估计,让结果更接近真实总体。 - 如果使用的是整个总体数据,分母可以用
。
“无偏”意味着样本方差的期望值应等于总体方差,即样本方差在长期来看既不会系统性偏大也不会偏小。
样本方差通常用分母
统计学关注的是大量独立重复抽样的长期性质。假设从总体反复抽取大量样本,计算每个样本的方差,再取这些方差的平均值,发现如果分母用
这是因为样本数据相对于样本均值的波动“向内收缩”,样本均值是样本内数据的固定参考点,而总体均值是全局固定,导致样本方差计算时缺少一个自由度。
采用分母
数学推导
假设我们有独立同分布的样本:
总体的真实均值是
样本平方差和:
为了和总体均值
把它带回去,展开平方和:
展开平方项得:
因为
接着,注意到:
带入上式,得到:
对上式两边取期望:
由于每个
样本均值的方差是:
所以:
因此,
这就是说,用样本均值计算的平方差和的期望是
这就是为什么样本方差的分母不能用
换句话说:
- 样本均值是基于样本数据计算的,会导致方差计算的波动被低估。
- 用
修正分母,补偿这个系统性偏差,得到更准确的方差估计。
也就是对所有可能的值
正半定矩阵(Positive Semidefinite Matrix)
“正半定”是“正半定矩阵”的简称,满足下面条件
是对称矩阵(即 ,对称方阵), - 对任意非零向量
,都有 。
这表示矩阵
正定矩阵:对所有非零向量
,都有 正半定矩阵:对所有向量
,都有
(允许等于零)
概率论
基本概率论
大数定律(Law of Large Numbers, LLN)
随机变量的平均值在大量重复试验后趋近于期望值
数学表述(弱大数定律)
这意味着,当样本数量
抽样(sampling)
从概率分布中抽取样本的过程
数学期望(Expectation, )
理论观测样本的均值,数学期望
离散型:
数学性质:
连续型:
均值(Sample Mean)
实际观测样本的均值,是具体样本数据的平均数,会随着样本改变而波动。
分布(distribution)
事件的概率分配
多项分布(multinomial distribution)
将概率分配给一些离散选择的分布
Var(Variance,方差)
数据偏离期望的程度
样本空间(sample space)/ 结果空间(outcome space)
表示为一个集合
事件(event)
一组给定样本空间的随机结果,记作
概率(probability)
将集合映射到真实值的函数,满足以下属性
对于任意事件,其概率从不会是负数,
整个样本空间的概率为1,
对于互斥(mutually exclusive)事件,序列中任意一个事件发生的概率等于它们各自发生的概率之和,若
互不相交,则
先验概率
先验概率是基于背景常识或者历史数据的统计得出的预判概率,一般只包含一个变量,例如P(A),P(B)。
联合概率(joint probability)
事件同时发生的概率,两个事件同时发生的概率:
条件概率(conditional probability)
一个事件发生后另一个事件发生的概率,一般情况下
条件概率表示在事件
其中:
表示事件 与事件 同时发生的概率。 是事件 的概率。
后验概率
由果求因,也就是在知道结果的情况下求原因的概率,例如Y事件是X引起的,那么P(X|Y)就是后验概率,也可以说它是事件发生后的反向条件概率。
实际上后验概率就是条件概率,只不过条件概率是由因求果,而后验概率是由果求因。
贝叶斯定理(Bayes’ theorem)
利用条件概率进行反向推断:
边际概率(marginal probability) / 边际分布(marginal distribution)
事件概率求和将所有选择的联合概率聚合在一起
离散型:
连续型:
