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

Нейронной сети. 
Сеть Кохонена

РефератПомощь в написанииУзнать стоимостьмоей работы

Нейроны, входящие в слои получают входящие сигналы, преобразовывают их и передают сигналы нейронам 1-го скрытого слоя. Дальше срабатывают нейроны 1-го скрытого слоя, передают сигналы на 2-й скрытый слой и т. д. если не оговорено противное, то каждый выходной сигнал q-го слоя передается на любой нейрон (q+1) — слоя. Если от блока, А к блоку С идут только лишь возбуждающие связи, это означает, что… Читать ещё >

Нейронной сети. Сеть Кохонена (реферат, курсовая, диплом, контрольная)

Однослойные искусственные нейронные сети.

Однослойная нейронная сеть Y=XW.

Рис. 4. Однослойная нейронная сеть Y=XW.

Нейронная сеть состоит из множества одинаковых элементов — нейронов. Нейрон моделируется как устройство, имеющее несколько входов (дендриты) и 1 выход (аксион). Каждому выходу ставится в соответствие некоторый весовой коэффициент .

Внутри самого нейрона происходит взвешенное суммирование входных сигналов. Получаемые значение являются аргументом оптимизационной функции нейрона. Простейшая нейронная сеть состоит из групп нейронов, которые образуют некоторый слой. Удобно считать веса w элементами некоторой матрицы w, которая имеет m строк и n столбцов. Т.о. выходом нейронной сети будет вектор y=w*x, где х — вектор входов, w — матрица, указывающая на возможные соединения.

Нейронной сети. Сеть Кохонена.

Многослойные искусственные нейронные сети.

Многослойная нейронная сеть.

Рис. 5. Многослойная нейронная сеть

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

Многослойные сети могут привести к увеличению вычислительной мощности по отношению к однослойным сетям.

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

Будучи соединенными определенные обработанные нейроны обрабатывают нейронную сеть. Работа сети разделяется на обучение и адаптацию.

Обучение — процесс адаптации сети, предъявляемый эталонным образом путем модификации весовых коэффициентов между нейронами.

Основным преимуществом нейронных сетей является возможность выразить зависимость входа/выхода на этапе обучения без предварительной аналитической работы.

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

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

Обучение с учителем — аналог обучения нейронных сетей.

Обучение с учителем предполагает, что для каждого входного вектора существует целевой вектор, представляющий собой требуемый выход. Эти 2 вектора — обучающая пара. Векторы предъявляются последовательно, пока ошибка не будет на допустимо низком уровне.

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

Алгоритм обучения — такой набор формул, позволяющий по вектору ошибки вычислять требуемые поправки для весов сети.

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

  • 1) Алгоритм локальной оптимизации с вычислением частных производных 1-го порядка
  • 2) Алгоритмы локальной оптимизации с вычислением частичных производных 1-го и 2-го порядка (м-д Ньютона, м-д Гаусса и др.)
  • 3) Стохастические методы оптимизации (м-д Монте Карло, поезд в случае направлении и т. д.)
  • 4) Алгоритмы глобальной оптимизации (решается с помощью перебора значений переменных)

Классификация нейронных сетей и их свойства.

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

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

Считается, что практически любую задачу распознания можно свести к задаче, решаемой нейронной сетью.

В зависимости от функций, выполненных нейронами сети, можно выделить 3 их этапа:

  • 1. Входные нейроны (те, на которые подается входящий вектор или входящий сигнал, кодирующий образ внешней среды). Во входящем нейроне обычно никаких вычислений не происходит, просто информация передается со входа на выход, путем изменения его активации.
  • 2. Выходные нейроны (те, значения которых представляют выход сети).
  • 3. Промежуточные нейроны (составляют основу искусственных нейронных сетей).

Топология нейронных сетей Классификация по топологии:

полносвязные сети;

многослойные, или слоистые сети;

слабосвязные сети (нейронные сети с локальными связями).

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

Многослойные нейроны объединяются в слои. Слой содержит совокупность нейронов с едиными входящими сигналами. Число нейронов в каждом слое может быть любым и это никак не связано с количеством нейронов в других слоях. В общих слоях такая сеть состоит из Q-слоев. Слои нумеруются слева направо.1-й слой нумеруется нулевым. Кроме входящих и выходящих слоев в многослойной нейронной сети есть 1 или несколько промежуточных (скрытых) слоев. Связи от выходов некоторого слоя q поступают на вход слоя (q+1) — эти связи называются последовательными.

