Class: Perceptron
Linear perceptron classifier.
The implementation is a wrapper around SGDClassifier by fixing the loss and learning_rate parameters as:
Constructors
new Perceptron()
new Perceptron(
opts?):Perceptron
Parameters
| Parameter | Type | Description |
|---|---|---|
opts? | object | - |
opts.alpha? | number | Constant that multiplies the regularization term if regularization is used. |
opts.class_weight? | any | Preset 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? | boolean | Whether 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? | number | Constant by which the updates are multiplied. |
opts.fit_intercept? | boolean | Whether the intercept should be estimated or not. If false, the data is assumed to be already centered. |
opts.l1_ratio? | number | The 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? | number | The 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? | number | Number of iterations with no improvement to wait before early stopping. |
opts.n_jobs? | number | The 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? | number | Used 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? | boolean | Whether or not the training data should be shuffled after each epoch. |
opts.tol? | number | The stopping criterion. If it is not undefined, the iterations will stop when (loss > previous_loss - tol). |
opts.validation_fraction? | number | The 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? | number | The verbosity level. |
opts.warm_start? | boolean | When 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
| Property | Type | Default value | Defined in |
|---|---|---|---|
_isDisposed | boolean | false | generated/linear_model/Perceptron.ts:21 |
_isInitialized | boolean | false | generated/linear_model/Perceptron.ts:20 |
_py | PythonBridge | undefined | generated/linear_model/Perceptron.ts:19 |
id | string | undefined | generated/linear_model/Perceptron.ts:16 |
opts | any | undefined | generated/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
| Parameter | Type |
|---|---|
pythonBridge | PythonBridge |
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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.X? | ArrayLike | The 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
| Parameter | Type |
|---|---|
opts | object |
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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.coef_init? | ArrayLike[] | The initial coefficients to warm-start the optimization. |
opts.intercept_init? | ArrayLike | The initial intercept to warm-start the optimization. |
opts.sample_weight? | ArrayLike | Weights 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? | any | Training data. |
opts.y? | ArrayLike | Target 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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.routing? | any | A 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
| Parameter | Type |
|---|---|
py | PythonBridge |
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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.classes? | ArrayLike | Classes 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? | ArrayLike | Weights applied to individual samples. If not provided, uniform weights are assumed. |
opts.X? | any | Subset of the training data. |
opts.y? | ArrayLike | Subset 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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.X? | ArrayLike | The 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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.sample_weight? | ArrayLike | Sample weights. |
opts.X? | ArrayLike[] | Test samples. |
opts.y? | ArrayLike | True 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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.coef_init? | string | boolean | Metadata routing for coef_init parameter in fit. |
opts.intercept_init? | string | boolean | Metadata routing for intercept_init parameter in fit. |
opts.sample_weight? | string | boolean | Metadata 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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.classes? | string | boolean | Metadata routing for classes parameter in partial_fit. |
opts.sample_weight? | string | boolean | Metadata 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
| Parameter | Type | Description |
|---|---|---|
opts | object | - |
opts.sample_weight? | string | boolean | Metadata 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
| Parameter | Type |
|---|---|
opts | object |
Returns Promise<any>
Defined in generated/linear_model/Perceptron.ts:611