Основные концепции нейронных сетей

Роберт Каллан

The Essence of Neural Networks First Edition
Callan
книга Основные концепции нейронных сетей

Тираж данной книги закончился.
Оглавление
Введение

Нужно ли издавать на русском книгу "AIMA-3"? в блоге Виктора Штонда

Эта книга является первой в полном курсе по нейронным сетям. Ее целью является раскрытие основных понятий и изучение основных моделей нейронных сетей с глубиной, достаточной для того, чтобы опытный программист мог реализовать такую сеть на том языке программирования, который покажется ему предпочтительнее. В книге рассматриваются основные модели нейронных сетей, важные для понимания основ изучаемого предмета, и обсуждаются связи между нейронными сетями и традиционными понятиями из области искусственного интеллекта.

288 стр., с ил.; ISBN 5-8459-0210-X, 0-13-908732-X; формат 60x88/16; 2001, 4 кв.; Вильямс.



Понравилась книга? Порекомендуйте её друзьям и коллегам:







Книги, рекомендуемые вместе с этой книгой:

Разделы каталога:



Оглавление книги "Основные концепции нейронных сетей"


Оглавление 5
Предисловие 9
Благодарности 12
Глава 1. Введение 13
Глава 2. Классификация образцов 35
Глава 3. Кластеризация образцов 79
Глава 4. Ассоциация образцов 107
Глава 5. Рекуррентные сети 126
Глава 6. Другие модели сетей и практические вопросы 144
Глава 7. Связь с искусственным интеллектом 179
Глава 8. Синтез символов с помощью нейронных сетей 214
Приложение А. Немного линейной алгебры 261
Приложение Б. Словарь терминов 269
Список дополнительной литературы 273
Предметный указатель 277


Предисловие

Задумайтесь над некоторыми ежедневно выполняемыми задачами. Вы сидите за столом в офисе, а в это время в комнату входит в новой шляпе ваш коллега - мужчина, выглядящий немного помолодевшим от того, что он сбрил бороду. Узнаете ли вы его? Несомненно, поскольку маскировка его целью не является. Он спрашивает вас: "Где книга, которую вы взяли у меня вчера?". Вы помните о книге и интерпретируете вопрос как просьбу вернуть книгу. Вы переводите взгляд на свой стол и видите на ящике с дискетами стопку деловых бумаг, среди которых лежит и та книга, о которой идет речь. Вы протягиваете руку к книге, не задумываясь о движениях, которые при этом должна выполнить ваша рука, извлекаете книгу из стопки с документами и отдаете ее своему коллеге.

Эти ежедневно выполняемые задачи не требуют особых усилий, но каждая из них включает множество точно рассчитанных шагов. Мы должны были бы с благоговением взирать на машину, работающую так же совершенно. Масштабы проблемы создания такой машины можно почувствовать, пытаясь программировать компьютерную систему для распознавания объектов по внешнему виду или другим признакам, в зависимости от контекста, когда приходится анализировать выполняемые действия, планировать движения робота и т.п. Пытаясь решить такие сложные задачи, многие ученые обратили внимание на машины, сходные по принципу работы с нашим собственным компьютером - человеческим мозгом. Такие машины, использующие сети, состоящие из простых обрабатывающих элементов и легко адаптируемые к выполнению совершенно разных задач, называются нейронными сетями. Нейронные сети не программируются, а обучаются тому, как правильно реализовать конкретную задачу.

Нейронные сети оказались очень полезными при решении задач распознавания образов типа идентификации подводных объектов по сигналам гидролокатора или выявления фальшивых кредитных карточек. Число коммерческих приложений, использующих нейронные сети, постоянно растет. Развивается и теоретическая база применения нейронных сетей в так называемых когнитивных задачах типа задач понимания обычного разговорного языка или задач управления движением автономного транспортного средства. Такие задачи высокого уровня сложности долгие годы были предметом изучения дисциплины, областью интересов которой является искусственный интеллект. Теперь выделяют новую область искусственного интеллекта, в рамках которой предпринимаются попытки объединить идеи "традиционного искусственного интеллекта" и идеи теории нейронных сетей. Этот "новый искусственный интеллект" несет в себе большие потенциальные возможности для перехода компьютерных систем на следующий уровень развития.

