2
$\begingroup$

Is there any set of machine learning algorithms that do not require training and directly gives answers if a set of labeled and unlabeled data gave at once?

Is skipping explicit training of model can be skipped either in supervised or unsupervised machine learning algorithms? [I do not talk of using pre-trained model]

$\endgroup$
1

2 Answers 2

2
$\begingroup$

Nearest neighbour algorithms (kNN and variants) do not have a training phase. They work by storing all the labelled examples, and using them directly for inference on new data.

There are some caveats:

  • "Training" is fast as it just stores each example once, but inference is slow, as typically it involves searching for relevant examples. This can be improved by indexing routines (which are not part of the algorithm, but might be part of a specific implementation).

  • Although there are no parameters to train, there may still by hyper-parameters to select, which will involve running a cross-validation exercise with hold-out data and varying the choices, e.g. of number of nearest neighbours to consider, or best distance metric to use to determine closest neighbours.

  • Data preparation (normalisation) and feature engineering are often required to get the best results out of kNN, and also require multiple attempts and tests.

In general, approaches that store and query labelled data without a training phase are instance based learning

$\endgroup$
1
$\begingroup$

Note that in some cases you could use adaptive filters, that do not need to be explicitly trained. Examples of adaptive filters includes Least Mean Squares, Recursive Least Squares, Kalman...

The subtle distinction between adaptive filters and traditional ML algorithms (like the ones that can be found in scikit-learn) is that the former do not follow the fit on training data -> deploy scheme for most use cases, i.e. you won't have to create train/test splits for a given set of hyperparameters.

As an example: if your data is a time series and you want to estimate another time series that depends on the former, then you can use an RLS filter that will iteratively adapt its weights, instead of explicitly using least squares minimization to find coefficients over some split of the data.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.