Class: Perceptron

Linear perceptron classifier.

The implementation is a wrapper around SGDClassifier by fixing the loss and learning_rate parameters as:

Python Reference

Constructors

new Perceptron()

new Perceptron(opts?): Perceptron

Parameters

ParameterTypeDescription
opts?object-
opts.alpha?numberConstant that multiplies the regularization term if regularization is used.
opts.class_weight?anyPreset for the class_weight fit parameter. Weights associated with classes. If not given, all classes are supposed to have weight one. The “balanced” mode uses the values of y to automatically adjust weights inversely proportional to class frequencies in the input data as n_samples / (n_classes \* np.bincount(y)).
opts.early_stopping?booleanWhether to use early stopping to terminate training when validation score is not improving. If set to true, it will automatically set aside a stratified fraction of training data as validation and terminate training when validation score is not improving by at least tol for n_iter_no_change consecutive epochs.
opts.eta0?numberConstant by which the updates are multiplied.
opts.fit_intercept?booleanWhether the intercept should be estimated or not. If false, the data is assumed to be already centered.
opts.l1_ratio?numberThe Elastic Net mixing parameter, with 0 <= l1_ratio <= 1. l1_ratio=0 corresponds to L2 penalty, l1_ratio=1 to L1. Only used if penalty='elasticnet'.
opts.max_iter?numberThe maximum number of passes over the training data (aka epochs). It only impacts the behavior in the fit method, and not the partial_fit method.
opts.n_iter_no_change?numberNumber of iterations with no improvement to wait before early stopping.
opts.n_jobs?numberThe number of CPUs to use to do the OVA (One Versus All, for multi-class problems) computation. undefined means 1 unless in a joblib.parallel_backend context. \-1 means using all processors. See Glossary for more details.
opts.penalty?"l1" | "l2" | "elasticnet"The penalty (aka regularization term) to be used.
opts.random_state?numberUsed to shuffle the training data, when shuffle is set to true. Pass an int for reproducible output across multiple function calls. See Glossary.
opts.shuffle?booleanWhether or not the training data should be shuffled after each epoch.
opts.tol?numberThe stopping criterion. If it is not undefined, the iterations will stop when (loss > previous_loss - tol).
opts.validation_fraction?numberThe proportion of training data to set aside as validation set for early stopping. Must be between 0 and 1. Only used if early_stopping is true.
opts.verbose?numberThe verbosity level.
opts.warm_start?booleanWhen set to true, reuse the solution of the previous call to fit as initialization, otherwise, just erase the previous solution. See the Glossary.

Returns Perceptron

Defined in generated/linear_model/Perceptron.ts:23

Properties

PropertyTypeDefault valueDefined in
_isDisposedbooleanfalsegenerated/linear_model/Perceptron.ts:21
_isInitializedbooleanfalsegenerated/linear_model/Perceptron.ts:20
_pyPythonBridgeundefinedgenerated/linear_model/Perceptron.ts:19
idstringundefinedgenerated/linear_model/Perceptron.ts:16
optsanyundefinedgenerated/linear_model/Perceptron.ts:17

Accessors

classes_

Get Signature

get classes_(): Promise<ArrayLike>

The unique classes labels.

Returns Promise<ArrayLike>

Defined in generated/linear_model/Perceptron.ts:637


coef_

Get Signature

get coef_(): Promise<ArrayLike[][]>

Weights assigned to the features.

Returns Promise<ArrayLike[][]>

Defined in generated/linear_model/Perceptron.ts:660


feature_names_in_

Get Signature

get feature_names_in_(): Promise<ArrayLike>

Names of features seen during fit. Defined only when X has feature names that are all strings.

Returns Promise<ArrayLike>

Defined in generated/linear_model/Perceptron.ts:756


intercept_

Get Signature

get intercept_(): Promise<ArrayLike[]>

Constants in decision function.

Returns Promise<ArrayLike[]>

Defined in generated/linear_model/Perceptron.ts:683


loss_function_

Get Signature

get loss_function_(): Promise<any>

The function that determines the loss, or difference between the output of the algorithm and the target values.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:706


n_features_in_

Get Signature

get n_features_in_(): Promise<number>

Number of features seen during fit.

Returns Promise<number>

Defined in generated/linear_model/Perceptron.ts:731


n_iter_

Get Signature

get n_iter_(): Promise<number>

The actual number of iterations to reach the stopping criterion. For multiclass fits, it is the maximum over every binary fit.

Returns Promise<number>

Defined in generated/linear_model/Perceptron.ts:781


py

Get Signature

get py(): PythonBridge

Returns PythonBridge

Set Signature

set py(pythonBridge): void

Parameters

ParameterType
pythonBridgePythonBridge

Returns void

Defined in generated/linear_model/Perceptron.ts:138


t_

Get Signature

get t_(): Promise<number>

Number of weight updates performed during training. Same as (n_iter_ \* n_samples + 1).

Returns Promise<number>

Defined in generated/linear_model/Perceptron.ts:804

Methods

decision_function()

decision_function(opts): Promise<ArrayLike>

Predict confidence scores for samples.

