скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыДипломная работа: Моделирование сети кластеризации данных в MATLAB NEURAL NETWORK TOOL

. (2.4)

Таким образом, будет активирован только тот нейрон, вектор весов которого w наиболее близок к входному вектору х. А так как перед началом обучения неизвестно, какой именно нейрон будет активироваться при предъявлении сети конкретного входного вектора, сеть обучается без учителя, т. е. самообучается. Вводя потенциальную функцию — функцию расстояния  («соседства») между i-м и j-м нейронами с местоположениями  и  соответственно, монотонно убывающую с увеличением расстояния между этими нейронами, Кохонен предложил следующий алгоритм коррекции весов:

, (2.5)

где - изменяющийся во времени коэффициент усиления (обычно выбирают  на первой итерации, постепенно уменьшая в процессе обучения до нуля); - монотонно убывающая функция.

, (2.6)

Где  и  - векторы, определяющие положение нейронов i и j в решетке. При принятой метрике  функция  с ростом времени  стремится к нулю. На практике вместо параметра времени  используют параметр расстояния , задающий величину области «соседства» и уменьшающийся с течением времени до нуля. Выбор функции  также влияет на величины весов всех нейронов в слое. Очевидно, что для нейрона-победителя :

. (2.7)

На рисунке 2.2 показан пример изменения двумерных весов карты , образующей цепь. При появлении входного образа  наиболее сильно изменяется весовой вектор нейрона-победителя 5, менее сильно — веса расположенных рядом с ним нейронов 3, 4, 6, 7. А так как нейроны 1, 2, 8, 9 лежат вне области «соседства», их весовые коэффициенты не изменяются.

Рисунок – 2.2 Изменение весов карты Кохонена

Таким образом, алгоритм обучения сети Кохонена может быть описан так:

1. Инициализация

Весовым коэффициентам всех нейронов присваиваются малые случайные значения и осуществляется их нормализация. Выбирается соответствующая потенциальная функция  и назначается начальное значение коэффициента усиления .

2. Выбор обучающего сигнала

Из всего множества векторов обучающих входных сигналов в соответствии с функцией распределения  выбирается один вектор , который представляет «сенсорный сигнал», предъявляемый сети.

3. Анализ отклика (выбор нейрона)

По формуле (2.1) определяется активированный нейрон.

4. Процесс обучения

В соответствии с алгоритмом (2.5) изменяются весовые коэффициенты активированного и соседних с ним нейронов до тех пор, пока не будет получено требуемое значение критерия качества обучения или не будет предъявлено заданное число обучающих входных векторов. Окончательное значение весовых коэффициентов совпадает с нормализованными векторами входов.

Поскольку сеть Кохонена осуществляет проецирование N-мерного пространства образов на М-мерную сеть, анализ сходимости алгоритма обучения представляет собой довольно сложную задачу.

Если бы с каждым нейроном слоя ассоциировался один входной вектор, то вес любого нейрона слоя Кохонена мог бы быть обучен с помощью одного вычисления, так как вес нейрона-победителя корректировался бы с  (в соответствии с (2.5) для одномерного случая вес сразу бы попадал в центр отрезка [а, b]). Однако обычно обучающее множество включает множество сходных между собой входных векторов, и сеть Кохонена должна быть обучена активировать один и тот же нейрон для каждого из них. Это достигается усреднением входных векторов путем уменьшения величины, а не при предъявлении каждого последующего входного сигнала. Таким образом, веса, ассоциированные с нейроном, усреднятся и примут значение вблизи «центра» входных сигналов, для которых данный нейрон является «победителем».

2.3 Выбор функции «соседства»

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

Рисунок 2.3 – Слой нейронов Кохонена

На практике же в качестве  выбирают функции, использующие евклидову метрику:

, (2.8)

где ,  — координаты i-гo и j-го нейронов.

К числу наиболее широко используемых потенциальных функций относятся:

а) колоколообразная функция Гаусса

, (2.9)

где - дисперсия отклонения;

Рисунок 2.4 – Колоколообразная функция Гаусса

б) функция «мексиканская шляпа»

, (2.10)

Рисунок 2.5 – Функция «мексиканская шляпа»

в) косинусоидная функция

 (2.11)

Рисунок 2.6 – Косинусоидная функция

г) конусообразная функция

 (2.12)

Рисунок 2.7 – Конусообразная функция

д) цилиндрическая функция

 (2.13)

Рисунок 2.8 – Цилиндрическая функция

2.4 Карта Кохонена

Как правило, сначала строят довольно грубую карту (модель разбиения), постепенно уточняя ее в процессе обучения. Для этого необходимо медленно изменять не только параметр , но и, например, параметр  в формуле (2.9). Одним из эффективных способов изменения этих параметров является следующий:

, (2.14)

, (2.15)

где ; ; ;  - параметры, определяющие крутизну функции ; - задаваемое число итераций.

