Pyhton监督学习_分类器的不确定度估计

本文探讨了在Python的scikit-learn库中,如何使用decision_function和predict_proba来获取分类器预测的不确定度估计。这两个函数分别提供决策函数的值和预测类别的概率,有助于理解模型的置信度。对于二分类问题,decision_function返回的是一个浮点数,而predict_proba返回每个类别的概率。多分类问题中,这两个函数的输出形状相同,为(n_samples, n_classes)。正确使用classes_属性可以确保预测结果的一致性。" 106276644,9242521,使用Vue.js+BootStrap+SpringBoot快速构建前后端分离应用,"['前端开发', '后端开发', 'Vue框架', 'Spring框架', 'BootStrap框架']
摘要由CSDN通过智能技术生成

分类器的不确定度估计

scikit-learn 的另一个有用之处就是分类器能给出预测的不确定度估计。我们不仅关心预测点的被分类情况,还关心这个预测的置信度,这个在医学上是很严肃的问题呢。scikit-learn 中有两个函数可以获取不确定度估计,decision_function 和 predict_proba 。

from sklearn.model_selection import train_test_split
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.datasets import make_circles
X, y = make_circles(noise=0.25, factor=0.5, random_state=1)
y_named = np.array(["blue", "red"])[y]
# 所有数组的划分方式都是一致的
X_train, X_test, y_train_named, y_test_named, y_train, y_test = \
    train_test_split(X, y_named, y, random_state=0)
gbrt = GradientBoostingClassifier(random_state=0)
gbrt.fit(X_train, y_train_named)

1.决策函数

对于二分类问题,decision_function 返回值的形状是 (n_samples, ),为每个样本都返回一个浮点数。

print("X_test.shape:{}".format(X_test.shape))
print("Decision function shape:{}".format(
    gbrt.decision_function(X_test).shape))

 对于类别1来说,(25, ) 这个值表示模型对该数据点为“正”的置信度。正值表示对正类的偏好,负值表示对“反类”的偏好。

print("Decision function:\n{}".format(gbrt.decision_function(X_test)[:6]))

 我们可以通过仅查看决策函数的正负号来再现预测值。

print("Thresholded decision function:\n{}".
      format(gbrt.decision_function(X_test) > 0))
print("Pred
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值