逻辑回归:多分类的一对多方法

Logistic regression: one-vs-all method for multi classification

我是机器学习的新手。当我了解 Logistic 回归时,使用 one-vs-all (one-vs-rest) 方法进行 multiclassification: 在逻辑回归中,假设函数试图估计正例的概率class。 假设我们有3个class,那么每个class,我们应该预测假设函数h(x)

h1(x)=P(y=1|x)
h2(x)=P(y=2|x)
h3(x)=P(y=3|x)

可是,三个概率之和不等于1? 我 "feel" 它等于 1,但我不明白为什么不等于。 有人可以解释为什么吗?

您的结果正确,h1(x)h2(x)h3(x) 的总和不应等于 1。

当你执行一对多 class化时,那么对于每个 class(例如,class 1)你有两个概率 p(y=1|x)p(y!=1|x) 总和为 1:

p(y=1|x) + p(y!=1|x) = 1.

但是,由于你的一对多class化验是独立的,那么

p(y!=1|x) != p(y=2|x) + p(y=3|x) (at least not necessarily).

也许,举个例子更容易理解:

  • 第一个 classifier 说 p(y=1|x) = 0.7 和 p(y!=1|​​x) = 0.3;
  • 第二个 classifier 说 p(y=2|x) = 0.7 和 p(y!=2|x) = 0.3;
  • 第三个 classifier 说 p(y=3|x) = 0.7 和 p(y!=3|x) = 0.3。

它们都是有效的 class 修饰符,但是

p(y=1|x) + p(y=2|x) + p(y=3|x) != 1.