Решение задач кластеризации и аппроксимации в нейросетевом логическом базисе. Описание сети Кохонена (алгоритм работы)

Страницы работы

Содержание работы

Санкт-Петербургский Государственный Морской Технический

Университет

Факультет морского приборостроения

кафедра 35

Курсовая записка к работе по дисциплине

«Морские интеллектуальные системы»

Тема: Решение задач кластеризации и аппроксимации в

нейросетевом логическом базисе.

ВЫПОЛНИЛ:

 студент группы 3511

ПРОВЕРИЛ:

Преподаватель:  

1998 год

весенний семестр

Содержание

1.  Введение.                                                                                               3

2.Раздел I. Задача кластеризации.                                                       3

2.1. Описание сети Кохонена (алгоритм работы).                              3

2.2.Алгоритм обучения.                                                                         3

2.3. Описание тестового примера.                                                        4

2.4.Программный комплекс.                                                                 5

2.5.Результаты решения задачи.                                                         9

3.  Раздел II. Задача аппроксимации функции 2-х переменных.   11

3.1.Описание структуры многослойной сети.                                  11

3.2.Алгоритм обучения.                                                                       11

3.3.Тестовый пример.                                                                          13

3.4.Описание этапов решения задачи на эмуляторе.                    13

3.5.  Результаты решения задачи.                                                       14

4. Заключение                                                                                             16

1. Введение.

В данной курсовой работе с помощью языка программирования Borland С++ 3.1 была составлена программа, содержащая описание функций, решающих следующие задачи:  моделирование работы сети Кохонена, её обучение и выполнение тестового примера.

С помощью эмулятора многослойной нейронной сети WinNN была решена задача аппроксимации функции двух переменных, имеющей следующий вид:

2. Раздел I. Задача кластеризации.

2.1 Описание сети Кохонена (алгоритм работы).

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

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

Сила синоптических связей зависит от расстояния между нейронами слоя Кохонена и определяется функцией, которая имеет вид «мексиканской шляпы». Такой вид связи обеспечивает взаимное усиление сигнала близкими нейронами и ослабление влияния дальних нейронов. Это позволяет формировать более контрастную границу раздела возбуждённых нейронов от остальных.

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

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

2.2 Алгоритм обучения.

Шаг 1

Формируется обучающая последовательность  x1, x2, ... , xs, ... , xm.

На этом же шаге случайно выбираются начальные значения синоптических весов aij,  i=1,k  ,  j=1,n.

t=1

Шаг 2

На вход сети подается первый обучающий вектор.  s=1

Шаг 3

Определяется отклики всех нейронов слоя Кохонена по формуле:

yj=aij*xsi ,  j=1,n

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

Шаг 4

Выбирается нейрон победитель, т.е. нейрон с наибольшим откликом.

c=yj*=max yj

j=1,n

Шаг 5

Выполняется коррекция весов по следующей формуле:

aij=aij+g*g(r,t)*(xsi-aij)

где g - const, характеризующая скорость обучения.

Шаг 6

Переход к следующему вектору обучающей последовательности.

s=s+1

Если s m  идти к 3.

Шаг 7

Если ||aij - aij||<e , то t=t+1,    иначе идти к 2, где ||...|| выбранная норма близости.

Шаг 8

Если t<T идти к 2.

Шаг 9

Формируются синоптические веса aij и таблица.

 


x1        x2          ...            xs           ...               xm   

Похожие материалы

Информация о работе