Биологический и искусственный нейроны. Банки и страховые компании

Искусственный нейрон

Схема искусственного нейрона
1.Нейроны, выходные сигналы которых поступают на вход данному
2.Сумматор входных сигналов
3.Вычислитель передаточной функции
4.Нейроны, на входы которых подаётся выходной сигнал данного
5. - веса входных сигналов

Иску́сственный нейро́н (Математический нейрон Маккалока - Питтса , Формальный нейрон ) - узел искусственной нейронной сети , являющийся упрощённой моделью естественного нейрона . Математически, искусственный нейрон обычно представляют как некоторую нелинейную функцию от единственного аргумента - линейной комбинации всех входных сигналов. Данную функцию называют функцией активации или функцией срабатывания , передаточной функцией . Полученный результат посылается на единственный выход. Такие искусственные нейроны объединяют в сети - соединяют выходы одних нейронов с входами других. Искусственные нейроны и сети являются основными элементами идеального нейрокомпьютера .

Биологический прототип

Биологический нейрон состоит из тела диаметром от 3 до 100 мкм, содержащего ядро (с большим количеством ядерных пор) и другие органеллы (в том числе сильно развитый шероховатый ЭПР с активными рибосомами , аппарат Гольджи), и отростков. Выделяют два вида отростков. Аксон - обычно длинный отросток, приспособленный для проведения возбуждения от тела нейрона. Дендриты - как правило, короткие и сильно разветвлённые отростки, служащие главным местом образования влияющих на нейрон возбуждающих и тормозных синапсов (разные нейроны имеют различное соотношение длины аксона и дендритов). Нейрон может иметь несколько дендритов и обычно только один аксон. Один нейрон может иметь связи с 20-ю тысячами других нейронов. Кора головного мозга человека содержит 10-20 миллиардов нейронов.

История развития

При этом возможен сдвиг функции по обеим осям (как изображено на рисунке).

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

Пороговая функция активации

Пороговая передаточная функция

Гиперболический тангенс

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

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

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

Другие функции передачи

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

Стохастический нейрон

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

где распределение вероятности обычно имеет вид сигмоида

a нормировочная константа вводится для условия нормализации распределения вероятности . Таким образом, нейрон активируется с вероятностью P(u). Параметр T - аналог температуры (но не температуры нейрона!) и определяет беспорядок в нейронной сети. Если Т устремить к 0, стохастический нейрон перейдет в обычный нейрон с передаточной функцией Хевисайда (пороговой функцией).

Моделирование формальных логических функций

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

Примечания

Литература

  • Терехов В.А., Ефимов Д.В., Тюкин И.Ю. Нейросетевые системы управления. - 1-е. - Высшая школа, 2002. - С. 184. - ISBN 5-06-004094-1
  • Круглов В. В., Борисов В. В.

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

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

Упрощение

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

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

Биологическая структура → схема

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

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

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

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

Электрические сигналы → числа

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

Электрический сигнал всегда будет электрическим сигналом. Концептуально ничего не изменяется. Но что же тогда меняется? Меняется величина этого электрического сигнала (сильнее/слабее). А любую величину всегда можно выразить числом (больше/меньше).

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

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

Для удобства все равно будем называть наши числа, циркулирующие в сети, сигналами.

Синапсы → веса связей

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

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

Это ключевой момент в концепции искусственных нейронных сетей, я объясню его подробнее. Посмотрите на картинку ниже. Теперь каждой черной стрелке (связи) на этой картинке соответствует некоторое число ​\(w_i \) ​ (вес связи). И когда сигнал проходит по этой связи, его величина умножается на вес этой связи.

На приведенном выше рисунке вес стоит не у каждой связи лишь потому, что там нет места для обозначений. В реальности у каждой ​\(i \) ​-ой связи свой собственный ​\(w_i \) ​-ый вес.

Искусственный нейрон

Теперь мы переходим к рассмотрению внутренней структуры искусственного нейрона и того, как он преобразует поступающий на его входы сигнал.

На рисунке ниже представлена полная модель искусственного нейрона.

Не пугайтесь, ничего сложного здесь нет. Давайте рассмотрим все подробно слева направо.

Входы, веса и сумматор

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

Поступившие на входы сигналы умножаются на свои веса. Сигнал первого входа ​\(x_1 \) ​ умножается на соответствующий этому входу вес ​\(w_1 \) ​. В итоге получаем ​\(x_1w_1 \) ​. И так до ​\(n \) ​-ого входа. В итоге на последнем входе получаем ​\(x_nw_n \) ​.

Теперь все произведения передаются в сумматор. Уже исходя из его названия можно понять, что он делает. Он просто суммирует все входные сигналы, умноженные на соответствующие веса:

\[ x_1w_1+x_2w_2+\cdots+x_nw_n = \sum\limits^n_{i=1}x_iw_i \]

Математическая справка

Сигма – Википедия

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

Рассмотрим простейший вариант записи:

\[ \sum\limits^5_{i=1}i=1+2+3+4+5 \]

Таким образом снизу сигмы мы присваиваем переменной-счетчику ​\(i \) ​ стартовое значение, которое будет увеличиваться, пока не дойдет до верхней границы (в примере выше это 5).

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

Пусть у нас есть ​\(n \) магазинов. У каждого магазина есть свой номер: от 1 до ​\(n \) ​. Каждый магазин приносит прибыль. Возьмем какой-то (неважно, какой) ​\(i \) ​-ый магазин. Прибыль от него равна ​\(p_i \) ​.

\[ P = p_1+p_2+\cdots+p_i+\cdots+p_n \]

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

\[ P=\sum\limits^n_{i=1}p_i \]

Словами: «Просуммируй прибыли всех магазинов, начиная с первого и заканчивая ​\(n \) ​-ым». В виде формулы это гораздо проще, удобнее и красивее.

Результатом работы сумматора является число, называемое взвешенной суммой.

Взвешенная сумма (Weighted sum ) (​\(net \) ​) - сумма входных сигналов, умноженных на соответствующие им веса.

\[ net=\sum\limits^n_{i=1}x_iw_i \]

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

Пример

Для понимания роли последнего компонента искусственного нейрона – функции активации – я приведу аналогию.

Давайте рассмотрим один искусственный нейрон. Его задача – решить, ехать ли отдыхать на море. Для этого на его входы мы подаем различные данные. Пусть у нашего нейрона будет 4 входа:

  1. Стоимость поездки
  2. Какая на море погода
  3. Текущая обстановка с работой
  4. Будет ли на пляже закусочная

Все эти параметры будем характеризовать 0 или 1. Соответственно, если погода на море хорошая, то на этот вход подаем 1. И так со всеми остальными параметрами.

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

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

Пусть на входы нашего нейрона мы подаем следующие сигналы:

Умножаем веса входов на сигналы соответствующих входов:

Взвешенная сумма для такого набора входных сигналов равна 6:

\[ net=\sum\limits^4_{i=1}x_iw_i = 5 + 0 + 0 + 1 =6 \]

Вот на сцену выходит функция активации.

Функция активации

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

Она преобразует взвешенную сумму в какое-то число, которое и является выходом нейрона (выход нейрона обозначим переменной ​\(out \) ​).

Для разных типов искусственных нейронов используют самые разные функции активации. В общем случае их обозначают символом ​\(\phi(net) \) ​. Указание взвешенного сигнала в скобках означает, что функция активации принимает взвешенную сумму как параметр.

Функция активации (Activation function )(​\(\phi(net) \) ​) - функция, принимающая взвешенную сумму как аргумент. Значение этой функции и является выходом нейрона (​\(out \) ​).

Функция единичного скачка

Самый простой вид функции активации. Выход нейрона может быть равен только 0 или 1. Если взвешенная сумма больше определенного порога ​\(b \) ​, то выход нейрона равен 1. Если ниже, то 0.

Как ее можно использовать? Предположим, что мы поедем на море только тогда, когда взвешенная сумма больше или равна 5. Значит наш порог равен 5:

В нашем примере взвешенная сумма равнялась 6, а значит выходной сигнал нашего нейрона равен 1. Итак, мы едем на море.

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

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

Графически эту функцию активации можно изобразить следующим образом.

На горизонтальной оси расположены величины взвешенной суммы. На вертикальной оси - значения выходного сигнала. Как легко видеть, возможны только два значения выходного сигнала: 0 или 1. Причем 0 будет выдаваться всегда от минус бесконечности и вплоть до некоторого значения взвешенной суммы, называемого порогом. Если взвешенная сумма равна порогу или больше него, то функция выдает 1. Все предельно просто.

Теперь запишем эту функцию активации математически. Почти наверняка вы сталкивались с таким понятием, как составная функция. Это когда мы под одной функцией объединяем несколько правил, по которым рассчитывается ее значение. В виде составной функции функция единичного скачка будет выглядеть следующим образом:

\[ out(net) = \begin{cases} 0, net < b \\ 1, net \geq b \end{cases} \]

В этой записи нет ничего сложного. Выход нейрона (​\(out \) ​) зависит от взвешенной суммы (​\(net \) ​) следующим образом: если ​\(net \) ​ (взвешенная сумма) меньше какого-то порога (​\(b \) ​), то ​\(out \) ​ (выход нейрона) равен 0. А если ​\(net \) ​ больше или равен порогу ​\(b \) ​, то ​\(out \) ​ равен 1.

Сигмоидальная функция

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

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

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

