Мы переехали!
Ищите наши новые материалы на SvobodaNews.ru.
Здесь хранятся только наши архивы (материалы, опубликованные до 16 января 2006 года)
21.11.2024
|
||||||||||||||||||
|
||||||||||||||||||
[21-08-01]
Ведущий Александр Костинский
Авторы Александр Иличевский и Александр Костинский НейрокомпьютерыВо все времена исследователи задавались вопросом: как человек думает, какие физико-химические процессы происходят при обработке, поступающей к нему со всех сторон разнородной информации? Во второй половине ХХ века, после значительного прогресса в понимании работы нейронов, ученые стали строить натурные и компьютерные модели нервной системы. С одной стороны, они хотели понять на более простых моделях закономерности работы мозга. С другой - попробовать построить с помощью искусственных нейронов устройство, гибко решающее некоторые прикладные задачи. Сегодня мы расскажем о нейронных сетях - естественных и искусственных, т.е. о системах взаимосвязанных нейронов и о том, как они используются для моделирования процессов деятельности мозга, какие информационные технологии, основанные на этих принципах, уже применяются или ожидают своего применения. Человеческий мозг - самая сложная и успешная биологическая система из всех существующих. На каждом шагу мозг творит чудеса. С фотографической подробностью он помнит отдельные эпизоды прошлого. За долю секунды по походке узнаёт в толпе знакомого человека, которого не встречал десять лет. Умудряется сквозь сильный шум, когда слышны лишь обрывки слов, не потеряет нить разговора. Мгновенно находит главную мысль в пространном отрывке текста. Уверенно строит и оперирует системами абстрактных объектов, подчиненных самой вычурной логике. И наконец - едва ли не повседневно - производит качественно НОВУЮ информацию. Как же устроен и каковы основные особенности работы нашего мозга? Как он справляется со столь сложными задачами? Мозг человека и животных состоит из особых клеток - нейронов, которые образуют огромную сеть. Раньше считалось, что у среднего человека их 10-15 миллиардов, но выяснилось, что на самом деле, их в сто тысяч раз больше - порядка миллиона миллиардов. Это число с пятнадцатью нулями. Популярная на сегодняшний день гипотеза основана на том, что именно нейронные сети мозга гибко обрабатывают информацию. В ранних моделях нейрон считался довольно простой системой, способной пропускать через себя электрические импульсы. Его представляли в виде элемента, имеющего несколько входов (дендритов) и один выход - аксон. Нейрон преобразует совокупность сигналов, поступающих на его входы, в один сигнал, который он подает на выход. На заре кибернетики считали, что нейрон функционально не отличается от простого переключателя, что у него есть всего два возможных состояния - «включен» или «выключен». Последующие нейробиологические исследования доказали, что реальный биологический нейрон - это высокоспециализированная живая клетка, имеющая множество коротких отростков - дендритов и один очень длинный отросток (до метра длиной) - аксон. В дендритах и аксоне могут распространяться электрические сигналы в виде последовательностей узких импульсов, причем амплитуда этих импульсов строго постоянна, а отличаются они тем, с какой частотой следуют друг за другом. Аксон имеет тысячи ответвлений, которые тянутся к дендритам других нейронов. Места стыков аксонов и дендритов называют синапсами. В синапсе мембраны двух нейронов разделены щелью, через которую электрический импульс перейти не может. Добежав по ветви аксона до синапса, импульс вызывает выделение из мембраны своего нейрона особого вещества - нейромедиатора, которое диффундирует через щель синапса к мембране другого нейрона и там воздействует на специальные белковые комплексы - рецепторы. В зависимости от типа этих рецепторов синапс оказывает либо возбуждающее, либо тормозящее воздействие на нейрон. Сигнал может проходить через синапс только в одном направлении, то есть связи между нейронами строго однонаправленные. Число рецепторов определяет своего рода коэффициент усиления данного входа нейрона. Это память синапса. Можно сказать, что рецепторы определяют, насколько сильно влияет один нейрон на другой, то есть каждая связь между нейронами имеет свой удельный вес. Характер связи определяется не только весом, но и знаком воздействия: положительным у возбуждающих синапсов и отрицательным у тормозящих. Типичный нейрон имеет тысячи входных синапсов, через которые на него поступают сигналы от тысяч других нейронов. Работает он так. Каждый входной сигнал как бы умножается на вес соответствующего синапса, затем нейрон суммирует интенсивности возбуждений и торможений по всем синапсам и по величине этой суммы определяет, какой выходной сигнал ему следует послать в свой аксон. По этой причине нейрон не является ни простым аналоговым сумматором, ни классической логической ячейкой типа «или». Он представляет собой ячейку «нечеткой логики», у которой входы и выход могут принимать значения из широкого спектра значений «ни да, ни нет». Все эти новые факты свидетельствуют о том, что отдельный нейрон похож на аналоговый компьютер, производящий внутри себя преобразования и по их результатам меняющий вес связей различных синапсов. Ученые считают, что таким образом происходит настройка сети нейронов, то есть ее обучение. Ребенок человека и высших животных рождается беспомощным. В его мозгу на рефлекторном уровне записано очень мало информации. По современным представлениям жизненный опыт ребенок приобретает в постоянном процессе закрепления полезных образов, вначале фиксируемых кратковременной памятью. Жизненно важные образы путем повторения закрепляются в долгосрочной памяти и служат образцами для последующих сравнений. При обучении нейронной сети поток информации направлен от кратковременной памяти к долговременной. На этапе воспроизведения поток информации направлен от долговременной памяти к кратковременной. Кратковременная память служит как бы запоминанию стимулов, а в долговременной памяти хранится информация о классах объектов, полученная в результате обучения. Считается также, что нейроны образуют множество слоев, организованных иерархически. Каждый слой более высокого уровня распознает и классифицирует все более сложные объекты. Лишь постепенно в ходе эволюции биологические нейронные сети научились осуществлять достаточно длинные логические цепочки. Распознавание же образов вовсе не предполагает логического обоснования. Почти любой мужчина легко различит мелькнувшую в толпе симпатичную девушку. Эволюция не решает формализованных задач, она лишь отбраковывает неверные решения. Как только стали известны первые данные о работе нейронов, ученые стали пытаться строить сети, обладающие подобными свойствами. Элементы такой сети связаны друг с другом однонаправленными каналами передачи сигналов. Каждый имеет единственный выход, иногда разветвляющийся на несколько каналов, по каждому из которых передается один и тот же выходной сигнал. Так как в точности неизвестно, как работает биологический нейрон, то правила обработки информации внутри элемента меняются в широких пределах, важно лишь, чтобы обработка была локальной, и каждый элемент обладал памятью. Теория нейронных сетей, как научное направление, впервые была обозначена в работе МакКаллока и Питтса 1943 года, в которой утверждалось, что, в принципе, любую арифметическую или логическую функцию можно реализовать с помощью простой нейронной сети. Они также доказали, что сети из таких пороговых элементов способны решать тот же класс задач, что и машина Тьюринга. В 1958 г. Фрэнк Розенблатт придумал нейронную сеть, названную перцептроном, и построил первый нейрокомпьютер Марк-1. Перцептрон был предназначен для классификации объектов. Розенблат придумал систему обучения подобных сетей. На этапе обучения «учитель» сообщает перцептрону к какому классу принадлежит предъявленный объект. Обученный перцептрон способен различать объекты, в том числе новые, не использовавшиеся при обучении. Любопытно, что нейронная сеть, принципиально отличная по принципу работы от обычного компьютера, реализовывается программно именно на компьютерах. Обучение перцептрона Розенблата требовало около получаса машинного времени на одной из самых мощных в то время ЭВМ IBM-704. Аппаратный вариант перцептрона Розенблата был построен в 1960 г. и предназначался для распознавания зрительных образов. Его рецепторное поле состояло из матрицы фотоприемников размером 20x20, и он, например, умел различать некоторые буквы. Тогда же возникли первые коммерческие нейрокомпьютинговые компании. Энтузиазм того героического периода «бури и натиска» был так велик, что многие, увлекшись, предсказывали скорое появление думающих машин. Но в 1969 году бывший однокашник Розенблатта по высшей научной школе в Бронксе Марвин Минский, сам в свое время отдавший дань конструированию нейрокомпьютеров, выпустил вместе с южноафриканским математиком Пейпертом книгу «Персептроны». В ней была строго доказана принципиальная, как тогда казалось, ограниченность персептронов. Утверждалось, что им доступен лишь очень узкий круг задач. В действительности критика относилась лишь к персептрону с одним слоем обучающихся нейронов. Но поскольку для многослойных нейронных сетей алгоритм обучения, предложенный Розенблаттом, не годился, то книга стала холодным душем для нейрокомпьютинга и затормозила его развитие. Исследования в этом направлении практически не проводились вплоть до 1983 года, когда они снова получили финансирование от Агентства перспективных военных исследований США (DARPA). Это произошло после теоретической работы физика Джона Хопфилда, предложившего за год до этого модель ассоциативной памяти в нейронных ансамблях. Однако значительный интерес ученых нейронные сети завоевали после публикации в 1986 году Дэвидом Румельхартом с соавторами метода обучения многослойного персептрона, названного ими «методом обратного распространения ошибки» (error back-propagation). Ограничения, о которых почти двадцать лет назад писали Минский и Пейперт, оказались преодолимыми, а возможности вычислительной техники достаточными для решения широкого круга прикладных задач. В 90-х годах производительность последовательных компьютеров возросла настолько, что это позволило моделировать с их помощью работу параллельных нейронных сетей с числом нейронов от нескольких сотен до десятков тысяч. Главное, на что было направлено внимание исследователей - обработка визуальных образов. В искусственной нейронной сети нейроны функционально образуют несколько слоев. Входы нейронов первого слоя служат входами сети, выходы нейронов последнего слоя - ее выходами. Остальные нейроны принадлежат одному или нескольким промежуточным «скрытым» слоям, причем входами каждого нейрона каждого слоя (кроме первого) являются выходы всех нейронов предыдущего слоя. На входы сети подается множество чисел, определяющее условие задачи, а на ее выходах возникает множество чисел, соответствующее ее решению. Например, на входы нейронной сети, распознающей рукописные символы, подаются уровни серого цвета с матрицы фотодетекторов, а на выходах сети появляется наиболее вероятный код данного символа. Некоторые исследователи утверждают, что уровень интеллекта современных нейронных сетей на задачах распознавания образов примерно соответствует уровню пчелы, выбирающей цветок, или паука, прослушивающего паутину. Обучают нейронную сеть путем настройки весов всех входов всех ее нейронов. Для этого в нее вводят множество учебных примеров и определяют отклонения ответов от правильных, затем вычисляют поправки к весам входов нейронов, вводят эти поправки, снова прогоняют учебные примеры, и так далее, пока разброс ошибки ответов сети не попадет в допустимый диапазон. Надо признать, что пока все эти попытки понять и смоделировать обработку мозгом информации находятся в начальной стадии. Несмотря на то, что обширные работы по нейронному моделированию ведутся уже более 50 лет, нет ни одной области мозга, процесс обработки информации в которой был бы понятен. Также ни для одного нейрона мозга мы пока не можем определить код, который он использует для передачи информации в виде последовательности импульсов. Грядущий взрывной рост в сфере нейрокомпьютерных технологий многие специалисты связывают именно с новыми открытиями в области нейронного моделирования. Хотя к прогнозам ученых, работающих в области искусственных нейросетей, надо относится осторожно. Сложность темы разделила ученых на две группы - нейрооптимистов и нейрописсимистов. Первые считают, что подходящая архитектура вычислительных устройств в значительной степени решает проблему создания систем с гибким поведением. Собственно нейрооптимизм утверждает также, что такая архитектура - это и есть архитектура природных нейронных сетей. Доводы, явно или неявно высказываемые в пользу нейронных сетей, выглядят так: Нейросети * работают параллельно; * способны к обучению; * способны обрабатывать образы; * являются моделью мозга. Надо понимать, что искусственные нейронные сети - это устройства, которые не программируются в традиционном смысле этого слова. Работа нейронной сети определяется весами соединений между элементами. Настройку нейронных сетей называют по аналогии с развитием человека обучением. Есть разные способы обучения нейронных сетей. Но все они обязательно разбиты на такты и отделены от процесса рабочего функционирования. На каждом такте обучения, сети предъявляется образец, она вычисляет значение функции с текущими значениями параметров, после чего ей сообщается величина допущенной ошибки (отклонение «правильного» значения на выходе от реально полученного). После этого параметры изменяются так, чтобы уменьшать значение ошибки. Однако когда говорится о широких возможностях нейронных сетей, неявно делается предположение, что для большинства функций, возникающих в практических приложениях, метод настройки нейронной сети позволяет сравнительно быстро находить приемлемое приближение. На чем основано это предположение? Никаких рациональных доводов в его пользу, говорит нейропессимист, не приводится. Разумеется, можно надеяться на удачу или же просто верить в исключительную роль пороговых функций в структуре мироздания. Вместо построения, в классическом случае, хорошего алгоритма решения проблемы мы должны найти подходящий процесс настройки на данную конкретную задачу некоторого общего алгоритма. Чтобы нейронная сеть научилась чему-то новому, нужен «учитель», который должен будет придумать план обучения и затем терпеливо его реализовывать. И вообще, можно ли считать систему, настроенную различать образы из разных классов, достаточно гибкой? Это тоже кажется весьма сомнительным. Почти любая нейронная сеть различает какие-то образы. Вопрос в том, сумеем ли мы настроить ее на нужные нам различия, и сколько времени на это уйдет. Пока нет оснований утверждать, что для любой задачи классификации объектов именно нейронные сети окажутся лучшим подходом. Ведь возникают те же проблемы: кто-то должен придумать, что и как нужно распознавать. То есть опять ключевую гибкость должна привнести внешняя по отношению к нейронной сети система. Но насколько вообще эффективна имитация природы? Нейронные сети исторически появились как модели функционирования реальных нейронов, из которых состоит мозг - система с очень гибким поведением. Однако насколько обоснованна уверенность, что существующие модели нейронных сетей достаточно адекватно отражают свойства реальных природных нейронных сетей, в частности, их способность к гибкому поведению? Уже двадцать лет назад модели реальных нейронов описывались сотнями дифференциальных уравнений в частных производных. А прогресс в понимании работы мозга пока не настолько велик, чтобы надежно выделить черты реальных нейронов, определяющие гибкость нашего поведения. Одно, по крайней мере, очевидно: природные нейронные сети имеют весьма сложную структуру. А подход, принятый в построении искусственных нейронных сетей, предполагает, что начальная структура сети достаточно проста (иначе чем бы построение нейронной сети отличалось от традиционного программирования?). Увы, есть серьезные сомнения в том, что такое развитие событий возможно. Современные научные представления указывают на два препятствия. Первое: биологическая эволюция происходит необычайно медленно, особенно на ранних этапах. Переход от одноклеточных организмов к многоклеточным занял миллиарды лет, появление сухопутных животных - сотни миллионов. Не исключено, что настройка сложных систем требует очень много времени. К тому же на более поздних стадиях эволюционируют уже не столько организмы, сколько биоценозы, а взаимодействия в биоценозах гораздо сложнее любых пороговых моделей. Второе препятствие имеет и вовсе фундаментальный характер. До сих пор неясно, как начинается биологическая эволюция, что именно обеспечивает переход от «мертвых» химических систем, пусть даже далеких от равновесия и способных к достаточно сложным каталитическим реакциям, к живым. А нейрооптимисты надеются преодолеть именно этот этап. Укажем еще одну слабость аргументов нейрооптимистов. История развития техники показывает, что далеко не всегда имитация природы - самый лучший или самый быстрый способ достичь желаемого. Приведем два примера. И колесо, и ноги решают одну задачу: заменить трение скольжения на более эффективное трение качения. Но если колесо изобрели еще в каменном веке, то эффективных шагающих механизмов нет до сих пор. Второй пример: люди с давних пор мечтали летать, как птицы. И первые аэропланы имитировали птиц, иногда в весьма неожиданных деталях (например, пестротой раскраски). Но реальностью межконтинентальные перелеты стали возможны не благодаря имитации птичьего полета (ни одна птица не летает с околозвуковой скоростью), а изучению законов аэродинамики. Пока нет весомых оснований полагать, что именно нейронные сети станут основой систем, способных к гибкому поведению. Исследования нейронных сетей - лишь первый (и несколько затянувшийся) этап на пути к таким системам. В ближайшей перспективе можно ожидать появления менее тривиальных моделей, о которых пока можно лишь фантазировать. Эти модели должны сочетать простую и универсальную схему функционирования, характерную для моделей нейронных сетей, с возможностями систем искусственного интеллекта: логические заключения, планирование действий, построение и использование моделей окружающей среды. Кроме того, в использовании нейросетей есть одна опасность. Когда сеть становится достаточно большой, результаты ее действий в критических ситуациях предугадать сложно, ведь настройка внутренней памяти нейронов происходит без участия оператора. Поэтому нейросетям принципиально нельзя поручить управление сколько-нибудь ответственным процессом, где вероятность ошибки должна быть крайне мала. Впрочем, у истории создания «умных» устройств могут быть и другие продолжения. Можно предположить, что есть некоторые фундаментальные ограничения наших возможностей, исключающие конструирование достаточно гибких искусственных систем. Не исключено также, что появятся какие-то принципиально новые способы использовать мозг человека или других животных (естественные нейронные сети!) для построения систем, эффективно производящих, обрабатывающих и потребляющих информацию. Другие передачи месяца:
|
c 2004 Радио Свобода / Радио Свободная Европа, Инк. Все права защищены
|