2013-11-26 39 views
2

回到datamining并与Weka和WekaSharp一起使用datamining的问题。通过WekaSharp,我对一个相当大的数据集进行了一些分析,这个数据集是KDD Cup 1999 10%数据库(〜70 mb)。使用决策树J48算法和朴素贝叶斯算法每个都需要10到30分钟才能完成,我获得了很好的结果。当我通过KNN算法运行相同的数据,并且它从未完成分析时,它不会错误地直接运行。我尝试了所有不同的参数,但没有任何效果。当我在一个较小的样本数据集(如iris.arff)上运行相同的KNN算法时,它完成并不困难。这里是我对KNN参数的设置: “-K 1 -W 0 -A \”weka.core.neighboursearch.KDTree -A \\“weka.core.EuclideanDistance -R first-last \\”“\” “ KNN和大型数据集是否存在固有的问题,还是存在安装问题?非常感谢你。Weka中的KNN算法永远不要在大数据集上完成

回答

2

kNN受到“维度灾难”的影响:高维数据集的空间查询不能像低维数据集一样有效地优化,从而将其有效地转化为强力搜索。

NB嘲笑维度,因为它基本上忽略了维度。许多决策树变体在处理高维数据方面也很好。 kNN不喜欢高维数据。期待等待很长时间。

+0

感谢您的回复和评论,这是一个非常有用的见解,并且在距离测量方面有很多意义。我很可能会选择一个不同的算法,因为我希望能够对这些组进行大量的运算。再次感谢你。 – RedMassiveStar

+0

你好,就像更新一样,我让算法在F#中运行完成,到目前为止,顺序时间平均在53小时完成。所以它最终完成:-)。 – RedMassiveStar