График этой функции выглядит достаточно просто. Если присмотреться, то можно увидеть некоторое подобие английской буквы ​\(S \) ​, откуда и пошло название семейства этих функций.

А вот так она записывается аналитически:

\[ out(net)=\frac{1}{1+\exp(-a \cdot net)} \]

Что за параметр ​\(a \) ​? Это какое-то число, которое характеризует степень крутизны функции. Ниже представлены логистические функции с разным параметром ​\(a \) ​.

Вспомним наш искусственный нейрон, определяющий, надо ли ехать на море. В случае с функцией единичного скачка все было очевидно. Мы либо едем на море (1), либо нет (0).

Здесь же случай более приближенный к реальности. Мы до конца полностью не уверены (в особенности, если вы параноик) – стоит ли ехать? Тогда использование логистической функции в качестве функции активации приведет к тому, что вы будете получать цифру между 0 и 1. Причем чем больше взвешенная сумма, тем ближе выход будет к 1 (но никогда не будет точно ей равен). И наоборот, чем меньше взвешенная сумма, тем ближе выход нейрона будет к 0.

Например, выход нашего нейрона равен 0.8. Это значит, что он считает, что поехать на море все-таки стоит. Если бы его выход был бы равен 0.2, то это означает, что он почти наверняка против поездки на море.

Какие же замечательные свойства имеет логистическая функция?

  • она является «сжимающей» функцией, то есть вне зависимости от аргумента (взвешенной суммы), выходной сигнал всегда будет в пределах от 0 до 1
  • она более гибкая, чем функция единичного скачка – ее результатом может быть не только 0 и 1, но и любое число между ними
  • во всех точках она имеет производную, и эта производная может быть выражена через эту же функцию

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

Гиперболический тангенс

Однако есть и еще одна сигмоида – гиперболический тангенс. Он применяется в качестве функции активации биологами для более реалистичной модели нервной клетки.

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

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

\[ out(net) = \tanh\left(\frac{net}{a}\right) \]

В данной выше формуле параметр ​\(a \) ​ также определяет степень крутизны графика этой функции.

А вот так выглядит график этой функции.

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

Что мы узнали?

Теперь вы получили полное представление о внутренней структуре искусственного нейрона. Я еще раз приведу краткое описание его работы.

У нейрона есть входы. На них подаются сигналы в виде чисел. Каждый вход имеет свой вес (тоже число). Сигналы на входе умножаются на соответствующие веса. Получаем набор «взвешенных» входных сигналов.

Затем взвешенная сумма преобразуется функцией активации и мы получаем выход нейрона .

Сформулируем теперь самое короткое описание работы нейрона – его математическую модель:

Математическая модель искусственного нейрона с ​\(n \) ​ входами:

где
​\(\phi \) ​ – функция активации
\(\sum\limits^n_{i=1}x_iw_i \) ​ – взвешенная сумма, как сумма ​\(n \) ​ произведений входных сигналов на соответствующие веса.

Виды ИНС

Мы разобрались со структурой искусственного нейрона. Искусственные нейронные сети состоят из совокупности искусственных нейронов. Возникает логичный вопрос – а как располагать/соединять друг с другом эти самые искусственные нейроны?

Как правило, в большинстве нейронных сетей есть так называемый входной слой , который выполняет только одну задачу – распределение входных сигналов остальным нейронам. Нейроны этого слоя не производят никаких вычислений.

Однослойные нейронные сети

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

Выглядит однослойная нейронная сеть следующим образом:

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

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

Однослойная нейронная сеть (Single-layer neural network ) - сеть, в которой сигналы от входного слоя сразу подаются на выходной слой, который и преобразует сигнал и сразу же выдает ответ.

Многослойные нейронные сети

Такие сети, помимо входного и выходного слоев нейронов, характеризуются еще и скрытым слоем (слоями). Понять их расположение просто – эти слои находятся между входным и выходным слоями.

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

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

Многослойные нейронные сети обладают гораздо большими возможностями, чем однослойные.

Работу скрытых слоев нейронов можно сравнить с работой большого завода. Продукт (выходной сигнал) на заводе собирается по стадиям. После каждого станка получается какой-то промежуточный результат. Скрытые слои тоже преобразуют входные сигналы в некоторые промежуточные результаты.

Многослойная нейронная сеть (Multilayer neural network ) - нейронная сеть, состоящая из входного, выходного и расположенного(ых) между ними одного (нескольких) скрытых слоев нейронов.

Сети прямого распространения

Можно заметить одну очень интересную деталь на картинках нейросетей в примерах выше.

Во всех примерах стрелки строго идут слева направо, то есть сигнал в таких сетях идет строго от входного слоя к выходному.

Сети прямого распространения (Feedforward neural network ) (feedforward сети) - искусственные нейронные сети, в которых сигнал распространяется строго от входного слоя к выходному. В обратном направлении сигнал не распространяется.

Такие сети широко используются и вполне успешно решают определенный класс задач: прогнозирование, кластеризация и распознавание.

Однако никто не запрещает сигналу идти и в обратную сторону.

Сети с обратными связями

В сетях такого типа сигнал может идти и в обратную сторону. В чем преимущество?

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

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

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

Сети с обратными связями (Recurrent neural network ) - искусственные нейронные сети, в которых выход нейрона может вновь подаваться на его вход. В более общем случае это означает возможность распространения сигнала от выходов к входам.

Обучение нейронной сети

Теперь давайте чуть более подробно рассмотрим вопрос обучения нейронной сети. Что это такое? И каким образом это происходит?

Что такое обучение сети?

Искусственная нейронная сеть – это совокупность искусственных нейронов. Теперь давайте возьмем, например, 100 нейронов и соединим их друг с другом. Ясно, что при подаче сигнала на вход, мы получим что-то бессмысленное на выходе.

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

Что мы можем менять в нейронной сети?

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

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

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

Остается только один вариант – менять веса связей .

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

Такой подход к термину «обучение нейронной сети» соответствует и биологическим нейросетям. Наш мозг состоит из огромного количества связанных друг с другом нейросетей. Каждая из них в отдельности состоит из нейронов одного типа (функция активации одинаковая). Мы обучаемся благодаря изменению синапсов – элементов, которые усиливают/ослабляют входной сигнал.

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

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

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

Обучающая выборка (Training set ) - конечный набор входных сигналов (иногда вместе с правильными выходными сигналами), по которым происходит обучение сети.

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

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

Тестовая выборка (Testing set ) - конечный набор входных сигналов (иногда вместе с правильными выходными сигналами), по которым происходит оценка качества работы сети.

Мы поняли, что такое «обучение сети» – подбор правильного набора весов. Теперь возникает вопрос – а как можно обучать сеть? В самом общем случае есть два подхода, приводящие к разным результатам: обучение с учителем и обучение без учителя.

Обучение с учителем

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

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

Затем, с помощью специальных алгоритмов, вы меняете веса связей нейронной сети и снова даете ей входной сигнал. Сравниваете ее ответ с правильным и повторяете этот процесс до тех пор, пока сеть не начнет отвечать с приемлемой точностью (как я говорил в 1 главе, однозначно точных ответов сеть давать не может).

Обучение с учителем (Supervised learning ) - вид обучения сети, при котором ее веса меняются так, чтобы ответы сети минимально отличались от уже готовых правильных ответов.

Где взять правильные ответы?

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

Если мы хотим, чтобы сеть прогнозировала рост/падение цен, то обучающую выборку надо делать, основываясь на прошлых данных. В качестве входных сигналов можно брать определенные дни, общее состояние рынка и другие параметры. А в качестве правильных ответов – рост и падение цены в те дни.

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

Обучение без учителя

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

Что же происходит при таком обучении сети? Оказывается, что при таком «обучении» сеть начинает выделять классы подаваемых на вход сигналов. Короче говоря – сеть начинает кластеризацию.

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

Обучение без учителя (Unsupervised learning ) - вид обучения сети, при котором сеть самостоятельно классифицирует входные сигналы. Правильные (эталонные) выходные сигналы не демонстрируются.

Выводы

В этой главе вы узнали все о структуре искусственного нейрона, а также получили полное представление о том, как он работает (и о его математической модели).

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

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

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

Вопросы и задачи

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

Опишите упрощения ИНС по сравнению с биологическими нейросетями.

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

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

Функцию активации часто обозначают за ​\(\phi(net) \) ​.

Запишите математическую модель искусственного нейрона.

Искусственный нейрон c ​\(n \) ​ входами преобразовывает входной сигнал (число) в выходной сигнал (число) следующим образом:

\[ out=\phi\left(\sum\limits^n_{i=1}x_iw_i\right) \]

Чем отличаются однослойные и многослойные нейронные сети?

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

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

В чем отличие feedforward сетей от сетей с обратными связями?

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

Что такое обучающая выборка? В чем ее смысл?

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

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

Что понимают под обучением сети?

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

Что такое обучение с учителем и без него?

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

Если сети только подают входные сигналы, без сравнения их с готовыми выходами, то сеть начинает самостоятельную классификацию этих входных сигналов. Другими словами она выполняет кластеризацию входных сигналов. Такое обучение называют обучением без учителя.

(The bionic neural network model and its applications
Preprint, Inst. Appl. Math., the Russian Academy of Science)

Ёлкин С.C., Ёлкин С.В., Клышинский Э.С., Максимов В.Ю., Мусаева Т.Н.
(S.S.Yolkin, S.V.Yolkin, E.S.Klyshinsky, V.Yu.Maximov, T.N.Musaeva)

