softmax和logistic回归的区别和联系

本文探讨了softmax回归与logistic回归的区别和联系。softmax是logistic回归的扩展,适用于多分类问题,输出各类别的概率,而logistic回归主要解决二分类问题,仅判断属于某类的概率。详细内容包括两种方法的数学表达式和应用场景。
AI助手已提取文章相关产品:

   首先先说结论,两者的主要不同体现在(1)softmax用来解决多分类问题,lr解决二分类问题(2)softmax输出每一类的概率值,并确定概率最大的类是正确的,lr只区别是还是不是。事实上softmax是lr的一般情况。下面具体来看。

1.Logistic回归

   一般线性分类器的是通过输入一系列的样本数据,学习一组权重系数 w0 w 0 , w1 w 1 wn w n 来进行分类,即:

x=w0+w1x1+...+wnxn x = w 0 + w 1 x 1 + . . . + w n x n

这里 x1 x 1 …. xn x n 是指每个样本的n个特征。
   Logistic回归引入了sigmoid函数来进行学习,如下所示:
f(x)=11+ex f ( x ) = 1 1 + e − x

   这里的x和上面的表示是一样的,总之要通过这个sigmoid函数来学习这些系数。很显然f(x)的范围是在0到1之间的,令输出的值大小为y。则有
P(y=1|x,w)=f(x),P(y=0|x,w)=1f(x) P ( y = 1 | x , w ) = f ( x ) , P ( y = 0 | x , w ) = 1 − f ( x )

我们定义一件事发生概率和不发生概率的比值为一件事发生的几率,即:
logP1P=log(P(y=1|x,w)P(y=0|x,w))=Σnwixi l o g P 1 − P = l o g ( P ( y = 1 | x , w ) P ( y = 0 | x , w ) ) = Σ n w i x i

可以看出,输出类别1对数几率是x的线性函数。
   学习的过程就是训练数据求出最优参数 wi w i 使得预测尽可能准确。由于预测的是P(y|x,w),所以使用极大似然函数估计时如下:
L(w)=i=1nP(yi|xi,w)=i=1nf(xi)yi(1f(xi)1yi) L ( w ) = ∏ i = 1 n P ( y i | x i , w ) = ∏ i = 1 n f ( x i ) y i ( 1 − f ( x i ) 1 − y i )

对上式求对数,得:
l(w)=logL(w)=logi=1nf(xi)yi(1f(xi))1yi=Σni=1yilogf(xi)+(1yi)log(1f(xi)) l ( w ) = l o g L ( w ) = l o g ∏ i = 1 n f ( x i ) y i ( 1 − f ( x i ) ) 1 − y i = Σ i = 1 n y i l o g f ( x i ) + ( 1 − y i ) l o g ( 1 − f ( x i ) )

最小化该式就可以求解出w,求解过程略(一般使用梯度下降法),进行判别时,计算P(y|x,w),如果大于0.5,预测类别为1,否则则为0。

2.Softmax回归

   简单的来说,softmax用来分类时P(y|x,w)中y可以为1,2,..k,即可以对k类数据进行分类,不局限于2类。所以各类的分类表示如下:

P(y=1|x)=ew1xΣki=1ewix P ( y = 1 | x ) = e w 1 x Σ i = 1 k e w i x

……
P(y=k|x)=ewkxΣki=1ewix P ( y = k | x ) = e w k x Σ i = 1 k e w i x

参考Logistic损失函数建立的形式,这里同样采用了对数损失函数,表达如下:
J(w)=1k(Σni=1Σkt=11[yi=t]logwtxiΣkm=1wmxi) J ( w ) = − 1 k ( Σ i = 1 n Σ t = 1 k 1 [ y i = t ] l o g w t x i Σ m = 1 k w m x i )

其中, 1[yi=t] 1 [ y i = t ] 是指示函数,若 yi=t y i = t 为真,否则为0。
   综上可以看出,当类别数 k = 2 时,softmax 回归退化为 logistic 回归。这表明 softmax 回归是 logistic 回归的一般形式。

参考:
1.https://www.zhihu.com/question/26855978
2.http://www.cnblogs.com/guyj/p/3800519.html
3.https://blog.csdn.net/zhangliyao22/article/details/48379291

