ФЭНДОМ



© Сергей Яковлев, 2006

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



Построение и анализ асинхронных нейронных сетей Править

Аннотация. Показана теоретическая необходимость наличия технических показателей в архитектуре нейронных сетей, говорящих о существовании определенных закономерностей в предъявляемых стимулах. Уточнено понятие синхронности – асинхронности. Проанализированы синхронные и асинхронные перцептроны на предмет возможности сохранения закономерностей, имеющихся во входных стимулах, для последующего возможного анализа. Предложен метод regularity detection (RD), который учитывает ряд сложностей, имеющихся в других видах нейронных сетей, в выявлении закономерностей из предъявляемых стимулов. Анализируется применение метода RD в нелинейных многоразмерных задачах. Предлагаемый метод позволяет увеличивать информативную емкость сети. Благодаря этому он более экономен с точки зрения памяти, но требует более длительного обучения.

Ключевые слова: распознавание образов, нейронные сети, обобщение

1. Введение Править

Любая работа по тематике искусственных нейронных сетей [1,2,3,4] опосредованно являет собой в той или иной степени (с тем или иным успехом) моделирование работы человеческого мозга. Поэтому важно осмысление таких понятий, как память, обучение, закономерность, осознание и ряда других. Об этом также упоминает Минский [5]: “Незрелость, которую демонстрирует наша неспособность ответить на такого рода вопросы, проявляется даже в языке, на котором вопросы формулируются. Пары противоположностей слов типа “параллельный” - “последовательный”, “локальный” - “глобальный”, используются так, как-будто они относятся к четко определенным техническим понятиям. … Задача состоит в том, как объединить их в ясную, четкую теорию.”. Так, например, архитектура нейронных сетей уже представляет собой некое понимание о памяти, а система подкрепления с коррекцией ошибки дает понимание о способе обучения и о том, как формируются связи в памяти.

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

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

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

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

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

2. Понятие синхронных и асинхронных сетей Править

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

«Определение 12. Передающие функции связей в перцептроне зависят от двух параметров: времени передачи импульса по каналам связи и коэффициента, или веса, связи . Передающая функция связи от элемента к элементу имеет вид

»

Из других определений этой же работы следует:

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

Теперь мы в состоянии сформулировать понятие синхронности и асинхронности:

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

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

3. Трудности выявления закономерностей в синхронных искусственных нейронных сетях Править

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

Можно выделить два типа бинарных синхронных ИНС:

  1. перцептронные сети;
  2. оптимизирующие сети (фильтры) – угловая классификация (СС4) [2], сети Хопфилда и Хэминга, а также сети адаптивного резонанса [6] и др.

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

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

Первый слой весов в перцептроне [1], как известно, определяется случайным образом как +1 (возбуждающая связь) или –1 (тормозящая связь). Второй же слой весов корректируется с помощью системы подкрепления. Роль первого слоя достаточно значима, т.к. следствием его отсутствия была бы невозможность решения нелинейных задач. Таким образом, первый слой играет роль функции, переводящей сигналы стимулов из линейного представления в нелинейное, что и позволяет ряду “полных” задач сходиться при обучении.

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

Далее можно было бы думать, что если определять веса первого слоя не случайно, а по какому-нибудь правилу, то данная проблема “вырождения закономерности” имела бы решение. Но тут удивительным образом оказывается, что планомерное определение весов первого слоя не позволяет в большинстве случаев различать подаваемые стимулы. Это происходит из-за того, что активность А - элементов в ряде случаев одинакова при разных стимулах. Таким образом, при установке весов по правилам, а не случайным образом, на эти правила должен быть наложен ряд ограничений, определенных таким образом, чтобы:

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

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

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

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

4. Метод regularity detection (RD) Править

4.1. Общие положения Править

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

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

Рис. 1. Архитектура нейронной сети в методе RD

4.2. Задача “XOR” Править

Для демонстрации пригодности данного метода в решении нелинейных задач рассмотрим элементарную задачу “XOR”. Кроме того, это позволит нам увидеть данный метод в действии. Архитектура нейронной сети для этой задачи представлена на рисунке 2. Таблица истинности функции “XOR” представлена в таблице 1.

Рис. 2. Архитектура нейронной сети в методе RD

Таблица 1

Таблица истинности функции XOR

Input X1 Input X2 Output Y 0 0 0 0 1 1 1 0 1 1 1 0

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

Таблица 2

Матрица SA в задаче “XOR”

A1 A2 A3 A4 S1 0 0 0 0 S2 1 1 0 0 S3 0 1 0 1 S4 1 0 0 0

