机器学习面试必备:算法、评价指标与特征工程

版权申诉
0 下载量 189 浏览量 更新于2024-11-07 收藏 16.8MB ZIP 举报
资源摘要信息:"机器学习面试复习资源集合" **一、特征工程** 特征工程是机器学习中极为关键的一步,涉及对原始数据进行预处理、转换,以适应算法模型的需求。以下是特征工程中的几个重要知识点: - **特征预处理**: - **标准化(Standardization)**:将特征按比例缩放,使之落入一个小的特定区间,常用方法有Z-score标准化,其公式为\( (X - \mu) / \sigma \),其中\( \mu \)是均值,\( \sigma \)是标准差。 - **归一化(Normalization)**:将特征缩放到0和1之间的值,常用方法包括最小-最大标准化,即\( (X - X_{min}) / (X_{max} - X_{min}) \)。 - **异常特征清洗**:检测并处理数据中的异常值,常见的方法有箱型图、Z分数等。 - **不平衡数据处理**:不平衡数据是指某些类别的样本数远多于其他类别,常用的处理方法包括过采样少数类别、欠采样多数类别或使用合成数据生成技术(如SMOTE)。 - **特征表达**: - **缺失值处理**:对于缺失数据,常见的处理方法包括删除含有缺失值的记录、填充缺失值(如平均值、中位数、众数填充或使用模型预测)。 - **特殊特征处理**:比如时间特征可能需要转换为天数、星期几、工作日/节假日等。 - **离散特征与连续特征**:连续特征离散化有助于处理非线性关系,改善模型性能。 - **模型对缺失值的敏感性**:决策树和基于树的模型对缺失值不敏感,而基于距离的模型(如KNN)和基于梯度的模型(如线性回归)则较为敏感。 - **特征选择**: - **过滤法**:通过统计测试选择特征。 - **包装法**:使用模型作为标准,根据模型性能选择特征子集。 - **嵌入法**:结合模型训练和特征选择的过程。 - **Kaggle代码实战**:Kaggle竞赛平台上的实战经验是面试时的亮点。 **二、算法基础** - **评价指标**: - **PR曲线和F1**:精确率和召回率的综合指标,适用于类别不平衡情况。 - **ROC曲线和AUC**:受试者工作特征曲线及其下面积,用于评估模型的分类性能。 - **AUC与GAUC**:GAUC是加权AUC,考虑到不同样本的重要性。 - **正则项**: - **正则化与数据先验分布的关系**:正则化是一种防止模型过拟合的手段,常见的有L1、L2正则项。 - **L1在0点处不可导问题**:L1正则项导致的不可导问题可以通过坐标轴下降、最小角回归法等算法解决。 - **L1比L2解更稀疏的原因**:L1惩罚项倾向于生成稀疏权重矩阵,有助于特征选择。 - **损失函数**: - **常见损失函数**:包括平方损失、绝对损失、对数损失等。 - **损失函数的选择**:不同模型和问题适合使用不同的损失函数。 - **模型训练**: - **经验误差与泛化误差**:经验误差是模型在训练集上的误差,泛化误差是模型在未见过的数据上的误差。 - **偏差与方差**:偏差是指模型的预测平均值与真实值之间的差异,方差是指模型预测值的波动性。 - **欠拟合与过拟合**:欠拟合是模型对训练数据的拟合程度不够,过拟合则是模型对训练数据过度拟合而泛化能力差。 - **交叉验证**:一种评估模型泛化能力的方法,常见的有K折交叉验证。 - **参数初始化**:深度学习模型的参数初始化对模型训练至关重要,常见的初始化方法包括Lecun初始化、Xavier初始化、He初始化。 - **dropout**:随机丢弃一部分神经元,防止过拟合。 - **Batch Normalization**:批量归一化,用于稳定深层网络的训练。 - **Layer Normalization**:层归一化,适用于RNN等序列模型。 - **Transformer与LN**:Transformer模型通常使用Layer Normalization而非Batch Normalization,因为LN更适合处理序列数据。 - **优化算法**: - **梯度下降法**:最基础的优化算法,通过计算损失函数的梯度来更新参数。 - **牛顿法和拟牛顿法**:是基于二阶导数的优化算法,比一阶导数的梯度下降法收敛速度更快。 - **深度学习优化算法**:针对深度学习提出的一系列优化算法,如Adam、RMSprop等,适应性强,收敛速度快。 以上知识点是机器学习面试中的高频内容,掌握它们对于准备面试至关重要。