ИПМ им. М.В.Келдыша РАН

Москва, 2008
Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (проект № 08-01-00626)

Аннотация

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

Abstract

The paper presents the model of neural network based on the analysis of behavior of brain"s pyramidal neurons. The model differs from classical approaches to a neural network representation by nonlinearity, a bunch of neuron types and heterogeneity. The papers contains some examples of bionic networks for different tasks solving.



1. ВВЕДЕНИЕ

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

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

В обзорной статье А. В. Савельева "На пути к общей теории нейросетей. К вопросу о сложности" (грант РФФИ 04-06-80460. Журнал Нейрокомпьютеры: разработка, применение №4-5, 2006 г., с. 4) приведены результаты исследования нейросетей принципиально неадекватных их биологическим аналогам. На основе открытой гиперсложности биологических нейронов, превышающей сложность сетей и не сводимой к ней, автором статьи показана возможность обобщения теории нейросетей, которая может иметь следствием совершенно иной принцип организации архитектуры нейрокомпьютеров. Однако мы считаем, что при построении практических моделей нет необходимости учитывать всю системную гиперсложность нейрона. Генетика, питание, дыхание, биохимия нейрона имеют второстепенное значение для нейроинформатики. Необходимо получить принципиально новые модели биологических нейронов и нейросетей на их основе за счет использования последних достижений нейробиологии и нейрофизиологии.

Традиционная нейроинформатика подходит к созданию нейросетей основываясь на принципе, который говорит о том, что чем сложнее задача, тем более крупные нейронные сети или их конгломераты нужно использовать. Однако это не всегда верно. Использование в качестве базового элемента современных искусственных нейросетей формального нейрона приводит к тому, что за счёт полной абстракции от сложного биологического нейрона возникают технические ограничения на возможности таких нейросетей. Но и использование бионического нейрона, сделанного максимально близко к биологическому, так же не представляется возможным ввиду его многоструктурной сложности. Таким образом, возникает необходимость поиска универсальной нейробионической парадигмы, направленной на анализ механизмов, закономерностей и принципов, предназначенных для создания и работы новой базовой основы нейрокомпьютеров, сочетающей в себе простоту проектирования классических нейросетей и базовую сложность и многофункциональность бионических нейронов. Мы считаем, что для решения этой задачи необходима разработка комплекса математических моделей бионических нейронов одновременно отвечающих потребностям нейрофизиологии и нейроинформатики. При этом наши усилия будут сконцентрированы в следующих направлениях:

· анализ динамики пространственно–временного распределения и взаимодействия работающих и не работающих функциональных блоков;

· влияние соотношения силовых и временных параметров, информационных и управляющих, поступающих на нейрон;

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

· специфика основных типов нейронов ассоциативной коры больших полушарий головного мозга.

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

Для решения поставленных целей необходимо решение следующих частных задач.

1. Обобщение экспериментальных данных по биологическим нейронам, в том числе человека.

2. Классификация биологических нейронов по функциям и свойствам.

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

Пороговые принципы ограничения потенциала нейрона,

Принципы торможения и возбуждения и их временные зависимости,

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

Влияние входов нейрона на его потенциал,

Механизмы памяти и динамика изменения коэффициента обученности в процессе работы нейрона в составе сети (обучение, переобучение и разобучение нейрона),

Механизм задержки поступления импульсаций между нейронами и его зависимость от веса и усталости синапса,

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

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

Выделить основные свойства и функции элементов биологических нейронов: дендритов, аксонов, синапсов, сомы.

4. Математическое моделирование свойств и функций биологических нейронов.

5. Математическое моделирование каждого отдельного класса нейронов.

6. Разработка инструментария для работы с бионическими нейронами.

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

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

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

1.1. Биологический нейрон

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

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

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

Каждый аксон оканчивается на теле или дендритах других нейронов контактом, названном синапсом. Синапс - это специализированная структура, которая обеспечивает передачу возбуждения с одной возбудимой структуры на другую. Термин "синапс" введен Ч. Шеррингтоном и означает "сведение", "соединение", "застежка".

Рисунок 1 - Структура нейрона

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

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

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

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

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

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

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

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

1.2. Формальный нейрон

Нейрон является составной частью нейронной сети. На рисунке 2 показана его структура .

Рисунок 2 – Структура формального нейрона

Он состоит из элементов трех типов: умножителей (синапсов) - w , сумматора –Σ и нелинейного преобразователя - f . Синапсы осуществляют связь между нейронами, умно­жают входной сигнал на число, характеризующее силу связи, (вес синапса). Сумматор выполняет сложение сигналов, поступающих по синаптическим связям от других нейронов, и внешних входных сигналов. Нелинейный преобразователь реализует нелинейную функцию одного аргумента - выхода сумматора. Эта функция на­зывается функцией активации или передаточной функцией нейрона. Нейрон в целом реализует скалярную функцию векторного аргумента. Математическая модель нейрона:

, (1)

где

Wi - вес (weight ) синапса, i = 1... n ;

b - значение смещения ( bias );

s - результат суммирования ( sum );

Xi - компонент входного вектора (входной сигнал), i = 1... n ;

у - выходной сигнал нейрона;

n - число входов нейрона;

f - нелинейное преобразование (функ­ция активации).

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

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

Описанный вычислительный элемент можно считать упро­щенной математической моделью биологических нейронов. Чтобы подчеркнуть различие нейронов биологических и искусственных, вторые иногда называют нейроподобными элементами или формальными нейронами.

На входной сигнал нелинейный преобразователь отвеча­ет выходным сигналом, который представляет собой выход у нейрона. Одной из наиболее распространенных функций активации нелинейного преобразователя является нелинейная функция активации с насыщением, так называемая логистическая функция или сигмоид (функция S -образного вида):

(2)

где

s – аргумент функции

а – коэффициент

Рисунок 3 - Сигмоид (гиперболический тангенс)

Из выражения (2) очевидно, что выходное значение нейрона лежит в диапазоне (0, 1).

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

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

Входные нейроны, на которые подается вектор, кодирую­щий входное воздействие или образ внешней среды; в них обычно не осуществляется вычислительных процедур, а информация пе­редается с входа на выход путем изменения их активации;

Выходные нейроны, выходные значения которых пред­ставляют выходы нейронной сети; преобразования в них осущест­вляются по выражениям (1);

Промежуточные нейроны, составляющие основу нейрон­ных сетей, преобразования в которых выполняются также по вы­ражениям (1).

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

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

1.3. Моделирование нетривиального (интеллектуального) адаптивного поведения

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

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

Попытки моделирования мотиваций и их роли в адаптивном поведении в нескольких различных аспектах были осуществлены рядом авторов. Л.Е.Цитоловский исследовал простую стохастическую схему оптимизации (минимизации мотиваций), приводящую к удовлетворению потребностей, а также анализировал роль мотиваций в функционировании отдельного нейрона . М.С. Бурцев и др. предложили и проанализировали модель эволюционного возникновения целенаправленного адаптивного поведения с особым акцентом на роль мотиваций в адаптивном поведении .Х.Балкениус сделал краткий аналитический обзор схем и моделей когнитивных систем, учитывающих мотивационную составляющую .

Целостное адаптивное поведение . При моделировании поведения животных естественно рассматривать целостное адаптивное поведение, при котором учитываются общая иерархическая структура потребностей и целей: частные потребности и цели организма подчинены основной потребности – потребности выживания. Целостное адаптивное поведение анализируется в теории функциональных систем П.К. Анохина . Схема моделирования целостного адаптивного поведения предложена в проекте "Животное" М.М. Бонгарда с сотр. . В проекте "Животное" моделирование целостного адаптивного поведения рассматривается как задача близкая к моделированию мышления. В работе предлагается схема моделирования мышления, включающая в себя элементы адаптивного поведения (в контексте целостного адаптивного поведения).

Внутренняя модель . Еще одно понятие, которое естественно использовать при моделировании интеллектуального адаптивного поведения, – "внутренняя модель". Действительно, если животное может строить свою внутреннюю модель внешней среды и своего взаимодействия с внешней средой, то на основе такой модели оно может предсказывать будущие события во внешней среде и результаты своих действий и адекватно использовать эти прогнозы в своем адаптивном поведении. Более того, при прогнозах животное может делать определенные "логические выводы" на базе своей модели.

