> 技术文档 > 10万+字超硬核 机器学习 笔记(面试八股)_机器学习面试八股文

10万+字超硬核 机器学习 笔记(面试八股)_机器学习面试八股文


大家好,这里是好评笔记,公主号:Goodnote,专栏文章私信限时Free。
本文用10w+字总结面试中可能用到的机器学习八股和常用算法,包括感知机(Perceptron)、多层感知机(MLP, Multi-Layer Perceptron)、支持向量机(SVM, Support Vector Machine)、K 最近邻(KNN, K-Nearest Neighbors)、朴素贝叶斯(Naive Bayes)、决策树(Decision Tree)、随机森林(Random Forest)、Bagging、Boosting、GBDT、XGBoos、LightGBM、K 均值聚类(K-means Clustering)、高斯混合模型(GMM)、降维算法。正片开始!!!

10万+字超硬核 机器学习 笔记(面试八股)_机器学习面试八股文

在这里插入图片描述

机器学习笔记——损失函数、代价函数和KL散度
机器学习笔记——特征工程、正则化、强化学习
机器学习笔记——30种常见机器学习算法简要汇总
机器学习笔记——感知机、多层感知机(MLP)、支持向量机(SVM)
机器学习笔记——KNN(K-Nearest Neighbors,K 近邻算法)
机器学习笔记——朴素贝叶斯算法
机器学习笔记——决策树
机器学习笔记——集成学习、Bagging(随机森林)、Boosting(AdaBoost、GBDT、XGBoost、LightGBM)、Stacking
机器学习笔记——Boosting中常用算法(GBDT、XGBoost、LightGBM)迭代路径
机器学习笔记——聚类算法(Kmeans、GMM-使用EM优化)
机器学习笔记——降维

