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([-1111])
>>> y = np.array([0111])
>>> dummy_clf = DummyClassifier(strategy="most_frequent")
>>> dummy_clf.fit(X, y)
DummyClassifier(strategy='most_frequent')
>>> dummy_clf.predict(X)
array([1111])
>>> 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
估计器实例。