回归
线性回归的四个假设
- 线性关系:自变量 x 和因变量 y 之间存在线性关系
- 独立性:残差是独立的,特别是时间序列数据中连续残差之间没有相关性
- 同方差性:残差在 x 的每个水平上都有恒定的方差
- 正态性:模型的残差呈正态分布
误差和残差
误差是观察值与真实值之间的差;残差是观察值与模型估计值之间的差。
Regression coefficients 回归系数
在回归方程中表示自变量 x 对因变量 y 影响大小的参数。回归系数越大,表示 x 对 y 的影响越大。
最小二乘法与最大似然估计
为什么叫最小二乘法?因为是最小化预测值与观察值之间平方和的误差。
在线性回归中,若残差服从正态分布,则最小二乘法等价于极大似然估计。
最小二乘是最大似然在高斯误差假设下的特殊形式。
线性回归解决非线性问题
- 多项式展开,在自变量 x_1, x_2 等的基础上构建新的自变量组合,比如 x_1^2、x_1 \times x_2 等
- 使用局部加权线性回归 (LOESS) 拟合非线性数据
K-means 聚类 Clustering
常用的基于欧几里得距离的聚类算法,认为两个目标的距离越近,相似度越大。
Pros:
- 高效可伸缩
- 收敛速度快
- 原理通俗易懂,可解释性强
Cons:
- 对异常值敏感
- 需要预先指定簇数 K,且假设簇近似球形
- 收敛到局部最优(可对每个 K 多次运行,选择簇内距离最小的结果)
- 对高维数据效果可能下降
K-means 的收敛性
每次迭代簇内距离平方和都会单调下降,且该目标函数有下界(为 0),因此算法必然收敛,但不保证找到全局最优。
EM 算法
EM (Expectation-Maximization) 算法也称期望最大化算法。每一次迭代分两步:
- E 步 (Expectation):计算每个数据点属于每个簇的概率
- M 步 (Maximization):根据概率重新估计各分布的参数(如均值、协方差、混合系数)
例如班里有 50 男、50 女,身高各自服从正态分布,混合在一起且性别未知时,可先假设男女各自的分布参数,据此推断个体归属,再根据归属重新估计参数,不断迭代直至收敛。
GMM 高斯混合模型
Gaussian Mixture Model 假设数据由 K 个高斯分布的加权混合生成,形式为多个高斯分布的加权累加,是一种概率聚类模型。
GMM 和 K-means
K-means 使用硬分类,每个点只属于一个簇;GMM 使用软分类,计算每个点属于各簇的概率。
GMM 同时估计簇中心、协方差和混合权重;K-means 只估计中心,且隐含假设各簇方差相同。
DecisionTree 决策树
回归树和分类树
分类树针对离散型目标变量,通过二叉树将数据分割为离散类别。回归树针对连续型目标变量,通过选取最优分割特征及其阈值,使数据按大于或小于该值进行分裂,最终生成回归树。
决策树避免 overfitting
如果不加限制,决策树可以拟合所有训练样本使训练准确率达到 100%,但这意味着完全过拟合,不具有泛化能力。
常见手段:控制树的深度、叶子节点数量(控制模型复杂度)、正则化、剪枝。
决策树的正则化
- 预剪枝:在划分前评估当前分裂是否提升泛化能力(可结合验证集),若不提升则停止划分,将当前节点标记为叶节点
- 后剪枝:先生成完整树,再自底向上考察非叶节点,若将该子树替换为叶节点能提升泛化能力,则进行剪枝
Ensemble Learning 集成学习
Bagging
采用有放回抽样从原始样本中抽取多个子集,分别训练基学习器后投票或平均。
随机森林 (Random Forest) 属于 Bagging。
Boosting
串行训练多个弱学习器,每轮增大前一轮分错样本的权重,使后续学习器更关注难分类样本,最终加权组合。
Stacking
先训练多个不同的基模型,再以各基模型的输出作为输入,训练一个元学习器得到最终预测。
Bagging 与 Boosting
二者都采用采样-学习-组合的思路,但:
- Bagging 中各训练集互不相关,可并行;Boosting 每轮依赖上一轮结果,不可并行
- Bagging 中基学习器平等投票;Boosting 中基学习器加权组合
GBDT (Gradient Boost Decision Tree) 和 Random Forest
GBDT 每一轮在负梯度(残差)方向上拟合一棵新树,逐步减小损失。
Random Forest 的预测是多棵决策树的均值,若各树独立同分布,方差约为单棵树的 \frac{1}{n}。
Random Forest
RF 的预测输出值是多棵 DT 的均值,因此方差也会相应降低。
Generative Model 与 Discriminative Model
生成模型
以统计学和 Bayes 理论为基础,建模 P(X, Y) 或 P(X \mid Y):
- Naive Bayes 分类模型
- 混合高斯模型 (GMM)
判别模型
直接建模 P(Y \mid X) 或学习决策边界:
- 感知机(线性分类模型)
- 决策树
- SVM
- Logistic Regression
- Boosting
- CNN
LDA 和 QDA
LDA (Linear Discriminant Analysis) 和 QDA (Quadratic Discriminant Analysis) 是基于 Bayes 的生成式分类算法,分别假设各类共享协方差矩阵和使用各自协方差矩阵。
其它问题
Logistic Regression 和 SVM 的差别
NOTE:逻辑回归不是回归,是做分类,只是借用了回归的建模形式。
联系:
- LR 和 SVM 都可处理分类问题,一般用于线性二分类(扩展后可处理多分类)
- 两者都可加入 L1、L2 等正则化,结果往往较为接近
区别:
- LR 输出概率,SVM 关注最大间隔,不直接输出概率
- LR 是参数模型,SVM 是非参数模型(依赖支持向量)
- SVM 通过核函数可方便地处理非线性问题
SVM 如何引入非线性
支持向量机的核心思想是最大化数据点与决策边界之间的距离 (Margin)。通过核技巧 (Kernel Trick),将数据隐式映射到高维空间,使原本线性不可分的数据变为线性可分。
PCA
是一种高维特征数据的降维预处理方法:
- 从原始空间中顺序地找一组相互正交的坐标轴
- 第一个新坐标轴选取原始数据中方差最大的方向
- 第二个新坐标轴在与第一个正交的子空间中选取方差最大的方向
- 后续坐标轴在与前面所有轴正交的子空间中依次选取方差最大的方向
大部分方差集中在前几个主成分上,后面主成分的方差可忽略不计。
Kernel Method 核方法
动机在于解决分类任务中线性不可分的问题。
在高维空间中,许多原本低维线性不可分的数据可以变为线性可分。核方法通过核函数 K(x, x') = \phi(x)^\top \phi(x') 隐式完成两件事:
- 将数据映射到高维空间
- 避免显式计算高维映射,直接求内积
浅入浅出核方法 (Kernel Method) - 知乎 (zhihu.com)
Kernel 的类型
- 线性核 (Linear Kernel)
- 多项式核 (Polynomial Kernel)
- 高斯核 / RBF 核 (Gaussian Kernel)
- 拉普拉斯核 (Laplace Kernel)
- Sigmoid 核 (Sigmoid Kernel)
- 以及上述 Kernel 的线性组合
SVM 分类器如何输出预测实例的概率值
SVM 本身输出的是决策函数值而非概率。常用 Platt Scaling:在 SVM 输出上训练一个 Sigmoid 函数 P(y=1 \mid f) = \frac{1}{1 + \exp(Af + B)},将距离映射为概率。
机器学习如何处理不平衡数据
- 重采样:过采样少数类或欠采样多数类,改变原始数据分布
- 代价敏感学习:赋予少数类更高的误分类代价或样本权重
高维数据的问题
- 密度估计困难
- 维度灾难:特征数增加意味着分类所需样本数量指数级增长
高维数据的解决
- PCA 等降维方法
- 特征选择
- 正则化
Missing Data 如何处理
- 均值 / 中位数 / 众数填充
- 直接删除含缺失值的样本或特征
- 基于模型的插补(如 KNN 插补)
Feature Selection 特征选择
- Filter (过滤法):按发散性或相关性评分,设定阈值或特征数筛选
- Pearson 相关系数
- 卡方检验
- 距离相关系数
- Wrapper (包装法):以模型预测效果为目标,迭代选择或排除特征
- 贪婪搜索算法
- 正向选择
- 后向选择
- Embedded (嵌入法):在模型训练过程中完成特征选择,如 Lasso、决策树特征重要性
评论