一、机器学习模型分类与基础概念
(一)模型分类及原理
机器学习模型主要分为有监督学习、无监督学习和概率模型。有监督学习利用带标签数据训练模型,用于回归和分类任务,如线性回归、逻辑回归(LR)、支持向量机(SVM)等;无监督学习处理无标签数据,旨在发现数据中的内在结构,像聚类和降维算法;概率模型则基于概率理论进行建模和预测,如朴素贝叶斯。
监督学习通过已有输入 - 输出对应关系生成预测函数;非监督学习直接对输入数据建模;半监督学习结合有标签和无标签数据。回归针对连续随机变量预测,分类处理离散随机变量,聚类是基于数据内在规律划分族群。生成模式学习联合概率分布来预测,判别模式直接学习决策函数或条件概率分布。
(二)线性模型详解
- 线性回归:通过线性函数拟合数据,以均方差(MSE)为损失函数,借助梯度下降法求解最优权重。其推导基于误差的正态分布假设,利用最小二乘法和极大似然估计确定参数。线性回归对异常值敏感,适用于自变量与因变量呈线性关系、因变量符合正态分布且数值独立、方差齐性的场景。评估指标有 R Squared、MSE、RMSE、MAE 等 。
- 逻辑回归(LR):虽名称含 “回归”,实则是二分类算法,核心是 Sigmoid 函数,通过极大似然估计构建模型。它速度快、易理解、可快速更新模型,但对数据和场景适应性有限。LR 通过特征组合提升表达能力,解决低维不可分问题可采用特征变换和核函数。评估 LR 模型常用 AUC - ROC 曲线、混淆矩阵和 AIC 指标,处理多分类问题有 OvR 和 OvO 两种策略 。
- Lasso 与 Ridge 回归:Lasso 回归基于 L1 范数,可实现特征选择;Ridge 回归基于 L2 范数,通过惩罚系数解决普通最小二乘法的过拟合问题。二者都用于应对线性回归的过拟合,区别在于正则化方式、特征选择能力、求解方法、鲁棒性和贝叶斯角度的分布假设 。
二、模型验证与评估
(一)过拟合与欠拟合
过拟合指模型在训练集表现好但在测试集表现差,原因包括数据噪声、训练数据不足和模型过度复杂。避免过拟合的方法有提前结束训练、数据集扩增、正则化、Dropout、批量标准化、减小模型复杂度、Bagging、贝叶斯方法和决策树剪枝等。欠拟合则是模型复杂度低或数据集小,导致对数据拟合程度差,可通过增加样本数量和特征个数、扩展特征维度、减少正则化参数和使用集成学习方法改善 。
(二)交叉验证与调优
交叉验证将数据集划分为训练集和测试集,用于评估模型在新数据上的表现并减少过拟合,常见方法有留出法、k 折交叉验证、LOO 留一法和 Bootstrap 方法。k 折交叉验证是将数据集分为 k 个子集,轮流用一个子集作验证集,其余作训练集,最终综合 k 次结果评估模型。选择 k 时需考虑数据集方差,避免训练集和验证集类别分布不均衡。
网格搜索和随机搜索是常用的调参方法。网格搜索在参数列表中穷举搜索最优参数;随机搜索则在参数空间中随机采样搜索,适用于参数空间大的情况。
(三)分类模型评估指标
分类模型评估指标包括准确率、精准率、召回率、F1 分数、P - R 曲线、ROC 曲线和 AUC 等。准确率是预测正确样本占总样本的比例;精准率衡量被预测为正样本中实际为正的概率;召回率表示实际为正样本中被正确预测的比例。P - R 曲线以召回率为横轴、精准率为纵轴,平衡点(BEP)越大模型性能越好。ROC 曲线横轴为假正率(FPR),纵轴为真正率(TPR),TPR 越高、FPR 越低,模型性能越好;AUC 是 ROC 曲线下的面积,取值在 0.5 - 1 之间,越大表示模型预测准确率越高 。
三、正则化与特征工程
(一)正则化技术
正则化通过在损失函数后添加惩罚项,约束模型参数,实现结构风险最小化。L0 范数计算向量中非 0 元素个数,L1 和 L2 范数分别是参数绝对值之和与平方和。L1 范数可使参数稀疏化,便于特征选择;L2 范数通过抑制参数大小防止过拟合。L1 在 0 处不可导,可采用坐标轴下降法、近端梯度下降和交替方向乘子法处理。
数据归一化可加快梯度下降收敛速度、提高模型精度,常见方法有线性归一化、标准差归一化和非线性归一化。线性回归、逻辑回归、KNN、SVM、神经网络等算法通常需要归一化,因为特征值差异大会影响梯度下降效率;树形结构算法(如决策树、随机森林)不依赖变量值大小,无需归一化 。
(二)特征工程要点
特征工程包含数据预处理、特征选择和特征提取。特征选择旨在选取对训练数据有分类能力的特征,降低维度、提高模型泛化能力,方法有过滤法、包装法和嵌入法。特征提取是将高维特征映射到低维空间,PCA 通过选择方差大的方向投影实现降维,LDA 是有监督的降维算法,使投影后数据分类性更好。
处理类别特征是因为多数模型无法直接处理字符串形式输入,常用方法有序号编码、独热编码和二进制编码。组合特征可提高模型拟合复杂关系的能力,可基于决策树寻找组合特征。处理高维组合特征时,可将特征用低维向量表示以减少参数学习量。数据不平衡问题可通过采样、加权、选择合适算法、改变评价标准、使用集成方法和考虑先验分布解决;数据噪声可通过分箱、聚类、回归等方法平滑处理 。
四、经典算法深度剖析
(一)决策树算法
决策树以树结构进行决策,根节点和内部节点是特征判定条件,叶子节点是最终结果,损失函数通常是正则化的极大似然函数。ID3 算法基于信息增益选择特征构建决策树;C4.5 算法用信息增益率选择特征并进行剪枝优化,能处理连续属性离散化;CART 算法使用二元切分法,以 Gini 指数选择分割属性,可用于分类和回归。
决策树构建包括特征选择、生成(含预剪枝)和剪枝(后剪枝)步骤,可通过选择合适训练集、剪枝操作和 K 折交叉验证避免过拟合,增加树深度或使用随机森林改善欠拟合。决策树优点是可读性好、效率高,缺点是易过拟合、对中间值缺失敏感、ID3 算法易偏向数值多的特征 。
(二)KNN 算法
KNN 算法依据训练数据划分特征向量空间,根据未知样本最近的 k 个样本类型确定其类型,涉及 k 值选择、距离度量和分类决策三个关键因素。k 值一般取较小值并通过交叉验证调优,常用距离度量有欧氏距离和曼哈顿距离,前者可用于任意空间,后者受维度限制 。
KNN 算法优点是可用于分类和回归、能处理非线性问题、准确率高、对数据无假设且对离群点不敏感;缺点是计算量大、存在类别不平衡问题、需要大量内存。解决计算量过大问题可采用分组计算,对不平衡样本可使用权值改进 。
(三)SVM 算法
SVM 是二类分类模型,旨在特征空间寻找间隔最大化的分离超平面。线性可分时通过硬间隔最大化学习线性分类器;近似线性可分时引入松弛变量实现软间隔最大化;线性不可分时借助核技巧和软间隔最大化学习非线性分类器。
SVM 引入核函数将原始数据映射到高维空间,使样本线性可分,常用核函数有线性核、高斯核(RBF)等。处理多分类问题有直接法和间接法(一对一、一对多)。SVM 对缺失数据敏感,因为缺失特征会影响特征空间质量。输出预测概率可将 SVM 输出结果经一层 LR 模型得到 。
(四)集成学习算法
集成学习结合多个学习器提升性能,尤其是弱学习器。Boosting 系列算法(如 GBDT、AdaBoost、XGBoost、LightGBM)通过迭代生成弱预测模型并加权累加,可用于回归和分类。GBDT 以 CART 树为基学习器,通过减少上一次残差建立新模型;AdaBoost 通过调整样本权值组合弱分类器;XGBoost 对 GBDT 优化,如采用二阶泰勒展开、加入正则项、支持并行和默认缺失值处理;LightGBM 基于直方图算法,采用 Leaf - wise 叶子生长策略,速度快且内存占用少 。
Bagging 算法(如随机森林)通过 Bootsraping 方法随机抽取训练样本训练多个模型,分类时投票表决,回归时取均值。随机森林具有并行性、泛化能力强、对缺失值不敏感等优点,但在回归问题和处理噪音较大的数据时表现欠佳。Bagging 与 Boosting 的区别体现在样本选择、决策方式、方差偏差控制和权重设置等方面 。
五、无监督学习与概率模型
(一)无监督学习算法
无监督学习中的聚类算法旨在将数据按内在相似性划分类别,K - means 算法是典型代表。它通过迭代将数据点划分到最近的簇,不断更新簇中心,直到收敛。K 值选取可采用 elbow method 或经验选取,初始点选择会影响最终分类结果,该算法不适用于特征强相关或簇密度不一、离群值多的数据。聚类与分类的区别在于聚类事先无标签,而分类目标已知 。
降维算法将多因素问题转化为低维问题,PCA 是无监督降维方法,通过选择方差大的方向投影减少信息损失;SVD 是矩阵分解技术,可用于降维,相比 PCA 更稳定,能获取不同方向主成分;LDA 是有监督降维算法,使投影后数据分类性更好。降维可缓解维度灾难、减少信息损失、便于数据可视化理解 。
(二)概率模型 - 朴素贝叶斯
朴素贝叶斯是基于贝叶斯定理和特征条件独立假设的生成模型,通过计算后验概率进行分类。它假设在已知分类 Y 的条件下,X 的各个特征分量取值相互独立,以此简化计算。朴素贝叶斯分类效率稳定,适合小规模数据和多分类问题,对缺失数据不太敏感,但对输入数据表达形式敏感,当特征相关性较大时分类效果不佳 。
与 LR 相比,朴素贝叶斯是生成模型,学习先验概率和条件概率;LR 是判别模型,直接求条件概率。朴素贝叶斯适用于数据集少的情况,LR 适用于大规模数据集 。