Softmax Regression 算法简介

Softmax Regression 算法推导

概述

对于一个简单的二分类问题,一般采用逻辑回归算法进行处理,但是在实际应用中会遇到很多多分类问题,此时逻辑回归就没有办法很适用了。下面介绍基于逻辑回归延伸出的Softmax Regression 算法,该算法可以有效处理简单的多分类问题。

模型介绍

Softmax Regression 算法是基于最大熵模型推导出来的。最大熵的原理认为,在所有可能的概率模型中,熵最大的模型就是最好的模型。假设离散随机变量X的概率分布是P(X),那么它的熵就可以表示为:
H ( P ) = − ∑ x p ( x ) l o g p ( x ) H(P)=-\sum_xp(x)logp(x) H(P)=xp(x)logp(x)
基于这个假设经过一系列地推导得到概率模型函数:
p ( y ( i ) = j ∣ X ( i ) ; W ) = e x p ( W j T X ( i ) ) ∑ k l = 1 e x p ( W l T X ( i ) ) p(y^{(i)}=j|X^{(i)};W)=\frac{exp(W^T_jX^{(i)})}{\sum_k^{l=1}exp(W^T_lX^{(i)})} p(y(i)=jX(i);W)=kl=1exp(WlTX(i))exp(WjTX(i))

代价函数介绍

类似逻辑回归,Softmax Regression 的代价函数可以表示为交叉损失函数:
J ( W ) = − 1 m [ ∑ i = 1 m ∑ j = 1 k I ( y i = j ) l o g e x p ( W j T X ( i ) ) ∑ k l = 1 e x p ( W l T X ( i ) ) ] J(W)=-\frac{1}{m}\left[ \sum_{i=1}^m \sum_{j=1}^kI(y^{i}=j)log\frac{exp(W^T_jX^{(i)})}{\sum_k^{l=1}exp(W^T_lX^{(i)})}\right] J(W)=m1[i=1mj=1kI(yi=j)logkl=1exp(WlTX(i))exp(WjTX(i))]
其中 I ( y i = j ) I(y^i=j) I(yi=j)为标记函数,判断正确为1,判断错误为0。
有了代价函数就可以采用梯度下降法进行求解了。

总结

Softmax Regression是逻辑回归在多分类问题上的推广,有和逻辑回归类型的性质。此外Softmax函数也是神经网络中常有的激活函数。
内容参考了《Python 机器学习算法》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值