回归算法(三):Softmax回归

本文深入解析Softmax回归,一种用于解决多分类问题的算法。从推导Softmax函数到求解参数w,再到梯度下降法的应用,全面阐述了Softmax回归的工作原理。并讨论了其与逻辑回归的关系及多分类的其他方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

四、Softmax回归

解决多分类问题。

1. 换个思路推导出softmax函数

《回归算法(二):逻辑回归》中提到,P(yi=1|xi)依赖于exp(wxi),用一个参数向量w来推测yi属于1的概率,exp(wxi)大则说明yi属于1的概率大,exp(wxi)小则说明yi属于1的概率小;只不过在二分类问题中,yi属于1的概率小,则yi不属于1,而属于另一类(yi=0)。但在多分类问题中,exp(wxi)小只能说明yi不属于1,但不知道yi属于其他哪一类。所以引入【多个】参数向量w预测该样本属于哪个类的概率。

w1用来预测yi属于1的概率,w2用来预测yi属于2的概率,w3用来预测yi属于3的概率

P∈(0,1),exp() ∈(0,+∞)。因此如何把exp()的值域变成(0,1),且要使得概率之和等于1。如何只是单纯地对每个exp(wjxi)变成sigmoid(wjxi),确实可以解决 “把exp()的值域变成(0,1)”,也能预测多个类;但不能解决概率之和等于1,即可能会出现exp(w1xi)+exp(w2xi)大于1的结果。所以不采取这种方法。而是采用归一化的手段,于是有:

这样就能把exp()的值域变成(0,1),也能预测多个类,同时概率之和等于1,这个就是Softmax函数

 

2. 如何求解w?

利用极大似然法,求得损失函数:(k个类,m个样本)

求导:(j表示类别 j)

对其中一向量w的一个值wa求导:(log(a/b) = loga - logb)

这里先解释其中两步重要求导:

上式是对 w(j)a 求导,若yi=j,则为 x(i)a,否则为0。


 在 k 中总有一个 j 等于 yi,其余 j 不等于 yi 的项就等于0,所以

 

有了这两步的解释,可以继续往下推导

 

3. 如何梯度下降?

 

4. softmax回归和逻辑回归的关系

当类别数目等于2的时候,softmax回归和逻辑回归的关系会是怎样呢?

这里先说明softmax函数的一个特点:参数冗余

这里可以看出,本来是两个参数,但最后可以变成一个参数,这就是参数冗余也就是说,无论有多少个参数,最后都能减少一个参数。同时这个例子也说明了softmax回归在处理二分类问题时就是逻辑回归。 

 

5. 其他多分类的方法:基于逻辑回归二分类

(1)OVR(one vs rest)

比如:ABC三个类(共K个类)

分成3种情况:

  1. A类    其他类(BC)
  2. B类    其他类(AC)
  3. C类    其他类(AB)

训练K个分类器(这个例子是3个),放入样本,哪个得分高就是哪个类

(2)OVO(one vs one)

比如:ABCD四个类(共K个类)

每次只取两类样本来训练一个分类器,则有:

A-B分类器、A-C分类器、A-D分类器、B-C分类器、B-D分类器、C-D分类器

则训练个分类器,放入样本,哪个得分高就是哪个类

 

欢迎转载,转载请标明出处

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值