В теоретической работе Тьюринга 1936 года была предложена гипотетическая машина для формализации действий человека. Затем, в так и не законченном отчете фон Неймана в 1945 году, были обобщены уроки создания первой ЭВМ ENIAC и предложены методы конструирования вычислительных машин. Фон Нейман, использовал не только идеи Тьюринга. Так, в качестве базовых элементов ЭВМ фон Нейман предложил модифицированные формальные нейроны (!) Мак-Каллока и Питтса - основателей нейросетевой архитектуры. В статье,
опубликованной в 1943 г., они доказали, что сети из таких пороговых элементов способны решать тот же класс задач, что и машина Тьюринга.
Интерес к реализации нейроподобных систем, способных решать интеллектуальные задачи, возрос в конце пятидесятых годов. В это время появился ряд научных работ, раскрывающих фундаментальные принципы переработки информации в живых системах.
В конце 50-х - начале 60-х с этим направлением связывали большие надежды, в основном благодаря Фрэ
у Розенблатту, разработавшему первое обучаемое нейросетевое устройство для распознавания образов, персептрон (от английского perception - восприятие).
Персептрон был впервые смоделирован в 1958 году, причем его обучение требовало около получаса машинного времени на одной из самых мощных в то время ЭВМ IBM-704. Аппаратный вариант - Mark I Perceptron - был построен в 1960 г. и предназначался для распознавания зрительных образов. Его рецепторное поле состояло из матрицы фотоприемников 20x20, и он успешно справлялся с решением ряда задач - мог, например, различать транспаранты некоторых букв.
Тогда же возникли первые коммерческие нейрокомпьютинговые компании. Энтузиазм этого героического периода "бури и натиска" был так велик, что многие, увлекшись, предсказывали появление думающих машин в самом ближайшем будущем. В 1969 году бывший однокашник Розенблатта по Высшей научной школе в Бро
се Марвин Минский, сам в свое время отдавший дань конструированию нейрокомпьютеров, решил положить этому конец, выпустив вместе с южноафриканским математиком Пейпертом книгу "Персептроны". В этой роковой для нейрокомпьютинга книге была строго доказана принципиальная, как тогда казалось, ограниченность персептронов. Утверждалось, что им доступен лишь очень узкий круг задач. В действительности критика относилась лишь к персептрону с одним слоем обучающихся нейронов. Но для многослойных
нейронных сетей алгоритм обучения, предложенный Розенблаттом, не годился. Холодный душ критики, умерив пыл энтузиастов, затормозил развитие нейрокомпьютинга на многие годы. Исследования в этом направлении были свернуты вплоть до 1983 года, когда они, наконец, получили финансирование от Агентства перспективных военных исследований США (DARPA). Этот факт стал сигналом к началу нового нейросетевого бума.
Интерес широкой научной общественности к нейросетям пробудился вновь после теоретической работы физика Джона Хопфилда (1982 г.), предложившего модель ассоциативной памяти в нейронных ансамблях. Холфилд и его многочисленные последователи обогатили теорию нейросетей многими идеями из арсенала физики, такими как коллективные взаимодействия нейронов, энергия сети, температура обучения и т. д. Однако настоящий бум практического применения нейросетей начался после публикации в 1986 году Дэвидом
Румельхартом с соавторами метода обучения многослойного персептрона, названного ими методом обратного распространения ошибки (error back-propagation). Ограничения персептронов, о которых писали Минский и Пайперт, оказались преодолимыми, а возможности вычислительной техники - достаточными для решения широкого круга прикладных задач. В 90-х годах производительность компьютеров возросла настолько, что это позволило моделировать с их помощью работу параллельных нейронных сетей с числом нейронов от
нескольких сотен до десятков тысяч. Такие эмуляторы нейросетей способны решать многие интересные с практической точки зрения задачи. В свою очередь, нейросетевые программные комплексы станут тем носителем, который выведет на технологическую орбиту настоящие параллельные нейросетевые компьютеры.
Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки, моделируя низкоуровневую структуру мозга (Patterson, 1996). Основной областью исследований по искусственному интеллекту в 60-е - 80-е годы были экспертные системы. Такие системы основывались на высокоуровневом моделировании процесса мышления (в частности, на представлении, что процесс нашего мышления построен на
манипуляциях с символами). Скоро стало ясно, что подобные системы, хотя и могут принести пользу в некоторых областях, но не отражают ключевые аспекты человеческого интеллекта. Согласно одной из точек зрения, причина состоит в том, что современные вычислительные системы не в состоянии воспроизвести структуру мозга и чтобы создать искусственный интеллект, необходимо построить систему с похожей на естественную архитектурой, т. е. перейти от программной реализации процесса мышления к аппаратной.
Ситуация резко изменилась с начала восьмидесятых годов. Имитация работы мозга программными методами испытывала все большие трудности, связанные с принципиальными различиями между конструкциями мозга и компьютера. В связи с этим, был предложен ряд электронных, оптических, электронно-оптических приборов, позволяющих создавать архитектурные модели нейронных структур.
Естественным продолжением аппаратного и программного подхода к реализации нейрокомпьютера является программно-аппаратный подход. Этот подход получил наибольшее развитие и применение. Существующие компьютеры дополнялись специальными нейро-платами. Так, например, фирмой TRW (США) в 1985 году был разработан компьютер Mark3, который был реализован в виде дополнительной многопроцессорной платы к мини-компьютерам серии VAX, дальнейшим развитием системы Mark3 была система Mark4.
Наиболее интересное применение нашли нейрокомпьютеры в странах европейского сообщества. Еще в 1955 году было принято Шенгенское соглашение, по которому при досмотре в аэропортах европейских стран будут сравниваться отпечатки пальцев, это задача для нейрокомпьютера. В дальнейшем планируется ввести сравнение по радужной оболочке глаз, по полному описанию лица человека. В настоящее время появились новые возможности для реализации этой задачи.
Наиболее яркими примерами нейрокомпьютеров являются: Нейрокомпьютер Synaps 1 (Siemens, Герания), нейрокомпьютер "Силиконовый мозг" (созданный в США по программе "Электронный мозг", предназначен для обработки арокосмических изображений, производительность 80 петафлоп (80х1015 операций в секунду, потребляеая мощность 20 Вт.), нейрокомпьютер Эмбрион (Россия).
Общий вид нейрокомпьютера Sinaps1
Нейрокомпьютер Эмбрион разработан под руководством член-корреспондента МАИ, к.т.н. Владимира Дмитриевича Цыга
ова. На сегодня известно несколько модификаций данного нейрокомпьютера, для различных приложений: датчик случайных многомерных управляемых импульсных потоков "ЭМБРИОН-1", интерсенсорный перенос "глаз"-"рука", техническая диагностика неисправностей энергогенератора самолетной электростанции ("Эмбрион-2"), управление нестационарным объектом в реальном масштабе времени ("Эмбрион-3" и "Эмбрион-4"), орган технического зрения ("Эмбрион-5"), управление тактильно
очувствленным адаптивным промышленным роботом "Универсал-5А" при обслуживании карусельной плавильной печи на стекольном заводе ("Поиск-1"), управление тактильно очувствленным адаптивным промышленным роботом "Р-2" с искусственными мышцами при сборке и покраске ("Поиск-2"), управление тактильно очувствленным мобильным автономным роботом "Краб-1" при взаимодействии с неориентированными предметами и др.
Компьютер "Neuro Engine"
Фирма NEC (Япония) в 1988 предложила нейрокомпьютер "Neuro Engine" в виде одноплатного сопроцессора к персональному компьютеру IBM PC. Фирмой Adaptive Solutions была разработана параллельная система SNAPS на 256 процессорах, позволяющая выполнять до 10 млрд. операций в сек. для решения задач обработки изображений и реконструкции объектов.
Аппаратный подход связан с созданием нейрокомпьютеров в виде нейроподобных структур (нейросетей) электронно-аналогового, оптоэлектронного и оптического типов. Для таких компьютеров разрабатываются специальные СБИС (нейрочипы).
В 1988 г. фирма Havard изготовила СБИС на 256 аналоговых элементах, включающую 25 тысяч транзисторов, 100 тысяч резисторов.
Основу нейросетей составляют относительно простые, в большинстве случаев - однотипные, элементы (ячейки), имитирующие работу нейронов мозга - искусственные нейроны. Каждый нейрон характеризуется своим текущим состоянием, по аналогии с нервными клетками головного мозга, которые могут быть возбуждены или заторможены.
Биологический нейрон
Математическая модель нейрона
Он обладает группой синапсов - однонаправленных входных связей, соединенных с выходами других нейронов, а также имеет аксон - выходную связь данного нейрона, с которой сигнал (возбуждения или торможения) поступает на синапсы следующих нейронов. Каждый синапс характеризуется величиной синаптической связи или ее весом wi, который по физическому смыслу эквивалентен электрической проводимости.
Текущее состояние нейрона определяется, как взвешенная сумма его входов:
s = SХi*Wi
Выход нейрона есть фу
ция его состояния:
y = f(s)
В качестве примера простейшей нейросети рассмотрим трехнейронный перцептрон, то есть такую сеть, нейроны которой имеют активационную фу
цию в виде единичного скачка. На n входов поступают сигналы, проходящие по синапсам на 3 нейрона, образующие единственный слой этой нейросети и выдающие три выходных сигнала.
Трехнейронный перцептрон
Очевидно, что все весовые коэффициенты синапсов одного слоя нейронов можно свести в матрицу W, в которой каждый элемент wij задает величину i-ой синаптической связи j-ого нейрона. Таким образом, процесс, происходящий в нейросети, может быть записан в матричной форме:
Y=F(XW)=F(V),
где X и Y - соответственно входной и выходной сигнальные векторы, F( V) - активационная фу
ция, применяемая поэлементно к компонентам вектора V.
Практически всегда множество искусственных нейронов в искусственной нейронной сети поделено на подмножества, которые называют слоями или плоскостями. Теоретически число слоев и число нейронов в каждом слое может быть произвольным, однако фактически оно ограничено ресурсами компьютера, в случае программной реализации, или возможностями специализированных микросхем, на которых обычно реализуются нейронные сети. Чем сложнее нейронная сеть, тем масштабнее задачи, подвластные ей.
Структура трехслойной сети прямого распространения
Для решения отдельных типов задач уже существуют оптимальные, на сегодняшний день конфигурации. Если же задача не может быть сведена ни к одному из известных типов, разработчику приходится решать сложную проблему синтеза новой конфигурации. При этом он руководствуется несколькими основополагающими принципами: возможности сети возрастают с увеличением числа ячеек сети, плотности связей между ними и числом выделенных слоев.
Примеры реализации нейросетей
Введение обратных связей, наряду с увеличением возможностей сети, поднимает вопрос о динамической устойчивости; сложность алгоритмов фу
ционирования сети (в том числе, например, введение нескольких типов синапсов - возбуждающих, тромозящих и др.) также способствует усилению мощи нейросети. Вопрос о необходимых и достаточных свойствах сети для решения того или иного рода задач представляет собой целое направление нейрокомпьютерной науки. Одной из важных особенностей нейронной сети является возможность к обучению.
Обучение нейросети может вестись с учителем или без него. В первом случае сети предъявляются значения как входных, так и желательных выходных сигналов, и она по некоторому внутреннему алгоритму подстраивает веса своих синаптических связей. Во втором случае выходы нейросети формируются самостоятельно, а веса изменяются по алгоритму, учитывающему только входные и производные от них сигналы.
Существует великое множество различных алгоритмов обучения, которые делятся на два больших класса: детерминированные и стохастические. В первом из них подстройка весов представляет собой жесткую последовательность действий, во втором - она производится на основе действий, подчиняющихся некоторому случайному процессу.
Рассмотрим более подробно вопрос обучения нейросети на примере трехнейронного перцептрона при обучении с учителем. Для обучения необходимо:
1. Задать элементы весовой матрицы W (обычно небольшие случайные значения).
2. Подать на входы один из входных векторов, которые сеть должна научиться различать, и вычислить выходы сети.
3. Если выход правильный, перейти на шаг 4.
Иначе вычислить разницу между идеальным и полученным значениями выхода и модифицировать веса так, чтобы уменьшить ошибку.
4. Цикл с шага 2, пока сеть не перестанет ошибаться.
На втором шаге поочередно в случайном порядке предъявляются все возможные входные вектора.
После обучения на достаточно большом количестве примеров можно использовать обученную сеть для прогнозирования, предъявляя ей новые входные значения. Это важнейшее достоинство нейрокомпьютера, позволяющие ему решать интеллектуальные задачи, накапливая опыт.
В оптических компьютерах матрица весов может реализовываться на управляемом транспаранте на жидких или фоторефрактерных кристаллах. При этом оптические веса могут настраиваться цепью обратного распространения ошибки, которая подправляет степень влияния синаптических связей в соответствии с величиной (или хотя бы, знаком) конечной ошибки, указанной человеком-оператором ("учителем"). То же самое может происходить и при самообучении, когда нейросеть автономно оптимизируется по мере
набора опыта.
История развития техники показывает, что далеко не всегда имитация природы - самый лучший или самый быстрый способ достичь желаемого. Прогресс в понимании работы мозга пока не настолько велик, чтобы указать с определенностью, какие именно черты реальных нейронов существенны для гибкого поведения мозга, а какие - нет. Одно очевидно: естественные нейронные сети имеют весьма сложную структуру. А подход, принятый в построении искусственных нейронных сетей, предполагает, что начальная структура
сети достаточно проста.
Пока нет весомых оснований полагать, что именно искусственные нейронные сети станут основой будущих мыслящих систем, способных к гибкому поведению. Исследования нейронных сетей - лишь первый этап на пути к таким системам. В ближайшей перспективе следует ожидать появления более необычных моделей, о которых пока можно лишь фантазировать. Эти модели должны сочетать простую и универсальную схему фу
ционирования, характерную для моделей нейронных сетей, с возможностями систем искусственного интеллекта: логический вывод, планирование действий, построение и использование моделей окружающей среды.
Ну а сегодня нейросетевые программы помогают считывать рукописные чеки и налоговые декларации, предсказывают рыночные курсы и улавливают изменения конъю
туры, ставят диагнозы больным, используются военными.
Очередная революция ожидается в информационных технологиях, сравнимая по масштабам с внедрением в массы персональных компьютеров, а может, и превосходящая это событие- и не в последнюю очередь благодаря искусственным нейронным сетям.
Нейросетевые технологии уже используются службами ассоциативного поиска и персональной рассылки документов. Следующим шагом станет создание семантического агента, способного составлять по заказу "тематические обзоры" по любым предметам. Объединившись, такие самообучающиеся агенты смогут, по нашему мнению, радикально изменить способы поиска и организации информации в Сети. Потому что они способны не просто индексировать информацию в базах данных, а умеют понимать смысл данных и
связывать данные между собой в ассоциативные распределенные базы знаний. Автоформализация знаний - ключевой элемент превращения Сети из гиперкниги в гипермозг, самостоятельно осознающий свое собственное содержание.
Вначале повсеместное распространение персональных компьютеров создало предпосылки для их объединения в Сеть. Возникновение и бурное развитие глобальной Сети привело эволюцию компьютеров к следующему неизбежному этапу - появлению сетевого разума. Вслед за компьютерами-калькуляторами и послушными исполнителями готовых алгоритмов в ближайшем будущем появятся обучающиеся программные агенты. Их объединение в сетевое сообщество взаимодействующих друг с другом (и, конечно, со своими
хозяевами) агентов создаст самообучающуюся среду, вполне аналогичную по своей способности к самоорганизации человеческому мозгу. Человеко-машинный симбиоз, каким уже давно и является современное общество, перейдет на новый качественный уровень.
И свидетелями зарождения того развивающегося коллективного разума Сети будем уже мы с вами, наше поколение. Потому что все компоненты этого гипермозга уже существуют: инфраструктура Сети, выходящая на массового пользователя, нейросетевые агенты, электронные деньги. Им осталось лишь собраться воедино, чтобы включились обратные связи и начался отсчет новой эры - зарождения коллективного искусственного интеллекта.
Компьютеры наконец обретут способность видеть, слышать и ощущать иными, неведомыми человеку, органами чувств. Робототехника наконец-то освободит людей от утомительной роли "подай-принеси" на современном производстве. Умные домашние приборы обеспечат новый уровень бытового комфорта.
Источники информации:
1.Виктор Левшин. Оптико-электронные сопроцессоры и
нейрокомпьютеры пошли своим путем. COMPUTERWORLD РОССИЯ
#04/96 с.
2.Виктор Левшин. Оптические процессоры подражают
старшим братьям. COMPUTERWORLD РОССИЯ #04/96 с.
3. С.Короткий. Нейронные сети: основные положения
4. Сергей Шумский. Нейросетевые агенты в интернете.
Компьютерра N4(333),2000г.
5. www.neiroproject.ru Аналитические технологии для
прогнозирования и анализа данных. (учебник)
6. Введение в искусственные нейронные сети.
Анил К. Джейн, Мичиганский Государственный университет,
США,jain@cps.msu.edu.,Жианчанг Мао, К М. Моиуддин.
Исследовательский Центр IBM в Альмадене, США Anil K.
Jain, Jianchang Mao, K.M. Mohiuddin, Artificial Neural
Networks: A Tutorialп, Computer, Vol.29, No.3,
March/1996, pp. 31-44. Translated from the original
English version.
7.Нейроускорители на базе нейрочипов.
http://www.citforum.ru/hardware/neurocomp/
neyrocomp_07.shtml
|