关于决策树损失函数来源的理解与推导

在阅读《统计学习方法》5.1.4决策树学习一节过程中,有如下一句话引起博主疑惑:决策树的损失函数通常是正则化的极大似然函数。书上并未给出具体推导,直到5.4决策树的剪枝中,直接给出了正则化的决策树损失函数:C_{\alpha }(T)=\sum_{t=1}^{|T|}N_{t}H_{t}(T)+a|T|。其中|T|代表叶节点个数,N_{t}表示具体某个叶节点的样例数,H_{t}(T)表示叶节点经验熵表示叶节点经验熵。

我们知道正则化的损失函数中前一项代表经验误差,而在概率模型中(决策树模型是一种概率模型),经验误差函数的获得往往通过将极大似然函数取反,即将求极大化为求极小而获得。因此,在概率模型中,极大似然函数与经验误差函数可以认为是相同的概念,那么必然就可以通过经验误差函数来推导出极大似然函数,以此来加深对决策树损失函数的理解。

我相信有相当一部分读者与博主一样,并不理解决策树损失函数的真正意义,表面上来看:将每个叶节点的实例个数与其经验熵的乘积相加,这究竟代表个什么玩意呢?现在,我将利用该损失函数反向推导出极大似然函数,当我们看到极大似然函数时,便可以将损失函数看的透彻。

\sum_{t=1}^{|T|}N_{t}H_{t}(T)=-\sum_{t=1}^{|T|}\sum_{k=1}^{K}N_{t}\frac{N_{tk}}{N_{t}}\log \frac{N_{tk}}{N_{t}}=-\sum_{t=1}^{|T|}\sum_{k=1}^{K} N_{tk}\log \frac{N_{tk}}{N_{t}} =-\log \prod_{t=1}^{|T|}\prod_{k=1}^{K}(\frac{N_{tk}}{N_{t}})^{N_{tk}}

其中N_{tk}表示叶节点N_{t}中类别为k的样本数。K表示样例类别总数。

至此,损失函数被化简为这样,可以看到它与我们所要求的极大似然函数仅一步之遥:将求极小转为求极大,即去掉上式的

负号,我们得到对数极大似然函数:L(T)=\log \prod_{t=1}^{|T|}\prod_{k=1}^{K}(\frac{N_{tk}}{N_{t}})^{N_{tk}},其对应的极大似然函数是:L(T)=\prod_{t=1}^{|T|}\prod_{k=1}^{K}(\frac{N_{tk}}{N_{t}})^{N_{tk}}。至此,决策树模型的极大似然函数推导完毕。其意义作者个人理解为:先对各叶节点之间进行极大似然估计,再对各叶节点内部进行极大似然估计,由此得到决策树模型中的极大似然函数。

以上仅为作者一己之见,如有理解错误欢迎大佬评论指正。

你可能感兴趣的:(关于决策树损失函数来源的理解与推导)