擅长:python、mysql、java
<p>50000个实例和7个维度并不是很大,不应该杀死一个实现。</p>
<p>尽管它没有python绑定,但是请尝试<a href="http://elki.dbs.ifi.lmu.de/">ELKI</a>。他们在主页上使用的基准集是8维的110250个实例,他们显然在60秒内运行k-means,在350秒内运行更先进的光学系统。</p>
<p>避免分层群集。它实际上只适用于小数据集。它通常在矩阵运算上实现的方式是<code>O(n^3)</code>,这对于大型数据集来说是非常糟糕的。所以我并不惊讶这两个为你超时。</p>
<p>使用索引支持实现时,DBSCAN和OPTICS是<code>O(n log n)</code>。当天真地实现时,它们在<code>O(n^2)</code>中。K-means确实很快,但通常结果并不令人满意(因为它总是在中间分裂)。它应该在<code>O(n * k * iter)</code>中运行,通常在不太多的迭代(<code>iter<<100</code>)中收敛。但它只适用于欧几里德距离,而不适用于某些数据(高维、离散、二进制、不同大小的簇…)</p>