Skip to content

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.