Человек, естественно, тоже имеет свои модели ситуаций и модели, характеризующие его общие представления о внешнем мире. Более того, общая научная картина мира – создаваемая всем международным научным сообществом – также может рассматриваться как совокупность моделей. Т.е. отталкиваясь от понятия "внутренняя модель", мы можем попытаться перейти от исследований "интеллекта" животных к анализу наиболее интересных форм мышления – мышления ученого, мышления, используемого в научном познании Природы. Отметим, что понятие внутренней модели подчеркивалось рядом авторов. В.Ф. Турчин рассматривает моделирование, формирование животными и человеком моделей окружающей среды, на основе которых происходит предвидение, как важную компоненту познавательного процесса . Э. Янч отмечает, что возникновение способности строить модели внешнего мира было одним из этапов самоорганизации биосферы . Ф.Хейлигхен и К. Джослин специально вводят понятие эндо-модель – внутренняя модель, т.е. модель, которую формирует анализируемый объект (животное, человек, робот, или какая-либо иная кибернетическая система), и отличают это понятие от понятия экзо-модель – модель самого объекта, которую строит исследователь, анализирующий поведение рассматриваемого объекта . Р. Саттон и Э. Берто , предложили и проанализировали простую нейросетевую модель "внутренней модели". Для конкретизации рассмотрения кратко изложим основные идеи этой работы. В моделируется следующий эксперимент с крысами. Есть Т-образный лабиринт, с двумя камерами, присоединяемыми к плечам лабиринта (рис. 1). Красная камера присоединена к правому плечу лабиринта, зеленая к левому плечу.Эксперимент состоит из трех стадий. На первой исследовательской стадии животное помещают на вход лабиринта и разрешают ему перемещаться по лабиринту и изучить его, без какого-либо подкрепления или наказания. На второй ассоциативной стадии обе камеры отделяют от лабиринта, переносят в другую комнату и там поощряют либо наказывают: в красной камере животное получает пищу, а зеленой – удар током. На третьей стадии тестирования камеры возвращаются обратно и прикрепляются к лабиринту, а животное помещают на вход лабиринта и наблюдают, – куда оно пойдет. Эксперимент демонстрирует, что при тестировании животные преимущественно перемещаются направо.Согласно этому эксперименту животное должно построить модель внешней среды и скомбинировать два независимых фактора: 1) поворот направо/налево ведет в красную/зеленую камеру, 2) в красной/зеленой камере можно получить поощрение/наказание. Т.е., животное делает "логический вывод" примерно такого вида:

Этот вывод аналогичен одной из основных формул логического вывода :

(Если из А следует В , и из В следует С , то из А следует С ).

В построена нейросетевая модель, объясняющая поведение животных в описанном эксперименте. Схема этой нейросети показана на рис. 4

Эта нейронная сеть содержит 5 нейронов и состоит из двух модулей. В предсказывающий модуль входят нейроны 1-3, в модуль выбора действия – нейроны 4,5. Из внешней среды на вход нейронной сети поступают сигналы о цвете камеры и подкреплении ("Зеленый", "Красный", "Подкрепление"). На выходе сети формируются команды действий ("Направо" или "Налево"). Предсказывающий модуль строит упрощенную модель внешней среды и предсказывает состояние входов от внешней среды в предстоящие моменты времени. Модуль выбора действия формирует команды действий.

В схему входили специальные модельные нейроны, разработанные на основе концепции А.Г. Клопфа "Целеустремленный нейрон" . Эти нейроны подобны обычным нейронам с модифицируемыми синапсами Хебба, но дополнительно обладают определенной формой кратковременной памяти. Подробнее об этой модели нейронов см. .

Рис. 4 Схема нейронной сети, осуществляющей прогноз . Нейроны показаны квадратами с цифрами 1-5 внутри, синапсы – кружками, выходы нейронов – жирными стрелками, направления передачи сигналов между нейронами – тонкими стрелками, воздействие внешней среды – штриховыми стрелками.

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

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

1.4. Бионический нейрон

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

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

Текущее состояние нейрона меняется со временем. Если подача на входы импульсов отсутствует, то значение текущего потенциала стремится к нулю по экспоненциальному закону:

, (3)

где

P (t ) – текущее значение потенциала

P (t -1) – значение потенциала в момент времени t -1

α – коэффициент затухания потенциала

Δ t P (t -1)

При этом значение текущего порога со временем стремится к некоторому постоянному значению, называемому порогом покоя. Порог покоя – величина, большая нуля:

,(4)

где

T (t ) – текущее значение порога;

T (t -1) - значение порога в момент времени t -1

T 0 - порог покоя

α – коэффициент затухания порога

Δ t – время, прошедшее с момента, когда потенциал был равен T (t -1)

Потенциал нейрона ограничен величинами Pmin и Pmax соответственно снизу и сверху ( Pmin ≤ 0; Pmax > 0). Порог ограничен сверху величиной Tmax , снизу – величиной Tmin (причём, 0 ≥ Tmin > > maxT ). Ограничения потенциала и порога учитываются при расчёте эффекта от поступившей импульсации.

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

Рисунок 5 - Модель бионического нейрона

1 - вход возбуждения

2 - вход регуляции

3 - вход памяти

4 - вход запрета

5 - вход торможения

6 - выход (синапс) нейрона

Одиночный импульс, пришедший на вход нейрона типа возбуждение, повышает величину потенциала нейрона на некоторое значение:

P = P ’ + H , (5)

где

P – текущее значение потенциала

P ’ – прежнее значение потенциала;

H – величина изменения потенциала зависит от потенциала и меняется по закону:

H = W·f (P ’), (6)

где

f (P) – функция, лежит в области значений от нуля до единицы, и:

f (P ≤0)=1,

f (P) стремится к нулю при P стремящемся к Р max . На сегменте где Р больше нуля, функция f (P ) может быть определена как:

f (P) = ,(7)

Таким образом: если нейрон не возбуждён (потенциал равен нулю), то импульс увеличивает значение потенциала на величину, равную весу входа. Продолжительная периодическая импульсация поднимаетпотенциал «ступеньками», высота которых убывает с возрастанием самого потенциала. Высота ступенек становится равной нулю, когда потенциал достигает предельного максимального значения (Р max ). При данном задании функции, потенциал может превышать максимальное значение на величину, пренебрежимо малую.

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

Рисунок 6 - Возбуждение нейрона

Сходным образом ведёт себя вход Торможения . Однако его роль заключается вуменьшении потенциала на величину H , которая рассчитывается аналогично:

P = P ’ - H ,(8)

где

P ’ – прежнее значение потенциала,

H – величина, которая меняется по закону:

H = W · f (- P ’),(9)

где

W – вес синапса, по которому пришёл импульс

В данном случае аргумент взят со знаком минус, при этом в роли ограничителя выступает Р min :

f (P)= , (10)

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

Рисунок 7 - Торможение нейрона

Изменение значений порога осуществляется импульсацией на входы регуляции и запрета. Импульс, поступивший на вход регуляции , уменьшает значение порога на величину H , которая рассчитывается аналогично по формулам (8-10).

Соответственно запрет увеличивает значение порога на величину H и вычисляется аналогично по формулам (5-7).

Особенным образом работает вход памяти . Аналогично возбуждению он увеличивает потенциал, но приращение потенциала теперь зависит не только от веса входа, но также от текущего состояния коэффициента обученности. Коэффициент обученности в отличие от веса меняет своё значение динамически в процессе работы нейронной сети. Он может принимать значения в диапазоне от 0 до 1. Приращение потенциала рассчитывается по формуле:

H = µ· W · f (| P ’|),(11)

где

µ -коэффициент обученности

W – вес синапса, по которому пришёл импульс

f (P ) – функция, вычисляемая по формуле (7)

Если µ = 0, то вход считается необученным – в этом случае импульсация на этот вход не оказывает никакого влияния на состояние нейрона. Максимально обученный вход (µ = 1) работает аналогично входу возбуждения с весом W , пока значение µ снова не изменится (уменьшится).

Обучение, переобучение, разобучение – механизмы, регулирующие значение µ и, как следствие, работу входов памяти нейрона.

Обучение входа – увеличение µ на некоторую постоянную величину ∆µ + (очевидно меньшую единицы), так называемую, способность к обучению. Эта величина неизменна изафиксирована в значении ∆µ + = 0,2. Обучение происходит при одновременном выполнении условий:

1)на данный вход поступил сигнал

2) сигнал на вход памяти был подкреплён сигналом с входа возбуждения (сигнал на возбуждение должен прийти не позже чем через время ∆ T )

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

Переобучение – уменьшение µ, происходит в тех случаях, когда сигнал, поступивший на вход памяти, не был подкреплён последующим сигналом на вход возбуждения, или не сопровождался регулирующей импульсацией (при этом T ≥ ). В этой ситуации значение µ уменьшится на ∆µ - .

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

Помимо общей для всех типов входов весовой характеристики W и частных характеристик входов типа Память (µ, ∆µ + , ∆µ -) каждый вход также характеризуется величиной Delay .

Delay определяет задержку поступления импульсации с одного нейрона на другой.

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

Генерация импульсов происходит, если величина ∆Ω положительна:

∆Ω = P – T ,

То есть потенциал превысил порог. Частота генерации импульсов зависит от ∆Ω линейно:

w = w’ + k∆Ω, (12)

где

w – частота импульсации

w ’ – минимальная частота

k – коэффициент пропорциональности

Ограничения на частоту импульсации вытекают из верхнего ограничения на потенциал и нижнего ограничения на порог ( Pmax , Tmin ).

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

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

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

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

2.РАЗРАБОТКА ПРОСТЫХ БИОНИЧЕСКИХ НЕЙРОННЫХ СЕТЕЙ

2.1.Логические элементы

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

2.2. Логический элемент or


Рисунок 8 Логический элемент or

Нейроны 1 и 2 являются входными. Нейроны 3 и 5 нужны для возвращения сети в исходное состояние после прохождения импульса. Нейрон 4 выполняет функцию ИЛИ, а так же является выходным нейроном.

Логический элемент ИЛИ даёт сигнал на выходе в тех случаях, когда на входы поступил хотя бы один сигнал. Если генераторы возбуждают нейроны 1, или 2, или сразу оба, то возбуждается нейрон 4. Он подаёт сигнал на выход, после чего нейроны 3 и 5 возвращают сеть в исходное состояние.

2.3. Логический элемент and

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


Рисунок 9 Логический элемент and

