Perceptron¶
Perceptron classifier.
In this implementation, the Perceptron is viewed as a special case of the logistic regression. The loss function that is used is the Hinge loss with a threshold set to 0, whilst the learning rate of the stochastic gradient descent procedure is set to 1 for both the weights and the intercept.
Parameters¶
-
l2 – defaults to
0.0
Amount of L2 regularization used to push weights towards 0.
-
clip_gradient – defaults to
1000000000000.0
Clips the absolute value of each gradient value.
-
initializer (optim.base.Initializer) – defaults to
None
Weights initialization scheme.
Attributes¶
-
weights
The current weights.
Examples¶
>>> from river import datasets
>>> from river import evaluate
>>> from river import linear_model as lm
>>> from river import metrics
>>> from river import preprocessing as pp
>>> dataset = datasets.Phishing()
>>> model = pp.StandardScaler() | lm.Perceptron()
>>> metric = metrics.Accuracy()
>>> evaluate.progressive_val_score(dataset, model, metric)
Accuracy: 85.84%
Methods¶
learn_many
Update the model with a mini-batch of features X
and boolean targets y
.
Parameters
- X (pandas.core.frame.DataFrame)
- y (pandas.core.series.Series)
- w (Union[float, pandas.core.series.Series]) – defaults to
1
Returns
MiniBatchClassifier: self
learn_one
Update the model with a set of features x
and a label y
.
Parameters
- x (dict)
- y (Union[bool, str, int])
- w – defaults to
1.0
Returns
Classifier: self
predict_many
Predict the outcome for each given sample.
Parameters
- X ('pd.DataFrame')
Returns
pd.Series: The predicted labels.
predict_one
Predict the label of a set of features x
.
Parameters
- x (dict)
Returns
typing.Union[bool, str, int, NoneType]: The predicted label.
predict_proba_many
Predict the outcome probabilities for each given sample.
Parameters
- X (pandas.core.frame.DataFrame)
Returns
DataFrame: A dataframe with probabilities of True
and False
for each sample.
predict_proba_one
Predict the probability of each label for a dictionary of features x
.
Parameters
- x
Returns
A dictionary that associates a probability which each label.