Главная Вейвлеты О фирме Контакты Библиотека |
Теория и практика вейвлет-преобразования - Нейронные сети |
Deep Learning
В 2017 году впервые на русском языке вышла фундаментальная монография "Глубокое обучение" с эпиграфом Илона Маска. Этот факт отражает вновь возникший интерес к нейронным сетям в последнее десятилетие во всем мире. Apple, Google активно скупают стартапы, работающие в области "deep learning", активно ведутся исследования, проводятся конференции, делаются громкие заявления. Например, обученная нейросеть недавно превзошла человека по верности распознавания дорожных знаков на фотографиях. Наибольшие успехи достигнуты в области распознавания речи, изображений, анализа текстов, задачах регрессии. Под глубокими нейронными сетями (ГНС) понимают обычно сети, состоящие из нескольких (три и больше) слоев нейронов. Конечно же, каждый слой содержит нелинейные преобразования, иначе несколько слоев можно было бы заменить одним. Так как слоев и нейронов много, обучить такую сеть может быть непросто с точки зрения требуемых вычислительных ресурсов. И здесь на помощь приходят GPU. Вычисления с использованием технологии CUDA позволяют на один-два порядка ускорить обучение ГНС по сравнению с традиционными вычислениями, проводимыми CPU. Ну, а если сравнивать нынешнюю производительность с производительностью сорокалетней давности (прошлый рацвет нейросетей), то становится очевидно, что многие алгоритмы, которые в те времена могли существовать только теоретически, сейчас получили свое практическое воплощение. Вообще говоря, ГНС - третье поколение нейросетей. Первое поколение нейросетей связано с понятием перцептрона, разработанного Ф.Розенблаттом более 60 лет назад. Десять лет он активно пропагандировал свои идеи, пока не вышла книга "Перцептроны" М.Минского и С.Пейперта. В этой книге была предпринята критика перцептрона и нейросетей вообще, строго математически доказано, что перцептрон невозможно обучить для решения многих классов важных задач. После этой книги многие проекты, связанные с нейросетями, закрылись. Вскоре Ф.Розенблатт утонул, катаясь на яхте. Существует ли причинно-следственная связь между разгромной критикой дела всей жизни Ф.Розенблатта и его гибелью (самоубийством?) - неизвестно. Но уже спустя три года после смерти основоположника, в докторской диссертации советского ученого Галушкина А.И. был описан алгоритм обучения нейросети, связанный с обратным распространением ошибки. Независимо от этой работы данный алгоритм был открыт в то же время и на Западе. Так появились нейросети второго поколения, которые, как выяснилось, можно обучать. В мире вновь появился интерес к нейросетям, но в основном в теоретической области. И только бурное развитие вычислительной техники позволило создать ГНС, которые решают уже практические задачи. Конечно, за прошедшие десятилетия разработаны новые алгоритмы обучения, но "хайп" deep learning`a связан, все же больше с наличием доступных вычислителей. Трудно сказать, каково будущее ГНС - являются ли они "калифом на час" или при их помощи действительно будет сделан технологический прорыв. Один из наиболее ярких исследователей ГНС является праправнуком самого Джорджа Буля, который думал, что его алгебра никогда не получит практического применения. Нельзя исключать, что вклад в науку и практику потомка будет не меньшим, чем вклад его прославленного предка. В любом случае, заниматься ГНС, как минимум, увлекательно - это не чистая абстрактная математика. Здесь используются термины, заимствованные из биологии (хотя математики слушают биологов только до тех пор, пока мнение последних не расходятся с их собственным мнением). При описании функций, экстремумы которых ищутся, используются термины "холмы", "овраги", "лощины". Применяются термины из термодинамики - "энергия нейросети", "машина Больцмана", "алгоритм имитации отжига металла". Романтика, одним словом! Немаловажным фактором, стимулирующим изучение ГНС, является то, что возникающие идеи и гипотезы можно немедленно попробовать на практике. В этом помогают многочисленные библиотеки программного кода, созданные энтузиастами и крупными фирмами. Например, хорошая библиотека Neural Network Toolbox имеется в Matlab, причем вычисления можно делать как на CPU, так и на GPU. Но Matlab дорого стоит, а существует немало кода open source, который предоставляется бесплатно в соответствии с той или иной лицензионной политикой (Apache, GPL и т.д.). Также в Сети имеется достаточно наборов данных, на которых можно оттестировать и отладить свою ГНС. Мы решили собрать на страничке некоторые книги по нейросетям, библиотеки deep learning, и ссылки на наборы данных. Надеемся, что эти материалы помогут отечественным специалистам в создании российских интеллектуальных продуктов. Конечно, большинство важных и хороших технических книг выходит на английском языке. Переводы на русский язык не всегда блестящи. Посмотреть рекомендуемые для чтения материалы по нейронным сетям на английском языке можно здесь: 36 материалов о нейросетях: книги, статьи и последние исследования и здесь:
Что читать о нейросетях Все же, на родном языке книги читать сподручнее, поэтому, ниже мы привели русскоязычные книги, за исключением книги Adaptive filtration Хайкина, так как ее не перевели на русский зык. |
I. Книги на русском языке |
Нейронные сети: полный курс. 2-е изд. с примерами - [Книга] [Примеры к книге] Хайкин C. - 2006, 1102с. Комментарии: Достаточно сложная для восприятия (иногда благодаря переводу) книга известного специалиста. Отдельно размещены примеры из книги. |
Теория нейронных сетей Галушкин А.И. - 2000, 416с. Комментарии: Книга одного из основоположников нейронных сетей, к сожалению, умершего 08.11.2016. Александр Иванович работал до последних дней, так и не увидел вышедшей в 2017 году своей новой книи по нейросетям с предисловием самого Лотфи Заде |
Самоорганизующиеся карты Кохонен Т. - 2014, 655с. Комментарии: Описана разработанная автором одна из наиболее популярных нейросетевых архитектур, ориентированная на обучение без учителя. Приведены математические основы, описаны пакеты программ и даже аппаратные реализации карт |
Основные концепции нейронных сетей Каллан Р. - 2001, 287с. Комментарии: Вполне доступное введение в нейросети |
Нейронные сети, генетические алгоритмы и нечеткие системы Рутковская Д., Пилиньский М., Рутковский Л. - 2006, 383с. Комментарии: В книге польских исследователей рассмотрены нейронечеткие сети, использование эволюционных алгоритмов в нейросетях |
Нейронные сети. Основные модели Заенцев И.В. - 1999, 76с. Комментарии: Краткое учебное пособие по нейронным сетям |
Нечёткая логика и искусственные нейронные сети Круглов В.В., Дли М.И., Голунов Р.Ю. - 2001, 226с. Комментарии: В книге, в том числе, рассмотрена Neural Network Toolbox (правда, для старой уже теперь версии Matlab 5.3) |
Организация и использование нейронных сетей (методы и технологии) Аксенов С.В., Новосельцев В.Б. - 2006, 128с. Комментарии: Краткий обзор современного (на тот момент) положения дел в области |
Адаптивная обработка сигналов Уидроу Б., Стирнз С. - 1989, 440с. Комментарии: Хотя в книге не упоминаются нейронные сети, описанные в ней алгоритмы широко применяются в нейросетях |
Нейронные сети. Распознавание, управление, принятие решений Барский А.Б. - 2004, 176с. Комментарии: Хорошо иллюстрированная научно-популярная книга. Рассмотрены различные области применения нейросетей |
II. Книги на английском языке |
Adaptive Filter Theory. Third Edition Haykin S. - 2004, 990с. Комментарии: Эта монография не переведена на русский язык, несмотря на то, что на Западе выдержала 4 издания |
Главная Вейвлеты О фирме Контакты Библиотека |