I have a trained KNN, I created with https://github.com/kevinzakka/blog-code/blob/master/knn/knn.py

I want to add more data points to the KNN but I am on a raspberry pi so limited by RAM and therefore the number of data points I can add at a time to the model.

I have 20k images, I can add 2k at a time. Because of the way scikitlearn works, I cant use the model trained on a Windows PC on the pi (different architectures).

Can I create a model, and then add more data points to it somehow?

  • 1
    $\begingroup$ Take a look here: stackoverflow.com/a/28006451/7006323 $\endgroup$
    – bkshi
    Feb 27, 2020 at 5:06
  • $\begingroup$ Maybe try using pickle to store trained models for each iteration and discard the rest of the unwanted data. $\endgroup$ Apr 13, 2020 at 17:26

1 Answer 1


Re-estimating parameters with additional data is called online machine learning.

Scikit-learn is not designed for online learning. Scikit-multiflow is designed for online learning.


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.