我用scikitlearn的LDA函数做了一些LDA,我注意到在我的结果图中,LDs之间存在非零相关。在
from sklearn.lda import LDA
sklearn_lda = LDA(n_components=2)
transf_lda = sklearn_lda.fit_transform(X, y)
这是非常令人担忧的,所以我回去用虹膜数据集作为参考。我还在scikit文档中发现了相同的非零相关LDA图,我可以复制它。在
总之,给你一个大概的印象
我已经将代码放入an IPython notebook中,如果您想看一看并亲自尝试。在
与(错误)一致的scikit文档将显示在左上角:http://scikit-learn.org/stable/auto_examples/decomposition/plot_pca_vs_lda.html
右下角显示的R中的LDA:http://tgmstat.wordpress.com/2014/01/15/computing-and-visualizing-lda-in-r/
在LDA的转换函数中确实存在一个缺陷:在实际转换之后错误地应用了分类器权重。此问题已修复here。这些更改已经合并到主分支中,因此它应该在scikitlearn的1.6版本中。在
好了,现在,发生了什么(基于discussion GitHub)是scikit-learn的LDA没有正交基。在
我想把这个作为答案,这样我就可以结束这个问题了。谢谢你的讨论!在
Scikit学习
循序渐进的方法
为了进行比较,这里再次介绍一步一步的方法
相关问题 更多 >
编程相关推荐