当我们谈论分类算法时,我们通常关注它们的核心原理和数学表达式,这有助于深入理解它们如何从输入数据中学习并做出预测。下面详细介绍几种常见的分类算法及其数学表达式。
1. 逻辑回归 (Logistic Regression)
逻辑回归是一种经典的线性分类算法,主要用于解决二分类问题。它假设因变量 ( y ) 的对数几率(log odds)是输入特征 ( \mathbf{x} ) 的线性组合,通过 sigmoid 函数将结果映射到概率值:
[ p(y=1 \mid \mathbf{x}; \mathbf{w}) = \sigma(\mathbf{w} \cdot \mathbf{x} + b) = \frac{1}{1 + e^{-(\mathbf{w} \cdot \mathbf{x} + b)}} ]
其中,
- ( \mathbf{x} ) 是输入特征向量;
- ( \mathbf{w} ) 是权重向量,控制每个特征对结果的影响;
- ( b ) 是偏置项,调整模型的截距;
- ( \sigma(z) ) 是 sigmoid 函数,定义为 ( \sigma(z) = \frac{1}{1 + e^{-z}} ),将线性输出 ( \mathbf{w} \cdot \mathbf{x} + b ) 转换为 (0, 1) 之间的概率。
2. 决策树 (Decision Tree)
决策树是一种基于树结构的分类模型,通过递归地将特征空间划分为多个区域来进行分类。在每个内部节点上,通过某个特征的条件测试将数据集分成两部分,直到达到停止条件(如节点中的样本数小于阈值或达到最大深度)。其预测可以表示为:
[ f(\mathbf{x}) = \text{sign}(\sum_{m=1}^{M} c_m I(\mathbf{x} \in R_m)) ]
其中,
- ( R_m ) 是决策树的每个叶子节点表示的区域;
- ( c_m ) 是叶子节点 ( m ) 的输出(通常是该区域中样本的平均值);
- ( M ) 是决策树的总叶子节点数;
- ( I(\mathbf{x} \in R_m) ) 是指示函数,当 ( \mathbf{x} ) 属于区域 ( R_m ) 时为1,否则为0。
3. 支持向量机 (Support Vector Machine, SVM)
支持向量机是一种用于分类和回归分析的强大工具。在分类问题中,SVM 的目标是找到一个最优的超平面,将不同类别的样本分开,同时最大化间隔。线性 SVM 的数学表达式可以描述为:
[ f(\mathbf{x}) = \text{sign}(\mathbf{w} \cdot \mathbf{x} + b) ]
其中,
- ( \mathbf{w} ) 是法向量,决定了超平面的方向;
- ( b ) 是截距项,决定了超平面与原点之间的距离;
- ( \text{sign}(\cdot) ) 是符号函数,根据输入的线性组合 ( \mathbf{w} \cdot \mathbf{x} + b ) 的符号进行分类。
4. 朴素贝叶斯分类器 (Naive Bayes Classifier)
朴素贝叶斯分类器基于贝叶斯定理和特征条件独立性假设,计算每个类别的后验概率,并选择具有最大后验概率的类别作为预测结果。其基本公式为:
[ P(y \mid \mathbf{x}) = \frac{P(\mathbf{x} \mid y) P(y)}{P(\mathbf{x})} ]
其中,
- ( P(y \mid \mathbf{x}) ) 是给定特征 ( \mathbf{x} ) 下类别 ( y ) 的后验概率;
- ( P(\mathbf{x} \mid y) ) 是在类别 ( y ) 下特征 ( \mathbf{x} ) 的条件概率;
- ( P(y) ) 是类别 ( y ) 的先验概率;
- ( P(\mathbf{x}) ) 是特征 ( \mathbf{x} ) 的边缘概率。
5. 随机森林 (Random Forest)
随机森林是一种集成学习方法,通过构建多棵决策树并综合它们的预测结果来进行分类。每棵树都是独立训练的,通过自助采样和随机特征选择来增加模型的多样性和泛化能力。
6. 梯度提升树 (Gradient Boosting Tree, GBT)
梯度提升树是一种集成学习方法,通过迭代训练决策树来逐步减少损失函数的残差。每棵树的构建依赖于前一棵树的残差,通过负梯度方向更新参数,以逐步优化模型的性能。
这些算法各有其独特之处,适用于不同类型的数据和问题场景。通过理解它们的数学表达式和核心原理,可以更好地选择和应用适合特定任务的分类算法。