Элемент И внешне является точной копией элемента ИЛИ, однако синапсы от нейронов 1 и 2 к нейрону 4 настроены так, что нейрон 4 возбудится только при поступлении обоих сигналов одновременно.

2.4.Логический элемент XOR

Логический элемент XOR генерирует импульс только в случае если получает импульс только с одного из входов. Достигнуто исключением из элемента ИЛИ элемента И. Оба эти элемента подключены параллельно, но если сработал И, то сигнал не проходит. Если сработал ИЛИ, а И не сработал, то сигнал проходит.


Рисунок 10 Логический элемент x о r

1-ый и 2-ой нейроны выполняют функции генераторов входного сигнала. 3-ий как и 5-й являются входными нейронами. 5-ый нейрон является элементом И. 7-й вставочный нейрон запирающий 6-й – выходной, если сигналы пришли одновременно с обоих генераторов.

Существует три варианта развития событий.

1. Нейроны 1 и 2 не генерируют сигналов. В таком случае сеть не активна и на выходном нейроне сигнала не будет.

2. Оба нейрона как 1 так и 2 генерируют сигналы и подают их в сеть. В результате этого возбудятся нейроны 3 и 5, которые будут возбуждать выходной нейрон. Вместе генераторы 1 и 2 смогут возбудить нейрон 4, выполняющий функцию И. И тогда нейрон 7 под воздействием нейрона 4 подаст запрет на выходной нейрон 6. Таким образом, сигнала на выходе не будет. Все остальные синапсы нужны для возвращения нейронов сети в исходное состояние после прохождения сигнала.

3. Сигнал приходит только с одного нейрона, например с нейрона 1. После попадания в сеть сигнал возбудит нейрон 3. Но синапсы настроены таким образом, чтобы в одиночку нейрон 3 не мог возбудить нейрон 4, поэтому запирания выходного нейрона 6 не произойдёт, и нейрон 3 передаст свой сигнал на выход сети.

Такое построение является не единственно верным. Задача может быть решена многими способами. Например, возвращение сети в исходное состояние может быть достигнуто за счёт экспоненциального спада возбуждённости нейронов, а не за счёт введения дополнительных синапсов

2.5. Логический элемент not


Рисунок 11 Логический элемент not

Нейрон 1 является входным нейроном. Нейрон 2 всегда возбуждён и непрерывно подаёт на выход сигнал. В случае возбуждения нейрона 1 происходит запирание нейрона 2 и сигнал на выходе пропадает.

2.6. Преобразователь сигналов из параллельных в последовательные


Рисунок 12 Логический элемент, превращающий несколько одновременных входных сигналов во временную их последовательность

Нейрон 1 является выходным нейроном. Нейроны 2 и 3 приводят сеть в исходное состояние после прохождения сигналов. Нейрон 4 генерирует два одновременных сигнала. Благодаря различной задержке на синапсах происходит их разделение во времени, после чего они генерируют последовательные сигналы на выходном нейроне.

2.7.Десятичный счетчик


Рисунок 13 Десятичный счетчик из 6 нейронов, по два нейрона на каждый разряд.

Сеть состоит из нейрона 3 выполняющего функцию генератора и блоков по два нейрона последовательно соединённых между собой. Каждый такой блок добавляет один порядок числу максимальному для счётчика. Нейрон 1 принимает импульсы от нейрона 3 и по получении 10-го импульса возбуждается. Далее нейрон 2 тормозит Нерон 1 до начального состояния, а на нейрон 4 передаётся один импульс.

2.8 Сеть, считывающая состояние нейрона


Рисунок 14 Сеть, считывающая состояние нейрона.

Сеть устроена по принципу счётчика. Нейрон 1 дискретно уменьшает порог исследуемого нейрона и одновременно подаёт по одному импульсу на счётчик. Таким образом, к моменту, когда порог нейрона 2 станет ниже уровня его возбужденности, на счётчике будет записано сколько раз уменьшался порог. После возбуждения нейрон 2 тормозит нейрон 1 и сеть останавливается.

2.9.Анализатор состояния нейрона


Рисунок 15Сеть, определяющая к какому из заданных пяти диапазонов можно отнести исследуемый нейрон по уровню возбуждённости.

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

3.РАЗРАБОТКА МОДЕЛИ АДАПТИВНОГО ПОВЕДЕНИЯ В ЛАБИРИНТЕ

Поведение животных при выполнении различных задач в лабиринтах является прекраснымматериалом для изучения работы центральной нервной системы при ориентациии процессов адаптации к изменению условий эксперимента. Соответственно моделирование поведения интеллектуальных систем при решении аналогичных задач даёт богатую пищу для размышлений над адекватностью наших моделей реальной работе биологических нейронных сетей. В связис чем кажется вполне естественным попытаться решить задачу ориентации в лабиринте при поиске «пищи» (модель потребности) с учетом анализа пройденныхучастков лабиринта. С этой целью была разработана и программно реализована модель лабиринта, модель потребности, бионическая нейронная сеть и проведено исследование работы нейронной сети для решения поставленной задачи.

3.1 Модель окружающей среды (лабиринт)

Модельный объект под названием «жук» имеет следующие функции:

1.Способность перемещаться в четырёх направлениях по лабиринту. За один цикл работы управляющей нейронной сети «жук» перемещается на один шаг – одно звено лабиринта.

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

3. Лабиринт представляет из себя прямоугольную решётку, некоторые элементы которой удалены случайным образом.Таким образом, движение по участкам решётки возможно не всюду, что эквивалентно простому прямоугольному лабиринту с числом звеньев (участков) (рисунок 16) равным 2* N *(N -1)- k , где N –число перекрётсковпо одной из осей, k - число удалённых случайным образом звеньев.

Рисунок 16 Лабиринт 15 на 15. Жёлтым обозначена пища

3.4. Модель нейронной сети


Рисунок 17 Нейронная сеть “жука”


Данная сеть была максимально уменьшена и оптимизирована для решения модельной задачи. Сеть состоит из четырёх тормозных нейронов. Каждый из нейронов отвечает за выбор направления движения внутри лабиринта: Вверх, влево, вниз, или вправо. Каждый нейрон имеет вход возбуждения, куда подаются импульсы в количестве соответствующем величине потребности (близости пищи) с данной стороны. Так же каждый нейрон имеет два входа торможения. Один вход сильный для запрета, если с этой стороны нет прохода. Второй вход слабый, куда подаются импульсы только в случае, если с этой стороны виден след “жука”, то есть если “жук” там уже был. Количество подаваемых импульсов на вход торможения связанный со следом “жука” связано обратно пропорционально с давностью этого следа. Каждый нейрон имеет синапс, замкнутый на самого себя, это необходимо для самовозбуждения нейрона, когда происходит считывание его уровня возбуждённости. Каждый нейрон тормозит все остальные, таким образом, самый сильно возбужденный останется единственным активным в результате работы сети и определит направление движения “жука”.

ЗАКЛЮЧЕНИЕ

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

В процессе моделирования установлено:

а) данная бионическая модель нейрона пригодна для построения неоднородных нейронных сетей.

б) возможности данной модели нейрона не исчерпываются созданными нейронными сетями.

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

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

СПИСОК ЛИТЕРАТУРЫ

1. Николлс Дж., Мартин Р., Валлас Б., Фукс П. От нейрона к мозгу – М.: Издательство Эдиториал УРСС, 2003.

2.Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика – М.: Издательство Горячая линия-Телеком, 2002.

3.Беркинблит М.Б. Нейронные сети – М.: Издательство МИРОС, 1993.

4.Мак-Каллок У., Питтс В. Логическое исчисление идей, относящихся к нервной активности // Нейрокомпьютер. –1992. - №3/4. – Р.40-50

5. Жданов А. А. Метод автономного адаптивного управления // Известия Академии Наук. Теория и системы управления . 1999. № 5. С . 127-134.

6 . Tsitolovsky L.E. (1997) A model of motivation with chaotic neuronal dynamics // Journ. of Biological Systems, 1997. V . 5. N .2, pp . 301-323. Описание модели минимизации мотивации, предложенной в данной работе, есть на сайте:

7. Бурцев М.С., Гусарев Р.В., Редько В.Г. Модель эволюционного возникновения целенаправленного адаптивного поведения 1. Случай двух потребностей. // Препринт ИПМ РАН, 2000, N 43. см. также:

8 . Balkenius C. The roots of motivations. // In J.-A. Mayer, H. L. Roitblat and S. W. Wilson (eds.), From Animals to Animats II, MA: MIT Press., 1993. http://www.lucs.lu.se/People/Christian.Balkenius/Abstracts/ROM.html

9. Анохин П.К. Системные механизмы высшей нервной деятельности. // М.: Наука, 1979, 453 с.Анохин П.К. Очерки по физиологии функциональных систем. – М.: Медицина, 1975. Анохин П.К. Принципиальные вопросы общей теории функциональных систем // Принципы системной организации функций. – М.: Наука, 1973. См. также:

10. Швырков В.Б. Теория функциональной системы как методологическая основа нейрофизиологии поведения // Успехи физиологических наук. 1978. Т. 9. №1.

11. Бонгард М.М., Лосев И.С., Смирнов М.С. Проект модели организации поведения – Животное // Моделирование обучения и поведения. – М.: Наука, 1975. см. также:

http://mbur.narod.ru/misc/bongard.htm

