0

我有一个管道,它接受 TFIDF 矢量化器和 GBM 二元分类器,并给我标签和概率。在生产中,我不想要标签,我只想要 1 从管道中出来的概率。我可以对管道进行更改以仅获得 1 的概率而不是标签和 0 和 1 的概率。

gbm_pipeline = Pipeline([('tfidf', TfidfVectorizer(use_idf=True)),
    ('gbm',GradientBoostingClassifier(random_state = 23)),
                    ])

当我将使用此管道进行预测时,它会给我类似的东西

predict [1]
predict_proba [{0: 0.47260814905166626, 1: 0.5273918509483337}]

而我只是希望它成为

0.5273918509483337

PS:我无法使用管道的输出。我希望对管道本身进行更改,这样我就不会得到标签和概率,而是得到 1 的概率

4

1 回答 1

0

在这种情况下,我只会运行一个 for 循环:

probab = []
a = [{0: 0.47260814905166626, 1: 0.5273918509483337}]

for x in a:
    probab.append(x.get(1))

概率存储在probab

print(probab)

[0.5273918509483337]

于 2021-09-08T05:54:49.180 回答