Данная книга предлагается в качестве первой книги по теории нейронных сетей для студентов старших курсов. Большинство книг по данной тематике предполагает наличие у читателя хорошей математической подготовки. Полностью избежать использования математики при изучении нейронных сетей невозможно, но в данной книге сделана попытка свести использование математического аппарата к минимуму - здесь, в основном, математика используется для сжатого представления алгоритмов. Причем если используемые в книге математические выкладки для кого-то окажутся слишком сложными, читателю предоставлена возможность разобрать имеющиеся примеры, чтобы увидеть, как соответствующие обозначения используются в примерах. Главной целью книги является объяснение базовых концепций теории нейронных сетей, но в ней достаточно подробно рассматриваются и наиболее важные модели нейронных сетей, чтобы опытный программист мог реализовать такую сеть на том языке программирования, который окажется для него предпочтительнее.

В первых шести главах описываются наиболее важные модели нейронных сетей, что должно обеспечить понимание основ изучаемого предмета. Эти шесть глав занимают чуть более двух третей книги. У нас возникало искушение расширить использование математического аппарата и алгоритмов в этих главах, но это могло бы сузить круг читателей книги. Поэтому представление материала в некоторых частях книги было сознательно сжато, а объем разделов с примерами - увеличен. Например, алгоритм обратного распространения ошибок, о котором идет речь в главе 2, из представленных в книге алгоритмов является, вероятно, наиболее трудным для понимания, но вместе с тем этот алгоритм оказывается очень простым, если рассмотреть примеры его реализации на практике. По этой причине в дополнение к некоторым простым примерам в конце глав предлагаются более сложные. Читатель может также обратиться к приложению A, где в краткой форме излагаются необходимые сведения из области линейной алгебры, а также разъясняются некоторые обозначения, используемые в главе 2. В последних двух главах книги обсуждаются некоторые связи между нейронными сетями и понятиями из сферы традиционного искусственного интеллекта. Глава 7 содержит подготовительный материал для главы 8. Сегодня наблюдается рост интереса к идее синтеза нейронных сетей и традиционного искусственного интеллекта. В отличие от первых шести глав, в главе 8 не ставится цель предложить читателю знания, которые могут сразу же найти непосредственное применение. Некоторые из предлагаемых там идей могут показаться довольно трудными для понимания и слишком абстрактными. Но соответствующий материал дает возможность представить решения, в которых с помощью использования модульных сетевых систем решаются некоторые весьма сложные вычислительные проблемы. По целому ряду направлений разработка новых моделей нейронных сетей несомненно будет продолжаться, но читатель уже получит достаточно весомый объем знаний, позволяющих решать задачи, относящиеся к сфере традиционного искусственного интеллекта. Предполагается, что у читателя будет возникать необходимость время от времени снова обращаться к главе 8 за информацией, но обратите внимание и на публикации, предлагаемые в списке литературы в конце книги.

В дополнение к материалу данной книги предлагается Web-страница, размещенная по адресу http://www.solent.ac.uk/syseng/faculty/html/staff/rcallan/essnn, где можно найти и программное обеспечение по нейронным сетям, которое читатель может использовать на своем компьютере.

Р. Каллан.

Благодарности

Я хотел бы поблагодарить Доминик Палмер-Браун (Dominic Palmer-Brown) за ряд полезных замечаний, касающихся глав 7 и 8. Благодарю за помощь Джона Флакетта (John Flackett), особенно за предложенную им схему рекурсивной автоассоциативной памяти, представленную в главе 8. Благодарю Дейва Парсонса (Dave Parsons) за его полезные комментарии к первым двум главам. Я также благодарю за поддержку Хешама Аззама (Hesham Azzam), с которым я работаю уже много лет. Наконец, я хотел бы поблагодарить рецензентов за их ценные рекомендации, позволившие улучшить окончательный вариант текста книги по сравнению с исходным, и Джеки Харбор (Jackie Harbor) из Prentice Hall за помощь и поддержку.

Введение

Искусственные нейронные сети представляют собой устройства параллельных вычислений, состоящие из множества взаимодействующих простых процессоров. Такие процессоры обычно исключительно просты, особенно в сравнении с процессорами, используемыми в персональных компьютерах. Каждый процессор подобной сети имеет дело только с сигналами, которые он периодически получает, и сигналами, которые он периодически посылает другим процессорам, и, тем не менее, будучи соединенными в достаточно большую сеть с управляемым взаимодействием, такие локально простые процессоры вместе способны выполнять довольно сложные задачи.

