2013-05-21 4 views
0

클러스터링의 기본 설정은 EuclideanDistanceFunction과 같이 세부적으로 작동하는 것 같습니다. 그러나, 나는 위도 LNG /의 형태로 공간 데이터와 클러스터링을 실행하려면 나는 거리의 기능을 변경할 때 elki 나에 충돌 :LatLngDistanceFunction을 사용하여 ELKI 클러스터링을 사용하는 방법

Running: -dbc.in /tmp/test_data_lnglat-test.dat -db.index tree.spatial.rstarvariants.deliclu.DeLiCluTreeFactory -algorithm clustering.DeLiClu -algorithm.distancefunction geo.LngLatDistanceFunction -deliclu.minpts 4 
Task failed 
java.lang.UnsupportedOperationException: MBR to MBR mindist is not yet implemented. 
at de.lmu.ifi.dbs.elki.distance.distancefunction.geo.LngLatDistanceFunction.doubleMinDist(Unknown Source) 
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.processDataPagesDouble(Unknown Source) 
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.processDataPagesOptimize(Unknown Source) 
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.initHeaps(Unknown Source) 
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.run(Unknown Source) 
at de.lmu.ifi.dbs.elki.algorithm.clustering.DeLiClu.run(Unknown Source) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
at java.lang.reflect.Method.invoke(Method.java:597) 
at de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm.run(Unknown Source) 
at de.lmu.ifi.dbs.elki.workflow.AlgorithmStep.runAlgorithms(Unknown Source) 
at […] 

그것이 오류가 무엇을 의미하는지 (나에게) 명확하지 않습니다. 지리 공간 데이터로 클러스터링 기능이 작동하지 않을 수 있습니까?

간단한 해결 방법이 있습니까? 필요한 기능 (사고 방식)을 구현하는 것이 어려울까요?

답변

1

오류가 꽤 명확하게 진술로 :

MBR MBR에 mindist 아직 구현되지 않았습니다. DeLiClu - - 요구를 두 사각형 사이의 최소 거리를 계산하는

그러나, 알고리즘은 당신이 사용하려고. 측지 좌표에서, 2 차원 평면에서 아닙니다.

귀하는 적절한 수식을 제출하실 수 있습니다. 구형 기하학은 사소한 것이 아니기 때문에 최소 직사각형 - 직사각형 거리를 계산하는 것이 중요하지 않음을 유의하십시오. 네 구석을 볼 수있을만큼 이 아니고이 아닙니다. 지금까지 우리는 점 대 사각형의 경우에만이를 해결했습니다. 직사각형이 축에 정렬됨에 따라 행할 수 있습니다.하지만 지금까지 아무도 앉아서 수학을하지 못하고 더 앉아서 수식을 최적화하여 최대한 작은 삼각 함수를 요구합니다.

간단한 해결 아마이 알고리즘은 거의 동일한 결과를 얻을 수 있기 때문에, (STR과 함께 사용 벌크로드!) 대신 DeLiClu 일반 R-나무와 OPTICS을 사용하는 것입니다,하지만 사각형-에 필요하지 않습니다 - 직사각형의 최소 거리. 이론적으로는 DeLiClu이 더 빠릅니다. 실제로 이것은 R-Trees에 대한 KNN 조인 코드가 훨씬 복잡하기 때문에 (따라서 최적화하기가 더 어렵습니다) 반드시 꼭 필요한 것은 아닙니다.

+0

설명을 주셔서 감사합니다. 코드가 무엇을하려했는지 분명하지 않았습니다. 직사각형에서 직사각형에 이르는 정신 주의자를 살펴볼 수도 있지만 Optics에서 먼저 벤치마킹을 수행하고 제안 된대로 수행하는 방법을 살펴볼 수 있습니다. – tcb