梯度提升分类树损失函数化简过程
损失函数:
-
定义交叉熵为函数 ψ ( y , F ( x ) ) \psi(y,F(x)) ψ(y,F(x))
-
ψ ( y , F ( x ) ) = − y l n ( p ) − ( 1 − y ) l n ( 1 − p ) \psi(y,F(x)) = -yln(p) - (1-y)ln(1-p) ψ(y,F(x))=−yln(p)−(1−y)ln(1−p)
- 其中 p = 1 1 + e x p ( − F ( x ) ) p = \frac{1}{1 + exp(-F(x))} p=1+exp(−F(x))1 ,即sigmoid函数
- F ( x ) F(x) F(x) 表示决策回归树 DecisionTreeRegressor F(x) 表示每一轮决策树的value,即负梯度
推导过程
将 p = 1 1 + e x p ( − F ( x ) ) p = \frac{1}{1 + exp(-F(x))} p=1+exp(−F(x))1 带入上面损失方程
ψ ( y , F ( x ) ) = − y l n ( p ) − ( 1 − y ) l n ( 1 − p ) = − y l n 1 1 + e x p ( − F ( x ) ) − ( 1 − y ) l n ( 1 − 1 1 + e x p ( − F ( x ) ) ) = − y l n ( 1 + e x p ( − F ( x ) ) ) − 1 − ( 1 − y ) l n e x p ( − F ( x ) ) 1 + e x p ( − F ( x ) ) = y l n ( 1 + e x p ( − F ( x ) ) ) − ( 1 − y ) ( − F ( x ) − l n ( 1 + e x p ( − F ( x ) ) ) ) = y l n ( 1 + e x p ( − F ( x ) ) ) + ( 1 − y ) ( F ( x ) + l n ( 1 + e x p ( − F ( x ) ) ) ) = F ( x ) + l n ( 1 + e x p ( − F ( x ) ) ) − y F ( x ) = F ( x ) + l n 1 + e x p ( F ( x ) ) e x p ( F ( x ) ) − y F ( x ) = F ( x ) + l n ( 1 + e x p ( F ( x ) ) ) − F ( x ) − y F ( x ) = − y F ( x ) + l n ( 1 + e x p ( F ( x ) ) ) \begin{aligned}\psi(y,F(x)) & = -yln(p) - (1-y)ln(1-p) \\\\ &=-yln\frac{1}{1 + exp(-F(x))} - (1 - y)ln(1 - \frac{1}{1 + exp(-F(x))}) \\\\ & = -yln(1 + exp(-F(x)))^{-1} - (1-y)ln\frac{exp(-F(x))}{1 + exp(-F(x))}\\\\ & = yln(1 + exp(-F(x))) - (1 - y)(-F(x) - ln(1 + exp(-F(x))))\\\\&=yln(1 + exp(-F(x))) + (1 - y)(F(x) + ln(1 + exp(-F(x))))\\\\&=F(x) + ln(1 + exp(-F(x))) - yF(x)\\\\&= F(x) + ln\frac{1 + exp(F(x))}{exp(F(x))} -yF(x)\\\\&=F(x) + ln(1 + exp(F(x))) - F(x) - yF(x) \\\\&=-yF(x) + ln(1 + exp(F(x)))\end{aligned} ψ(y,F(x))=−yln(p)−(1−y)ln(1−p)=−yln1+exp(−F(x))1−(1−y)ln(1−1+exp(−F(x))1)=−yln(1+exp(−F(x)))−1−(1−y)ln1+exp(−F(x))exp(−F(x))=yln(1+exp(−F(x)))−(1−y)(−F(x)−ln(1+exp(−F(x))))=yln(1+exp(−F(x)))+(1−y)(F(x)+ln(1+exp(−F(x))))=F(x)+ln(1+exp(−F(x)))−yF(x)=F(x)+lnexp(F(x))1+exp(F(x))−yF(x)=F(x)+ln(1+exp(F(x)))−F(x)−yF(x)=−yF(x)+ln(1+exp(F(x)))
结论如下
-
定义梯度提升分类树交叉熵为函数 ψ ( y , F ( x ) ) \psi(y,F(x)) ψ(y,F(x))
-
ψ ( y , F ( x ) ) = − y l n ( p ) − ( 1 − y ) l n ( 1 − p ) \psi(y,F(x)) = -yln(p) - (1-y)ln(1-p) ψ(y,F(x))=−yln(p)−(1−y)ln(1−p)
-
其中 p = 1 1 + e x p ( − F ( x ) ) p = \frac{1}{1 + exp(-F(x))} p=1+exp(−F(x))1 ,即sigmoid函数
-
化简可得:
ψ ( y , F ( x ) ) = − y F ( x ) + l n ( 1 + e x p ( F ( x ) ) ) \psi(y,F(x)) = -yF(x) + ln(1 + exp(F(x))) ψ(y,F(x))=−yF(x)+ln(1+exp(F(x)))
欢迎你加入,深入学习~
代码点亮人生,思维改变世界~