Cybernetics Wiki
Advertisement
Файл:Artificial Neuron Scheme.png

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

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

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

Основная статья: Нейрон

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

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

Математическая модель искусственного нейрона была предложена У. Маккалоком и В. Питтсом вместе с моделью сети, состоящей из этих нейронов. Авторы показали, что сеть на таких элементах может выполнять числовые и логические операции[4]. Практически сеть была реализована Фрэнком Розенблаттом в 1958 году как компьютерная программа, а в последствии как электронное устройство — перцептрон. Первоначально нейрон мог оперировать только с сигналами логического нуля и логической единицы[5], поскольку был построен на основе биологического прототипа, который может пребывать только в двух состояниях — возбужденном или невозбужденном. Развитие нейронных сетей показало, что для расширения области их применения необходимо, чтобы нейрон мог работать не только с бинарными, но и с непрерывными (аналоговыми) сигналами. Такое обобщение модели нейрона было сделано Уидроу и Хоффом[6], которые предложили в качестве функции срабатывания нейрона использовать логистическую кривую.

Связи между искусственными нейронами[]

Связи, по которым выходные сигналы одних нейронов поступают на входы других, часто называют синапсами по аналогии со связями между биологическими нейронами. Каждая связь характеризуется своим весом. Связи с положительным весом называются возбуждающими, а с отрицательным — тормозящими[7]. Нейрон имеет один выход, часто называемый аксоном по аналогии с биологическим прототипом. С единственного выхода нейрона сигнал может поступать на произвольное число входов других нейронов.

Математическая модель[]

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

Здесь и — соответственно сигналы на входах нейрона и веса входов. Возможные значения сигналов на входах нейрона всегда лежат в интервале , они могут быть либо дискретными (нуль или единица), либо аналоговыми. Дополнительный вход и соответствующий ему вес используется для инициализации нейрона[8]. Под инициализацией подразумевается смещение активационной функции нейрона по горизонтальной оси, то есть формирование порога чувствительности нейрона[5]. Кроме того, иногда к выходу нейрона специально добавляют некую случайную величину.

Передаточная функция нейрона[]

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

Классификация нейронов[]

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

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

Основные типы передаточных функций[]

Файл:PicewiseLinearFunction.png

Линейная функция активации с насыщением

Линейная передаточная функция[]

Сигнал на выходе нейрона линейно связан со взвешенной суммой сигналов на его входе.

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

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

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

Файл:HardLimitFunction.png

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

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

Представляет собой перепад. До тех пор пока взвешенный сигнал на входе нейрона не достигает некоторого уровня — сигнал на выходе равен нулю. Как только сигнал на входе нейрона превышает указанный уровень — выходной сигнал скачкообразно изменяется на единицу. Самый первый представитель слоистых искусственных нейронных сетейперцептрон[11] состоял исключительно из нейронов такого типа[5]. Математическая запись этой функции выглядит так:

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

Файл:SigmoidFunction.png

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

Сигмоидальная передаточная функция[]

Основная статья: Сигмоид

Один из самых часто используемых, на данный момент, типов передаточных функций. Введение функций сигмоидального типа было обусловлено ограниченностью нейронных сетей с пороговой функцией активации нейронов — при такой функции активации любой из выходов сети равен либо нулю, либо единице, что ограничивает использование сетей не в задачах классификации. Использование сигмоидальных функций позволило перейти от бинарных выходов нейрона к аналоговым[12]. Функции передачи такого типа, как правило, присущи нейронам, находящимся во внутренних слоях нейронной сети.

Логистическая функция[]

Математически эту функцию можно выразить так:

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

То, что производная этой функции может быть выражена через её значение облегчает использование этой функции при обучении сети по алгоритму обратного распространения[13]. Особенностью нейронов с такой передаточной характеристикой является то, что они усиливают сильные сигналы существенно меньше, чем слабые, поскольку области сильных сигналов соответствуют пологим участкам характеристики. Это позволяет предотвратить насыщение от больших сигналов[14].

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

Использование функции гиперболического тангенса