12. М . М. Бонгард, И. С. Лосев, В. В. Максимов М. С. Смирнов. Формальный язык описания ситуаций, использующий понятие связи. // Моделирование обучения и поведения. – М.: Наука, 1975.

13. Вайнцвайг М.Н., Полякова М.П.О моделировании мышления. Статья на КС-2002:

14. Турчин В.Ф. Феномен науки. Кибернетический подход к эволюции. М.: Наука, 1993. 295с. (1-е изд). М.: ЭТС, 2000. 368с (2-е изд). См. также: http://www.refal.net/turchin/phenomenon/ http://www.refal.org/turchin/phenomenon/

15. Jantsch E. The self-organising universe. Pergamon Press: Oxford etc, 1980. 340 p.

16. Heylighen F. & Joslyn C. (2001): " Cybernetics and Second Order Cybernetics ", in: R.A. Meyers (ed.), Encyclopedia of Physical Science & Technology , Vol. 4 (3rd ed.), (Academic Press, New York), p. 155-170.

17. Sutton, R.S., & Barto, A.G. (1981). An adaptive network that constructs and uses an internal model of its world , Cognition and Brain Theory 4 :217-246.

18.Клини С. Математическая логика. М.: Мир, 1973. 480 с.

19 . Klopf A.H.The hedonistic neuron: a theory of memory, learning, and intelligence. Hemisphere publishing corporation, Washington etc, 1982. 140 p.

20. Sutton, R.S., & Barto, A.G. (1981). Toward a modern theory of adaptive networks: Expectation and prediction , Psychological Review 88 :135-140.

21. Вальцев В.Б., Григорьев И.Р., Лавров В.В., Черкашин Е.А. Неоднородные сети и проблемы моделирования высших функций мозга. Нейроинформатика Сб. тр. М. 2000,

с.52-56.

22. И. С. Лосев, В. В. Максимов. О задаче обобщения начальных ситуаций. // Моделирование обучения и поведения. – М.: Наука, 1975.

Схема искусственного нейрона
1.Нейроны, выходные сигналы которых поступают на вход данному
2.Сумматор входных сигналов
3.Вычислитель передаточной функции
4.Нейроны, на входы которых подаётся выходной сигнал данного
5.w_i - веса входных сигналов

Иску́сственный нейро́н (математический нейрон Маккалока - Питтса , формальный нейрон Л. Г. Комарцова, А. В. Максимов «Нейрокомпьютеры», МГТУ им. Н. Э. Баумана, 2004 г., ISBN 5-7038-2554-7 ) - узел искусственной нейронной сети , являющийся упрощённой моделью естественного нейрона . Математически, искусственный нейрон обычно представляют как некоторую нелинейную функцию от единственного аргумента - линейной комбинации всех входных сигналов. Данную функцию называют функцией активации По аналогии с нейронами активации или функцией срабатывания , передаточной функцией . Полученный результат посылается на единственный выход. Такие искусственные нейроны объединяют в сети - соединяют выходы одних нейронов с входами других. Искусственные нейроны и сети являются основными элементами идеального нейрокомпьютера .Миркес Е. М. , Нейрокомпьютер. Проект стандарта. - Новосибирск: Наука, 1999. - 337 с. ISBN 5-02-031409-9

Биологический прототип

y=\exp(-\frac{(S-R)^2}{2\sigma^ 2}).

Здесь S = ||\mathbf{X}-\mathbf{C}|| - расстояние между центром \mathbf{C} и вектором входных сигналов \mathbf{X}. Скалярный параметр \sigma определяет скорость спадания функции при удалении вектора от центра и называется шириной окна , параметр R определяет сдвиг активационной функции по оси абсцисс. Сети с нейронами, использующими такие функции, называются RBF-сетями . В качестве расстояния между векторами могут быть использованы различные метрикиВ. В. Круглов, В. В. Борисов - Искусственные нейронные сети. Теория и практика - с.349, обычно используется евклидово расстояние:

S = \sqrt{ \sum_{j=1}^{N} { (x_j-c_j)^2 } }.

Здесь x_j - j-я компонента вектора, поданного на вход нейрона, а c_j - j-я компонента вектора, определяющего положение центра передаточной функции. Соответственно, сети с такими нейронами называются вероятностными и регрессионными В. В. Круглов, В. В. Борисов - Искусственные нейронные сети. Теория и практика - с.348.

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