Из матрицы SA видно, что задержка оказывает такое действие, что если на входах (A1, A2) сигнал присутствует хотя бы два раза подряд, то на соответствующем А – элементе, связанном со входом, также возникает сигнал. При подаче первого стимула отсутствует активность, значит он будет отнесен к отрицательному классу, и в обучении будет влиять лишь на активность при других стимулах (т.е. будет сбрасывать активность следующего стимула в А - элементах). Здесь третий А – элемент не активизируется ни при одном стимуле, значит он лишний при обучении. Процесс нахождения весов системой подкрепления с коррекцией весов продемонстрирован в таблице 3.

Таблица 3 Процесс нахождения весов в задаче “XOR” Итерация 1 Итерация 2 Итерация 3 Итерация 4 Итерация 5 W1 -1 -1 0 * * 1 0 0 1 0 * 1 * * * W2 -1 0 0 * * 0 -1 0 0 -1 * -1 * * * W4 0 1 1 * * 1 1 2 2 2 * 2 * * * St 2 3 4 2 3 4 2 3 4 2 3 4 2 3 4

  • - нет изменений, т.к. стимул распознан правильно.

4.3. Особенности многоразмерных задач

Главная проблема при моделировании выполнения многоразмерных задач – это технические проблемы: недостаток скорости или отсутствие доступного размера памяти. Ориентировочным пределом является задача с 16 бинарными входами, 65536 А – элементами и 8 бинарными выходами (при условии полносвязной архитектуры нейронной сети). Из-за большого числа связей их становится трудно хранить в памяти, поэтому их приходится или сохранять на диске (что также замедляет работу программы) или пересчитывать большое число раз после каждого показа стимула; при 65536 стимулах обычно требуется не менее 1000 итераций для обучения. Моделирование одной итерации (на современном персональном компьютере) в такой задаче может занимать до нескольких минут, а на весь цикл обучения (при некоторой оптимизации) может уйти несколько суток. А по существу размер такой задачи не столь большой, т.к. соответствует полному обучению одному изображению размером 256х256 пикселей с 256 цветовой гаммой.

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

В этом методе можно без серьезных трудностей говорить о задачах с 16 входами, до 1000 А – элементов и 8 выходами. Поэтому здесь мы проанализируем работу RD метода при 8 входах, на которые будут подаваться числа от 0 до 255, число А – элементов будет не более 200, число стимулов будет 256 случайных цветных точек, цвет которых (с 256 цветовой гаммой) нужно получить на 8-ми выходах.

Следующей основной проблемой становится проблема сходимости. Это происходит оттого, что для того чтобы сформировать связи первого слоя как минимум для 256 А – элементов требуется анализировать большое число стимулов. По закону сходимости [1] – для каждого стимула требуется до 1-го А - элемента; на практике, за счет обучения, достаточно 60-80% от числа стимулов. Анализ лишь текущего и предыдущего стимула дает 8 А – элементов, если анализировать по 1-му биту. Можно анализировать и по несколько бит, выявляя закономерности появления постоянного сигнала активности не на одном входе, а сразу на нескольких. А также можно анализировать сразу несколько стимулов (посредством задержки).

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

Поэтому здесь мы предложим способ построения связей первого слоя А – элементов, который хорошо себя зарекомендовал в многоразмерных задачах. Этот способ основан на выявлении симметрии в стимуле. Для этого после показа стимула каждый вход сравнивается последовательно с другими входами, образуя матрицу, показанную на рис.3. На пересечении устанавливается единица (символизирующая активность А - элемента), если сравниваемые два значения совпадают. Затем можно сравнивать сразу по несколько бит, например, первый и второй со вторым и третьим, и только если два результата сравнения верны, то устанавливать активность А – элемента (рис. 3.). Таким образом, желательно сравнивать до ½ от числа S – элементов. А это означает, что таким образом можно сформировать активность 112 А – элементов при 8-ми S - элементах. В общем случае используется следующая формула: .

Рис. 3. Способ формирования активности А – элементов на основании выявления симметрии в стимуле. В примере подан стимул 01011001; слева в сравнении участвует только один бит, справа два бита.

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

Сходимость в результате решения данной задачи изображена на рис. 4.

Рис. 4. Сходимость при решении многоразмерной задачи

4. Заключение Править

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

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

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

5. Список литературы Править

  1. Розенблатт Ф. (1965). Принципы нейродинамики (Перцептроны и теория механизмов мозга), Мир, Москва.
  2. Subhash C. Kak. (1998). On generalization by neural networks, Information Sciences, 111, P.293-302.
  3. Fausett L. (1994). Fundamentals of Neural Networks: Architectures, Algorithms and Applications, PrenticeHall International Inc.
  4. Rojas R. (1996). Neural Networks. A Systematic Introduction. Berlin, Springer – Verlag.
  5. Минский М. (1971). Перцептроны, Мир, Москва.
  6. Вассерман Ф. (1992). Нейрокомпьтерная техника: теория и практика, Мир, Москва.

Обнаружено использование расширения AdBlock.


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

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

Также на ФЭНДОМЕ

Случайная вики