Учитывая набор точек данных, над ними создается kdtree, но является ли это kdtree уникальным?Является ли KD-Tree уникальным порядком заданного набора данных?
ответ
Похоже, что это зависит от того, как вы строите дерево. В статье в Википедии упоминается, как выбор медианной точки влияет на сбалансированное сгенерированное дерево или нет. Если выбрана другая точка, дерево не будет сбалансировано, но все равно будет kd-деревом. Поэтому ответ на ваш вопрос зависит от того, как ваш алгоритм построения дерева выбирает плоскости расщепления.
Я так не считаю.
Если ответ на ваш вопрос был «да», то я думаю, что это будет означать, что выбор размерности и значения для каждого разделения были выбраны каким-либо объективным критерием. Значение курса выбирается в соответствии с точным алгоритмом (т. Е. Вычислением медианы всех точек, которые должны быть разделены в этой размерности, но не измерение. Большинство алгоритмов KD-Tree выбирают измерение для разделения только путем чередования доступные размеры. Некоторые алгоритмы просто произвольно выбирают размер для разделения.
Это очень отличается от C4.5 (Дерево решений), потому что измерение и значение для разделения по выбору выбирают по объективному критерию, т. е. , минимизация энтропии (для категориальных переменных) или дисперсия (для непрерывных переменных).
Это уникально или мы называем его стабильным при выборе определенного метода разделения , независимо от того, в каком порядке эти данные находятся в наборе данных.
хорошо, является ли корень уникальным? – serina
, но значение уникально, но только после определения размера (и я считаю, что это включает в себя root, как и для всех «узлов»); опять же, хотя даже для корневого узла, выбор измерения в реализациях, о которых я знаю (и я проверил несколько, прежде чем отвечать на ваш вопрос), просто перемещается по доступным параметрам. – doug