您可能感兴趣的与本文相关内容

### 回答1: softmax回归logistic回归都是常见的分类算法。 其中,logistic回归是一种二分类算法,用于将输入数据分为两个类别。它通过sigmoid函数将输入数据映射到1之间的概率值,然后根据阈值将其分类为正类或负类。 而softmax回归是一种多分类算法,用于将输入数据分为多个类别。它通过softmax函数将输入数据映射到每个类别的概率值,然后将概率最大的类别作为分类结果。 两种算法都是基于概率模型的分类方法,但softmax回归适用于多分类问题,而logistic回归适用于二分类问题。 ### 回答2: softmax回归logistic回归都是分类算法,它们都属于广义线性模型的范畴,但softmax回归logistic回归的一种扩展。 Logistic回归是基于逻辑斯蒂函数的分类算法,该函数能够将输入的连续值通过sigmoid函数映射到0-1的概率值,因此logistic回归适用于二分类问题。由于sigmoid函数的取值范围是0-1,它可以被理解为是将输入“压缩”到了可接受的范围内,并且逻辑斯蒂函数求导简单。因此,logistic回归在机器学习中广泛应用于二分类问题。 而softmax回归logistic回归的多类别版本,也称为多项式逻辑斯蒂回归。在softmax回归中,将输入的样本特征通过softmax函数进行变换得到0-1之间的概率值,这些概率值加为1。因此,softmax回归适用于多分类问题。 softmax回归相对于logistic回归的优越之处在于,对于多分类问题,softmax回归可以更好地处理标签互斥的问题,可以将多个二分类问题转化为单个多分类问题。在神经网络中,softmax回归常常用于输出层的分类问题。 在实际应用中,softmax回归logistic回归可以被当做常规分类算法中的基础理论。它们不仅仅被用于机器学习领域,还被广泛地用于自然语言处理、推荐系统、图像分类等领域。 ### 回答3: softmax回归logistic回归都是用于分类问题的监督学习算法。两者基于的核心思想都是使用线性模型进行分类,然后通过激活函数将输出映射到概率空间,最终输出对类别的预测概率。下面将分别介绍两种方法。 1. Logistic回归 Logistic回归又叫逻辑回归,它是一种用于二分类问题的线性模型。在logistic回归中,使用sigmoid函数作为激活函数将线性模型的输出转换成一个0到1之间的概率值。sigmoid函数为: $$sigmoid(z)=\frac{1}{1+e^{-z}}$$ 其中,$z=w^Tx+b$,$w$$b$分别为模型参数,$x$为输入。logistic回归的目标是最大化似然函数,即使得预测的概率与实际标签之间的差异最小。损失函数为: $$J(w,b)=\frac{1}{m}\sum_{i=1}^{m}[-y^{(i)}log(\hat{y}^{(i)})-(1-y^{(i)})log(1-\hat{y}^{(i)})]$$ 其中,$m$为数据集大小,$y^{(i)}$为实际的类别标签,$\hat{y}^{(i)}$为预测的类别概率。 2. Softmax回归 Softmax回归又叫多分类逻辑回归,用于多分类问题。softmax回归将线性模型的输出$z$映射到$K$个类别的概率,并且不同类别间的概率是互斥的。softmax函数为: $$softmax(z_i)=\frac{e^{z_i}}{\sum_{j=1}^{K}e^{z_j}}$$ 其中,$K$为类别数,$z_i=w_i^Tx+b_i$,$w_i$$b_i$分别为第$i$类别的模型参数。softmax回归的目标是最大化似然函数,损失函数为: $$J(w_{1...K},b_{1...K})=-\frac{1}{m}\sum_{i=1}^{m}\sum_{j=1}^{K}1(y^{(i)}=j)log\frac{e^{w_j^Tx^{(i)}+b_j}}{\sum_{k=1}^{K}e^{w_k^Tx^{(i)}+b_k}}$$ 其中,$m$为数据集大小,$y^{(i)}$为样本$i$的类别标签。 总之,softmax回归logistic回归都是监督学习算法,利用线性模型加激活函数将输入映射到概率空间中进行分类预测。softmax回归适用于多分类问题,而logistic回归适用于二分类问题。在实际应用中,两种方法都是常见的分类算法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值