sklearn.dummy.DummyClassifier¶
- 
class 
sklearn.dummy.DummyClassifier(*, strategy='warn', random_state=None, constant=None)[source]¶ DummyClassifier is a classifier that makes predictions using simple rules.
This classifier is useful as a simple baseline to compare with other (real) classifiers. Do not use it for real problems.
Read more in the User Guide.
New in version 0.13.
- Parameters
 - strategystr, default=”stratified”
 Strategy to use to generate predictions.
“stratified”: generates predictions by respecting the training set’s class distribution.
“most_frequent”: always predicts the most frequent label in the training set.
“prior”: always predicts the class that maximizes the class prior (like “most_frequent”) and
predict_probareturns the class prior.“uniform”: generates predictions uniformly at random.
“constant”: always predicts a constant label that is provided by the user. This is useful for metrics that evaluate a non-majority class
Changed in version 0.22: The default value of
strategywill change to “prior” in version 0.24. Starting from version 0.22, a warning will be raised ifstrategyis not explicitly set.New in version 0.17: Dummy Classifier now supports prior fitting strategy using parameter prior.
- random_stateint, RandomState instance or None, optional, default=None
 Controls the randomness to generate the predictions when
strategy='stratified'orstrategy='uniform'. Pass an int for reproducible output across multiple function calls. See Glossary.- constantint or str or array-like of shape (n_outputs,)
 The explicit constant as predicted by the “constant” strategy. This parameter is useful only for the “constant” strategy.
- Attributes
 - classes_array or list of array of shape (n_classes,)
 Class labels for each output.
- n_classes_array or list of array of shape (n_classes,)
 Number of label for each output.
- class_prior_array or list of array of shape (n_classes,)
 Probability of each class for each output.
- n_outputs_int,
 Number of outputs.
- sparse_output_bool,
 True if the array returned from predict is to be in sparse CSC format. Is automatically set to True if the input y is passed in sparse format.
Examples
>>> 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
Methods
fit(X, y[, sample_weight])Fit the random classifier.
get_params([deep])Get parameters for this estimator.
predict(X)Perform classification on test vectors X.
Return log probability estimates for the test vectors X.
Return probability estimates for the test vectors X.
score(X, y[, sample_weight])Returns the mean accuracy on the given test data and labels.
set_params(**params)Set the parameters of this estimator.
- 
__init__(*, strategy='warn', random_state=None, constant=None)[source]¶ Initialize self. See help(type(self)) for accurate signature.
- 
fit(X, y, sample_weight=None)[source]¶ Fit the random classifier.
- Parameters
 - X{array-like, object with finite length or shape}
 Training data, requires length = n_samples
- yarray-like of shape (n_samples,) or (n_samples, n_outputs)
 Target values.
- sample_weightarray-like of shape (n_samples,), default=None
 Sample weights.
- Returns
 - selfobject
 
- 
get_params(deep=True)[source]¶ Get parameters for this estimator.
- Parameters
 - deepbool, default=True
 If True, will return the parameters for this estimator and contained subobjects that are estimators.
- Returns
 - paramsmapping of string to any
 Parameter names mapped to their values.
- 
predict(X)[source]¶ Perform classification on test vectors X.
- Parameters
 - X{array-like, object with finite length or shape}
 Training data, requires length = n_samples
- Returns
 - yarray-like of shape (n_samples,) or (n_samples, n_outputs)
 Predicted target values for X.
- 
predict_log_proba(X)[source]¶ Return log probability estimates for the test vectors X.
- Parameters
 - X{array-like, object with finite length or shape}
 Training data, requires length = n_samples
- Returns
 - Parray-like or list of array-like of shape (n_samples, n_classes)
 Returns the log probability of the sample for each class in the model, where classes are ordered arithmetically for each output.
- 
predict_proba(X)[source]¶ Return probability estimates for the test vectors X.
- Parameters
 - X{array-like, object with finite length or shape}
 Training data, requires length = n_samples
- Returns
 - Parray-like or list of array-lke of shape (n_samples, n_classes)
 Returns the probability of the sample for each class in the model, where classes are ordered arithmetically, for each output.
- 
score(X, y, sample_weight=None)[source]¶ Returns the mean accuracy on the given test data and labels.
In multi-label classification, this is the subset accuracy which is a harsh metric since you require for each sample that each label set be correctly predicted.
- Parameters
 - X{array-like, None}
 Test samples with shape = (n_samples, n_features) or None. Passing None as test samples gives the same result as passing real test samples, since DummyClassifier operates independently of the sampled observations.
- yarray-like of shape (n_samples,) or (n_samples, n_outputs)
 True labels for X.
- sample_weightarray-like of shape (n_samples,), default=None
 Sample weights.
- Returns
 - scorefloat
 Mean accuracy of self.predict(X) wrt. y.
- 
set_params(**params)[source]¶ Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form
<component>__<parameter>so that it’s possible to update each component of a nested object.- Parameters
 - **paramsdict
 Estimator parameters.
- Returns
 - selfobject
 Estimator instance.