scikit-learn return LogisticRegression.predict_proba 的值
scikit-learn return value of LogisticRegression.predict_proba
LogisticRegression.predict_proba
函数 return 的具体作用是什么?
在我的示例中,我得到如下结果:
[[ 4.65761066e-03 9.95342389e-01]
[ 9.75851270e-01 2.41487300e-02]
[ 9.99983374e-01 1.66258341e-05]]
根据其他计算,使用 sigmoid 函数,我知道第二列是概率。 documentation 说,第一列是 n_samples
,但这不可能,因为我的样本是评论,是文本而不是数字。文档还说,第二列是 n_classes
。这当然不可能,因为我只有两个 classes(即 +1
和 -1
),并且该函数应该是计算样本真正属于 [=] 的概率27=],而不是 classes 本身。
第一列到底是什么,为什么会有?
4.65761066e-03 + 9.95342389e-01 = 1
9.75851270e-01 + 2.41487300e-02 = 1
9.99983374e-01 + 1.66258341e-05 = 1
第一列是条目具有 -1
标签的概率,第二列是条目具有 +1
标签的概率。请注意 类 的顺序与 self.classes_.
中的顺序相同
如果你只想得到正标签的预测概率,你可以使用logistic_model.predict_proba(data)[:,1]
。这将为您提供 [9.95342389e-01, 2.41487300e-02, 1.66258341e-05]
结果。
LogisticRegression.predict_proba
函数 return 的具体作用是什么?
在我的示例中,我得到如下结果:
[[ 4.65761066e-03 9.95342389e-01]
[ 9.75851270e-01 2.41487300e-02]
[ 9.99983374e-01 1.66258341e-05]]
根据其他计算,使用 sigmoid 函数,我知道第二列是概率。 documentation 说,第一列是 n_samples
,但这不可能,因为我的样本是评论,是文本而不是数字。文档还说,第二列是 n_classes
。这当然不可能,因为我只有两个 classes(即 +1
和 -1
),并且该函数应该是计算样本真正属于 [=] 的概率27=],而不是 classes 本身。
第一列到底是什么,为什么会有?
4.65761066e-03 + 9.95342389e-01 = 1
9.75851270e-01 + 2.41487300e-02 = 1
9.99983374e-01 + 1.66258341e-05 = 1
第一列是条目具有 -1
标签的概率,第二列是条目具有 +1
标签的概率。请注意 类 的顺序与 self.classes_.
如果你只想得到正标签的预测概率,你可以使用logistic_model.predict_proba(data)[:,1]
。这将为您提供 [9.95342389e-01, 2.41487300e-02, 1.66258341e-05]
结果。