отличается от рассмотренной выше логистической кривой тем, что его область значений лежит в интервале (-1;1). Т.к. верно соотношение

,

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

Радиально-базисная функция передачи[15][]

Этот тип функций принимает в качестве аргумента расстояние между входным вектором и некоторым наперед заданным центром активационной функции. Значение этой функции тем выше, чем ближе входной вектор к центру[16]. В качестве радиально-базисной можно, например, использовать функцию Гаусса:

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

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

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

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

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

  • Экспонента ;
  • Тригонометрический синус;
  • Модульная: ;
  • Квадратичная.
Файл:Artificial Neuron And.png

Схема нейрона, настроенного на моделирование логического «И»

Файл:Artificial neuron or.png

Схема нейрона, настроенного на моделирование логического «ИЛИ»

Файл:Artificial Neuron Not.png

Схема нейрона, настроенного на моделирование логического «НЕ»

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

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

Различия между биологическим и искусственным нейроном[]

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

Примечания[]

  1. Людмила Георгиевна Комарцова, Александр Викторович Максимов — Нейрокомпьютеры
  2. По аналогии с нейронами активации
  3. Миркес Е. М., pca.(narod.ru)/MirkesNeurocomputer.htm Нейрокомпьютер. Проект стандарта. — Новосибирск: Наука, 1999. — 337 с. ISBN 5-02-031409-9
  4. В книге McCulloch W.S., Pitts W. A logical Clculus of Ideas Immanent in Nervous Activity — Bull. Mathematical Biophysics, 1943
  5. 5,0 5,1 5,2 Л. Н. Ясницкий — Введение в искусственный интеллект — с.29
  6. В работе Widrow B., Hoff M.E. Adaptive switching circuits. 1960 IRE WESTCON Conferencion Record. — New York, 1960
  7. В. В. Круглов, В. В. Борисов — Искусственные нейронные сети. Теория и практика — с.11
  8. 8,0 8,1 В. А. Терехов — Нейросетевые системы управления — с.12-13
  9. В. В. Круглов, В. В. Борисов — Искусственные нейронные сети. Теория и практика — с.14
  10. 10,0 10,1 В. В. Круглов, В. В. Борисов — Искусственные нейронные сети. Теория и практика — с.12 Ошибка цитирования Неверный тег <ref>: название «Kruglov12» определено несколько раз для различного содержимого
  11. Очень часто в литературе можно встретить название персептрон
  12. Л. Н. Ясницкий — Введение в искусственный интеллект — с.34
  13. CIT forum — Нейрокомпьютеры — архитектура и реализация
  14. В. В. Круглов, В. В. Борисов — Искусственные нейронные сети. Теория и практика — с.13
  15. В литературе часто встречается сокращение RBF, порождённое английским названием
  16. Л. Н. Ясницкий — Введение в искусственный интеллект — с.77
  17. В. В. Круглов, В. В. Борисов — Искусственные нейронные сети. Теория и практика — с.349
  18. В. В. Круглов, В. В. Борисов — Искусственные нейронные сети. Теория и практика — с.348
  19. Л. Н. Ясницкий — Введение в искусственный интеллект — c.30


Ссылки[]

Литература[]

  • В. А. Терехов, Д. В. Ефимов, И. Ю. Тюкин Нейросетевые системы управления. — 1-е. — Высшая школа, 2002. — С. 184. — ISBN 5-06-004094-1
  • Роберт Каллан Основные концепции нейронных сетей = The Essence of Neural Networks First Edition. — 1-е. — «Вильямс», 2001. — С. 288. — ISBN 5-8459-0210-X
  • Л.Н. Ясницкий Введение в искусственный интеллект. — 1-е. — Издательский центр "Академия", 2005. — С. 176. — ISBN 5-7695-1958-4
  • Людмила Георгиевна Комарцова, Александр Викторович Максимов Нейрокомпьютеры. — 1-е. — Изд-во МГТУ им. Н.Э. Баумана, 2002. — С. 320. — ISBN 5-7038-1908-3
Advertisement