【机器学习】(十二)分类器的不确定度估计

分类器:不确定度估计

分类器不仅能够给出测试点属于哪一个类别,还包括它对这个预测的置信程度。
scikit-learn提供了两个函数可以用于获取分类器的不确定度估计函数:(大部分分类器至少含有其中一个)

决策函数decision_function
二分类问题返回形状为(n_samples, ),为每个样本返回一个浮点数。正值表示对正类(classes_[1])的偏好,负值对应其反类(classes_[0])。
多分类问题返回形状(n_samples,n_classes),每一列对用每个类别的确定度分数(浮点数)。
n_samples是样本数,n_classes是类别数。
浮点数的值可以在任意范围,取决于数据于模型参数。分数较高的可能性大,为预测结果。

预测概率predict_proba
返回形状(n_samples,n_classes),返回为0-1之间的类别概率。每个样本类别概率和为1。预测结果为类别概率大的分类。

如果模型给出的不确定度符合实际情况,那么这个模型被称为校正模型

在Iris数据集上应用GradientBoostingClassifier分类器

不确定度:

from sklearn.ensemble import GradientBoostingClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split

iris = load_iris()
x_train, x_test, y_train, y_test = train_test_split(iris.data, iris.target, random_state=42)

gbrt = GradientBoostingClassifier(learning_rate=0.01, random_state=0).fit(x_train, y_train)

print(gbrt.decision_function(x_test).shape)
print(gbrt.decision_function(x_test)[:6, :])

print(gbrt.predict_proba(x_test).shape)
print(gbrt.predict_proba(x_test)[:6, :])

在这里插入图片描述
预测结果:numpy.argmax(array, axis) 用于返回一个numpy数组中最大值的索引值。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值