ImportError: No module named 'sklearn.lda'

mauroV8F5 picture mauroV8F5 · Oct 16, 2017 · Viewed 13.4k times · Source

When I run classifier.py in the openface demos directory using:

classifier.py train ./generated-embeddings/

I get the following error message:

--> from sklearn.lda import LDA

ModuleNotFoundError: No module named 'sklearn.lda'.

I think to have correctly installed sklearn.

What could be the reason for this message?

Answer

seralouk picture seralouk · Oct 19, 2017

It seems that you have installed a newer version of sklearn but you are trying to call an old one.

1) First check your version

import sklearn
sklearn.__version__

2) Then use something like the following depending on the version that you have installed

from sklearn.discriminant_analysis import LinearDiscriminantAnalysis as LDA

Documentation here:

http://scikit-learn.org/stable/modules/generated/sklearn.discriminant_analysis.LinearDiscriminantAnalysis.html