逻辑回归和softmax回归的区别

问题描述 投票:0回答:5

我知道逻辑回归用于二元分类,softmax 回归用于多类问题。如果我使用相同的数据训练多个逻辑回归模型并标准化它们的结果以获得多类分类器而不是使用一个 softmax 模型,会有什么区别吗?我认为结果是一样的。我可以说:“所有多类分类器都是二元分类器的级联结果”。 (神经元网络除外)

algorithm machine-learning classification logistic-regression softmax
5个回答
15
投票

呼应其他人已经表达过的内容。

  1. Softmax 回归是 Logistic 回归的推广, 将任意值的“k”维向量总结为“k” 范围 (0, 1) 内的值的维度向量。
  2. 在逻辑回归中,我们假设标签是二进制的(0 或 1)。 然而,Softmax 回归允许处理 类。
  3. 假设函数:
    • LR:
    • Softmax 回归:

参考:http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/


10
投票

您可以将逻辑回归视为二元分类器,softmax 回归是实现多类分类器的一种方法(还有其他方法)。 softmax 回归中的输出层数等于您要预测的类数。

示例:在数字识别的情况下,您有 10 个类别需要预测 [0-9],因此您可以将其视为模型为每个类别输出 10 个概率的情况,而在实践中,我们选择具有最高概率的类别概率作为我们的预测类别。

从上面的例子可以看出,softmax函数的输出等于类的数量。这些输出确实等于每个类别的概率,因此它们的总和为 1。对于代数解释,请访问斯坦福大学网站,该网站对该主题有一个很好而简短的解释。

链接:http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/

区别:上面的链接详细描述了只有2类的softmax与逻辑回归相同。因此可以说主要区别只是命名约定。当我们处理 2 类问题时,我们将其称为逻辑回归;当我们处理跨国(多于 2 类)问题时,我们将其称为 softmax。

注意:值得记住的是,softmax 回归也可以用于神经网络等其他模型。

希望这有帮助。


6
投票

当您将潜在模型输出对

(z1, z2)
转移到
z = z1-z2
并应用逻辑函数时,您可以将逻辑回归与二元 softmax 回归联系起来

softmax(z1, z2) = exp(z1)/(exp(z1) + exp(z2)) = exp(z1 - z2)/(exp(z1-z2) + exp(0)) = exp(z)/(exp(z) + 1) 

2
投票

多个逻辑回归模型和 softmax 输出存在细微差别。

本质上,您可以将大小为 d 的输入映射到单个输出 k 次,或者将大小为 d 的输入映射到 k 输出一次。然而,多重逻辑回归模型令人困惑,并且在实践中表现较差。这是因为大多数库(TensorFlow、Caffe、Theano)都是用低级编译语言实现的,并且经过高度优化。由于管理多个逻辑回归模型可能是在更高级别上处理的,因此应该避免。


0
投票

逻辑回归用于二元分类任务,其中结果变量只有两个可能的类别。 Softmax 回归,也称为多项式逻辑回归,是用于多类分类任务的逻辑回归的扩展,其中结果变量可以有两个以上的类别。逻辑回归计算属于一个类别的概率,而 softmax 回归计算每个类别的概率并使用 softmax 函数对它们进行标准化,确保它们的总和为 1。

© www.soinside.com 2019 - 2024. All rights reserved.