sklearn.dummy.DummyClassifier¶
class sklearn.dummy.DummyClassifier(*, strategy='warn', random_state=None, constant=None)
DummyClassifier是一种使用简单规则进行预测的分类器。
这个分类器作为与其他(真实的)分类器进行比较的简单基线非常有用。不要用它来解决真正的问题。
在用户指南中阅读更多内容。
新版本0.13。
参数 | 说明 |
---|---|
strategy | str, default=”stratified” 用来产生预测的策略。 “分层的”:通过尊重训练集的类分布来生成预测。 “most_frequency”:总是预测训练集中出现频率最高的标签。 “prior”:总是预测最大化类prior的类(比如“most_frequency”),而predict_proba返回类prior。 “均匀”:均匀地随机生成预测。 “常量”:总是预测用户提供的常量标签。这对于评估非大多数类的度量是有用的 在0.22版本中更改:策略的默认值在0.24版本中将更改为“prior”。从版本0.22开始,如果没有显式地设置策略,就会发出警告。 新版本0.17:虚拟分类器现在支持使用参数先验的先验拟合策略。 |
random_state | int, RandomState instance or None, optional, default=None 当策略='分层'或策略='统一'时,控制产生预测的随机性。在多个函数调用之间传递可重复输出的int。看到术语表。 |
constant | int or str or array-like of shape (n_outputs,) 由“常数”策略预测的显式常数。这个参数只对“常量”策略有用。 |
属性 | 说明 |
---|---|
classes_ | array or list of array of shape (n_classes,) 每个输出的类标签。 |
n_classes_ | array or list of array of shape (n_classes,) 每个输出的标签数。 |
class_prior_ | array or list of array of shape (n_classes,) 每个类对每个输出的概率。 |
n_outputs_ | int, 数量的输出。 |
sparse_output_ | bool, 如果从predict返回的数组是稀疏CSC格式,则为True。如果输入y以稀疏格式传递,则自动设置为真。 |
示例
>>> import numpy as np
>>> from sklearn.dummy import DummyClassifier
>>> X = np.array([-1, 1, 1, 1])
>>> y = np.array([0, 1, 1, 1])
>>> dummy_clf = DummyClassifier(strategy="most_frequent")
>>> dummy_clf.fit(X, y)
DummyClassifier(strategy='most_frequent')
>>> dummy_clf.predict(X)
array([1, 1, 1, 1])
>>> dummy_clf.score(X, y)
0.75
方法
方法 | 说明 |
---|---|
fit (self, X, y[, sample_weight]) |
F适合随机分类器。 |
get_params (self[, deep]) |
获取这个估计器的参数。 |
predict (self, X) |
对测试向量X进行分类。 |
predict_log_proba (self, X) |
测试向量X的返回对数概率估计。 |
predict_proba (self, X) |
测试向量X的返回概率估计。 |
score (self, X, y[, sample_weight]) |
返回给定测试数据和标签的平均精度。 |
set_params (self, **params) |
设置这个估计器的参数。 |
__init__(self, *, strategy='warn', random_state=None, constant=None)
初始化self. See 请参阅help(type(self))以获得准确的说明 。
fit(self, X, y, sample_weight=None)
参数 | 说明 |
---|---|
X | {array-like, object with finite length or shape} 训练数据,要求length = n_samples |
y | array-like of shape (n_samples,) or (n_samples, n_outputs) 目标的价值。 |
sample_weight | array-like of shape (n_samples,), default=None 样本权重。 |
get_params(self, deep=True)
获取这个估计器的参数。
参数 | 说明 |
---|---|
deep | bool, default=True 如果为真,将返回此估计器的参数以及包含的作为估计器的子对象。 |
返回值 | 说明 |
---|---|
params | mapping of string to any 参数名称映射到它们的值。 |
predict(self, X)
对测试向量X进行分类。
参数 | 说明 |
---|---|
X | {array-like, object with finite length or shape} 训练数据,要求length = n_samples |
返回值 | 说明 |
---|---|
y | array-like of shape (n_samples,) or (n_samples, n_outputs) X的预测目标值。 |
predict_log_proba(self, X)
测试向量X的返回对数概率估计。
参数 | 说明 |
---|---|
X | {array-like, object with finite length or shape} 训练数据,要求length = n_samples |
返回值 | 说明 |
---|---|
P | array-like or list of array-like of shape (n_samples, n_classes) 返回模型中每个类的样本的日志概率,其中类对每个输出进行算术排序。 |
predict_proba(self, X)
测试向量X的返回概率估计。
参数 | 说明 |
---|---|
X | {array-like, object with finite length or shape} 训练数据,要求length = n_samples |
返回值 | 说明 |
---|---|
P | array-like or list of array-like of shape (n_samples, n_classes) 返回模型中每个类的抽样概率,其中类对每个输出进行算术排序。 |
score(self, X, y, sample_weight=None)
返回给定测试数据和标签的平均精度。
在多标签分类中,这是子集精度,这是一个苛刻的指标,因为你需要对每个样本正确预测每个标签集。
参数 | 说明 |
---|---|
X | {array-like, None} 使用shape = (n_samples, n_features)或None测试样本。通过None作为测试样本与通过真实测试样本得到的结果相同,因为DummyClassifier的操作独立于采样的观察值。 |
y | array-like of shape (n_samples,) or (n_samples, n_outputs) X的真实标签。 |
sample_weight | array-like of shape (n_samples,), default=None 样本权重。 |
返回值 | 说明 |
---|---|
score | float self.predict(X) 与y的平均准确度。 |
set_params(self, **params)
设置这个估计器的参数。
该方法适用于简单估计量和嵌套对象。后者具有形式为<component>_<parameter>
的参数,这样就让更新嵌套对象的每个组件成为了可能。
参数 | 说明 |
---|---|
**params | dict 估计器参数。 |
返回值 | 说明 |
---|---|
self | object 估计器实例。 |