alpha | Constant that multiplies the regularization term. The higher the
value, the stronger the regularization
Also used to compute the learning rate when set to `learning_rate` is
set to 'optimal' | default: 0.0001 |
average | When set to True, computes the averaged SGD weights across all
updates and stores the result in the ``coef_`` attribute. If set to
an int greater than 1, averaging will begin once the total number of
samples seen reaches `average`. So ``average=10`` will begin
averaging after seeing 10 samples. | default: false |
class_weight | 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))`` | default: null |
early_stopping | 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 returned by the `score` method is not
improving by at least tol for n_iter_no_change consecutive epochs
.. versionadded:: 0.20
Added 'early_stopping' option | default: false |
epsilon | Epsilon in the epsilon-insensitive loss functions; only if `loss` is
'huber', 'epsilon_insensitive', or 'squared_epsilon_insensitive'
For 'huber', determines the threshold at which it becomes less
important to get the prediction exactly right
For epsilon-insensitive, any differences between the current prediction
and the correct label are ignored if they are less than this threshold | default: 0.1 |
eta0 | The initial learning rate for the 'constant', 'invscaling' or
'adaptive' schedules. The default value is 0.0 as eta0 is not used by
the default schedule 'optimal' | default: 0.0 |
fit_intercept | Whether the intercept should be estimated or not. If False, the
data is assumed to be already centered | default: true |
l1_ratio | 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` is 'elasticnet' | default: 0.15 |
learning_rate | The learning rate schedule:
- 'constant': `eta = eta0`
- 'optimal': `eta = 1.0 / (alpha * (t + t0))`
where t0 is chosen by a heuristic proposed by Leon Bottou
- 'invscaling': `eta = eta0 / pow(t, power_t)`
- 'adaptive': eta = eta0, as long as the training keeps decreasing
Each time n_iter_no_change consecutive epochs fail to decrease the
training loss by tol or fail to increase validation score by tol if
early_stopping is True, the current learning rate is divided by 5
.. versionadded:: 0.20
Added 'adaptive' option | default: "optimal" |
loss | The loss function to be used. Defaults to 'hinge', which gives a
linear SVM
The possible options are 'hinge', 'log', 'modified_huber',
'squared_hinge', 'perceptron', or a regression loss: 'squared_error',
'huber', 'epsilon_insensitive', or 'squared_epsilon_insensitive'
The 'log' loss gives logistic regression, a probabilistic classifier
'modified_huber' is another smooth loss that brings tolerance to
outliers as well as probability estimates
'squared_hinge' is like hinge but is quadratically penalized
'perceptron' is the linear loss used by the perceptron algorithm
The other losses are designed for regression but can be useful in
classification as well; see
:class:`~sklearn.linear_model.SGDRegressor` for a description
More details about the losses formulas can be found in the
:ref:`User Guide `
.. deprecated:: 1.0
The loss 'squared_loss' was deprecated in v1.0 and will be removed
in version 1.2. Us... | default: "hinge" |
max_iter | The maximum number of passes over the training data (aka epochs)
It only impacts the behavior in the ``fit`` method, and not the
:meth:`partial_fit` method
.. versionadded:: 0.19 | default: 1000 |
n_iter_no_change | Number of iterations with no improvement to wait before stopping
fitting
Convergence is checked against the training loss or the
validation loss depending on the `early_stopping` parameter
.. versionadded:: 0.20
Added 'n_iter_no_change' option | default: 5 |
n_jobs | The number of CPUs to use to do the OVA (One Versus All, for
multi-class problems) computation
``None`` means 1 unless in a :obj:`joblib.parallel_backend` context
``-1`` means using all processors. See :term:`Glossary `
for more details | default: null |
penalty | | default: "l2" |
power_t | The exponent for inverse scaling learning rate [default 0.5] | default: 0.5 |
random_state | Used for shuffling the data, when ``shuffle`` is set to ``True``
Pass an int for reproducible output across multiple function calls
See :term:`Glossary ` | default: null |
shuffle | Whether or not the training data should be shuffled after each epoch | default: true |
tol | The stopping criterion. If it is not None, training will stop
when (loss > best_loss - tol) for ``n_iter_no_change`` consecutive
epochs
Convergence is checked against the training loss or the
validation loss depending on the `early_stopping` parameter
.. versionadded:: 0.19 | default: 0.001 |
validation_fraction | 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
.. versionadded:: 0.20
Added 'validation_fraction' option | default: 0.1 |
verbose | The verbosity level | default: 0 |
warm_start | When set to True, reuse the solution of the previous call to fit as
initialization, otherwise, just erase the previous solution
See :term:`the Glossary `
Repeatedly calling fit or partial_fit when warm_start is True can
result in a different solution than when calling fit a single time
because of the way the data is shuffled
If a dynamic learning rate is used, the learning rate is adapted
depending on the number of samples already seen. Calling ``fit`` resets
this counter, while ``partial_fit`` will result in increasing the
existing counter | default: false |