Многослойный персептрон
Часть серии о |
Машинное обучение и интеллектуальный анализ данных |
---|
Многослойный перцептрон ( MLP ) — это название современной искусственной нейронной сети прямого распространения , состоящей из полностью связанных нейронов с нелинейной функцией активации , организованных как минимум в три слоя, отличающихся способностью различать данные, которые не являются линейно разделимыми . [1]
Современные сети прямого распространения обучаются с использованием обратного распространения ошибки. метода [2] [3] [4] [5] [6] и в просторечии их называют «ванильными» нейронными сетями. [7]
MLP возникли в результате попыток улучшить однослойные перцептроны , которые могли различать только линейно разделимые данные. Персептрон традиционно использовал ступенчатую функцию Хевисайда в качестве нелинейной функции активации. Однако алгоритм обратного распространения ошибки требует, чтобы современные MLP использовали непрерывно дифференцируемые функции активации, такие как сигмовидная или ReLU .
Хронология [ править ]
- В 1958 году многослойная сеть перцептронов, состоящая из входного слоя, скрытого слоя со рандомизированными весами, которые не обучаются, и выходного слоя с обучающими связями, была представлена уже Фрэнком Розенблаттом в его книге «Перцептрон» . [8] [9] [10] Эта экстремальная обучающая машина [11] [10] еще не была сетью глубокого обучения .
- первая сеть прямого обучения с глубоким обучением , еще не использующая стохастический градиентный спуск и Валентином Лапой была опубликована В 1965 году Алексеем Григорьевичем Ивахненко , которая в то время называлась « Групповой метод обработки данных» . [12] [13] [10]
- опубликовал сеть глубокого обучения, использовавшую стохастический градиентный спуск впервые В 1967 году Шуничи Амари и способную классифицировать нелинейно разделимые классы шаблонов . [14] Ученик Амари Сайто провел компьютерные эксперименты, используя пятислойную сеть прямого распространения с двумя уровнями обучения.
- В 1970 году появился современный метод обратного распространения ошибки , эффективное применение цепочек правил на основе контролируемого обучения . [15] [16] была впервые опубликована финским исследователем Сеппо Линнаинмаа . [2] [17] [10] Сам термин (то есть «ошибки обратного распространения») использовался самим Розенблаттом. [9] но он не знал, как это реализовать, [10] хотя непрерывный предшественник обратного распространения ошибки уже использовался в контексте теории управления в 1960 году Генри Дж. Келли . [3] [10] Он также известен как обратный режим автоматического дифференцирования .
- В 1982 году обратное распространение ошибки было применено способом, ставшим стандартным, впервые Полом Вербосом . [5] [10]
- В 1985 году экспериментальный анализ метода был проведен Дэвидом Э. Румельхартом и др. [6] В последующие десятилетия в этот подход было внесено множество усовершенствований. [10]
- В 1990-х годах появилась (гораздо более простая) альтернатива использованию нейронных сетей, хотя и все еще связанная с ней. [18] Машинный подход опорных векторов был разработан Владимиром Вапником и его коллегами. Помимо выполнения линейной классификации , они смогли эффективно выполнить нелинейную классификацию, используя так называемый трюк с ядром , используя многомерные пространства признаков .
- В 2003 году интерес к сетям обратного распространения ошибки вернулся благодаря успехам глубокого обучения , примененного к языковому моделированию Йошуа Бенджио с соавторами. [19]
- В 2017 году трансформаторов . были представлены современные архитектуры [20] [21]
- В 2021 году была разработана очень простая архитектура NN, объединяющая два глубоких MLP с пропусками соединений и нормализацией слоев, которая получила название MLP-Mixer; Было показано, что его реализации, содержащие от 19 до 431 миллионов параметров, сопоставимы с преобразователями изображения аналогичного размера в ImageNet и аналогичными задачами классификации изображений . [22]
Математические основы [ править ]
Функция активации [ править ]
Если многослойный персептрон имеет линейную функцию активации во всех нейронах, то есть линейную функцию, которая сопоставляет взвешенные входы с выходом каждого нейрона, то линейная алгебра показывает, что любое количество слоев можно свести к двухслойному входу. выходная модель. В MLP некоторые нейроны используют нелинейную функцию активации, которая была разработана для моделирования частоты потенциалов действия или срабатывания биологических нейронов.
Две исторически распространенные функции активации являются сигмоидами и описываются формулой
- .
Первый представляет собой гиперболический тангенс , который находится в диапазоне от −1 до 1, а другой — логистическую функцию , которая аналогична по форме, но находится в диапазоне от 0 до 1. Здесь это результат -й узел (нейрон) и — взвешенная сумма входных соединений. Были предложены альтернативные функции активации, включая функции выпрямителя и softplus . К более специализированным функциям активации относятся радиальные базисные функции (используемые в радиальных базисных сетях — другом классе контролируемых моделей нейронных сетей).
В недавних разработках глубокого обучения выпрямленная линейная единица (ReLU) чаще используется как один из возможных способов преодоления числовых проблем, связанных с сигмоидами.
Слои [ править ]
MLP состоит из трех или более слоев (входной и выходной слой с одним или несколькими скрытыми слоями ) узлов нелинейной активации. Поскольку MLP полностью связаны, каждый узел одного слоя соединяется с определенным весом. к каждому узлу следующего слоя.
Обучение [ править ]
Обучение происходит в перцептроне путем изменения весов соединений после обработки каждого фрагмента данных в зависимости от количества ошибок на выходе по сравнению с ожидаемым результатом. Это пример обучения с учителем , который осуществляется посредством обратного распространения ошибки — обобщения алгоритма наименьших средних квадратов в линейном персептроне.
Мы можем представить степень ошибки в выходном узле в -я точка данных (обучающий пример) по , где желаемое целевое значение для Точка данных в узле , и значение, создаваемое перцептроном в узле когда эта точка данных предоставляется в качестве входных данных.
Затем веса узлов можно скорректировать на основе поправок, которые минимизируют ошибку во всем выводе для th точка данных, заданная
- .
Используя градиентный спуск , изменение каждого веса является
где это выход предыдущего нейрона , и — скорость обучения , которая выбирается для того, чтобы веса быстро сходились к ответу, без колебаний. В предыдущем выражении обозначает частичную производную ошибки по взвешенной сумме входных связей нейрона .
Производная, которую необходимо вычислить, зависит от индуцированного локального поля , который сам по себе варьируется. Легко доказать, что для выходного узла эту производную можно упростить до
где является производной описанной выше функции активации, которая сама по себе не меняется. Анализ более сложен для изменения весов в скрытом узле, но можно показать, что соответствующая производная равна
- .
Это зависит от изменения веса th узлов, которые представляют выходной слой. Таким образом, чтобы изменить веса скрытого слоя, веса выходного слоя изменяются в соответствии с производной функции активации, и поэтому этот алгоритм представляет собой обратное распространение функции активации. [23]
Ссылки [ править ]
- ^ Цыбенко, Г. 1989. Приближение суперпозициями сигмоидальной функции. Математика управления, сигналов и систем , 2 (4), 303–314.
- ^ Jump up to: а б Линнаинмаа, Сеппо (1970). Представление совокупной ошибки округления алгоритма в виде разложения Тейлора локальных ошибок округления (Мастерс) (на финском языке). Университет Хельсинки. стр. 6–7.
- ^ Jump up to: а б Келли, Генри Дж. (1960). «Градиентная теория оптимальных траекторий полета». Журнал АРС . 30 (10): 947–954. дои : 10.2514/8.5282 .
- ^ Розенблатт, Фрэнк. х. Принципы нейродинамики: перцептроны и теория механизмов мозга. Спартанские книги, Вашингтон, округ Колумбия, 1961 г.
- ^ Jump up to: а б Вербос, Пол (1982). «Применение достижений нелинейного анализа чувствительности» (PDF) . Системное моделирование и оптимизация . Спрингер. стр. 762–770. Архивировано (PDF) из оригинала 14 апреля 2016 года . Проверено 2 июля 2017 г.
- ^ Jump up to: а б Румелхарт, Дэвид Э., Джеффри Э. Хинтон и Р. Дж. Уильямс. « Изучение внутренних представлений путем распространения ошибок ». Дэвид Э. Румельхарт, Джеймс Л. Макклелланд и исследовательская группа НДП. (редакторы), Параллельная распределенная обработка: Исследования микроструктуры познания, Том 1: Фонд. Массачусетский технологический институт Пресс, 1986.
- ^ Хасти, Тревор. Тибширани, Роберт. Фридман, Джером. Элементы статистического обучения: интеллектуальный анализ данных, логический вывод и прогнозирование. Спрингер, Нью-Йорк, 2009 г.
- ^ Розенблатт, Франк (1958). «Перцептрон: вероятностная модель хранения и организации информации в мозге». Психологический обзор . 65 (6): 386–408. CiteSeerX 10.1.1.588.3775 . дои : 10.1037/h0042519 . ПМИД 13602029 . S2CID 12781225 .
- ^ Jump up to: а б Розенблатт, Франк (1962). Принципы нейродинамики . Спартан, Нью-Йорк.
- ^ Jump up to: а б с д и ж г час Шмидхубер, Юрген (2022). «Аннотированная история современного искусственного интеллекта и глубокого обучения». arXiv : 2212.11279 [ cs.NE ].
- ^ Хуан, Гуан-Бин; Чжу, Цинь-Юй; Сью, Чи-Хеонг (2006). «Машина экстремального обучения: теория и приложения». Нейрокомпьютинг . 70 (1): 489–501. CiteSeerX 10.1.1.217.3692 . дои : 10.1016/j.neucom.2005.12.126 . S2CID 116858 .
- ^ Ивахненко, А.Г. (1973). Кибернетические предсказывающие устройства . Информационная корпорация CCM.
- ^ Ивахненко А.Г. ; Григорьевич Лапа, Валентин (1967). Кибернетика и методы прогнозирования . Американский паб Elsevier. Ко.
- ^ Амари, Шуничи (1967). «Теория адаптивного классификатора шаблонов». IEEE-транзакции . ЕС (16): 279–307.
- ^ Родригес, Омар Эрнандес; Лопес Фернандес, Хорхе М. (2010). «Семиотическое размышление о дидактике правила цепочки» . Любитель математики . 7 (2): 321–332. дои : 10.54870/1551-3440.1191 . S2CID 29739148 . Проверено 4 августа 2019 г.
- ^ Лейбниц, Готфрид Вильгельм Фрайгер фон (1920). Ранние математические рукописи Лейбница: перевод с латинских текстов, опубликованных Карлом Иммануэлем Герхардтом с критическими и историческими примечаниями (Лейбниц опубликовал цепное правило в мемуарах 1676 года) . Издательство «Открытый суд». ISBN 9780598818461 .
- ^ Линнаинмаа, Сеппо (1976). «Разложение Тейлора накопленной ошибки округления». БИТ Численная математика . 16 (2): 146–160. дои : 10.1007/bf01931367 . S2CID 122357351 .
- ^ Р. Коллоберт и С. Бенджио (2004). Связи между перцептронами, MLP и SVM. Учеб. Международная конференция. по машинному обучению (ICML).
- ^ Бенджио, Йошуа; Дюшарм, Режан; Винсент, Паскаль; Джанвин, Кристиан (март 2003 г.). «Нейронно-вероятностная языковая модель» . Журнал исследований машинного обучения . 3 : 1137–1155.
- ^ Васвани, Ашиш; Шазир, Ноам; Пармар, Ники; Ушкорейт, Якоб; Джонс, Лион; Гомес, Эйдан Н; Кайзер, Лукаш; Полосухин, Илья (2017). «Внимание – это все, что вам нужно» . Достижения в области нейронных систем обработки информации . 30 . Карран Ассошиэйтс, Инк.
- ^ Гева, Мор; Шустер, Рой; Берант, Джонатан; Леви, Омер (2021). «Слои прямой связи трансформатора — это память ключевых значений» . Материалы конференции 2021 года по эмпирическим методам обработки естественного языка . стр. 5484–5495. doi : 10.18653/v1/2021.emnlp-main.446 . S2CID 229923720 .
- ^ «Документы с кодом - MLP-Mixer: полностью MLP-архитектура для видения» .
- ^ Хайкин, Саймон (1998). Нейронные сети: комплексный фундамент (2-е изд.). Прентис Холл. ISBN 0-13-273350-1 .