Разработка искусственных нейронных сетей началась еще на заре ХХ столетия, но только в 90-х годах, когда были преодолены некоторые теоретические барьеры, а вычислительные системы стали достаточно мощными, нейронные сети получили широкое признание. Слово "искусственные" в данном контексте иногда используется для того, чтобы подчеркнуть, что речь идет об искусственном устройстве, а не о реальных биологических нейронных системах типа той, которую имеет человек. Создание искусственных нейронных сетей было инспирировано попытками понять принципы работы человеческого мозга и, без сомнения, это будет влиять и на дальнейшее их развитие. Однако, в сравнении с человеческим мозгом, искусственные нейронные сети сегодня представляют собой весьма упрощенные абстракции. Когда ясно, в каком контексте обсуждаются эти сети, слово "искусственный" обычно опускают. Кроме того, когда требуется подчеркнуть вычислительные возможности, а не биологическое соответствие, искусственные нейронные сети называют коннекциями. При этом целью "коннекционистов" является наделение нейронной сети возможностью решать конкретные задачи, а не имитировать с максимальной точностью биологический процесс.

Хотя нейронные сети могут быть реализованы в виде быстрых аппаратных устройств (и такие реализации действительно существуют), большинство исследований выполняется с использованием программного моделирования на обычных компьютерах. Программное моделирование обеспечивает достаточно дешевую и гибкую среду для поиска и проверки исследовательских идей, а для многих реальных приложений такое моделирование оказывается вполне адекватным и достаточным. Например, программная реализация нейронной сети может использоваться для составления плана кредитных выплат индивидуума, обращающегося в банк за займом. Хотя решение на основе нейронной сети может выглядеть и вести себя как обычное программное обеспечение, они различны в принципе, поскольку большинство реализаций на основе нейронных сетей "обучается", а не программируется: сеть учится выполнять задачу, а не программируется непосредственно. На самом деле в большинстве случаев нейронные сети используются тогда, когда невозможно написать подходящую программу, или по причине того, что найденное нейронной сетью решение оказывается более совершенным. Например, будучи экспертом по продаже недвижимости, вы можете из своего опыта прекрасно знать, какие факторы влияют на продажную цену каждого конкретного дома, но при этом часто имеются такие особенности, которые будет весьма трудно объяснить программисту. Агентство по продаже недвижимости может пожелать иметь "предсказателя цен на основе нейронной сети", обученного на множестве примеров реальных продаж тому, какие факторы влияют на цену продаваемого объекта, и тому, какую относительную важность имеет каждый из этих факторов. Но здесь более важным оказывается то, что решение на основе нейронной сети является более гибким, поскольку соответствующая система может в дальнейшем совершенствовать точность предсказаний по мере накопления ею опыта и адаптироваться к происходящим на рынке изменениям.

Решения на основе нейронных сетей становятся все более совершенными и, несомненно, в будущем наши возможности по разработке соответствующих устройств возрастут за счет лучшего понимания их основополагающих принципов. Но уже сегодня имеется немало впечатляющих разработок. База приложений нейронных сетей просто огромна: выявление фальшивых кредитных карточек, прогнозирование изменений на фондовой бирже, составление кредитных планов, оптическое распознавание символов, профилактика и диагностика заболеваний человека, наблюдение за техническим состоянием машин и механизмов, автоматическое управление движением автомобиля, принятие решений при посадке поврежденного летательного аппарата и т.д. Дальнейшие успехи в разработке искусственных нейронных сетей будут зависеть от дальнейшего понимания принципов работы человеческого мозга, но здесь имеется и обратная связь: искусственные нейронные сети являются одним из средств, с помощью которых совершенствуется наше представление о процессах, происходящих в нервной системе человека, выступая в качестве моделей соответствующих процессов.

Будущее нейронных сетей кажется вполне ясным, и сегодня это та область знаний, о которой должны иметь определенное представление все научные специалисты, работающие в области компьютерных технологий, равно как и многие инженеры и научные работники смежных специальностей.


Copyright © 1992-2019 Издательская группа "Диалектика-Вильямс"

Rambler  Top100