- •Нейрокомпьютерная техника: Теория и практика
- •Оглавление
- •Предисловие
- •Благодарности
- •Введение
- •Почему именно искусственные нейронные сети?
- •Свойства искусственных нейронных сетей
- •Обучение
- •Обобщение
- •Абстрагирование
- •Применимость
- •Исторический аспект
- •Искусственные нейронные сети сегодня
- •Перспективы на будущее
- •Искусственные нейронные сети и экспертные системы
- •Соображения надежности
- •Литература
- •Глава 1. Основы искусственных нейронных сетей
- •Биологический прототип
- •Искусственный нейрон
- •Активационные функции
- •Однослойные искусственные нейронные сети
- •Многослойные искусственные нейронные сети
- •Нелинейная активационная функция
- •Сети с обратными связями
- •Терминология, обозначения и схематическое изображение искусственных нейронных сетей
- •Терминология
- •Дифференциальные уравнения или разностные уравнения
- •Графическое представление
- •Обучение искусственных нейронных сетей
- •Цель обучения
- •Обучение с учителем
- •Обучение без учителя
- •Алгоритмы обучения
- •Литература
- •Глава 2. Персептроны персептроны и зарождение искусственных нейронных сетей
- •Персептронная представляемость
- •Проблема функции исключающее или
- •Линейная разделимость
- •Преодоление ограничения линейной разделимости
- •Эффективность запоминания
- •Обучение персептрона
- •Алгоритм обучения персептрона
- •Дельта-правило
- •Трудности с алгоритмом обучения персептрона
- •Литература
- •Глава 3. Процедура обратного распространения
- •Введение в процедуру обратного распространения
- •Обучающий алгоритм обратного распространения
- •Сетевые конфигурации
- •Многослойная сеть.
- •Обзор обучения
- •Дальнейшие алгоритмические разработки
- •Применения
- •Предостережение
- •Паралич сети
- •Локальные минимумы
- •Размер шага
- •Временная неустойчивость
- •Литература
- •Глава 4. Сети встречного распространения
- •Введение в сети встречного распространения
- •Структура сети
- •Нормальное функционирование
- •Слои Кохоненна
- •Слой Гроссберга
- •Обучение слоя кохонена
- •Предварительная обработка входных векторов
- •Выбор начальных значений весовых векторов
- •Режим интерполяции
- •Статистические свойства обученной сети
- •Обучение слоя гроссберга
- •Сеть встречного распространения полностью
- •Приложение: сжатие данных
- •Обсуждение
- •Литература
- •Глава 5. Стохастические методы
- •Использование обучения
- •Больцмановское обучение
- •Обучение Коши
- •Метод искусственной теплоемкости
- •Приложения к общим нелинейным задачам оптимизации
- •Обратное распространение и обучение коши
- •Трудности, связанные с обратным распространением
- •Трудности с алгоритмом обучения Коши
- •Комбинирование обратного распространения с обучением Коши
- •Обсуждение
- •Литература
- •Глава 6. Сети Хопфилда
- •Конфигурации сетей с обратными связями
- •Бинарные системы
- •Устойчивость
- •Ассоциативная память
- •Непрерывные системы
- •Сети Хопфилда и машина Больцмана
- •Термодинамические системы
- •Статистичекие сети Хопфилда
- •Обобщенные сети
- •Приложения
- •Аналого-цифровой преобразователь
- •Задача коммивояжера
- •Обсуждение
- •Локальные минимумы
- •Скорость
- •Функция энергии
- •Емкость сети
- •Литература
- •Глава 7. Двунаправленная ассоциативная память
- •Структура дап
- •Восстановление запомненных ассоциаций
- •Кодирование ассоциаций
- •Емкость памяти
- •Непрерывная дап
- •Адаптивная дап
- •Конкурирующая дап
- •Заключение
- •Литература
- •Глава 8. Адаптивная резонансная теория
- •Архитектура apt
- •Описание apt
- •Упрощенная архитектура apt
- •Функционирование сети apt в процессе классификации
- •Реализация apt
- •Функционирование сетей apt
- •Пример обучения сети apt
- •Характеристики apt
- •Инициализация весовых векторов т
- •Настройка весовых векторов Вj
- •Инициализация весов bij
- •Теоремы apt
- •Заключение
- •Литература
- •Глава 9. Оптические нейронные сети
- •Векторно-матричные умножители
- •Электронно-оптические матричные умножители
- •Сети Хопфилда на базе электронно-оптических матричных умножителей
- •Голографические корреляторы
- •Объемные голограммы
- •Оптическая сеть Хопфилда, использующая объемные голограммы
- •Заключение
- •Литература
- •Глава 10. Когнитрон и неокогнитрон
- •Когнитрон
- •Структура
- •Обучение
- •Неокогнитрон
- •Структура
- •Обобщение
- •Вычисления
- •Обучение
- •Заключение
- •Литература
- •Приложение а. Биологические нейронные сети
- •Человеческий мозг: биологическая модель для искусственных нейронных сетей
- •Организация человеческого мозга
- •Мембрана клетки
- •Компьютеры и человеческий мозг
- •Приложение б. Алгоритмы обучения
- •Обучение с учителем и без учителя
- •Метод обучения хэбба
- •Алгоритм обучения Хэбба
- •Метод сигнального обучения Хэбба
- •Метод дифференциального обучения Хэбба
- •Входные и выходные звезды
- •Обучение входной звезды
- •Обучение выходной звезды
- •Обучение персептрона
- •Метод обучения уидроу-хоффа
- •Методы статистического обучения
- •Самоорганизация
- •Литература
-
Векторно-матричные умножители
Процесс функционирования большинства искусственных нейронных сетей может быть описан математически в виде последовательных умножений вектора на матрицу, одна операция умножения в каждом слое. Для вычисления выхода слоя входной вектор умножается на матрицу весовых коэффициентов, образуя вектор NET. К этому вектору прикладывается затем функция активации F, образуя вектор OUT, являющийся выходом слоя.
Символически
NET = XW,
OUT = F(NET),
где NET – вектор в виде строки, сформированный взвешенными суммами входов; OUT – выходной вектор; Х – входной вектор; W – матрица весовых коэффициентов.
В биологических нейронных сетях эта операций выполняется большим количеством работающих одновременно нейронов, поэтому система работает быстро, несмотря на медленную работу отдельных нейронов.
Когда искусственные нейронные сети моделируются на универсальных компьютерах, присущая им параллельная природа вычислений теряется; каждая операция должна быть выполнена последовательно. Несмотря на большую скорость выполнения отдельных вычислений, количество операций, необходимых для выполнения умножения матриц, пропорционально квадрату размерности входного вектора (если входной и выходной векторы имеют одинаковую размерность), и время вычислений может стать слишком большим.
-
Электронно-оптические матричные умножители
Электронно-оптические нейронные сети обеспечивают средства для выполнения параллельного умножения матриц. Рассмотренные в работах [3,6,7] такие сети работают со скоростью , ограниченной только доступными электронно-оптическими компонентами; время вычислений потенциально располагается в субнаносекундном диапазоне.
На рис. 9.1 показана система, способная выполнять умножение шестиэлементного входного вектора на матрицу размерностью 6х5, производя на выходе пятиэлементный вектор NET. Справа расположен столбец световых источников, лучи которых проходят через цилиндрические линзы; каждый луч освещает одну строку весовой маски.
Таким образом, луч 1 освещает и w11 w12 w15. В качестве маски может быть использована фотопленка, у которой прозрачность каждого квадрата пропорциональна весу. С левой стороны расположена вторая цилиндрическая линза, фокусирующая свет от каждого столбца маски на соответствующий фотодетектор. Таким образом, световой поток на фотодетекторе 1 является суммой произведений световых интенсивностей на передаточную функцию столбца 1. В символьной форме
,
где NETj – выход NET нейрона j (выход фотодетектора j); Wij – вес связи от нейрона i к нейрону j (величина обратно пропорциональная прозрачности весовой маски в строке i, столбце j); Xi – i-я компонента входного вектора i (выход источника света i).
Рис. 9.1. Электронно-оптический векторно-матричный умножитель
Выход каждого фотодетектора является сверткой между входным вектором и соответствующим столбцом весовой матрицы. Таким образом, набор выходов представляет собой вектор, равный произведению входного вектора на весовую матрицу.
Это матричное умножение выполняется параллельно. При использовании соответствующих высокоскоростных светоизлучающих диодов и фотодетекторов PIN умножение вектора на матрицу может быть выполнено менее чем за наносекунду. Более того, скорость умножения практически не зависит от размерности массива. Это позволяет наращивать сети без существенного увеличения времени вычислений. В данном простом примере веса сети фиксированы; они могут изменяться только при подстановке различных весовых масок. Для использования в адаптивных системах веса должны быть переменными. Существует многообещающий метод, основанный на использовании жидкокристаллического клапана вместо фотографического негатива. Это позволяет изменять веса электронным способом в течение микросекунд. В настоящее время жидкокристаллический клапан может использоваться для реализации двоичных весов, но имеет недостаточную стабильность и контрастность для реализации непрерывных переменных весов. Эта ситуация может измениться в ближайшем будущем.