Московский государственный университет путей сообщения
Опубликован: 22.12.2006 | Доступ: свободный | Студентов: 2211 / 463 | Оценка: 4.07 / 4.02 | Длительность: 16:07:00
ISBN: 978-5-9556-0071-0
Специальности: Разработчик аппаратуры
Лекция 9:

Вычислительные системы нетрадиционной архитектуры

< Лекция 8 || Лекция 9: 1234 || Лекция 10 >

Нейронные сети и нейрокомпьютеры

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

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

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

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

Фрагмент нейросети представлен на рис. 9.8.

Фрагмент нейронной сети

Рис. 9.8. Фрагмент нейронной сети

Либо каждый нейрон управляем извне, либо сети строятся по принципу самоуправления, используя обратные связи. А именно, можно регулировать значения весов синапсических связей {wi} и значения порогов hi. Функции f бывают различны, но просты по объему вычислений.

В простейшем случае f cовпадает с линейной формой — указанным аргументом. Т.е. по всем дендритам с учетом их весов производится суммирование и сравнение с порогом. Величина превышения порога является величиной возбуждения нейрона. Она передается через его ветвящийся аксон в соответствии со связями данного нейрона. В некоторых сетях величина возбуждения нейрона может принимать только два значения: возбужден (1), не возбужден (0).

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

Сигмоидный нейроподобный элемент

Рис. 9.9. Сигмоидный нейроподобный элемент

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

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

Существуют два режима работы сети: режим обучения и режим распознавания.

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

Через некоторое время возбудится нейрон выходного слоя, который мы можем отметить как образ A. Т.е. его возбужденное состояние мы воспринимаем как ответ: "Это буква A ". Введем снова букву A, но с естественными искажениями. Может возбудиться тот же нейрон, но может и другой. Мы хотим "научить" систему, заставить ее ответить, что это — буква A, т.е добиться возбуждения того же нейрона выходного слоя.

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

Так, предъявляя множество эталонов и регулируя параметры сети, мы производим ее обучение данному образу. (Математические проблемы несовместимости управления параметрами для разных эталонов оставим в стороне: в живой природе такой процесс проходит успешно.)

Обучение заканчивается тогда, когда вероятность "узнавания" достигнет требуемого значения, т.е. необходимость корректировки параметров по предъявляемым эталонам возникает все реже. Теперь можно работать в режиме распознавания — в том ответственном режиме, для которого сеть создавалась. Предъявляем сети различные буквы. Можем быть уверены, что с большой вероятностью, если мы предъявим случайно искаженную и даже зашумленную букву A (конечно, в допустимых пределах), сеть ее распознает, т.е. возбудится соответствующий нейрон выходного слоя.

Продолжим обсуждение применимости.

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

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

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

Важная область применения — ситуационное управление.

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

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

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

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

Здесь целесообразно вернуться к рассмотрению ВС типа SPMD в качестве нейропроцессора. Она идеально соответствует требованиям задачи, если производить распределение нейронов между процессорами. Легко просматривается план обработки нейросети как в режиме обучения (например, при реализации метода "обратного прохождения ошибки"), так и в режиме распознавания.

< Лекция 8 || Лекция 9: 1234 || Лекция 10 >
Вадим Козлов
Вадим Козлов
Россия, Москва
Тимофей Маханько
Тимофей Маханько
Россия