The confidence score for a sample is proportional to the signed distance of that sample to the hyperplane.

Parameters

ParameterTypeDescription
optsobject-
opts.X?ArrayLikeThe data matrix for which we want to get the confidence scores.

Returns Promise<ArrayLike>

Defined in generated/linear_model/Perceptron.ts:209


densify()

densify(opts): Promise<any>

Convert coefficient matrix to dense array format.

Converts the coef_ member (back) to a numpy.ndarray. This is the default format of coef_ and is required for fitting, so calling this method is only required on models that have previously been sparsified; otherwise, it is a no-op.

Parameters

ParameterType
optsobject

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:243


dispose()

dispose(): Promise<void>

Disposes of the underlying Python resources.

Once dispose() is called, the instance is no longer usable.

Returns Promise<void>

Defined in generated/linear_model/Perceptron.ts:190


fit()

fit(opts): Promise<any>

Fit linear model with Stochastic Gradient Descent.

Parameters

ParameterTypeDescription
optsobject-
opts.coef_init?ArrayLike[]The initial coefficients to warm-start the optimization.
opts.intercept_init?ArrayLikeThe initial intercept to warm-start the optimization.
opts.sample_weight?ArrayLikeWeights applied to individual samples. If not provided, uniform weights are assumed. These weights will be multiplied with class_weight (passed through the constructor) if class_weight is specified.
opts.X?anyTraining data.
opts.y?ArrayLikeTarget values.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:269


get_metadata_routing()

get_metadata_routing(opts): Promise<any>

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Parameters

ParameterTypeDescription
optsobject-
opts.routing?anyA MetadataRequest encapsulating routing information.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:323


init()

init(py): Promise<void>

Initializes the underlying Python resources.

This instance is not usable until the Promise returned by init() resolves.

Parameters

ParameterType
pyPythonBridge

Returns Promise<void>

Defined in generated/linear_model/Perceptron.ts:151


partial_fit()

partial_fit(opts): Promise<any>

Perform one epoch of stochastic gradient descent on given samples.

Internally, this method uses max_iter \= 1. Therefore, it is not guaranteed that a minimum of the cost function is reached after calling it once. Matters such as objective convergence, early stopping, and learning rate adjustments should be handled by the user.

Parameters

ParameterTypeDescription
optsobject-
opts.classes?ArrayLikeClasses across all calls to partial_fit. Can be obtained by via np.unique(y_all), where y_all is the target vector of the entire dataset. This argument is required for the first call to partial_fit and can be omitted in the subsequent calls. Note that y doesn’t need to contain all labels in classes.
opts.sample_weight?ArrayLikeWeights applied to individual samples. If not provided, uniform weights are assumed.
opts.X?anySubset of the training data.
opts.y?ArrayLikeSubset of the target values.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:359


predict()

predict(opts): Promise<ArrayLike>

Predict class labels for samples in X.

Parameters

ParameterTypeDescription
optsobject-
opts.X?ArrayLikeThe data matrix for which we want to get the predictions.

Returns Promise<ArrayLike>

Defined in generated/linear_model/Perceptron.ts:406


score()

score(opts): Promise<number>

Return 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

ParameterTypeDescription
optsobject-
opts.sample_weight?ArrayLikeSample weights.
opts.X?ArrayLike[]Test samples.
opts.y?ArrayLikeTrue labels for X.

Returns Promise<number>

Defined in generated/linear_model/Perceptron.ts:440


set_fit_request()

set_fit_request(opts): Promise<any>

Request metadata passed to the fit method.

Note that this method is only relevant if enable_metadata_routing=True (see sklearn.set_config). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

Parameters

ParameterTypeDescription
optsobject-
opts.coef_init?string | booleanMetadata routing for coef_init parameter in fit.
opts.intercept_init?string | booleanMetadata routing for intercept_init parameter in fit.
opts.sample_weight?string | booleanMetadata routing for sample_weight parameter in fit.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:486


set_partial_fit_request()

set_partial_fit_request(opts): Promise<any>

Request metadata passed to the partial_fit method.

Note that this method is only relevant if enable_metadata_routing=True (see sklearn.set_config). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

Parameters

ParameterTypeDescription
optsobject-
opts.classes?string | booleanMetadata routing for classes parameter in partial_fit.
opts.sample_weight?string | booleanMetadata routing for sample_weight parameter in partial_fit.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:532


set_score_request()

set_score_request(opts): Promise<any>

Request metadata passed to the score method.

Note that this method is only relevant if enable_metadata_routing=True (see sklearn.set_config). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

Parameters

ParameterTypeDescription
optsobject-
opts.sample_weight?string | booleanMetadata routing for sample_weight parameter in score.

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:575


sparsify()

sparsify(opts): Promise<any>

Convert coefficient matrix to sparse format.

Converts the coef_ member to a scipy.sparse matrix, which for L1-regularized models can be much more memory- and storage-efficient than the usual numpy.ndarray representation.

The intercept_ member is not converted.

Parameters

ParameterType
optsobject

Returns Promise<any>

Defined in generated/linear_model/Perceptron.ts:611