Добавлен: 14.06.2023
Просмотров: 119
Скачиваний: 5
Математически работу нейрона можно выразить через следующие уравнения:
где x1,x2,...,xm – выходные сигналы; wk1,wk2,..., wkm – синаптические веса нейрона k; uk – линейная комбинация входных воздействий; bk – порог; φ() - функция активации; yk – выходной сигнал нейрона. Порог bk используется для достижения эффекта афинного преобразования выхода линейного сумматора uk. В нашей модели нейрона постсинаптический потенциал находится по следующей формуле:
vk = uk + bk. (1.2)
Здесь в зависимости от значений порога bk индуцированное локальное поле или потенциал активации vk нейрона k изменяется как продемонстрировано на рис.2. В результате афинного преобразования график vk не проходит через начало координат как график uk.
Рис 2. Афинное преобразование,
вызванное наличием порога.
Исходя из (1.2) формулы (1.1) можно преобразовать к следующему виду:
В выражении (1.3) добавляется новый синапс выходной сигнал которого равен:
x0 = +1,
а вес:
wk0 = bk.
Это позволяет трансформировать модель нейрона из рис. 1 к новому математически эквивалентному виду рис. 3
Рис. 3 Модель нейрона после
афинного преобразования
В новой модели нейрона в результате проведенных преобразований добавляется новый синапс с фиксированной величиной +1 и синаптическим весом равным порогу bk.
Искусственный нейрон на сегодняшний день не в состоянии в полной мере повторить свой биологический прототип, однако он представляет собой логическую схему, работающую по математическим формулам, которая обеспечивает реализацию основной идеи нейронных взаимодействий. Принимая сигналы с предшествующих нейронов, он преобразует сигналы исходя из заданных параметров обучения для достижения необходимых результатов в поставленных задачах.
Глава 4. Виды искусственных нейронных сетей.
За историю развития нейронных сетей было разработано большое количество вариаций отличающихся по нескольким критериям. В целом классификация нейронных сетей выгляди следующим образом рис. 4.
Рис. 4. Классификация нейронных сетей.
Как видно из схемы, нейронные сети классифицируются по следующим признакам:
По характеру обучения:
с учителем,
без учителя.
По настройке синаптических весов:
фиксированная,
динамическая.
По типу входной информации:
аналоговые,
двоичные.
По применяемой модели сети:
сети прямого распространения,
рекурентные нейронные сети,
радиально-базисные функции,
самоорганизующиеся карты.
Рассмотрим подробнее каждый критерий.
Характер обучения.
Обучение с учителем.
Обучение без учителя.
Настройка весов.
В сетях с фиксированными связями весовые коэффициенты нейронной сети задаются сразу, исходя из условия задачи.
В сетях с динамической настройкой веса настраиваются в процессе обучения сети.
Тип входной информации.
Входная информация может быть двоичной и аналоговой. В случае с аналоговой входные данные представляются в виде действительных чисел. Двоичная подразумевает представление всех вводных данных в виде нулей и единиц.
Применяемая модель нейронной сети.
Сети прямого распространения.[17]
Рис.5. Сеть прямого распределения.
В сетях прямого распространения все связи направлены строго от входных нейронов к выходным, нейроны одного слоя не связаны между собой, каждый нейрон каждого слоя связан со всеми нейронами соседнего слоя. Простейший вариант такой сети будет состоять из двух входных нейронов и одного выходного (Рис. 6). Сети прямого распространения обычно обучаются методом обратного распространения ошибки. В работе чаще используют сети прямого распространения вместе с другими сетями нежели самостоятельно из за сопутствующих ограничений таких сетей.
Рис. 6. Простейшая сеть
прямого распределения.
Радиально базисные функции.[18]
Рис. 7. Радиально базисная функция.
Отличие от сетей прямого распространения заключается в том, что нейроны скрытого слоя имеют нелинейную функцию активации, а синаптические веса входного и скрытого слоев равны единице. К преимуществам таких сетей можно отнести их компактность и высокую скорость обучения.
Реккурентные нейронные сети.[19]
Рис. 8. Рекуррентная нейронная сеть.
Отличие от сетей прямого распространения состоит в том что сигнал с выходных нейронов или нейронов скрытого слоя частично передается обратно на входы нейронов входного слоя. В рекуррентных сетях имеет значение порядок подачи информации при обучении так как результат для разных порядков будет отличатся.
Самоорганизующиеся карты или Сети Кохонена.[20]
Рис. 9. Сеть Кохонена.
Сети этого типа способны выявлять новизну во входных данных: если после обучения сеть получит новый набор данных непохожий на уже изученные образцы, то она не сможет классифицировать этот набор, что будет свидетельствовать о его новизне.
На практике существует гораздо более богатое разнообразие нейронных сетей которые используют комбинации описанных моделей нейронных сетей. Каждая модель создаваемая инженерами служит для выполнения своей определенной задачи, и обладает своим набором достоинств и недостатков. Составить полный список всех топологий сетей не представляется возможным по скольку постоянно появляются новые. Выше мы вкратце разобрали основные архетипы топологий которые в том или ином виде служат кирпичиками для создания на их основе новых более сложных и продвинутых сетей для всех типов решаемых задач.
Глава 5. Обучение нейронных сетей.
Основным отличием нейронных сетей от других систем обработки информации является возможность обучения нейронной сети в результате которого сеть повышает свою производительность. Обучение происходит в результате корректировки синаптических весов и порогов в процессе многочисленных обучающий прогонов проходящий по определенным правилам.
У процесса обучения нет четкого определения по скольку с этим понятием связано большое количество видов деятельности и разных взглядов на само понятие обучения. Для нас возможно использовать следующее определение:
Обучение — это процесс, в котором свободные параметры нейронной сети настраиваются по средствам моделирования среды, в которую эта нейронная сеть встроена. Тип обучения определяется способом подстройки этих параметров.[21]
Это определение предполагает следующую последовательность событий:
- Поступление в нейронную сеть стимулов из внешней среды.
- Изменение свободных параметров сети.
- Изменения ответа сети на возбуждения после изменения внутренних параметров.
Вышеуказанные правила процесса обучения называются алгоритмом обучения. Существует большое количество алгоритмов обучения каждый из которых обладает своими преимуществам, недостатками и особенностями. Далее рассмотрим основные модели обучения нейронных сетей.
Обучение основанное на коррекции ошибок.
Для иллюстрации рассмотрим схему нейрона k — единственного вычислительного узла выходного слоя нейронной сети прямого распространения (рис. 10).
Рис. 10. Многослойная сеть
прямого распространения.
Как видно из изображения нейрон k работает под управлением вектора сигнала x(n), исходящего от одного или нескольких слоев скрытых нейронов, которые в свою очередь получают информацию от вектора входного сигнала. Под n подразумевается номер итерации процесса обучения сети, или, дискретное время. yk(n) – единственный выходной сигнал нейрона k, который будет сравниваться с dk(n) – желаемым выходом. В результате сравнения получаем сигнал ошибки ek(n). По определению ek(n) = dk(n) – yk(n).
Сигнал ошибки запускает процесс управления который применяет последовательность корректировок к синаптическим весам нейрона k с целью приближения выходного сигнала yk(n) к желаемому dk(n). Эта цель достигается путем минимизации индекса производительности E(n) который через сигнал ошибки выражается так:
E(n) = ½ e² k(n)
где E(n) — текущее значение энергии ошибки. Пошаговая корректировка синаптических весов нейрона k происходит до тех пор пока система не достигнет устойчивого состояния, после этого процесс обучения останавливается.
Функция стоимости E(n) минимизируется по правилу Видроу-Хоффа[22] Обозначим wkj(n) текущее значение синаптического веса wkj нейрона k, соответствующего элементу xj(n) вектора x(n), на шаге дискретизации n. По дельта правилу — изменение Δwkj(n) синаптического веса wkj на данном шаге, задается выражением
где Ƞ — положительная константа, определяющая скорость обучения при переходе от одного шага обучения к другому. Так-же константу Ƞ называют параметром скорости обучения. Определение дельта правила звучит так: Дельта — правило — это корректировка, применяемая к синаптическому весу нейрона, пропорциональна произведению сигнала ошибки на входной сигнал, его вызвавший. Параметр скорости обучения Ƞ является решающим в процессе обучения нейронной сети по скольку обеспечивает сходимость итеративного процесса, а так-же влияет на скорость обучения и другие параметры следовательно требуется тщательно подбирать этот параметр для оптимизации процесса обучения.
Обучение на основе памяти.
Обучение на основе памяти подразумевает накопление всего прошлого опыта в большое хранилище правильно классифицированных примеров вида вход-выход: где xi – входной вектор, di – соответствующий ему желаемый выходной сигнал. Для примера возьмем задачу классификации на два класса С1 и С2. В данной задаче отклик системы di, принимает значение 0 для С1 и +1 для С2. При необходимости классификации некоторого неизвестного вектора xtest, из хранилища подбирается подбирается выход наиболее близкий к xtest.
Для алгоритмов на основе памяти всегда будут существенны следующие компоненты:
Критерий определения окрестности xtest .
Правило обучения применяемое к примеру из xtest.
Разные обучения на основе памяти будут отличатся реализацией этих компонентов.
Обучение Хебба.
В основе обучения Хебба лежит наблюдение нейрофизиолога за биологическими процессами происходящими между нейронами в процессе работы мозга. Так Хебб заметил что если аксон одного нейрона находится достаточно близко к другому, и постоянно или периодически участвует в ее возбуждении, то сила возбуждения второго нейрона первым возрастает. Таким образом в основе данного метода обучения лежат 2 следующих правила:
- Если два нейрона по обе стороны синапса активизируются синхронно, то прочность этого соединения возрастает.[23]
- Если два нейрона по обе стороны синапса активизируются асинхронно, то такой синапс ослабляет или вообще отмирает[24].
Работающий по этим правилам синапс называется синапсом Хебба. Синапс Хебба обладает следующими основными свойствами:
1. Зависимость от времени возникновения постсинаптического и предсинаптического сигналов.
2. Локальность. Информационные сигналы в синапсе находятся в пространственно-временной близости. Эта информация используется синапсом Хебба для выполнения локальных синаптических модификаций, характерных для данного входного сигнала.
3. Интерактивность. Обучение синапса происходит в зависимости от взаимодействий обоих постсинаптического и предсинаптического сигналов.
- Корреляция. Подразумевается корреляция постсинаптического и предсинаптического сигналов во времени.
Конкурентное обучение.
В конкурентном обучении нейроны соревнуются между собой за право быть активизированными. В отличии от предыдущего метода в конкурентном методе одновременно может быть активен лишь один нейрон.