Садовой А. В.

Сотник С. Л.

Алгоритмы обучения нейронных сетей будущего

"… все бесконечное разнообразие внешних проявлений мозговой деятельности сводится окончательно лишь к одному явлению — мышечному движению"
Сеченов И. М.

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

Слабосвязанный мир

Авторы статьи являются сторонниками мнения, что мир, в котором мы живем, является миром со слабыми причинно-следственными связями. Что имеется в виду?

Представим себе, что Вы пишете статью, а за окном упал осенний кленовый лист, которого Вы не видите. Если такое событие повлияет на текст, который вы пишете, то можно сказать, что наш мир настолько насыщен причинно-следственными связями, что любое событие окажет большое или малое влияние на события, произошедшие после него. Такой мир будем называть сильносвязанным [1, 2].

Однако весь наш опыт доказывает обратное. К примеру, на самолет не успел один из пассажиров. На подавляющее большинство остальных пассажиров это не окажет никакого влияния. Дело в том, что обычно реальные системы имеют так называемые "ступенчатые функции" (данный термин дан в соответствии с [1, 2]), которые при небольших вариациях возмущающих воздействий не дают им распространяться к другим системам. Более того, именно благодаря слабой связанности мира мы можем выделить в нем отдельные системы, а в них подсистемы. В противном случае весь мир представлял бы собой одну настолько сложную систему, что самый великий гений не мог бы разобраться и жить в этом безумном мире, не говоря уж об обычной амебе.

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

Таких примеров можно привести множество.

Разделяй и властвуй

Рассмотрим теперь построение большинства современных алгоритмов оптимизации структуры и параметров. Несмотря на их огромное разнообразие, можно выделить основную черту: оптимизируемый объект является "черным ящиком", который оптимизируется целиком. Для полученного на очередном шаге набора параметров достигнутый результат оценивается только по общей оценочной функции. Это приводит к тому, что малые улучшения в работе отдельных локальных подсистем не закрепляются на фоне ухудшения работы остальных. Можно назвать еще некоторые недостатки подобной реализации — сложности в подборе шага, коэффициента мутаций и т. д., но это уже решаемые мелочи.

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

Здесь примером (пример взят из [1]) могли бы служить N колес с буквами А и В на ободе, где буквы А занимали бы k-ю долю окружности, а В — остальную ее часть. Все колеса приводят во вращение и дают им остановиться; остановка колеса на букве А считается "успехом". Сравним три способа сложения этих частных успехов в Большой Успех, который будем считать достигнутым только тогда, когда все колеса остановятся на букве А.

Случай 1. Приводятся во вращение все N колес; если все они дадут букву А, регистрируется Успех и пробы заканчиваются; в других случаях колеса снова приводятся во вращение — и так далее, пока все А не появятся сразу. В этом случае потребуется в среднем (1/k)N проб.

Случай 2. Вращается 1-е колесо; если оно остановится на А, оно остается в этом положении; в противном случае его вращают снова. Когда оно, наконец, остановится на А, таким же образом вращают 2-е колесо и т. д. Так поступают до тех пор, пока все N колес не остановятся на секторе А. Здесь в среднем потребуется N/k проб.

Случай 3. Приводятся во вращение все N колес; те, которые покажут А, остаются в этом положении, а те, которые покажут В, вращаются снова. При дальнейших появлениях А соответствующие колеса также остаются в покое. Среднее число проб равно среднему числу проб в самой длинной серии из N серий проб с одним колесом и может быть найдено из распределения длин таких серий; оно будет несколько больше 1/k.

Случайный поиск служит полным аналогом 1-го случая. Многие остальные алгоритмы занимают промежуточное положение между первым и вторым случаем (случайный поиск в подпространствах [4], генетический алгоритм и т. д.). Метод группового учета аргументов (МГУА) [5] приближается ко второму случаю. Очевидно, что человек как правило решает свои проблемы независимо друг от друга, что соответствует третьему случаю.

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

Варианты решения

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

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

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

Каковы результаты работы данной сети? Были опробованы различные сочетания настроек алгоритма при работе в качестве управляющего контроллера простого объекта управления и в большинстве случаев происходило следующее:

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

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

Таким образом, предложенная в работах [1, 2] методика построения системы управления соответствует приведенному выше случаю 1. Почему? По-видимому, дело здесь в том, что принцип симметрии может быть применим к уже настроенной сети, а ее заготовка должна иметь большое количество возможных связей, поскольку априори не известно, какие из них понадобятся. Простота сети должна выражаться не в минимальном количестве возможных связей, а в выделении из главной цели более простых подцелей, которые в экстремальном варианте индивидуальны для каждого нейрона.

Именно так функционируют нейроны человеческого мозга. Они увеличивают весовые коэффициенты связей, идущих к нейронам, которые чаще всего возбуждаются совместно с ними [6].

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

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

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

Литература

  1. У. Росс Эшби. Конструкция мозга. Происхождение адаптивного поведения. // М.: Издательство иностранной литературы, 1962.—398 стр.
  2. W. Ross Ashby. Design for a brain. The origin of adaptive behaviour. // London: Chapman & Hall Ltd., 1960.
  3. Г. А. Голицын, В. М. Петров. Гармония и алгебра живого. // М.: "Знание", 1990.—125 стр.
  4. А. И. Половинкин. Основы инженерного творчества. // М.: "Машиностроение", 1988.—361 стр.
  5. Ивахненко А. Г. Долгосрочное прогнозирование и управление сложными системами. // К.: “Техника”, 1975, 312 стр.
  6. Под. ред. проф. Н. В. Зимкина. Физиология человека. // М.: "Физкультура и спорт", 1975.—495стр.

Оригинал находится на http://www.alicetele.com/~sergei/index_r.htm


Rambler's Top100 Rambler's Top100 Украинский портАл META - украинская поисковая система
Сайт управляется системой uCoz