2013-03-11 2 views
1

Я делаю программу, которая может группировать числовые данные с помощью самоорганизующихся карт Кохонена, и я стараюсь сделать это как можно более общим. Итак, Как узнать соответствующий начальный размер окрестности пропорционально количеству элементов (количеству выходных узлов) в наборе данных?Соответствующий размер окрестности для SOM

Предложения были бы также оценены. :)

ответ

0

Если вы хотите, чтобы он был «как можно более общим», возможно, существует только одна возможность: random. Но я бы предложил сделать это «менее общим, насколько это возможно», а затем вы можете играть с параметрами ...

+0

Существует ли связь между количеством элементов в наборе данных и размером окрестности алгоритма? Я всегда предполагал, что если в наборе данных больше элементов, размер соседства также должен быть больше. Но я не знаю оптимальной пропорции. Опять же, я просто предполагаю, поэтому я задал здесь вопрос. – libzz

+0

хорошо AFAIK там не должно быть такого соединения, если у вас хорошо подготовленная система на хорошо подобранном наборе данных. Но у вас есть оба? ;) – xhudik

+0

Я просто сделал размер окрестности больше, когда набор данных также больше. Он все еще работает хорошо. Я просто нахожу способы сделать это еще лучше. :) Спасибо за входные данные. Это очень ценится. ^^, – libzz

1

Вы можете улучшить функцию соседства по своему усмотрению.

Если вы определяете круг вокруг каждого подходящего устройства (BMU), вы можете выбрать этот радиус пропорционально размеру вашей сетки в пространстве с малым размером (вероятно, 2d). Затем вы можете сделать радиус постоянным или сжатым в соответствии с определенным критерием до последней итерации.

Другой вариант - сделать окрестности фиксированными, как в определенном количестве окружающих узлов в BMU.

Смежные вопросы