文章目录

  • 损失函数
    • 一、回归问题中的损失函数
      • 1. 均方误差(Mean Squared Error, MSE)
      • 2. 平均绝对误差(Mean Absolute Error, MAE)
      • 3. 对数余弦损失(Log-Cosh Loss)
      • 4. Huber 损失(Huber Loss)
      • 5. 平均平方对数误差(Mean Squared Logarithmic Error, MSLE)
      • 总结
    • 二、分类问题中的损失函数
      • 1. 0-1 损失(0-1 Loss)
      • 2. 对数损失(Log Loss)或交叉熵损失(Cross-Entropy Loss)
      • 3. Focal 损失(Focal Loss)
      • 4. Hinge 损失(合页损失)
      • 5. Kullback-Leibler 散度(KL Divergence)
      • 总结
  • 代价函数
      • 1. 回归问题中的代价函数
      • 2. 分类问题中的代价函数
  • 损失函数和代价函数的选择
    • 1. 如何选择适当的损失函数?
    • 2. 损失函数和代价函数的优化
  • KL散度
    • 描述
    • KL散度的特点
      • KL散度的常见应用场景
      • 1. 变分自编码器(Variational Autoencoder, VAE)中的损失函数
      • 2. 分类问题中的交叉熵损失
      • 3. 强化学习中的策略优化
      • 4. 生成模型中的正则化项
      • 5. 多任务学习中的权衡损失
      • 6. T-SNE
      • 总结
  • 特征工程(Fzeature Engineering)
    • 1. 特征提取(Feature Extraction)
      • 手工特征提取(Manual Feature Extraction):
      • 自动特征提取(Automated Feature Extraction):
    • 2. 特征选择(Feature Selection)
      • 1. 过滤法(Filter Methods)
      • 2. 包裹法(Wrapper Methods)
      • 3. 嵌入法(Embedded Methods)
      • 4. 其他方法
      • 5. 选择方法的应用场景
      • 总结
    • 3. 特征构造(Feature Construction)
    • 4. 特征缩放
      • 4.1 归一化(Normalization)
      • 4.2 标准化(Standardization)
      • BN、LN、IN、GN
  • 正则化
  • 强化学习(Reinforcement Learning)
      • 1. Q 学习(Q-Learning)
        • Q 学习原理
        • 应用场景
        • 优缺点
      • 2. 深度 Q 网络(DQN, Deep Q Network)
        • DQN 原理
        • 应用场景
        • 优缺点
  • 常见算法总结
    • 监督学习算法(Supervised Learning)
      • 回归算法(Regression Algorithms)
      • 分类算法(Classification Algorithms)
    • 无监督学习算法(Unsupervised Learning)
      • 聚类算法(Clustering Algorithms)
      • 降维算法(Dimensionality Reduction Algorithms)
        • 线性降维算法(Linear Dimensionality Reduction Algorithms)
        • 非线性降维算法(Nonlinear Dimensionality Reduction Algorithms)
    • 强化学习算法(Reinforcement Learning)
    • 集成学习算法(Ensemble Learning)
    • 算法详细介绍
      • 1. 监督学习算法(Supervised Learning)
        • 1.1 回归算法(Regression Algorithms)
        • 1.2 分类算法(Classification Algorithms)
      • 2. 无监督学习算法(Unsupervised Learning)
        • 2.1 聚类算法(Clustering Algorithms)
        • 2.2 降维算法(Dimensionality Reduction Algorithms)
      • 3. 半监督学习算法(Semi-Supervised Learning)
      • 4. 强化学习算法(Reinforcement Learning)
      • 5. 集成学习算法(Ensemble Learning)
  • 感知机(Perceptron)
    • 模型定义
    • 训练过程
    • 优势和局限性
    • 感知机的扩展
  • 多层感知机(MLP, Multilayer Perceptron)
    • 定义
    • 工作原理
    • 优势和局限性
  • 支持向量机(SVM, Support Vector Machine)
    • 定义
    • 工作原理
    • 核函数(Kernel Function)
      • 工作原理
      • 类型
      • 如何选择
    • 软间隔与硬间隔(Soft Margin & Hard Margin)
    • 损失函数
      • 硬间隔 SVM 损失函数
      • 软间隔 SVM 损失函数(Soft Margin SVM)
      • 合页损失(Hinge Loss)
      • 总结
    • 工作流程
    • SVM多分类
      • 一对多(One-vs-Rest, OvR)
      • 一对一(One-vs-One, OvO)
    • 优势与局限性
  • 对比
    • 总结对比
    • 基本概念
    • 模型结构
    • 学习方式和优化
    • 适用性和能力
    • 优缺点
    • 应用场景
  • KNN
    • 思想
    • 工作原理
    • K 值选择
      • 交叉验证
      • 类似K-means的肘部法
      • 经验选择法/奇数优先
      • 加权 KNN
    • 距离度量
      • 欧氏距离(Euclidean Distance)
      • 曼哈顿距离(Manhattan Distance)
      • 切比雪夫距离(Chebyshev Distance)
      • 闵可夫斯基距离(Minkowski Distance)
      • 余弦相似度(Cosine Similarity)
    • 总结
    • 维度灾难
      • 1. 降维技术
        • 主成分分析(PCA, Principal Component Analysis)
        • 线性判别分析(LDA, Linear Discriminant Analysis)
        • T-SNE(t-Distributed Stochastic Neighbor Embedding)
      • 2. 特征选择(Feature Selection)
        • 过滤法(Filter Methods)
        • 包裹法(Wrapper Methods)
        • 嵌入法(Embedded Methods)
      • 3. 使用合适的距离度量
        • 马氏距离(Mahalanobis Distance)
        • 余弦相似度(Cosine Similarity)
    • 数据结构来加速最近邻搜索
      • KD 树与 Ball 树的比较
      • KD 树(KD-Tree)
        • 工作原理
        • 特点
      • Ball 树(Ball Tree)
        • 工作原理
        • 特点
    • KNN优缺点
  • 贝叶斯
    • 贝叶斯定理(Bayes\' Theorem)
    • 朴素贝叶斯分类器(Naive Bayes Classifier)
      • 计算步骤
      • 优势
      • 局限性
    • 朴素贝叶斯的三种常见变体
      • 1. 高斯朴素贝叶斯(Gaussian Naive Bayes)
      • 2. 多项式朴素贝叶斯(Multinomial Naive Bayes)
      • 3. 伯努利朴素贝叶斯(Bernoulli Naive Bayes)
      • 总结
    • 零概率问题
      • 总结
      • 拉普拉斯平滑(Laplace Smoothing)
      • 加权平滑(Weighted Smoothing)
      • 狄利克雷平滑(Dirichlet Smoothing)
  • 决策树(Decision Tree)
    • 决策树(Decision Tree)概述
    • 基本概念
    • 任务类型
      • 分类任务
      • 回归任务
      • 分类和回归中的差异
    • 决策树算法的具体实现
      • 比较总结
      • ID3(Iterative Dichotomiser 3)
        • 原理
        • 主要特点
        • 信息熵(Entropy)
        • 信息增益(Information Gain)
        • 算法流程
        • 优点
        • 缺点
      • C4.5
        • 原理
        • 主要特点
        • 信息增益比(Information Gain Ratio)
        • 固有信息(Intrinsic Information)
        • 处理连续型变量
        • 处理缺失值
        • 算法流程
        • 优点
        • 缺点
      • CART(Classification and Regression Tree)
        • 原理
        • 主要特点
        • 分类任务基尼指数(Gini Index)
        • 回归任务均方误差(Mean Squared Error, MSE)
        • 分类树算法流程
        • 回归树算法流程
        • 优点
        • 缺点
    • 决策树的过拟合和欠拟合
      • 解决欠拟合
      • 解决过拟合
    • 剪枝(Pruning)
      • 预剪枝(Pre-pruning)
      • 后剪枝(Post-pruning)
        • C4.5 的错误率估计剪枝操作
        • CART 的成本复杂度剪枝操作
      • 总结
  • 集成学习(Ensemble Learning)概述
    • Bagging 和 Boosting 的对比
  • Bagging 算法
    • 什么是 Bagging?
    • Bagging 的主要特点
    • 常用的 Bagging 算法
      • 随机森林(Random Forest)
  • Boosting 算法
    • 什么是 Boosting?
    • Boosting 的主要特点
    • 常用的 Boosting 算法
      • AdaBoost(Adaptive Boosting)
      • GB(Gradient Boosting)
      • GBDT(Gradient Boosting Decision Tree)
        • GB和GBDT的关系
        • 损失函数
          • 回归问题
          • 分类问题
      • XGBoost(Extreme Gradient Boosting)
        • 1. 目标函数及正则化项
          • 损失函数 L ( y i , y ^ i ) L(y_i, \\hat{y}_i) L(yi,y^i)
          • 正则化项 Ω ( f m ) \\Omega(f_m) Ω(fm)
        • 2. 二阶导数优化
        • 3. 分裂增益计算
          • 分裂增益和ID3的信息增益的区别
        • 4. 并行化
      • LightGBM(Light Gradient Boosting Machine)
        • 直方分裂算法(Histogram-based Splitting)
        • 基于叶子生长的策略(Leaf-wise Growth Strategy)
    • GBDT、XGBoost、LightGBM迭代路径
  • Stacking 算法
    • 基本思想和流程
    • 实现步骤
      • 步骤 1:选择基学习器和元学习器
      • 步骤 2:准备第一层输入数据(K 折交叉验证)
      • 步骤 3:训练元学习器
      • 步骤 4:生成最终预测
    • 优点和缺点
      • 优点
      • 缺点
    • 变体
    • 实际实现中的注意事项
    • 总结
  • XGBoost 相对 GBDT 的改进
    • 引入正则化项,防止过拟合
      • 损失函数 L ( y i , y ^ i ) L(y_i, \\hat{y}_i) L(yi,y^i)
      • 正则化项 Ω ( f m ) \\Omega(f_m) Ω(fm)
    • 使用二阶导数信息,加速收敛
      • 一阶导数与二阶导数的区别
      • 二阶导数的优势
        • 1. 更准确的步长选择,避免过大或过小的更新
        • 2. 更快速的收敛
        • 3. 更稳定的模型优化
    • 支持列采样和行采样,提升模型的泛化能力
      • 行采样(Row Subsampling)
      • 列采样(Column Subsampling)
      • 行采样与列采样的结合
      • 优势总结
    • 并行化处理,提升训练速度
      • 结合特征分片与直方分裂的并行化优势
      • LightGBM 和 XGBoost 中直方分裂的差异
    • 支持缺失值处理和稀疏特征优化
    • 提供早停机制和学习率衰减,控制训练过程
  • LightGBM 相较于 XGBoost 的优势
    • 训练速度
      • 内存效率
    • 类别特征支持
    • 扩展性和分布式训练支持
    • 早停机制和自动调参
    • 过拟合控制
      • 总结
  • 聚类
    • K-Means
      • 工作原理
      • 特点
    • K-Medoids
      • 工作原理
      • 特点
    • Mini-Batch K-Means
      • 工作原理
      • 特点
    • K-Means++(重要)
      • 工作原理
      • 特点
    • 总结
    • K的选值
      • 1. 肘部法则(Elbow Method)
      • 2. 平均轮廓系数(Silhouette Score)
      • 3. Gap Statistic(间隙统计量)
      • 4. Davies-Bouldin 指数
      • 5. 信息准则(如 BIC/AIC)
      • 总结
    • 高斯混合模型(GMM, Gaussian Mixture Model)
      • 公式
      • 优势
    • EM算法(Expectation-Maximization Algorithm)
      • 使用EM训练GMM(进行参数估计)
        • EM算法的步骤
      • EM算法的特点
      • GMM 和 EM 的关系
    • GMM 与 K-Means 的比较
    • 其他聚类算法
      • 层次聚类(Hierarchical Clustering)
        • 1. 凝聚式层次聚类(Agglomerative Hierarchical Clustering)
        • 2. 分裂式层次聚类(Divisive Hierarchical Clustering)
        • 优缺点
      • DBSCAN(Density-Based Spatial Clustering of Applications with Noise)
        • 核心概念
        • 参数
        • 工作流程
        • 特点
        • 优缺点
        • 参数选择
  • 降维方法概述
  • 线性降维方法
    • 定义
    • 特点
    • 常见方法
      • PCA(Principal Component Analysis,主成分分析)
        • 原理
        • 步骤
        • 降维后的数据
        • 优点
        • 缺点
        • 应用场景
      • LDA(Linear Discriminant Analysis,线性判别分析)
        • 原理
        • 步骤
        • 降维后的数据
        • 优点
        • 缺点
        • 应用场景
      • SVD(Singular Value Decomposition,奇异值分解)——LORA使用
        • 原理
        • 步骤
        • 降维后的数据
        • 各矩阵含义
        • 优点
        • 缺点
        • 应用场景
      • 比较总结
  • 非线性降维方法
    • 总结:不同核方法的核函数选择策略
    • 定义
    • 特点
    • 常见方法
      • Kernel PCA(核主成分分析, Kernel Principal Component Analysis)
        • 原理
        • 步骤
        • 优点
        • 缺点
        • 应用场景
      • NDA(Nonlinear Discriminant An