Как использовать ELKI для DBSCAN с предварительно вычисленной матрицей расстояний

У меня есть предварительно вычисленная матрица расстояний для всех точек в моей базе данных. Я пытаюсь вызвать графический интерфейс ELKI с помощью следующей команды:

            /usr/share/java/elki.jar 
            -dbc.in xml_files.1000 
            -dbc.filter FixedDBIDsFilter 
            -dbc.startid 0 
            -algorithm clustering.DBSCAN 
            -algorithm.distancefunction external.FileBasedDoubleDistanceFunction 
            -distance.matrix Distance.txt 
            -dbscan.epsilon 1 
            -dbscan.minpts 10

Но я продолжаю получать следующее сообщение об ошибке:

Неверный формат параметра! Для параметра "dbscan.epsilon" требуется значение расстояния, но расстояние не задано!

Я не могу понять, что я делаю неправильно здесь...


person Yantra    schedule 11.08.2013    source источник


Ответы (1)


Какую версию ELKI вы используете?

Это сообщение об ошибке обычно указывает на проблему с парсером расстояния, используемым средством чтения матриц.

Поскольку ELKI поддерживает функции расстояния с различными значениями, DBSCAN не может анализировать параметр epsilon до тех пор, пока не будет известен фактический тип значения расстояния (что обеспечит функцию анализа значения).

Любое более раннее сообщение об ошибке? Если у вас есть какая-либо более ранняя ошибка (включая отсутствие обязательных параметров), это не позволит DBSCAN проанализировать значение.

Попробуйте установить значение эпсилон последнее, а также попробуйте командную строку. В MiniGUI из-за инкрементного способа установки параметров эти параметры динамического типа, к сожалению, могут быть ненадежными. Приветствуется любой патч для улучшения обработки таких параметров.

person Erich Schubert    schedule 12.08.2013
comment
Мне удалось запустить dbscan с помощью ELKI. Оказывается, мне нужно: 1. Исправить мою версию Java до openjdk-7. 2. Зафиксируйте матрицу расстояний так, чтобы она была только нижней треугольной, а не полной матрицей n ^ 2. - person Yantra; 13.08.2013