Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ImportError: No module named 'sklearn.lda'

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?

like image 440
mauroV8F5 Avatar asked Oct 16 '17 16:10

mauroV8F5


2 Answers

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

like image 170
seralouk Avatar answered Oct 02 '22 12:10

seralouk


Best guess is that you're using the call for Linear Discriminant Analysis from sklearn 0.16, not the current version (0.19).

Try using sklearn.discriminant_analysis.LinearDiscriminantAnalysis instead.

Here's the link to the docs.

like image 22
grundy Avatar answered Oct 02 '22 11:10

grundy