Perceptron is a simple classification algorithm.
Syntax
parameters = perceptronfit(X,y)
parameters = perceptronfit(X,y,options)
Inputs
- X
- Training data.
- Type: double
- Dimension: vector | matrix
- y
- Target values.
- Type: double
- Dimension: vector | matrix
- options
- Type: struct
-
- penalty
- The penalty (regularization term) to be used. By default, it's not assigned. Allowed values are 'l2', 'l1', or 'elasticnet'.
- Type: char
- Dimension: string
- alpha
- Constant that multiplies the regularization term if regularization is used.
- Type: logical
- Dimension: Boolean
- max_iter
- Maximum number of passes over the training data (default: 1000).
- Type: integer
- Dimension: scalar
- tol
- Tolerance for stopping criteria. The iterations will stop when loss > previous_loss - tol (default: 1e-3).
- Type: double
- Dimension: scalar
- shuffle
- Whether or not the training data should be shuffled after each iteration over data. Default: true
- Type: Boolean
- Dimension: logical
- eta0
- Constant by which the updates are multiplied (default: 1).
- Type: double
- Dimension: scalar
- random_state
- The seed of pseudo random number generator to use when shuffling the data.
- Type: integer
- Dimension: scalar
- early_stopping
- Whether to use early stopping to terminate training when validation score is not improving (default: false). If set to true, it will automatically set aside a fraction of training data for validation and terminate training when validation score is not improving by at least tol for n_iter_no_change consecutive epochs (iteration over all data).
- Type: Boolean
- Dimension: logical
- validation_fraction
- The proportion of training data to set aside as validation set for early stopping. It must be between 0 and 1. This value is considered only when early_stopping is set to true.
- Type: double
- Dimension: scalar
- n_iter_no_change
- Number of iterations with no improvement to wait before early stopping (default: 5).
- Type: integer
- Dimension: scalar
Outputs
- parameters
- Contains all the values passed to perceptronfit method as options. Additionally it has below key-value pairs.
- Type: struct
-
- scorer
- Function handle pointing to 'accuracy' function.
- Type: function handle
- intercept
- Intercept (bias) added to the decision function.
- Type: double
- Dimension: scalar
- coef
- Coefficient of the features in the decision function.
- Type: double
- Dimension: vector | matrix
- n_samples
- Number of rows in the training data.
- Type: integer
- Dimension: scalar
- n_features
- Number of columns in the training data.
- Type: integer
- Dimension: scalar
Example
Usage of perceptronfit
data = dlmread('banknote_authentication.txt', ',');
X = data(:, 1:2);
y = data(:, end);
parameters = perceptronfit(X, y);
> parameters
parameters = struct [
alpha: 0.0001
coef: [Matrix] 1 x 2
-12.75121 -6.88289
early_stopping: 0
eta0: 1
intercept: 4
max_iter: 1000
n_features: 2
n_iter_no_change: 5
n_samples: 1372
shuffle: 1
tol: 0.001
validation_fraction: 0.1
]
Comments
Output 'parameters' should be passed as input to perceptronpredict function.