В свою очередь среди слоистых сетей выделяют следующие типы:

  • 1. Монотонные.
  • 2. Сети без обратных связей.
  • 3. Сети с обратными связями.
Нейронной сети. Сеть Кохонена.

1) Монотонные сети.

Каждый слой, кроме последовательного выходного, разбит на 2 блока: возбуждающий (В) и тормозящий (Т). Связи между блоками тоже разделены на возбуждающие и тормозящие.

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

Для элементов монотонных сетей необходимо монотонная зависимость выходящего сигнала от входящего сигнала.

2) Сети без обратных связей.

Нейроны, входящие в слои получают входящие сигналы, преобразовывают их и передают сигналы нейронам 1-го скрытого слоя. Дальше срабатывают нейроны 1-го скрытого слоя, передают сигналы на 2-й скрытый слой и т. д. если не оговорено противное, то каждый выходной сигнал q-го слоя передается на любой нейрон (q+1) — слоя.

Однако, возможны варианты соединения q-слоя с (q+p) — слоем (p).

Одним из классических вариантов слоистых сетей является сети прямого распространения.

3) Сети с обратной связью.

У них информация с последующих слоев можно передать на предыдущие.

Сети можно разделить по принципу структуры нейронов:

гомогенные (состоят из нейронов одного вида с единой функцией активации) гетерогенные (могут входить нейроны с различными функциями активации) Бывают:

бинарные сети (оперируют только лишь двоичными сигналами; выход каждого нейрона принимает только 2 значения: логичный 0 (заторможенное состояние) и логичный 1 (возбужденное состояние)).

аналоговые сети Сети:

асинхронные (в каждый момент t меняет свое состояние только лишь 1 нейрон) синхронные (в каждый момент t состояние меняется у группы нейронов (всего слоя)).

Существует также классификация по количеству слоев. Теоретически число слоев и число нейронов в каждом слое может быть произвольным количеством.

Чем сложнее нейронная сеть, тем масштабнее задачи, которые могут на ней решатся.

Теорема о полноте.

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

Нейронные сети являют универсальными аппроксимирующими системами.

Сеть встречного распространения (сеть Кохонена) В качестве меры близости двух векторов обычно выбирается евклидово расстояние:

d (x, y) = (xi-yi).

Сеть Кохонена (T. Kohonen) состоит из одного слоя нейронов. Число входов каждого нейрона n равно размерности вектора параметров объекта. Количество нейронов совпадает с требуемым числом классов, на которые нужно разбить объекты (меняя число нейронов, можно динамически менять число классов).

Новыми прототипами становятся центроиды векторов. В качестве меры близости выступает евклидово расстояние. Сеть Кохонена обучается без учителя на основе самоорганизации. По мере обучения векторы весов нейронов становятся прототипами классов. На этапе решения информационной задачи сеть относит предъявленный объект к 1 из классов.

Для каждого j-го нейрона (j=1,2,…, m) определяет расстояние от него до входного вектора Х:

Нейронной сети. Сеть Кохонена.

Обучение начинается с задания небольшого случайного значения весовой матрицы W. В дальнейшем: процесс самоорганизации: модификация W при предъявлении входного вектора.

Выбирается нейрон с номером k, 1 km, для которого это расстояние минимально. На текущем шаге обучения N будут модифицироваться только веса нейронов из окрестности нейрона k:

Темп обучения N с течением времени уменьшается (0 =0,9, aN+1 = N — 0,001).

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

Алгоритм обучения сети Кохонена Шаг 1. Инициализация сети. Весовым коэффициентам сети wij, i=1,2…, n, j=1,2,…, m присваиваются малые случайные значения. Задаются значения 0 — начальный темп обучения и Do — максимальное расстояние между весовыми векторами (столбцами матрицы W).

Шаг 2. Предъявление сети нового входного сигнала X.

Шаг 3. Вычисление расстояния от входа X до всех нейронов сети:

Нейронной сети. Сеть Кохонена.

Шаг 4. Выбор нейрона k, 1 km с наименьшим расстоянием dk.

Шаг 5. Настройка весов нейрона k и всех нейронов, находящихся от него на расстоянии, не превосходящем DN:

Шаг 6. Уменьшение значений N, DN.

Шаг 7. Шаги 2−6 повторяются до тех пор, пока веса не перестанут меняться (или пока суммарное изменение всех весов станет очень мало).

Нейронной сети. Сеть Кохонена.

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

Показать весь текст
Заполнить форму текущей работой