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: 1e3).
 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 keyvalue 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.