На рисунке 2.9 показан процесс построения карты Кохонена, представляющей собой двумерную решетку, образованную путем соединения соседних нейронов, находящихся в узлах решетки. Исходя из начальных условий и используя алгоритм обучения (2.5), сеть по мере увеличения числа обучающих входных образов развивается и приобретает вид решетки. Внизу каждого рисунка поставлено количество образов, на основании которых получена соответствующая сеть.

Рисунок 2.9 – Построение карты Кохонена

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

Нейроны карты Кохонена располагают в виде двухмерной матрицы, раскрашивают эту матрицу в зависимости от анализируемых параметров нейронов.

На рисунке 2.10 приведен пример карты Кохонена.

Рисунок 2.10 – Пример карты Кохонена

На рисунке 2.11 приведена раскраска карты, а точнее, ее i-го признака, в трехмерном представлении. Как мы видим, темно-синие участки на карте соответствуют наименьшим значениям показателя, красные - самым высоким.

Рисунок 2.11 – Раскраска i-го признака в трехмерном пространстве

Теперь, возвращаясь к рисунку 2.10, мы можем сказать, какие объекты имеют наибольшие значения рассматриваемого показателя (группа объектов, обозначенная красным цветом), а какие - наименьшие значения (группа объектов, обозначенная синим цветом).

Таким образом, карты Кохонена можно отображать:

· в двухмерном виде, тогда карта раскрашивается в соответствии с уровнем выхода нейрона;

· в трехмерном виде.

В результате работы алгоритма получаем такие карты:

а) Карта входов нейронов.

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

б) Карта выходов нейронов.

На карту выходов нейронов проецируется взаимное расположение исследуемых входных данных. Нейроны с одинаковыми значениями выходов образуют кластеры - замкнутые области на карте, которые включают нейроны с одинаковыми значениями выходов.

в) Специальные карты.

Это карта кластеров, матрица расстояний, матрица плотности попадания и другие карты, которые характеризуют кластеры, полученные в результате обучения сети Кохонена.

Координаты каждой карты определяют положение одного нейрона. Так, координаты [15:30] определяют нейрон, который находится на пересечении 15-го столбца с 30-м рядом в матрице нейронов. Важно понимать, что между всеми рассмотренными картами существует взаимосвязь - все они являются разными раскрасками одних и тех же нейронов. Каждый пример из обучающей выборки имеет одно и то же расположение на всех картах.

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

При реализации сети Кохонена возникают следующие проблемы:

1. Выбор коэффициента обучения

Этот выбор влияет как на скорость обучения, так и на устойчивость получаемого решения. Очевидно, что процесс обучения ускоряется (скорость сходимости алгоритма обучения увеличивается) при выборе  близким к единице. Однако в этом случае предъявление сети различных входных векторов, относящихся к одному классу, приведет к изменениям соответствующего вектора весовых коэффициентов. Напротив, при 0 скорость обучения будет медленной, однако вектор весовых коэффициентов, достигнув центра класса, при подаче на вход сети различных сигналов, относящихся к одному классу, будет оставаться вблизи этого центра. Поэтому одним из путей ускорения процесса обучения при одновременном обеспечении получения устойчивого решения является выбор переменного  с  1 на начальных этапах обучения и  0 - на заключительных. К сожалению, такой подход не применим в тех случаях, когда сеть должна непрерывно подстраиваться к предъявляемым ей новым входным сигналам.

2. Рандомизация весов

Рандомизация весов слоя Кохонена может породить серьезные проблемы при обучении, так как в результате этой операции весовые векторы распределяются равномерно по поверхности гиперсферы. Как правило, входные векторы распределены неравномерно и группируются на относительно малой части поверхности гиперсферы. Поэтому большинство весовых векторов окажутся настолько удаленными от любого входного вектора, что не будут активированы и станут бесполезными. Более того, оставшихся активированных нейронов может оказаться слишком мало, чтобы разбить близко расположенные входные векторы на кластеры.

3. Выбор начальных значений векторов весовых коэффициентов и нейронов.

Если начальные значения выбраны неудачно, т. е. расположенными далеко от предъявляемых входных векторов, то нейрон не окажется победителем ни при каких входных сигналах, а, следовательно, не обучится.

На рисунке 2.12 показан случай, когда начальное расположение весов  и  привело к тому, что после обучения сети все предъявляемые образы классифицируют нейроны с весами , , и . Веса же  и  не изменились и могут быть удалены из сети.

а                          б

Рисунок 2.12 – Начальное (а) и конечное (б) положения векторов весов

4. Выбор параметра расстояния

Если сначала параметр  выбран малым или очень быстро уменьшается, то далеко расположенные друг от друга нейроны не могут влиять друг на друга. Хотя две части в такой карте настраиваются правильно, общая карта будет иметь топологический дефект (рисунок 2.13).

5. Количество нейронов в слое

Число нейронов в слое Кохонена должно соответствовать числу классов входных сигналов. Это может быть недопустимо в тех задачах, когда число классов заранее известно.

Рисунок 2.13 – Топологический дефект карты

6. Классы входных сигналов

Страницы: 1, 2, 3, 4, 5, 6


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.