Коннекционистская парадигма
Основная идея состоит в следующем: для того, чтобы реализовать некоторые возможности мозга, необходимо воссоздать его архитектурные особенности. Таким образом, коннекционистская машина или нейронная сеть является высокосвязной сетью простых процессоров (искусственных нейронов), каждый из которых имеет много входов и много выходов.
В биологических нейронах способность к обработке выражается в электрохимических характеристиках межнейронных соединений (синапсов). В коннекционистских системах она моделируется заданием силы связи или веса каждому входу. Биологические нейроны взаимодействуют путем передачи электрических импульсов, которые идентичны друг другу, а информация заключена в пространственно-временных связях между ними. Нейроны непрерывно суммируют эффект всех приходящих импульсов. Если результат суммирования возбуждающий, то генерируется выходной импульс, если тормозящий, то выходной импульс не генерируется.
В искусственных нейронных сетях каждый нейрон непрерывно обновляет свое состояние порождением значения активации, которая является функцией входных сигналов и внутренних параметров нейрона. Активация используется для генерации выхода через некоторую сжимающую функцию.
Типичные характеристики искусственных нейронных сетей (НС):
Параметры нейрона (веса) настраиваются посредством подачи на входы обучающих векторов и изменением весов таким образом, чтобы нейрон выдавал требуемые выходные сигналы. Таким образом, нейрон является адаптивной, а не заранее запрограммированной системой.Работу НС целесообразно представлять как эволюцию динамической системы и описывать системой дифференциальных уравнений.Нейронные сети устойчивы к шумам в сигналах и отказам компонентов (нейронов и синапсов). Отказ компонента не влечет отказа всей НС в целом, а лишь несколько ухудшает ее характеристики.Характерной особенностью работы нейронных сетей является то, что они способны находить статистические закономерности или особенности в обучающей выборке. Это позволяет нейронной сети отнести новый входной объект к одному из уже усвоенных сетью образов либо к новому классу.Типичными приложениями нейронных сетей являются классификация образов и ассоциативная память, восстанавливающая полный образ по частичным данным.Не существует простого соответствия между нейронами и семантическими объектами. Скорее, представление "концепции" или "идеи" в сети осуществляется через вектор активностей нейронов, распределенный по сети, так что каждый нейрон участвует одновременно в представлении многих объектов ("идей").
Ранние годы
Идеи создания машин, использующих свойства нейронов, возникли одновременно с разработкой первых компьютеров общего назначения. Фактически, сопоставления вычислений и работы мозга были на переднем плане во многих ранних работах. Например, Джон фон Нейман в первом отчете по машине EDVAC указал на аналогии между используемыми в машине обрабатывающими элементами и нейронами.
В 1942 году Норберт Винер и его коллеги сформулировали идеи кибернетики, которую определили как науку об управлении и связях в организмах животных и в машинах. Главной была идея рассмотрения биологических процессов с инженерной и математической точек зрения. Наиболее важной считалась идея обратной связи.
В те же годы, когда Винер сформулировал принципы кибернетики, Маккаллок и Питтс опубликовали формальное описание искусственных нейронных сетей. Главная их идея заключалась в том, что любая связь типа "вход-выход" может быть реализована искусственной (формальной) нейронной сетью.
Одной из ключевых черт нейронных сетей является то, что они способны обучаться. В 1949 году Дональд Хебб описал механизм работы мозга животного. Согласно этому механизму, синаптические силы (веса) изменяются в соответствии с уровнями активности предсинаптического и постсинаптического нейронов. На языке искусственных нейронов это означает, что вес входа должен увеличиваться, чтобы отражать корреляцию между входом и выходом нейрона.
Следующей вехой было изобретение персептрона Розенблаттом в 1957 году. Наиболее важным результатом его работы является доказательство того, что простая процедура обучения сходится к решению поставленной задачи.
В 1969 году интерес к нейронным сетям снизился в связи с публикацией Минского и Пайперта, указавших на важный класс задач, которые однослойный персептрон решать не может. При этом задача обучения многослойного персептрона в то время еще не была решена: было неясно, какой вклад в ошибку многослойной сети вносит каждый нейрон.
Символьная парадигма
С самого начала было очевидно, что цифровые машины хорошо подходят не только для обработки цифровой информации (собственно вычислений), но и для манипуляции символами, т.к. сами машины ничего не знают о семантике битовых строк в их памяти.
Исследования по искусственному интеллекту имели успех во многих областях, особенно в области экспертных систем. Однако они не оправдали надежд пионеров этого направления на то, что все знания могут быть формализованы и что разум можно рассматривать как устройство, обрабатывающее информацию по определенным правилам. Оказалось, что знания подразделяются на формализуемые и интуитивные. Пример формализуемых знаний — математика, интуитивных — интуитивные знания эксперта в некоторой конкретной области деятельности.
С коннекционистской точки зрения интуитивные знания не могут быть представлены в виде множества лингвистически формализованных правил, и должны быть привлечены совершенно иные стратегии.
Возрождение нейронных сетей
В 1982 году Джон Хопфилд показал, что высокосвязная сеть нейронов с обратными связями может быть описана как динамическая система, обладающая "энергией". При ассоциативном вызове сеть, стартующая в случайном состоянии, сходится к конечному устойчивому состоянию с минимальной энергией. Новый подход к описанию сетей с обратными связями оказался очень плодотворным.
Подобный прорыв произошел и в связи с многослойными сетями без обратных связей. Для обучения этих сетей был разработан алгоритм обратного распространения ошибки.
Нейронные сети являются нелинейными динамическими системами с коллективными свойствами. Для исследования таких сложных моделей нужна большая вычислительная мощность. Новый интерес к искусственным нейронным сетям обусловлен не только новым математическим подходом, но и существенным прогрессом вычислительной техники.
В модели МакКаллока-Питса нейроны имеют состояния 0,1 и пороговую логику перехода из состояния в состояние. Каждый нейрон в сети определяет взвешенную сумму состояний всех других нейронов и сравнивает ее с порогом, чтобы определить свое собственное состояние. Розенблатт ввел в модель МакКаллока-Питса способность связей к модификации, что сделало ее обучаемой. Эта модель была названа персептроном. Новый виток быстрого развития нейронных сетей связан с работами ряда авторов, в особенности с работами Хопфилда, а также с успехами технологии развития СБИС.
Нейрокомпьютеры - устройства, основными компонентами которых являются нейронные сети, применяются в ряде областей:
для решения задач искусственного интеллекта - распознавания образов, обработки изображений, чтения рукописных символов и т.п.;в системах управления и технического контроля; для создания спецвычислителей параллельного действия;как инструмент изучения человеческого мозга.
Нейронные сети различаются между собой меньше всего моделями нейрона, а в основном топологией связей и правилами определения весов (правилами обучения). По структуре сети делятся на однослойные и многослойные.
К однослойным относятся модель Хопфилда и так называемая машина Больцмана. Многослойная сеть имеет входной, выходной и скрытые слои. На входной слой подается информация, с выходного снимается результат обработки, а скрытые слои участвуют в обработке информации.
В отличие от традиционных средств обработки информации, программирование нейронных сетей осуществляется неявно в процессе обучения. Обучение строится следующим образом: существует так называемый задачник, то есть набор примеров с заданными ответами, эти примеры предъявляются системе, нейроны получают условие примера и преобразуют их. Далее нейроны несколько раз обмениваются преобразованными сигналами и, наконец, выдают ответ в виде набора сигналов. Отклонение от правильного ответа штрафуется. Обучение заключается в минимизации штрафа как неявной функции связей.
В традиционных вычислительных системах:
Необходимо точное описание алгоритма (ориентация на обработку символов).Данные должны быть точными. Аппаратура легко повреждается. Разрушение основных элементов памяти делает машину неисправной.Каждый обрабатываемый объект явно указан в памяти.Трудно построить хороший алгоритм восприятия образов и ассоциативной выборки (неясно, например, как мы распознаем рукописные символы, конкретного написания которых раньше не видели).
В нейрокомпьютере (нейронной сети):
Способ обработки больше похож на обработку сигналов, вместо программы — набор весов нейронов, вместо программирования — обучение нейронов (настройка весов).Нейронная сеть устойчива к шумам, искажения данных не влияют существенно на результат (в том числе выход из строя отдельных нейронов).Обрабатываемые объекты представлены весами нейронов неявно. В результате сеть может работать с объектами, которые ей ранее не встречались, и обобщать результаты обучения.Сети хороши для задач восприятия и ассоциативной выборки.
и распределенных вычислений, один из
Нейронные сети - новая модель параллельных и распределенных вычислений, один из основных архитектурных принципов построения машин 6-го поколения. В основу искусственных нейросетей положены следующие черты живых нейросетей, позволяющие им справляться с нерегулярными задачами:
простой обрабатывающий элемент - нейрон;участие огромного числа нейронов в обработке информации;каждый нейрон связан с большим числом других (глобальные связи);изменяющиеся по весу связи между нейронами;массовый параллелизм обработки информации.
Сети, обладающие этими свойствами, принадлежат к классу коннекционистских моделей обработки информации. Основная их черта - использование взвешенных связей между обрабатывающими элементами как средства запоминания информации. Обработка ведется одновременно большим числом элементов, где каждый нейрон связан с большим числом других, поэтому нейронная сеть устойчива к неисправностям и способна к быстрым вычислениям. Задать нейронную сеть для решения конкретной задачи — значит определить:
модель нейрона;топологию связей;веса связей.