См. также: {{#if: Сеть радиально-базисных функций | [[Сеть радиально-базисных функций{{#if: | Шаблон:! {{{l1}}} }}]] }} {{#if: Сеть радиально-базисных функций || Ошибка: . }}{{#if: | …Ошибка: . }}{{#if: | {{#if: Сеть радиально-базисных функций | {{#if: || . }} }} }}

Другие функции передачи

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

  • Экспонента f(x) = \exp (-Ax);
  • Модульная: f(x) = \left| x \right|;

Стохастический нейрон

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

f(u) = \begin{cases}1 & \text{с вероятностью} P(u) \\0 & \text{с вероятностью} 1-P(u)\end{cases},

где распределение вероятности P(u) обычно имеет вид сигмоида:

\sigma(u) = \frac {A(T)}{1+\exp (-u/T)},

a нормировочная константа A(T) вводится для условия нормализации распределения вероятности \int^1_0 \sigma(u) du = 1. Таким образом, нейрон активируется с вероятностью P(u). Параметр T - аналог температуры (но не температуры нейрона) и определяет беспорядок в нейронной сети. Если T устремить к 0, стохастический нейрон перейдет в обычный нейрон с передаточной функцией Хевисайда (пороговой функцией).

Моделирование формальных логических функций

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

См. также

Примечания

Неизвестный тег расширения «references»

Литература

  • {{#if:Терехов В.А., Ефимов Д.В., Тюкин И.Ю.|{{#ifeq:{{#invoke:String|sub|Терехов В.А., Ефимов Д.В., Тюкин И.Ю.|-1}}| |Терехов В.А., Ефимов Д.В., Тюкин И.Ю.|{{#ifeq:{{#invoke:String|sub|Терехов В.А., Ефимов Д.В., Тюкин И.Ю.|-6|-2}}| |Терехов В.А., Ефимов Д.В., Тюкин И.Ю.|{{#ifeq:{{#invoke:String|sub|Терехов В.А., Ефимов Д.В., Тюкин И.Ю.|-6|-2}}|/span|Шаблон:±. |Шаблон:±. }}}}}} }}{{#if: |{{#if: |[{{{ссылка часть}}} {{{часть}}}]| {{{часть}}}}} // }}{{#if:|[[:s:{{{викитека}}}|Нейросетевые системы управления]]|{{#if: |Нейросетевые системы управления |{{#if:|[ Нейросетевые системы управления]|Нейросетевые системы управления}}}}}}{{#if:| = }}{{#if:| / {{{ответственный}}}.|{{#if:||.}}}}{{#if:Нейросетевые системы управления|{{#if:| {{#if:| = {{{оригинал2}}} }}{{#if:| / {{{ответственный2}}}.|{{#if:||.}}}}}}}}{{#if:1-е| - 1-е.}}{{#switch:{{#if:|м}}{{#if:Высшая школа |и}}{{#if:2002|г}}
|миг= - Шаблон:Указание места в библиоссылке : Высшая школа , 2002. |ми= - Шаблон:Указание места в библиоссылке : Высшая школа . |мг= - Шаблон:Указание места в библиоссылке , 2002. |иг= - Высшая школа , 2002. |м= - Шаблон:Указание места в библиоссылке |и= - Высшая школа . |г= - 2002.

}}{{#if:| - {{{том как есть}}}.}}{{#if:|{{#if: | [{{{ссылка том}}} - Т. {{{том}}}.]| - Т. {{{том}}}.}}}}{{#if:| - Vol. {{{volume}}}.}}{{#if:| - Bd. {{{band}}}.}}{{#if:| - {{{страницы как есть}}}.}}{{#if:184| - С. {{#if:| (стб. {{{столбцы}}}).|184.}}}}{{#if:| - {{{страниц как есть}}}.}}{{#if:| - {{{страниц}}} с.}}{{#if:| - P. {{#if:|[{{{pages}}}] (col. {{{columns}}}).|{{{pages}}}.}}}}{{#if:| - S. {{#if:|[{{{seite}}}] (Kol. {{{kolonnen}}}).|{{{seite}}}.}}}}{{#if:| - p.}}{{#if:| - S.}}{{#if:| - ({{{серия}}}).}}{{#if:| - {{{тираж}}} экз. }}{{#if:5-06-004094-1| - ISBN 5-06-004094-1 DOI :{{{doi}}} {{#ifeq:Шаблон:Str left |10.|| [Ошибка: Неверный DOI! ] {{#if:||}}}}}}

  • {{#if:Круглов В. В., Борисов В. В.|{{#ifeq:{{#invoke:String|sub|Круглов В. В., Борисов В. В.|-1}}| |Круглов В. В., Борисов В. В.|{{#ifeq:{{#invoke:String|sub|Круглов В. В., Борисов В. В.|-6|-2}}| |Круглов В. В., Борисов В. В.|{{#ifeq:{{#invoke:String|sub|Круглов В. В., Борисов В. В.|-6|-2}}|/span|Шаблон:±. |Шаблон:±. }}}}}} }}{{#if: |{{#if: |[{{{ссылка часть}}} {{{часть}}}]| {{{часть}}}}} // }}{{#if:|[[:s:{{{викитека}}}|Искусственные нейронные сети. Теория и практика]]|{{#if: |Искусственные нейронные сети. Теория и практика |{{#if:|[ Искусственные нейронные сети. Теория и практика]|Искусственные нейронные сети. Теория и практика}}}}}}{{#if:| = }}{{#if:| / {{{ответственный}}}.|{{#if:||.}}}}{{#if:Искусственные нейронные сети. Теория и практика|{{#if:| {{#if:| = {{{оригинал2}}} }}{{#if:| / {{{ответственный2}}}.|{{#if:||.}}}}}}}}{{#if:1-е| - 1-е.}}{{#switch:{{#if:М.|м}}{{#if:Горячая линия - Телеком|и}}{{#if:2001|г}}
|миг= - Шаблон:Указание места в библиоссылке : Горячая линия - Телеком, 2001. |ми= - Шаблон:Указание места в библиоссылке : Горячая линия - Телеком. |мг= - Шаблон:Указание места в библиоссылке , 2001. |иг= - Горячая линия - Телеком, 2001. |м= - Шаблон:Указание места в библиоссылке |и= - Горячая линия - Телеком. |г= - 2001.

}}{{#if:| - {{{том как есть}}}.}}{{#if:|{{#if: | [{{{ссылка том}}} - Т. {{{том}}}.]| - Т. {{{том}}}.}}}}{{#if:| - Vol. {{{volume}}}.}}{{#if:| - Bd. {{{band}}}.}}{{#if:| - {{{страницы как есть}}}.}}{{#if:382| - С. {{#if:| (стб. {{{столбцы}}}).|382.}}}}{{#if:| - {{{страниц как есть}}}.}}{{#if:| - {{{страниц}}} с.}}{{#if:| - P. {{#if:|[{{{pages}}}] (col. {{{columns}}}).|{{{pages}}}.}}}}{{#if:| - S. {{#if:|[{{{seite}}}] (Kol. {{{kolonnen}}}).|{{{seite}}}.}}}}{{#if:| - p.}}{{#if:| - S.}}{{#if:| - ({{{серия}}}).}}{{#if:| - {{{тираж}}} экз. }}{{#if:5-93517-031-0| - ISBN 5-93517-031-0 .}}{{#if:| - ISBN {{{isbn2}}}.}}{{#if:| - ISBN {{{isbn3}}}.}}{{#if:| - ISBN {{{isbn4}}}.}}{{#if:| - ISBN {{{isbn5}}}.}}{{#if:| - DOI :{{{doi}}} {{#ifeq:Шаблон:Str left |10.|| [Ошибка: Неверный DOI! ] {{#if:||}}}}}}

  • {{#if:Каллан Р.|{{#ifeq:{{#invoke:String|sub|Каллан Р.|-1}}| |Каллан Р.|{{#ifeq:{{#invoke:String|sub|Каллан Р.|-6|-2}}| |Каллан Р.|{{#ifeq:{{#invoke:String|sub|Каллан Р.|-6|-2}}|/span|Шаблон:±. |Шаблон:±. }}}}}} }}{{#if: |{{#if: |[{{{ссылка часть}}} {{{часть}}}]| {{{часть}}}}} // }}{{#if:|[[:s:{{{викитека}}}|Основные концепции нейронных сетей]]|{{#if: |Основные концепции нейронных сетей |{{#if:|[ Основные концепции нейронных сетей]|Основные концепции нейронных сетей}}}}}}{{#if:The Essence of Neural Networks First Edition| = The Essence of Neural Networks First Edition }}{{#if:| / {{{ответственный}}}.|{{#if:||.}}}}{{#if:Основные концепции нейронных сетей|{{#if:| {{#if:| = {{{оригинал2}}} }}{{#if:| / {{{ответственный2}}}.|{{#if:||.}}}}}}}}{{#if:1-е| - 1-е.}}{{#switch:{{#if:|м}}{{#if:«Вильямс» |и}}{{#if:2001|г}}
|миг= - Шаблон:Указание места в библиоссылке : «Вильямс» , 2001. |ми= - Шаблон:Указание места в библиоссылке : «Вильямс» . |мг= - Шаблон:Указание места в библиоссылке , 2001. |иг= - «Вильямс» , 2001. |м= - Шаблон:Указание места в библиоссылке |и= - «Вильямс» . |г= - 2001.

}}{{#if:| - {{{том как есть}}}.}}{{#if:|{{#if: | [{{{ссылка том}}} - Т. {{{том}}}.]| - Т. {{{том}}}.}}}}{{#if:| - Vol. {{{volume}}}.}}{{#if:| - Bd. {{{band}}}.}}{{#if:| - {{{страницы как есть}}}.}}{{#if:288| - С. {{#if:| (стб. {{{столбцы}}}).|288.}}}}{{#if:| - {{{страниц как есть}}}.}}{{#if:| - {{{страниц}}} с.}}{{#if:| - P. {{#if:|[{{{pages}}}] (col. {{{columns}}}).|{{{pages}}}.}}}}{{#if:| - S. {{#if:|[{{{seite}}}] (Kol. {{{kolonnen}}}).|{{{seite}}}.}}}}{{#if:| - p.}}{{#if:| - S.}}{{#if:| - ({{{серия}}}).}}{{#if:| - {{{тираж}}} экз. }}{{#if:5-8459-0210-X| - ISBN 5-8459-0210-X .}}{{#if:| - ISBN {{{isbn2}}}.}}{{#if:| - ISBN {{{isbn3}}}.}}{{#if:| - ISBN {{{isbn4}}}.}}{{#if:| - ISBN {{{isbn5}}}.}}{{#if:| - DOI :{{{doi}}} {{#ifeq:Шаблон:Str left |10.|| [Ошибка: Неверный DOI! ] {{#if:||}}}}}}

  • {{#if:Ясницкий Л. Н.|{{#ifeq:{{#invoke:String|sub|Ясницкий Л. Н.|-1}}| |Ясницкий Л. Н.|{{#ifeq:{{#invoke:String|sub|Ясницкий Л. Н.|-6|-2}}| |Ясницкий Л. Н.|{{#ifeq:{{#invoke:String|sub|Ясницкий Л. Н.|-6|-2}}|/span|Шаблон:±. |Шаблон:±. }}}}}} }}{{#if: |{{#if: |[{{{ссылка часть}}} {{{часть}}}]| {{{часть}}}}} // }}{{#if:|[[:s:{{{викитека}}}|Введение в искусственный интеллект]]|{{#if: |Введение в искусственный интеллект |{{#if:|[ Введение в искусственный интеллект]|Введение в искусственный интеллект}}}}}}{{#if:| = }}{{#if:| / {{{ответственный}}}.|{{#if:||.}}}}{{#if:Введение в искусственный интеллект|{{#if:| {{#if:| = {{{оригинал2}}} }}{{#if:| / {{{ответственный2}}}.|{{#if:||.}}}}}}}}{{#if:1-е| - 1-е.}}{{#switch:{{#if:|м}}{{#if:Издательский центр «Академия»|и}}{{#if:2005|г}}
|миг= - Шаблон:Указание места в библиоссылке : Издательский центр «Академия», 2005. |ми= - Шаблон:Указание места в библиоссылке : Издательский центр «Академия». |мг= - Шаблон:Указание места в библиоссылке , 2005. |иг= - Издательский центр «Академия», 2005. |м= - Шаблон:Указание места в библиоссылке |и= - Издательский центр «Академия». |г= - 2005.

}}{{#if:| - {{{том как есть}}}.}}{{#if:|{{#if: | [{{{ссылка том}}} - Т. {{{том}}}.]| - Т. {{{том}}}.}}}}{{#if:| - Vol. {{{volume}}}.}}{{#if:| - Bd. {{{band}}}.}}{{#if:| - {{{страницы как есть}}}.}}{{#if:176| - С. {{#if:| (стб. {{{столбцы}}}).|176.}}}}{{#if:| - {{{страниц как есть}}}.}}{{#if:| - {{{страниц}}} с.}}{{#if:| - P. {{#if:|[{{{pages}}}] (col. {{{columns}}}).|{{{pages}}}.}}}}{{#if:| - S. {{#if:|[{{{seite}}}] (Kol. {{{kolonnen}}}).|{{{seite}}}.}}}}{{#if:| - p.}}{{#if:| - S.}}{{#if:| - ({{{серия}}}).}}{{#if:| - {{{тираж}}} экз. }}{{#if:5-7695-1958-4| - ISBN 5-7695-1958-4 .}}{{#if:| - ISBN {{{isbn2}}}.}}{{#if:| - ISBN {{{isbn3}}}.}}{{#if:| - ISBN {{{isbn4}}}.}}{{#if:| - ISBN {{{isbn5}}}.}}{{#if:| - DOI :{{{doi}}} {{#ifeq:Шаблон:Str left |10.|| [Ошибка: Неверный DOI! ] {{#if:||}}}}}}

  • {{#if:Комарцова Л. Г., Максимов А. В.|{{#ifeq:{{#invoke:String|sub|Комарцова Л. Г., Максимов А. В.|-1}}| |Комарцова Л. Г., Максимов А. В.|{{#ifeq:{{#invoke:String|sub|Комарцова Л. Г., Максимов А. В.|-6|-2}}| |Комарцова Л. Г., Максимов А. В.|{{#ifeq:{{#invoke:String|sub|Комарцова Л. Г., Максимов А. В.|-6|-2}}|/span|Шаблон:±. |Шаблон:±. }}}}}} }}{{#if: |{{#if: |[{{{ссылка часть}}} {{{часть}}}]| {{{часть}}}}} // }}{{#if:|[[:s:{{{викитека}}}|Нейрокомпьютеры]]|{{#if: |Нейрокомпьютеры |{{#if:http://www.books.ru/shop/search/advanced?as%5Bisbn%5D=5703819083&as%5Bsub%5D=%E8%F1%EA%E0%F2%FC%7C Нейрокомпьютеры |Нейрокомпьютеры}}}}}}{{#if:| = }}{{#if:| / {{{ответственный}}}.|{{#if:||.}}}}{{#if:Нейрокомпьютеры|{{#if:| {{#if:| = {{{оригинал2}}} }}{{#if:| / {{{ответственный2}}}.|{{#if:||.}}}}}}}}{{#if:1-е| - 1-е.}}{{#switch:{{#if:|м}}{{#if:Изд-во МГТУ им. Н.Э. Баумана|и}}{{#if:2002|г}}
|миг= - Шаблон:Указание места в библиоссылке : Изд-во МГТУ им. Н.Э. Баумана, 2002. |ми= - Шаблон:Указание места в библиоссылке : Изд-во МГТУ им. Н.Э. Баумана. |мг= -

Адаптивные информационные системы

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

Адекватно отражать знания проблемной области в каждый момент времени;

Быть пригодными для легкой и быстрой реконструкции при изменении проблемной среды.

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

В процессе разработки адаптивных информационных систем применяется оригинальное или типовое проектирование. Оригинальное проектирование предполагает разработку информационной системы с «чистого листа» на основе сформулированных требований. Реализация этого подхода основана на использовании систем автоматизированного проектирования, или CASE-технологий (Designer2000, SilverRun, Natural Light Storm и др.).

При типовом проектировании осуществляется адаптация типовых разработок к особенностям проблемной области. Для реализации этого подхода применяются инструментальные средства компонентного (сборочного) проектирования информационных систем (R/3, BAAN IV, Prodis и др.).

Главное отличие подходов состоит в том, что при использовании CASE-технологии каждый раз при изменении проблемной области выполняется генерация программного обеспечения в целом, а при использовании сборочной технологии – конфигурирование модулей и только в редких случаях – их переработка.

Тема 2. Искусственные нейронные сети. Архитектура и классификация нейронных сетей.

Представление о детальном устройстве головного мозга появилось только около ста лет назад. В 1888 г. испанский доктор Рамони Кайал экспериментально показал, что мозговая ткань состоит из большого числа связанных друг с другом однотипных узлов – нейронов. Более поздние исследования при помощи электронного микроскопа показали, что все нейроны, независимо от типа, имеют схожую организационную структуру (рис. 2.1). Естественная нервная клетка (нейрон) состоит из тела (сомы), содержащего ядро, и отростков – дендритов, по которым в нейрон поступают входные сигналы. Один из отростков, ветвящийся на конце, служит для передачи выходных сигналов данного нейрона другим нервным клеткам. Он называется аксоном. Соединение аксона с дендритом другого нейрона называется синапсом. Нейрон возбуждается и передает сигнал через аксон, если число пришедших по дендритам возбуждающих сигналов больше, чем число тормозящих.


Рисунок 2.1 – Строение биологического нейрона.

В 1943 г. В. Маккаллох и В. Питтс предложили систему обработки информации в виде сети, состоящей из простых вычислителей, созданных по принципу биологического нейрона. Искусственная нейронная сеть (ИНС) представляет собой совокупность простых вычислительных элементов (процессоров) – искусственных нейронов, соединенных некоторым образом так, чтобы между ними обеспечивалось взаимодействие. Искусственные нейроны характеризуются правилом комбинирования входных сигналов и передаточной функцией, позволяющим вычислить выходной сигнал.

Рисунок 2.2 – Кибернетическая модель нейрона.

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

, (2.1)

где w 0 – сдвиг (порог, смещение) нейрона.

В зависимости от значения весового коэффициента w i , входной сигнал x i или усиливается, или подавляется. Взвешенную сумму входных сигналов также называют потенциалом или комбинированным входом нейрона.

Сдвиг обычно интерпретируется как связь, исходящая от элемента, активность которого всегда равна 1. Обычно, для удобства входной вектор расширяется добавлением этого сигнала до х = (1,х 0 ,...,x n) и порог w 0 вносится под знак суммы:

Передаточная функция, или функция активации нейрона, является правилом, согласно которому взвешенная сумма поступивших сигналов P преобразуется в выходной сигнал нейрона Y, который передается другим нейронам сети, т. е. Y=f(P). На рисунке 2.3 показаны графики наиболее распространённых функций активации нейронов.

Пороговая функция пропускает информа­цию только в том случае, если алгебраическая сумма входных сигналов превышает некоторую постоянную величину Р*, на­пример:

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

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

Определенным компромиссом между линейной и ступенча­той функциями является сигмоидальная функция активации Y = 1/(1+exp(-kP)), которая удачно моделирует передаточную харак­теристику биологического нейрона (рис. 3.3, в).

Рисунок 2.3 – Функции переноса искусственных нейронов:

а) линейная; б) ступенчатая; в) сигмоидальная.

Коэффициент k определяет крутизну нелинейной функции: чем больше k, тем ближе сигмоидальная функция к пороговой; чем меньше k, тем она ближе k линейной. Тип функции переноса выбирается с учетом конкретной зада­чи, решаемой с применением нейронных сетей. Например, в за­дачах аппроксимации и классификации предпочтение отдают сигмоидальной кривой.

Архитектура и классификация ИНС

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

В 1958 г. Фрэнк Розенблатт предложил следующую модель нейронной сети – персептрона. Персептрон Розенблатта (рис. 2.4) состоит из k нейронов, имеет d входов, k выходов и только один слой настраиваемых весов w ij .

Рисунок 2.4 – Персептрон Розенблатта.

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

Персептрон способен решать линейные задачи. Число входов сети определяет размерность пространства, из которого выбираются входные данные: для двух признаков пространство оказывается двумерным, для трех – трехмерным, а для d признаков – d-мерным. Если прямая или гиперплоскость в пространстве входных данных может разделить все образцы на соответствующие им классы, то проблема является линейной, в противном случае – нелинейной. На рисунке 2.5 показаны множества точек на плоскости, причём в случае а) граница линейная, в случае – б) нелинейная.

Рисунок 2.5 – Геометрическое представление линейной (а) и

нелинейной (б) задач.

Для решения нелинейных проблем предложены модели многослойных персептронов (MLP), способные строить ломаную границу между распознаваемыми обра­зами. В многослойных сетях каждый нейрон может посылать выходной сигнал только в следующий слой и принимать входные сигналы только с предыдущего слоя, как показано на рисунке 2.6. Слои нейронов, расположенные между входным и выходным называются скрытыми, так как не получают и не передают данные непосредственно из внешней среды. Такая сеть позволяет выделять глобальные свойства данных за счет наличия дополнительных синаптических связей и повышения уровня взаимодействия нейронов.

Рисунок 2.6 – Схема многослойного персептрона.

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

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

Рисунок 2.7 – Классификация распространённых видов ИНС.

Тема 3. Сети типа персептрон

Задача классификации образов. Обучение с учителем

Ф. Розенблатт предложил использовать персептрон для задач классификации. Многие приложения можно интерпретировать, как проблемы классификации. Например, оптическое распознавании символов. Отсканированные символы ассоциируются с соответствующими им классами. Имеется немало вариантов изображения буквы "Н" даже для одного конкретного шрифта – символ может оказаться, например, смазанным, – но все эти изображения должны принадлежать классу "Н".

Когда известно, к какому классу относится каждый из учебных примеров, можно использовать стратегию обучения с учителем. Задачей для сети является ее обучение тому, как сопоставить предъявляемый сети образец с контрольным целевым образцом, представляющим нужный класс. Иными словами, знания об окружающей среде представляются нейронной сети в виде пар "вход-выход". Например, сети можно предъявить изображение буквы "Н" и обучить сеть тому, что при этом соответствующий "Н" выходной элемент должен быть включен, а выходные элементы, соответствующие другим буквам – выключены. В этом случае входной образец может быть набором значений, характеризующих пиксели изображения в оттенках серого, а целевой выходной образец – вектором, значения всех координат которого должны быть равными 0, за исключением координаты, соответствующей классу "Н", значение которой должно быть равным.

На рисунке 3.1 показана блочная диаграмма, иллюстриру­ющая эту форму обучения. Предположим, что учителю и обучаемой сети подается обучающий вектор из окружающей среды. На основе встроенных знаний учитель может сформировать и передать обучаемой ней­ронной сети желаемый отклик, соответствующий данному входному вектору. Параметры сети корректируются с учетом обучающего век­тора и сигнала ошибки. Сигнал ошибки – это разность между желаемым сигналом и текущим откликом нейронной сети. После окончания обучения учителя можно отключить и позволить нейронной сети работать со средой самостоятельно.

Рисунок 3.1 – Концепция обучения ИНС с учителем.

Алгоритм обучения перцептрона включает следующие шаги:

· Системе предъявляется эталонный образ.

· Если результат распознавания совпадает с заданным, весовые коэффициенты связей не изменяются.

· Если ИНС неправильно распознает результат, то весовым коэффициентам дается приращение в сторону повышения качества распознавания.