- •Нейрокомпьютинг
- •Как мозг обрабатывает информацию Из чего построен мозг
- •Структура и функции мозга
- •Восприятие
- •Мышление
- •Мозг, компьютеры и нейрокомпьютеры Право-лево-полушарный симбиоз
- •Встречная эволюция мозга и компьютеров
- •Эволюция компьютеров: от вычислений - к распознаванию образов Первые компьютеры: супер-калькуляторы
- •От вычислений - к обработке символов
- •От символов - к образам
- •Символы и образы, алгоритмы и обучение Трудности современной схемотехники
- •Специфика образной информации
- •Нейрокомпьютеры
- •Вездесущие умные нейрочипы
- •Операционные системы будущего
- •Современные нейрокомпьютеры Элементная база нейрокомпьютеров
- •Сравнение стоимости обычных и нейро-вычислений
- •Преимущества нейро-эмуляторов
- •Готовые нейро-пакеты
- •Инструменты разработки нейроприложений
- •Готовые решения на основе нейросетей
- •Нейросетевой консалтинг
- •Рынок нейропродукции
- •Какие задачи решают нейросети
- •Где применяются нейросети
- •Парадигмы нейрокомпьютинга Что такое парадигмы
- •Коннекционизм
- •Локальность и параллелизм вычислений
- •Программирование: обучение, основанное на данных
- •Универсальность обучающих алгоритмов
- •Классификация базовых нейроархитектур Типы обучения нейросети
- •Архитектура связей
- •Классификация по типу связей и типу обучения (Encoding-Decoding)
- •Нейрон - классификатор
- •Выбор функции активации
- •Двухслойные персептроны
- •Персептрон Розенблатта
- •Байесовский подход
- •Принцип максимального правдоподобия (maximum likelihood)
- •Принцип минимальной длины описания (minimum description length)
- •Градиентное обучение
- •Метод обратного распространения ошибки
- •Эффективность алгоритма back-propagation
- •Использование алгоритма back-propagation
- •Вычислительная сложность обучения
- •Ошибка аппроксимации
- •Переобучение
- •Ошибка, связанная со сложностью модели
- •Оптимизация размера сети
- •Валидация обучения
- •Ранняя остановка обучения
- •Прореживание связей
- •Конструктивные алгоритмы
- •Постановка задачи
- •Правило обучения Хебба
- •Правило обучения Ойа
- •Постановка задачи
- •Необходимость взаимодействия нейронов
- •Самообучающийся слой
- •Сравнение с традиционным статистическим анализом
- •Нелинейный анализ главных компонент Целевая функция
- •Автоассоциативные сети
- •Предикторы
- •Латеральные связи
- •Победитель забирает все
- •Алгоритм обучения соревновательного слоя нейронов
- •Кластеризация и квантование
- •Оценка вычислительной сложности обучения
- •Победитель забирает не все
- •Алгоритм Кохонена
- •Аппроксиматоры с локальным базисом
- •Гибридное обучение
- •Симметричность связей
- •Асинхронная динамика
- •Метрика пространства состоянний
- •Энергия состояния
- •Ассоциативная память
- •Обучение сети. Правило Хебба
- •Выделение сигнала из шума
- •Минимальный базис
- •Пример: поиск промоторов в днк
- •Активная кластеризация
- •Анализ голосований
- •Генетические алгоритмы
- •Метод муравьиных колоний
- •Максимизация энтропии как цель предобработки
- •Типы нечисловых переменных
- •Кодирование ординальных переменных
- •Кодирование категориальных переменных
- •Отличие между входными и выходными переменными
- •Индивидуальная нормировка данных
- •Совместная нормировка: выбеливание входов
- •Понижение размерности входов методом главных компонент
- •Восстановление пропущенных компонент данных
- •Понижение размерности входов с помощью нейросетей
- •Квантование входов
- •Линейная значимость входов
- •Нелинейная значимость входов. Box-counting алгоритмы
- •Формирование оптимального пространства признаков
- •Последовательное добавление наиболее значимых входов
- •Формирование признакого пространства методом ортогонализации
- •Кому нужно предсказывать рынок?
- •Можно ли предсказывать рынок?
- •Технический анализ и нейронные сети
- •Метод погружения. Теорема Такенса
- •Эмпирические свидетельства предсказуемости финансовых рядов
- •Формирование входного пространства признаков
- •Выбор функционала ошибки
- •Обучение нейросетей
- •Способы погружения временного ряда
- •Понижение размерности входов: признаки
- •Метод искусственных примеров (hints)
- •Связь предсказуемости с нормой прибыли
- •Выбор функционала ошибки
- •Обучение нейронной сети
- •Прореживание нейронной сети
- •Извлечение правил
- •Исправление данных
- •Рейтинг корпоративных облигаций
- •Оценка акций
- •Исторические корни
- •Нейросетевое предсказание банкротств
- •Обсуждение
- •Постановка задачи
- •Данные о российских банках
- •Сечения
- •Линейное сжатие информации - метод главных компонент
- •Нелинейное сжатие информации - карты Кохонена
- •Расположение на карте банков с отозванной лицензией
- •Раскраски карты Кохонена
- •Карта размеров банков
- •Балансовые показатели
- •Обсуждение
- •Являются ли нейронные сети языком описания?
- •В чем различие нейронных сетей и статистики?
- •Что лучше, статистические методы или нейронные сети?
- •Почему статистики ревнуют специалистов по нейронным сетям, а не наоборот?
- •Перекрестное опыление.
- •Практические выводы
- •Сети интервальных нейронов
- •Элементы нечеткой логики
- •Нечеткие нейроны
- •Извлечение правил if-then
- •Адаптация функций принадлежности
- •Стохастические нейроны
- •Приближение среднего поля
- •Фазовые переходы
- •Сеть Хопфилда с Хеббовскими связями
Архитектура связей
На способ обработки информации решающим образом сказывается наличие или отсутствие в сети петель обратных связей. Если обратные связи между нейронами отсутствуют (т.е. сеть имеет структуру последовательных слоев, где каждый нейрон получает информацию только с предыдущих слоев), обработка информации в сети однонаправленна. Входной сигнал обрабатывается последовательностью слоев и ответ гарантированно получается через число тактов равное числу слоев.
Наличие же обратных связей может сделать динамику нейросети (называемой в этом случае рекуррентной) непредсказуемой. В принципе, сеть может "зациклиться" и не выдать ответа никогда. Причем, согласно Тьюрингу, не существует алгоритма, позволяющего для произвольной сети определить придут ли когда-либо ее элементы в состояние равновесия (т.н. проблема останова).
Вообще говоря, то, что нейроны в рекуррентных сетях по многу раз принимают участие в обработке информации позволяет таким сетям производить более разнообразную и глубокую обработку информации. Но в этом случае следует принимать специальные меры к тому, чтобы сеть не зацикливалась (например, использовать симметричные связи, как в сети Хопфилда, или принудительно ограничивать число итераций, как это делается в эмуляторе MultiNeuron группы НейроКомп).
Таблица 6. Сравнение архитектур связей нейросетей
Сравнение сетей: |
Без обратных связей (многослойные) |
С обратными связями |
Преимущества |
Простота реализации. Гарантированное получение ответа после прохождения данных по слоям. |
Минимизация размеров сети - нейроны многократно участвуют в обработке данных. Меньший объем сети облегчает процесс обучения. |
Недостатки |
Требуется большее число нейронов для алгоритмов одного и того же уровня сложности. Следствие - большая сложность обучения. |
Требуются специальные условия, гарантирующие сходимость вычислений. |
Классификация по типу связей и типу обучения (Encoding-Decoding)
Ограничившись лишь двумя описанными выше факторами, разделяющими сети по типу обучения (программирования) и функционирования, получим следующую полезную классификацию базовых нейро-архитектур, впервые предложенную, по-видимому, Бартом Коско (Таблица 7).
Таблица 7. Классификация нейросетей
Тиб обучения (Coding) Тип связей (Decoding) |
С "учителем" |
Без "учителя" |
Без обратных связей |
Многослойные персептроны (аппроксимация функций, классификация) |
Соревновательные сети, карты Кохонена (сжатие данных, выделение признаков) |
С обратными связями |
Рекуррентные аппроксиматоры (предсказание временных рядов, обучение в режиме on-line) |
Сеть Хопфилда (ассоциативная память, кластеризация данных, оптимизация) |
В этой таблице различные архитектуры сетей, которые встретятся нам далее в этой книге, распределены по ячейкам в зависимости от способа обработки ими информации и способа их обучения. В скобках указаны основные типы задач, обычно решаемых данным классом нейросетей.
В следующих главах, после более близкого знакомства с перечисленными выше основными нейро-архитектурами, мы рассмотрим конкретные примеры задач из области финансов и бизнеса, интересные с практической точки зрения.
А.Н.Горбань. Обучение нейронных сетей. М: СП Параграф, 1990.
А.Н.Горбань, Д.А.Россиев. Нейронные сети на персональном компьютере. Новосбирск. Наука, Сибирская издательская фирма РАН, 1996.
Ф.В. Широков (1998). "Нейросети на шине VME". Краткая история нейроинформатики. TANA ltd.,
Anderson, J. A. and Rosenfeld, E. Neurocomputing: Foundations of Research. The MIT Press, 1988.
Anderson, J. A., Pellionisz, A. and Rosenfeld, E. Neurocomputing 2: Directions for Research. The MIT Press, 1990.
Beltratti A., Margarita S., Terna P. Neural Networks for Economic and Financial Modeling. ITCP, 1995.
Bishop C.M. Neural Networks and Pattern Recognition. Oxford Press, 1995.
Haykin, S. Neural Networks, a Comprehensive Foundation. Macmillan, 1994.
Hecht-Nielsen, R. Neurocomputing. Addison-Wesley,1990.
Hopfield, J.J. (1982). "Neural networks and physical systems with emergent collective computational abilities", Proc. Natl. Acad. Sci., 79, 2554-2558.
Hopfield, J.J. (1984). "Neurons with graded response have collective computational properties like those of two-state neurons", Proc. Natl. Acad. Sci., 81, 3088-3092.
McCulloch, W.S., Pitts, W. (1943). "A logical calculus of the ideas immanent in nervous activity", Bulletin of Math. Bio., 5, 115-133.
Maren, A., Harston, C. and Pap, R. Handbook of Neural Computing Applications. Academic Press, 1990
Mead, C (1989). Analog VLSI and neural systems. Addison Wesley.
Minsky, M. and Papert, S. (1969). Perceptrons. MIT Press, Cambridge MA.
М. Muller, B. and Reinhardt, J. Neural Networks, An Introduction. Springer-Verlag. 1990.Rosenblatt, F. (1969). Principles of Neurodynamics. Spartan Books, Washington DC, 1961.
Murray A.F. Applications of Neural Nets. Kluwer Academic Publishers, 1995.
Pao, Y. H. Adaptive Pattern Recognition and Neural Networks. Addison-Wesley, 1989.
Rumelhart, D.E., Hinton, G.E., and Wiliams, R.J. (1986). "Learning internal representations by error propagation", in: McClelland, J. L. and Rumelhart, D. E. (Eds.). Parallel Distributed Processing: Explorations in the Microstructure of Cognition. Volume 1, 318-362. MIT Press, Cambridge MA.
Обучение с учителем: Распознавание образов
Персептроны. Прототипы задач: аппроксимация многомерных функций, классификация образов. Возможности персептронов. Обучение с обратным распространением ошибки. Эффект обобщения и переобучение. Оптимизация размеров сети: разрежение связей и конструктивные алгоритмы.
Английской грамматикой в объеме Basic English первым овладел Proteus orator mirabilis, тогда как E.coli eloquentissima даже в 21 000 поколении делал, увы, грамматические ошибки. С.Лем, Эрунтика
… постарайся, насколько можешь отвечать о чем я буду спрашивать тебя. И, если я по рассмотрении твоего ответа найду в нем нечто призрачное и неистинное, незаметно выну это и отброшу… Платон, Теэтет
Персептроны. Прототипы задач
Сети, о которых пойдет речь в этой главе, являются основной "рабочей лошадкой" современного нейрокомпьютинга. Подавляющее большинство приложений связано именно с применением таких многослойных персептронов или для краткости просто персептронов (напомним, что это название происходит от английского perception - восприятие, т.к. первый образец такого рода машин предназначался как раз для моделирования зрения). Как правило, используются именно сети, состоящие из последовательных слоев нейронов. Хотя любую сеть без обратных связей можно представить в виде последовательных слоев, именно наличие многих нейронов в каждом слое позволяет существенно ускорить вычисления используя матричные ускорители.
В
немалой степени популярность персептронов
обусловлена широким кругом доступных
им задач. В общем виде они решают задачу
аппроксимации многомерных функций,
т.е. построения многомерного отображения
,
обобщающего заданный набор примеров
.
В зависимости от типа выходных переменных (тип входных не имеет решающего значения), аппроксимация функций может принимать вид
Классификации (дискретный набор выходных значений), или
Регрессии (непрерывные выходные значения)
Многие практические задачи распознавания образов, фильтрации шумов, предсказания временных рядов и др. сводится к этим базовым прототипическим постановкам.
Причина популярности персептронов кроется в том, что для своего круга задач они являются во-первых универсальными, а во-вторых - эффективными с точки зрения вычислительной сложности устройствами. В этой главе мы затронем оба аспекта.
Возможности многослойных персептронов
Изучение возможностей многослойных персептронов удобнее начать со свойств его основного компонента и одновременно простейшего персептрона - отдельного нейрона.
