转载自 https://blog.csdn.net/program_developer/article/details/103330758

目录:

  1. GBDT多分类算法
    1.1 Softmax回归的对数损失函数
    1.2 GBDT多分类原理
  2. GBDT多分类算法实例
  3. 手撕GBDT多分类算法
    3.1 用Python3实现GBDT多分类算法
    3.2 用sklearn实现GBDT多分类算法
  4. 总结
  5. Reference

本文的主要内容概览:
深入理解GBDT多分类

1. GBDT多分类算法

1.1 Softmax回归的对数损失函数

当使用逻辑回归处理多标签的分类问题时,如果一个样本只对应于一个标签,我们可以假设每个样本属于不同标签的概率服从于几何分布,使用多项逻辑回归(Softmax Regression)来进行分类:
P(Y=yix)=hθ(x)P(Y=1x;θ)P(Y=2x;θ)...P(Y=kx;θ)=1kj=1eθTjxeθT1xeθT2x...eθTkxP(Y=yix)=hθ(x)[P(Y=1x;θ)P(Y=2x;θ)...P(Y=kx;θ)]=1j=1keθjTx[eθ1Txeθ2Tx...eθkTx]P(Y=yix)=hθ(x)[P(Y=1x;θ)P(Y=2x;θ)...P(Y=kx;θ)]=1j=1keθjTx[eθ1Txeθ2Tx...eθkTx]P(Y=yi∣x)=hθ(x)⎡⎣⎢⎢⎢⎢⎢⎢⎢P(Y=1∣x;θ)P(Y=2∣x;θ)...P(Y=k∣x;θ)⎤⎦⎥⎥⎥⎥⎥⎥⎥=1∑kj=1eθTjx⎡⎣⎢⎢⎢⎢⎢⎢⎢eθT1xeθT2x...eθTkx⎤⎦⎥⎥⎥⎥⎥⎥⎥P(Y=yi∣x)=hθ(x)[P(Y=1∣x;θ)P(Y=2∣x;θ)...P(Y=k∣x;θ)]=1∑j=1keθjTx[eθ1Txeθ2Tx...eθkTx] \begin{aligned} P(Y=y_{i}|x) &= h_{\theta}(x) \begin{bmatrix} P(Y=1|x;\theta )\\ P(Y=2|x;\theta) \\ . \\ . \\ . \\ P(Y=k|x;\theta) \end{bmatrix} \\ &=\frac{1}{\sum_{j=1}^{k}{e^{\theta_{j}^{T}x}}} \begin{bmatrix} e^{\theta^{T}_{1}x} \\ e^{\theta^{T}_{2}x} \\ . \\ . \\ . \\ e^{\theta^{T}_{k}x } \end{bmatrix} \end{aligned}

相关文章: