需要协助在Map Reduce上实施DBSCAN

时间:2013-04-07 14:38:23

标签: java hadoop mapreduce

我正在尝试在MR上实现DBSCAN并使用我在下面粘贴的链接中的直觉

http://codingwiththomas.blogspot.com/2012/05/distributed-dbscan-intuition.html

Best programming language to implement DBSCAN algorithm querying a MongoDB database?

我的问题是如何计算初始距离矩阵。我不想为了计算距离矩阵而运行hadoop作业并将其存储在内存中,因为我不是一个好的设计。有什么建议。

1 个答案:

答案 0 :(得分:1)

感谢您阅读我的博客。

是的,要计算的距离矩阵非常困难。

我已经应用了minhash聚类(mahout也有一个实现)来查找非常相似的向量。因此,您不必计算整个距离矩阵,而是计算相似的矢量。

所以我对你的建议是使用mahout的minhashing来找到类似向量的簇。然后为它们计算一个较小的距离矩阵,然后应用我在帖子中写的其余子弹点:

  • 从“迷你”群集中提取相邻点
  • 从结果图中运行连通分量算法(有MapReduce,Giraph和Hama的实现)

基本上就是这样。不幸的是,这整个阶段无法开源,所以这就是整个过程所需要的。