【发布时间】:2017-10-27 14:23:32
【问题描述】:
我正在使用 scikit-learn 在 Python 中实现多项逻辑回归模型。然而,问题是我想对目标变量的类使用概率分布。例如,假设这是一个 3 类变量,如下所示:
class_1 class_2 class_3
0 0.0 0.0 1.0
1 1.0 0.0 0.0
2 0.0 0.5 0.5
3 0.2 0.3 0.5
4 0.5 0.1 0.4
使得每一行的值之和等于 1。
我怎么能适应这样的模型?当我尝试时:
model = LogisticRegression(solver='saga', multi_class='multinomial')
model.fit(X, probabilities)
我收到一条错误消息:
ValueError: bad input shape (10000, 3)
我知道这与此方法需要一个向量而不是矩阵这一事实有关。但是这里我不能将probabilities 矩阵压缩成向量,因为类不是排他的。
【问题讨论】:
-
那么这就变成了一个多输出回归任务,而不是分类。因为您的概率将是 0-1 之间的实数。
标签: python machine-learning scikit-learn logistic-regression multinomial