Реализация DBSCAN с использованием R-деревьев - PullRequest
4 голосов
/ 06 апреля 2011

Я пытаюсь реализовать DBSCAN, используя R-дерево. Мы можем хранить данные в виде R-деревьев. Поэтому мой вопрос заключается в том, как я могу хранить данные в реальном времени в R-деревьях и как мне реализовать запрос региона, чтобы найти окрестность указать с этим?

Ответы [ 2 ]

2 голосов
/ 25 ноября 2011

Сначала внедрить R-деревья, затем DBSCAN.

Что касается реального времени, вы, вероятно, захотите взглянуть на специализированные алгоритмы кластеризации для потоков данных.

0 голосов
/ 03 октября 2011

Я не уверен, что вы подразумеваете под данными в реальном времени. Если вы ссылаетесь на изменение данных или потоковых данных, вы также можете удалить материал, который устарел из R-дерева. Если вы имеете в виду, что ваши данные также имеют временную размерность, вы можете просто увеличить число коэффициентов, которыми управляет R-дерево (x, y, t) - я предполагаю, что вы используете простую версию с двумя вариациями.

Если вы хотите реализовать DBSCAN, вам нужно будет выполнить запросы диапазона, чтобы вычислить плотности сферических областей вокруг точек. Следовательно, запросы вашего региона должны быть в состоянии обрабатывать сферические регионы запросов (в этом отношении я бы также посоветовал вам проверить SR-Tree Шиничи Сато, может быть полезно). Опять же, если под данными в реальном времени вы подразумеваете, что ваши данные имеют временную характеристику, вы можете рассмотреть возможность использования областей запроса, которые являются эллипсоидальными (допускается раздельное масштабирование пространственных и временных характеристик).

Надеюсь, это поможет:]

...