11

I wish to better understand the difference between lazy and eager learning. I am having difficulty conceptualising what the "abstraction" refers to between the two.

According to the text book I am reading it says, "The distinction between easy learners and lazy learners is based on when the algorithm abstracts from the data."

A lazy learner delays abstracting from the data until it is asked to make a prediction while an eager learner abstracts away from the data during training and uses this abstraction to make predictions rather than directly compare queries with instances in the dataset.

I understand that KNN algorithm loads all the data into memory so depending on the size of the dataset, the computing requirements could be enormous as well as the fact it's a non-parametric algorithm so there is no training to find parameters, the classification is done on a per query requirement??

TheGoat
  • 271
  • 1
  • 2
  • 6

1 Answers1

16

Lazy learner:

  1. Just store Data set without learning from it

  2. Start classifying data when it receive Test data

  3. So it takes less time learning and more time classifying data


Eager learner:

  1. When it receive data set it starts classifying (learning)

  2. Then it does not wait for test data to learn

  3. So it takes long time learning and less time classifying data

Hint : In supervised learning

Some examples are :

Lazy : K - Nearest Neighbour, Case - Based Reasoning

Eager : Decision Tree, Naive Bayes, Artificial Neural Networks