Персептрон розенблатта что это
Перейти к содержимому

Персептрон розенблатта что это

  • автор:

Перцептрон Розенблатта — что забыто и придумано историей?

На хабре — уже есть несколько статей про искусственные нейронные сети. Но чаще говорят о т.н. многослойном перцептроне и алгоритме обратного распространения ошибки. А знаете те ли Вы что эта вариация ничем не лучше элементарного перцептрона Розенблатта?

Например, вот в этом переводе Что такое искусственные нейронные сети? мы можем увидеть, что о перцептроне Розенблатта пишут такое:

Демонстрация персептона Розенблатта показала, что простые сети из таких нейронов могут обучаться на примерах, известных в определенных областях. Позже, Минский и Паперт доказали, что простые пресептоны могут решать только очень узкий класс линейно сепарабельных задач, после чего активность изучения ИНС уменьшилась. Тем не менее, метод обратного распространения ошибки обучения, который может облегчить задачу обучения сложных нейронных сетей на примерах, показал, что эти проблемы могут быть и не сепарабельными.

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

Но это, наверно, самая великая реклама в области ИИ. А в науке это называется фальсификация.

Что придумано?

На самом деле все серьезные ученные знают, что такое представление о перцептроне Розенблатта несерьезно. Но они предпочитают об этом писать достаточно мягко. Но когда история нам представляется в существенно искаженном виде, хотя и в столь узкой сфере науки — это не хорошо. Я не хочу сказать, что это было фальсифицировано намерено. Как раз нет, это хороший пример того, как молодые люди не читают оригиналов, или читают их по диагонали, потом делаю вид, что поняли в чем проблема. И решают эту проблему. Затем становятся докторами и получают известность. А уже следующие поколение им верит. Всегда, если серьезно чем то занимаетесь, перепроверяйте классиков по оригиналам. Не верьте перепостам в статьях.

Итак, давайте откроем оригинал, описывающий перцептрон Розенблатта: Розенблатт, Ф. Принципы нейродинамики: Перцептроны и теория механизмов мозга, 1965. Вы там не найдете т.н. однослойного перцептрона — его в природе не существует, как минимум на 1965 год. Его выдумали много позднее.

Там вы сразу увидите элементарный перцептрон, у которого есть скрытый слой А-элементов.

Иногда это объясняют тем, что поменялась терминология. Увы, как слова не меняй — а нужный слой у перцептрона есть и ВСЕГДА был. Более того, сам Розенблатт пишет о том, что рассматривать перцептроны без скрытого слоя нет ни какого смысла. Это на 1965 год было элементарно, и всем известно.

Дальше сюда хотят присовокупить авторитет Минского. Но и он прекрасно знал, что такое перцептрон. И никогда он не доказывал, что перцептрон не может решить линейно не сепарабельные задачи. Он доказывал совершенно другое, связанное с проблемой инвариантности. И эту проблему сейчас не решает ни одна известная ИНС. (но это статья не об этом, если будут желающие — делайте заказ попробую написать об этом. )

В этом отношении разница между перцептроном Розенблатта и многослойным перцептроном по Румельхарту (MLP) только в следующем:
1. Перцептрон Румельхарта обучается алгоритмом обратного распространения ошибки, при этом обучаются веса между входным и скрытым слоем и веса между скрытым и выходным слоем.
2. Перцептрон Розенблатта обучается алгоритмом коррекции ошибки. Этим алгоритмом обучаются только веса между скрытым и выходным слоем. Что же касается весов между входным и скрытым слоем — то он не обучается осознано. Его нет смысла обучать, т.к. этот слой выполняет совсем другую задачу чем второй. Весовые коэффициенты первого слоя, а точнее возбуждающие и тормозящие связи создаются в перцептроне случайно — моделируя тут природу. Задача этого слоя как раз и заключается в том, чтобы не сепарабельную проблему трансформировать к сепарабельной. И входные импульсы проходя через связи первого слоя отображаются на пространство А-элементов. Вот эта случайная матрица и обеспечивает трансформацию в сепарабельную проблему.

Второй же слой как в перцептроне Розенблатта, так и в MLP уже только разделяет полученную после трансформации линейную задачу.

Теперь надеюсь понятно зачем первый слой — он обеспечивает трансформацию из не сепарабельной (линейно не неразделимой) в сепарабельное представление задачи. Это же и делается и в MLP, выбранный алгоритм обратного распространения этого не меняет.

Но если перцептрон Розенблатта использует случайность, то MLP путем своего обучения создает эту случайность. Вот и вся разница.

Есть ряд других отличий, следствий — но эта статья все же не для новичков, а тех кто хотя бы немного в теме. Тут я лишь хотел заметить, что новичкам перцептрон Розенблатта надо изучать по оригиналам.

А что же было забыто?

Совершенно не заслужено фамилию Розенблатта вспоминают теперь чаще в исторических обзорах. Надо отметить, что Розенблатт разработал не какой-то один вид искусственной нейронной сети. Он разработал полную классификацию всевозможных нейронных сетей. Под общие название перцептрон — попадает ЛЮБАЯ ныне существующая ИНС. Есть у Розенблатта и многослойные перцептроны, которые по его терминологии начинаются с двух внутренних слоев, и рекуррентные перцептроны, и много других подтипов. Причем в отличии от современно разрабатываемых их характеристики Розенблаттом просчитаны более тщательно. Именно поэтому просто необходимо вновь разрабатываемую ИНС сравнивать вначале с соответствующим по классификации перцептронов от Розенблатта — если такого сравнения нет, то и эффективность новой ИНС совершенно не ясна. А многие разработчики ИНС — не удосуживаются этого сделать, и как следствие много званых, и не одного призванного.

P.S. Я часто встречался со скептизмом, когда я это рассказывал. Но если вдруг не верите мне, почитайте статью Kussul E., Baidyk T., Kasatkina L., Lukovich V., Перцептроны Розенблатта для распознавания рукописных цифр, 2001.

В заключение даю ссылку, где я помогу изучить перцептрон Розенблатта не по мифам, а по оригиналам: Здесь мы изучаем возможности перцептрона Розенблатта

upd. Тем кто еще находится в плену заблуждений — посвящается — решение перцептроном Розенблатта задачи XOR

upd2. Спасибо все, обучение не знающих и не читающих оригиналы — не входило в мою тут задачу. Захотите нормально поговорить, пишите в личку. На вызывающие комментарии больше не отвечаю, рекомендую взять и прочитать основы.

  • Перцептрон
  • искусственные нейронные сети

2. Персептрон Розенблатта.

Перцептроны или персептроны (от perceptio – восприятие) были первыми искусственными нейронными сетями, появившимися в результате многолетних исследований мозга животных и человека. Автор первого перцептрона – американский ученый Френк Розенблатт, впервые опубликовавший свои исследования в этой области в 1957 году. По мнению Ф. Розенблатта, перцептроны, прежде всего, являются классом моделей мозга, объясняющих некоторые его характерные функции. В частности, перцептроны, пусть и в самой элементарной форме, объясняют некоторые проблемы организации памяти биологических систем, демонстрируют механизм приобретения знаний «познающих (cognitive) систем» об окружающем их мире и показывают, что эти знания зависят как от когнитивной системы, так и от окружающей среды. По Розенблатту, для различных видов животных простейшее представление об анатомической структуре нервной системы может быть получено с помощью схемы.

Image001

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

По Розенблату персептроном называется нейронная сеть, состоящая из чувствительных, ассоциирующих и реагирующих элементов. Сенсорный способен выдавать сигнал 1 либо 0. Далее сигналы поступают в слой ассоциативных. Ассоциативный элемент – обычный нейрон модели МакКаллока-Питса с бинарно-пороговой функцией активации. Реагирующий элемент – обычный нейрон с биполярно-пороговой функцией активации. Реагирующие элементы с фиксированными весами формируют сигнал реакции персептрона на входной стимул. Фрэнк Розенблатт выделял персептроны с последовательными связями, персептроны с перекрёстными связями и персептроны с обратными связями.

Так же она должна удовлетворять следующим пяти условиям: 1. В сети имеется только один реагирующий нейрон, который соединен связями с переменными весами со всеми ассоциирующими нейронами.
2. В сети имеются только последовательные связи от чувствительных к ассоциирующим элементам и от ассоциирующих элементов к реагирующиему элементу.
3. Веса связей между чувствительными и ассоциирующих элементами являются фиксированными.
4. Время передачи сигналов каждой связью равно нулю (либо фиксированной постоянной величине).
5. Выходные сигналы всех нейронов сети формируются в виде:

С современной точки зрения, формальный нейрон представляет собой математическую модель простого процессора, имеющего несколько входов и один выход. Вектор входных сигналов (поступающих через «дендриды») преобразуется нейроном в выходной сигнал (распространяющийся по «аксону») с использованием трех функциональных блоков: локальной памяти, блока суммирования и блока нелинейного преобразования.

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

Модель искусственных нейронов МакКаллока и Питтса (1943)

Самой первой математической моделью искусственного нейрона была пороговая логическая единица, предложенная Уорреном С. МакКаллохом (1898–1969, американский нейрофизиолог) и Уолтером Х. Питтсом-младшим (1923–1969, американский логик) в 1943 году. Прежде чем погрузиться в их модели, давайте сначала быстро рассмотрим, как на самом деле работает биологический нейрон.

Описание высокого уровня биологических нейронов

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

  • модель «Интеграция и огонь», предложенная Луи Лапик (1866–1952, французский нейробиолог) еще в 1907 году.
  • Модель Ходжкина-Хаксли, названный в честь Алан А. Ходжкин (1914–1998, английский физиолог и биофизик) и Эндрю Ф. Хаксли (1917–2012, английский физиолог и биофизик), получивший Нобелевскую премию по физиологии и медицине 1963 года.
  • Модель ФитцХью-Нагумо названный в честь Ричарда Фицхью (1922–2007, американский биофизик) и Дж. Нагумо (японский инженер), что в основном является упрощением модели Ходжкина-Хаксли.
  • или более свежий модель всплеска нейронов Евгений Михайлович Ижикевич (род. 1967, русский математик).

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

  • Дендриты, также известный какдендроныявляются разветвленными протоплазматическими расширениями нервной клетки, которые распространяют электрохимическую стимуляцию, полученную от других нервных клеток в тело клетки (илисома).
  • сомагде сигналы, полученные от дендритов, соединяются и передаются. Он содержит много органелл, а также клеточное ядро.
  • Аксон бугорокявляется специализированной частью сомы, которая соединяется саксон, Именно он управляет стрельбой нейрона. Если общая сила сигнала, который он получает, превышает его пороговый предел, нейрон будет запускать сигнал (известный как потенциал действия) вниз по аксону.
  • аксонудлиненное волокно, простирающееся от сомы до концевых окончаний. Его роль заключается в передаче нейронного сигнала другим нейронам черезсинапсы,
  • Синапсыэто небольшие промежутки, расположенные в самом конце аксонного конца, соединяющего нейрон с другими нервными клетками. Там нейротрансмиттеры используются для передачи сигнала через синапс к другим нейронам.

Принцип действия биологического нейрона можно обобщить следующим образом. Во-первых, он получает информацию от своих дендритов (то есть от других нейронов). На втором этапе взвешенная сумма этих входных данных выполняется в соме. Затем результат передается на аксон бугорка. Если эта взвешенная сумма больше порогового значения, нейрон сработает. В противном случае он остается в покое. Состояние нашего нейрона (включенного или выключенного) затем распространяется через его аксон и передается другим связанным нейронам через его синапсы. Хотя это очень простое описание этого высокого уровня принципа действия биологического нейрона, достаточно для понимания математической модели искусственного нейрона, предложенной McCulloch & Pitts в 1943 году.

Математическая модель искусственных нейронов

Основываясь на этом базовом понимании принципа действия нейрона, McCulloch & Pitts предложили самую первую математическую модель искусственного нейрона в своей оригинальной статье.Логическое исчисление идей, присущих нервной деятельности[3] еще в 1943 году. Хотя они очень просты, их модель оказалась чрезвычайно универсальной и легко модифицируемой. Сегодня вариации их оригинальной модели теперь стали элементарными строительными блоками большинства нейронных сетей, от простого однослойного персептрона до 152-слойных нейронных сетей, используемых Microsoft для победы в конкурсе ImageNet 2016 года.

Модель нейрона McCulloch & Pitts, далее обозначаемая просто как нейрон MCP, может быть определена по следующим правилам:

  • Имеет бинарный выходY∈ , гдеY= 1 указывает на то, что нейрон срабатывает иY= 0 что это в покое.
  • Имеет число N выходных двоичных входовxₖ∈ .
  • Имеет один запрещающий входя, Если он включен, нейрон не может срабатывать.
  • Он имеет пороговое значение Θ. Если сумма его входов больше, чем это критическое значение, нейрон срабатывает. В противном случае он остается в покое

Учитывая входИксзнак равнох₁, х₂, х₃,. , хₙ] ᵀ, запрещающий вводяи порог Θ, выходYрассчитывается следующим образом

Для тех, кто обладает базовыми знаниями в области нейронных сетей, такая модель выглядит подозрительно, как современный искусственный нейрон, и это именно так!

Множество разных статей и постов в блогах показали, как можно использовать нейроны MCP для реализации различных логических функций, таких как ИЛИ, И или НЕ. Они проиллюстрированы ниже с использованием Марвин Минский В нотации.

Следует подчеркнуть, что путем суммирования нескольких нейронов MCP можно также представить более сложные функции (например, триггер, деление на два и т. Д.). Несмотря на эту гибкость, нейроны MCP страдают от серьезных ограничений, а именно

  • Один нейрон MCP не может представлять булеву функцию XOR или любую другую нелинейную функцию.
  • Все синаптические веса установлены в единицу, подразумевая, что все входы вносят одинаковый вклад в выход.
  • Рассматриваемая функция должна быть жестко запрограммирована пользователем. Это не может быть изучено из данных.
  • Правило абсолютного торможения (то есть, если ингибирующий вводявключен, нейрон не может срабатывать) слишком ограничен.

Тем не менее, нейрон MCP тогда вызвал сильное возбуждение в исследовательском сообществе и, более чем полвека спустя, дал начало современному глубокому обучению. Попутно одно из самых важных улучшений, касающееся некоторых ограничений нейронов MCP, пришло от Фрэнк Розенблатт и его персептрон.

Заметка : Акшай Чандра Лагандула прошлым летом было опубликовано прекрасное введение в нейрон McCulloch & Pitts. В частности, он иллюстрирует, как булевы функции (например, AND, OR и т. Д.) Могут быть реализованы с использованием этой модели. Для получения более подробной информации (и хороших цифр) заинтересованным читателям настоятельно рекомендуется проверить это.

Нейрон Маккаллока-Питтса — первая математическая модель биологического нейрона человечества

Хорошо известно, что наиболее фундаментальная единица глубоких нейронных сетей называется искусственный нейрон / персептрон…

towardsdatascience.com

Персептрон: искусственный нейрон (существенное обновление до нейрона Маккаллока-Питтса)

Самая фундаментальная единица глубокой нейронной сети называется искусственным нейроном, который принимает входные данные, обрабатывает их…

towardsdatascience.com

Однослойный персептрон Розенблатта (1957)

Спустя почти пятнадцать лет после McCulloch & Pitts [3] американский психолог Фрэнк Розенблатт (1928–1971), вдохновленный Теория Хебба синаптической пластичности (то есть адаптации мозговых нейронов в процессе обучения), придумалперсептрон, значительное улучшение по сравнению с моделью нейронов MCP. Это изобретение дало ему международное признание, и на сегодняшний день Институт инженеров по электротехнике и электронике (IEEE):крупнейшая в мире профессиональная ассоциация, занимающаяся продвижением технологических инноваций и достижений на благо человечества», Назвал свою ежегодную награду в его честь.

Основное достижение Розенблатта заключается в том, чтобы показать, что, ослабляя некоторые из правил MCP (а именно абсолютное запрещение, равный вклад всех входных данных, а также их целочисленную природу), искусственные нейроны могут фактически извлекать уроки из данных. Что еще более важно, он придумалконтролируемыйалгоритм обучения для этой модифицированной модели нейронов MCP, который позволял искусственному нейрону вычислять правильные веса непосредственно из обучающих данных. Прежде чем погрузиться в забавные вещи машинного обучения, давайте быстро обсудим тип проблем, которые могут быть решены персептроном.

Бинарная классификация

Бинарная (или биномиальная) классификация — это задача классификации элементов данного набора на две группы (например, классификация, изображает ли изображение кошку или собаку) на основе предписанного правила. На рисунке ниже изображены два случая такой проблемы. Справа задача состоит в том, чтобы определить сепаратрису между двумялинейно отделимыйклассы (т.е. сепаратриса — простая прямая линия), в то время как слева два классанелинейно отделимый(то есть сепаратрисанепростая прямая)

Как мы увидим, персептрон Розенблатта может обрабатывать только задачи классификации для линейно разделимых классов Однако следует отметить, что пример на правом рисунке также может быть потенциально обработан персептроном, хотя он требует предварительной обработки входных данных, известных какособенность техникичтобы превратить его в линейно отделимую задачу,Это будет рассмотрено (надеюсь) в следующем посте.

Чтобы лучше понять способность персептрона решать проблемы бинарной классификации, давайте рассмотрим модель искусственного нейрона, на которую он опирается.

Как вы можете видеть, этот нейрон очень похож на тот, который был предложен в 1943 году McCulloch & Pitts. Тем не менее, он имеет некоторые основные различия, а именно

  • Нейрон принимает дополнительный постоянный вход, связанный с синаптическим весомб(обозначено Θ на рисунке выше), также известный как смещение. Что касается MCP-нейрона, то смещениебпросто отрицательный порог активации.
  • Синаптические весаwₖне ограничены единством, что позволяет некоторым входам оказывать большее влияние на выход нейрона, чем другие.
  • Они также не должны быть строго позитивными. Следовательно, некоторые входные данные могут оказывать сдерживающее влияние.
  • Правило абсолютного торможения больше не применяется.

В математических терминах нелинейность искусственного нейрона, на которую опирается персептрон,

Эта функция соответствует функции Хевисайда (т.е.ЧАС(Z) = 0 еслиZЧАС(Z) = 1 в противном случае). Обратите внимание, что эквивалентные формулировки персептрона, где двоичный выход определяется какY∈ , рассмотрим функцию signum, а не функцию Хевисайда, т.е.

Независимо от формулировки, граница решения для персептрона (и многих других линейных классификаторов), таким образом, является

или в качестве альтернативы, используя наши компактные математические обозначения

Эта решающая функция линейно зависит от входовxₖотсюда и названиеЛинейный классификатор, Более того, это уравнениегиперплоскость(простая точка в 1D, прямая в 2D, регулярная плоскость в 3D и т. д.). Векторвессинаптических весов является нормалью к этой плоскости, в то время как смещениебэто смещение от начала координат. Теперь, когда мы лучше понимаем, почему персептрон Розенблатта может использоваться для линейной классификации, вопрос, на который остается ответить

Приведено множество M примеров (Иксₘ, уₘ), как персептрон может узнать правильные синаптические весавеси смещение б правильно разделить два класса?

Алгоритм обучения персептрона

Как обсуждалось ранее, главное достижение Розенблатта состояло не только в том, чтобы показать, что его модификация нейрона МСР может фактически использоваться для выполнения бинарной классификации, но также в разработке довольно простого и в то же время относительно эффективного алгоритма, позволяющего персептрону изучать правильные синаптические весавесиз примеров. Этот алгоритм приведен ниже

Прежде чем перейти к реализации Python, давайте рассмотрим четыре простых мысленных эксперимента, чтобы проиллюстрировать, как это работает.

  • Предположим, что пример mᵗʰИкспринадлежит к классуyₘ= 0 и что персептрон правильно предсказываетŷₘ= 0,В этом случае коррекция веса задается как Δвес= (0-0)Икст.е. мы не меняем веса. То же самое относится и к уклону.
  • Точно так же, если пример mᵗʰИкспринадлежит к классуyₘ= 1 и персептрон правильно предсказываетŷₘ= 1, то коррекция веса равна Δвес= 0. То же самое относится и к смещению.
  • Предположим теперь, что пример mᵗʰИкспринадлежит к классуyₘ= 0 и что персептрон ошибочно предсказываетŷₘ= 1,В этом случае коррекция веса задается как Δвес= (0–1)Иксₘ =Иксв то время как смещение обновляется какбзнак равноб-1.
  • Наконец, если пример mᵗʰИкспринадлежит к классуyₘ= 1 и персептрон ошибочно предсказываетŷₘ= 0, коррекция веса Δвесзнак равноИкс, Уклон также обновляется в соответствии сбзнак равноб +1.

Как видите, этот алгоритм чрезвычайно прост. Однако может быть неясно, почему, на первый взгляд, такой простой алгоритм действительно может сходиться к полезному набору синаптических весов. Хотя это и относительно просто, доказательство конвергенции не будет представлено в данном документе и фактически будет предметом предстоящего поста. Для остальной части этого поста, просто сделайте прыжок веры и поверьте мне, это действительно сходится. В то же время, если вы скептик или просто не убеждены, вы можете проверить сообщение по Акшай Чандра Лагандула чтобы получить некоторую геометрическую интуицию, почему это работает.

Алгоритм обучения Perceptron: графическое объяснение того, почему он работает

В этом посте будет обсуждаться знаменитый алгоритм обучения Перцептрона, предложенный Мински и Пейпертом в 1969 году. Это…

towardsdatascience ком

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

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

Кузнечное дело делает кузнеца, парусный спорт — моряком, а практика — идеальным,

Кончина Перцептрона

Простота и эффективность этого алгоритма обучения для линейно разделимых задач является одной из ключевых причин, почему он стал настолько популярным в конце 1950-х и начале 1960-х годов. Эта популярность, однако, заставила Розенблатта переоценить свою способность к персептрону учиться, что привело к нереалистичным ожиданиям в научном сообществе и / или в сообщениях средств массовой информации. Как мы увидим в следующих статьях, этот персептрон действительно страдает от серьезных ограничений, сильно ограничивающих его применимость к реальным проблемам.государственный переворотпришли из Марвин Минский (1927–2016, американский учёный) и Сеймур Паперт (1928–2016, американский математик южноафриканского происхождения), опубликовавший в 1969 году печально известную книгуПерцептроны: введение в вычислительную геометрию[4]. В этой книге авторы показали, насколько ограничен персептрон Розенблатта (и любой другой однослойный персептрон) и, что особенно важно, ему невозможно выучить простую логическую функцию XOR. Некоторые утверждают, что публикация этой книги и демонстрация пределов персептрона вызвали так называемую зиму ИИ 1980-х .

Вывод

Этот пост является первым из серии, адаптированной от вводного курса к углубленному обучению, в котором я преподаю Национальная высшая школа искусств и искусств (Париж, Франция). Поскольку мы должны научиться ходить, прежде чем сможем бегать, наше внимание было сосредоточено здесь на самих предварительных знаниях глубокого обучения, как с исторической, так и с математической точки зрения, а именно на модели искусственных нейронов МакКаллока и Питтса и однослойного персептрона Розенблат. Поскольку это очень элементарные строительные блоки современных нейронных сетей, не стесняйтесь читать о них как можно больше и играть с ноутбуками Jupyter, чтобы убедиться, что вы полностью осознаете их свойства и ограничения, прежде чем переходить к современному глубокому обучению. Я знаю, как пометить сообщение на однослойном персептроне, так как глубокое изучение может быть надуманным Тем не менее, хотя в Интернете можно найти множество учебных пособий (некоторые действительно хорошие, а некоторые немного более сомнительные) для запуска библиотек глубокого обучения, таких как TensorFlow, без необходимости глубокого (без каламбура) понимания основополагающей математики, наличие таких идей окажется чрезвычайно полезным. ценный и не позволит вам поддаться общим ловушкам глубокого обучения в дальнейшем. Итак, давайте сделаем один шаг за раз, не так ли?

В следующих нескольких постах будут обсуждаться следующие темы:

  • Теорема сходимости персептрона.
  • Пределы персептрона Розенблатта, путь к его гибели.
  • Адаптивные линейные нейроны и дельта-правило, улучшающиеся по сравнению с персептроном Розенблатта.

Наконец, вы найдете ниже список дополнительных онлайн-ресурсов по истории и математике нейрона МакКаллоха и Питта и персептрона Розенблатта. Не стесняйтесь проверить их, поскольку они могут относиться к некоторым аспектам, которые мы только рассмотрели!

PS: Если вы знаете любую другую соответствующую ссылку, не стесняйтесь, напишите мне, и я отредактирую пост, чтобы добавить его 🙂

Дополнительные онлайн ресурсы

  • Себастьян Рашка в блоге на Однослойные нейронные сети и градиентный спуск,
  • Сообщение в блоге Джонти Синай, просто озаглавленное Перцептрон,
  • Отличный пост Аманда Гефтер кораблик о невероятной истории Уолтера Питтса.

Человек, который пытался выкупить мир с помощью логики

Уолтер Питтс поднялся с улицы в Массачусетский технологический институт, но не смог убежать сам

средний ком

Академические ссылки

[1] Сильвер Д., Шриттвизер Дж., Симонян К., Антоноглу И., Хуанг А., Гуэс А., Хьюберт Т., Бейкер Л., Лай М., Болтон, A., Chen, Y., Lillicrap, T., Hui, F., Sifre, L., van den Driessche, G., Graepel, T. & Hassabis, D. 2017. Освоение игры в Го без человеческого знания.Природа550 (7676), 354–359.

[2] Розенблатт, Ф. 1957. Перцептрон — воспринимающий и распознающий автомат. Отчет 85–460–1, Авиационная лаборатория Корнелла.

[3] McCulloch, W. S. и Pitts, W. 1943. Логическое исчисление идей, присущих нервной деятельности.Вестник математической биофизики5: 115-133.

[4] Минский М. и Паперт С. А.Перцептроны: введение в вычислительную геометрию, MIT press, 2017 (оригинальное издание 1969).

Персептрон

Перце́птрон (Персептрон [1] , англ. perсeptron от лат. perсeptio — восприятие) — устройство МАРК-1 [1] , а также соответствующая ему математическая модель, созданная Фрэнком Розенблаттом с целью построения модели мозга. Под «моделью мозга» понимается любая теоретическая система, которая стремится объяснить физиологические функции мозга с помощью известных законов физики и математики, а также известных фактов нейроанатомии и нейрофизиологии. Перцептрон (строгое определение которого будет дано ниже) представляет собой передающую сеть, состоящую из генераторов сигнала трёх типов: сенсорных элементов, ассоциативных элементов и реагирующих элементов. Производящие функции этих элементов зависят от сигналов, возникающих либо где-то внутри передающей сети, либо, для внешних элементов, от сигналов, поступающих из внешней среды. Но, как правило, когда говорится «перцептрон Розенблатта», имеется в виду частный случай — т. н. элементарный перцептрон, который упрощён по сравнению с общим видом перцептрона по ряду параметров.

Появление перцептрона

В середине 1958 года Фрэнк Розенблат предложил модель электронного устройства, названного им перцептроном, которое должно было бы имитировать процессы человеческого мышления. Перцептрон должен был передавать сигналы от «глаза», составленного из фотоэлементов, в блоки электромеханических ячеек памяти, которые оценивали относительную величину электрических сигналов. Эти ячейки соединялись между собой случайным образом в соответствии с принципами коннективизма. Два года спустя была продемонстрирована первая действующая машина «Марк-1», которая могла научится распознавать некоторые из букв, написанных на карточках, которые подносили к его «глазам», напоминающие кинокамеры.

Чтобы «научить» перцептрон способности строить догадки на основе исходных предпосылок, в нем предусматривалась некая элементарная разновидность автономной работы или «самопрограммирования». При распознавании той или иной буквы одни её элементы или группы элементов оказываются гораздо более существенными, чем другие. Перцептрон мог «научаться» выделять такие характерные особенности буквы полуавтоматически, своего рода методом проб и ошибок, напоминающим процесс обучения. Однако возможности перцептрона были ограниченными: машина не могла надежно распознавать частично закрытые буквы, а также буквы иного размера или рисунка, нежели те, которые использовались на этапе ее обучения.

Ведущие представители так называемого «нисходящего метода» специализировались, в отличие от представителей «восходящего метода», в составлении для цифровых компьютеров общего назначения программ решения задач, требующих от людей значительного интеллекта, например для игры в шахматы или поиска математических доказательств. К числу защитников «нисходящего метода» относились сотрудники Массачусетского технологического института Марвин Минский и Сеймур Пейперт. Минский начал свою карьеру исследователя ИИ сторонником «восходящего метода» и в 1951 году построил обучающуюся сеть на вакуумных электронных лампах. Однако вскоре к моменту создания перцептрона он перешел в противоположный лагерь.

В соавторстве с южно-африканским математиком Пейпертом он опубликовал в 1969 году книгу «Перцептроны», где математически доказывалось, что перцептроны, подобные розенблатовским, принципиально не в состоянии выполнять многие из тех функций, которые приписывал перцептронам Розенблат. Минский утверждал, что, не говоря уже о роли работающих под диктовку машинисток, подвижных роботов или машин, способных читать, слушать и понимать прочитанное или услышанное, перцептроны никогда не обретут даже умения распознавать предмет частично заслоненный другим. Глядя на торчащий из-за кресла кошачий хвост, подобная машина никогда не сможет понять, что она видит. Эта книга существенно повлияла на пути развития науки об искусственном интеллекте, т.к. переместила научный интерес и субсидии правительственных организаций США, традиционно финансирующих исследования по ИИ, на другое направление исследований — «нисходящий метод».

В 80-х гг. интерес к кибернетике возродился, так как сторонники «нисходящего метода» столкнулись со столь же неодолимыми трудностями. Сам Минский публично выразил сожаление, что его выступление нанесло урон концепции перцептронов, заявив, что, согласно его нынешним представлениям, для реального прорыва вперед в создании разумных машин потребуется устройство, во многом похожее на перцептрон. Но в основном ИИ стал синонимом нисходящего подхода, который выражался в составлении все более сложных программ для компьютеров, моделирующих сложную деятельность человеческого мозга.

Определения, данные Ф. Розенблаттом

Серьезное ознакомленние с теорией перцептронов требует знания базовых определений и теорем, совокупность которых и представляет собой базовую основу для всех последующих видов искусственных нейронных сетей

Виды элементов (нейронов) в перцептроне

  • Определение 7. Простым S-элементом (Сенсорным элементом) является чувствительный элемент, который от воздействия какого-либо из видов энергии (например, света, звука, давления, тепла и т. п.) вырабатывает сигнал. Если входной сигнал превышает некоторый порог , то элемент выдаёт выходной сигнал , в противном случае выходной сигнал равен нулю.
  • Определение 9. Простым A-элементом (Ассоциативным элементом) называется логический решающий элемент, который выдаёт выходной сигнал, когда алгебраическая сумма его входных сигналов равна или превышает некоторую пороговую величину . Выходной сигнал равен +1, если была превышена пороговая величина ; в противном случае он равен нулю. Если , то говорят, что A-элемент является активным.
  • Определение 11. Простым R-элементом (Реагирующим элементом) называется элемент, который выдаёт выходной сигнал , если сумма его входных сигналов является строго положительной, и сигнал , если сумма его входных сигналов является строго отрицательной. Если сумма входных сигналов равна нулю, выход можно считать либо равным нулю, либо неопределённым.

Определения и классификация перцептронов

Схема порогового А-элемента с пятью входами

Схема порогового А-элемента с пятью входами

  • Определение 17.Перцептрон представляет собой сеть, состоящую из S, A, R — элементов, с переменной матрицей взаимодействия V (элементы которой — весовые коэффициенты), определяемой последовательностью прошлых состояний активности сети.
  • Определение 18. Логическое расстояние от элемента к элементу равно числу слоёв между ними.
  • Определение 19.Перцептроном с последовательными связями называется система, в которой все связи, начинающиеся от элементов с логическим расстоянием d от ближайшего S-элемента, оканчиваются на элементах с логическим расстоянием d+1 от ближайшего S-элемента.
  • Определение 20.Перцептроном с перекрестными связями называется система, в которой некоторые связи соединяют друг с другом элементы одного типа (S, A или R), находящиеся на одинаковом логическом расстоянии от S-элементов, причем все остальные связи — последовательного типа.
  • Определение 21.Перцептроном с обратной связью называется система, в которой по крайней мере один элемент A или R, находящийся на расстоянии от ближайшего S-элемента, является исходным в цепи обратной связи к S-элементу или A-элементу, расстояние которого до ближайшего S-элемента ; другими словами, это система с обратными связями от элементов, расположенных ближе к выходу, к элементам, расположенным ближе к входу системы.
  • Определение 22.Простым перцептроном называется любая система, удовлетворяющая следующим пяти условиям:
    • В системе имеется только один R-элемент, который связан со всеми A-элементами.
    • Система представляет собой перцептрон с последовательными связями, идущими только от S-элементов к A-элементам и от A-элементов к R-элементам.
    • Веса всех связей от S-элементов к A-элементам являются фиксированными (не изменяются во времени).
    • Время передачи каждой связи равно либо нулю, либо фиксированной постоянной t.
    • Все активирующие функции S,A,R – элементов имеют вид : ,
    • Определение 23.Элементарным перцептроном называется простой перцептрон с простыми R и A элементами, активизирующая функция которого имеет вид:

    Определения, данные М. Минским

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

    Определения и классификация перцептронов на языке предикатов

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

    С этой позиции перцептроны можно классифицировать следующим образом:

    • 1. Перцептроны, ограниченные по диаметру. Для каждого предиката F из Ф диаметр множества точек плоскости, от которых зависит F, не превосходит некоторой фиксированной величины.
    • 2. Перцептроны ограниченного порядка. Мы будем говорить, что перцептрон имеет порядок
    • 3. Перцептроны Гамбы. Каждый элемент из Ф может зависеть от всех точек, но должен быть линейной пороговой функцией, т.е. сам должен вычисляться перцептроном первого порядка, определенным в предыдущем пункте.
    • 4. Случайные перцептроны. Именно эта модель наиболее подробно изучалась группой Розенблатта. Предикаты F представляют собой случайно выбранные булевы функции. Иначе говоря, случайные перцептроны являются перцептронами ограниченного порядка, а множество Ф порождается случайным процессом с определенной функцией распределения.
    • 5. Ограниченные перцептроны. Множество Ф предикатов F бесконечно, а множество значений принимаемых коэффициентами , конечно.

    Описание элементарного перцептрона

    Элементарный перцептрон

    Перцепторон состоит из элементов 3-х типов: S — элементов, A — элементов и R — элемента. S — элементы это — слой рецепторов. Эти рецепторы соединены с A — элементами с помощью тормозных или возбуждающих связей. Каждый рецептор может находиться в одном из двух состояний — покоя или возбуждения. A — элементы представляют собой сумматоры с порогом (то есть формальные нейроны ). Это означает, что A — элемент возбуждается, если алгебраическая сумма возбуждений, приходящих к нему от рецепторов, превышает определенную величину — его порог. При этом сигнал от рецептора, приходящий по возбуждающей связи, считается положительным, а приходящий по тормозной связи — отрицательным. Сигналы от возбудившихся A — элементов передаются в сумматор R, причем сигнал от i-го ассоциативного элемента передается с коэффициентом ki .

    А- или R- элементы (который является пороговыми) подсчитывают некоторую линейную форму (как правило сумму весовых коэффициентов) от своих входов и сравнивает ее с заданным значением — порогом. Если у А-элемента входов, то в нем должны быть заданы весов и порог . Перцептрон выдает , если линейная форма от входов с коэффициентами превышает и иначе.

    С помощью одного порогового элемента можно реализовать 14 булевых функций, кроме эквиваленции (знак равно) и исключающего или (XOR). Любая булева функция представима в виде построенной из пороговых элементов нейронной сети глубины 2.

    Система связей между рецепторами S и A — элементами, так же как и пороги A — элементов выбираются некоторым случайным, но фиксированным образом, а обучение состоит лишь в изменении коэффициентов . Считаем, что мы хотим научить перцептрон разделять два класса объектов, и потребуем, чтобы при предъявлении объектов первого класса выход перцептрона был положителен, а при предъявлении объектов второго класса — отрицательным. Начальные коэффициенты полагаем равными нулю. Далее предъявляем обучающую выборку: объекты (например, круги либо квадраты) с указанием класса, к которым они принадлежат. Показываем перцетрону объект первого класса. При этом некоторые A — элементы возбудятся. Коэффициенты , соответствующие этим возбужденным элементам, увеличиваем на 1. Затем предъявляем объект второго класса и коэффициенты тех A — элементов, которые возбудятся при этом показе, уменьшаем на 1. Этот процесс продолжим для всей обучающей выборки. В результате обучения сформируются значения весов связей .

    После обучения перцептрон готов работать в режиме распознавания или обобщения В этом режиме перцептрону предъявляются «не знакомые» перцептрону объекты, и перцептрон должен установить, к какому классу они принадлежат. Работа перцептрона состоит в следующем: при предъявлении объекта возбудившиеся A — элементы передают сигнал R — элементу, равный сумме соответствующих коэффициентов . Если эта сумма положительна, то принимается решение, что данный объект принадлежит к первому классу, а если она отрицательна — то второму.

    Алгоритмы обучения

    Классический метод обучения перцептрона — это обучение с коррекцией ошибки. Представляет собой такой метод обучения, при котором вес связи не изменяется до тех пор, пока текущая реакция перцептрона остается правильной. При появлении неправильной реакции вес изменяется на единицу, а знак (+/-) определяется противоположным от знака ошибки.

    Кроме того, Розенблатт пытался классифицировать различные алгоритмы обучения, называя их системами подкрепления. В результате он различал следующие виды:

    • Положительное подкрепление — представляет собой такой процесс подкрепления, при котором вес связи, начинающийся на активном элементе и оканчивающийся на элементе , изменяется на величину r, знак которой совпадает со знаком сигнала .
    • Отрицательное подкрепление — представляет собой такой процесс подкрепления, при котором вес связи, начинающийся на активном элементе и оканчивающийся на элементе , изменяется на величину r, знак которой противоположен знаку сигнала .

    Кроме, классического метода обучения перцептрона Розенблатт также ввел понятие об обучении без учителя, предложив следующий способ обучения:

    • Альфа — системой подкрепления называется система подкрепления, при которой веса всех активных связей , которые оканчиваются на некотором элементе , изменяются на одинаковую величину r, а веса не активных связей за это время не изменяются.

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

    Возможности и ограничения модели

    Исследования перцептронов показали, что перцептроны способны обучаться. Справедлива теорема о сходимости перцептрона, согласно которой независимо от начальных значений коэффициентов и порядка показа образцов при обучении перцептрон за конечное число шагов научится различать два класса объектов, если только существует такая классификация.

    Первые успехи исследований перцептронов и других нейросетей вызвал взрыв активности и энтузиазма. М. Минский, Ф.Розенблат, Б. Уидроу и другие разработали ряд искусственных нейронных сетей. В течение некоторого времени казалось, что ключ к интеллекту найден, и воспроизведение человеческого мозга является лишь вопросом конструирования достаточно большой сети.

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

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

    Традиционные заблуждения

    В результате популяризации искуственных нейронных сетей журналистами и маркетологами был допущен ряд неточностей, которые, при недостаточном изучении оригинальных работ по этой тематике, неверно истолковывались молодыми (на то время) учеными. В результате по сей день можно встретиться с недостаточно глубокой трактовкой функциональных возможностей перцептрона по сравнению с другими ИНС, разработаными в последующие годы.

    Терминологические неточности

    Неточность № 1. Перцептрон — нейронная сеть без скрытых слоев.

    Вассерманом была сделана попытка определенным образом классифицировать различные виды нейронных сетей:

    «Как видно из публикаций, нет общепринятого способа подсчета числа слоев в сети. Многослойная сеть состоит из чередующихся множеств нейронов и весов. Входной слой не выполняет суммирования. Эти нейроны служат лишь в качестве разветвлений для первого множества весов и не влияют на вычислительные возможности сети. По этой причине первый слой не принимается во внимание при подсчете слоев, и сеть считается двухслойной, так как только два слоя выполняют вычисления. Далее, веса слоя считаются связанными со следующими за ними нейронами. Следовательно, слой состоит из множества весов со следующими за ними нейронами, суммирующими взвешенные сигналы.»

    В результате такого представления перцептрон попал под определение однослойная нейроная сеть. При этом когда говорят, что перцептрон не имеет скрытых слоев, имеют в виду, что у него нет скрытых слоев обучающихся нейронов (веса которых адаптируются к задаче). Поэтому всю совокупность тех выходов системы из S и A элементов, которые достигают R-элемента (единственного обучающегося) просто логически заменяют набором (модифицированных по жесткому правилу) новых входов.

    Но обычное игнорирование необучаемых слоев с фиксированными связми (который имеется в элементарном перцептроне между S и А — элементами) позволяет делать неправильные выводы о возможностях ИНС, так например, Минский поступил очень корректно переформулировав А-элемент как предикат, а например Вассермен уже потерял такое представление и у него А-элемент просто вход (почти эквивалентный S-элементу). Поэтому при такой терминалогической неточности упускается из виду тот факт, что в перцептроне происходит отображение рецепторного поля S — элементов на ассоциативное поле А-элементов, в результате чего и происходит преобразование любой нелинейной разделимой задачи в линейно разделимую.

    Функциональные заблуждения

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

    № 1. Перцептрон не способен решить задачу XOR.

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

    № 2. Выбором случайных весов можно достигнуть обучения и линейно неразделимым (вообще, любым) задачам, но только если повезет, и в новых переменных (выходах A-нейронов) задача окажется линейно разделимой. Но может и не повезти.

    Теорема сходимости Розенблатта ОДНОЗНАЧНО доказывает, что не может быть ни какого «может и не повезти», при равенстве А-элементов числу стимулов и не особенной SA матрице — вероятность решения 100 %. То есть при отображении рецепторного поля на ассоциативное поле большей на одну размерность случайным (нелинейным) оператором нелинейная задача превращается в линейно разделимую. А следующий обучаемый слой уже находит линейное решение в другом пространстве входов.

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

    Данный аргумент легко проверить на тестовой задаче под названием «шахматная доска» или «губка с водой»:

    Дана цепочка из 2N единиц или 0. Если эта цепочка является зеркально симметричной относительно центра, то есть x[1:1:N] = x[2N:-1:N+1] то на выходе 1. Иначе 0.» Обучающие примеры _все_ (это важно) 2²N цепочек. Могут быть вариации данной задачи: Имеем изображение 256х256 пикселей изображение из 2 цветов. Обучаем перцептрон всем возможным состояниям, то есть на вход подаем последовательно координаты x, y и требуем на выходе соответствующий цвет точки. В итоге имеем 65536 различных пар стимул-реакция. Берем изображение такого типа — Если либо x нечетное (0..255), либо y нечетное (но не одновременно), то цвет 1. Иначе — цвет 0. Обучить без ошибок.

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

    На практике оказывается, что данная задача очень проста для перцептрона: чтобы ее решить, перцептрону достаточно 1500 А-элементов (вместо полных 65536, необходимых для любой задачи). При этом число итерациий порядка 1000. При 1000 А-элементов перцептрон не сходится за 10000 итераций. Если же увеличить число А-элементов до 40000, то схождения можно ожидать за 30-80 итераций.

    № 4. В перцептроне Розенблатта столько А-элементов, сколько входов. И сходимость по Розенблатту, это стабилизация весов.

    Нет. Это следует из следствия теоремы сходимости.

    Следствие 2. Если число стимулов в пространстве Ф равно n>N (то есть больше числа А-элементов элементарного перцептрона), то существует некоторая классификация С(Ф), для которой решения не существует.

    Отсюда должно быть ясно, что:

    • 1. у Розенблатта число А-элементов равно числу стимулов (обучающих примеров), а не числу входов.
    • 2. Сходимость по Розенблатту, это не стабилизация весов, а наличие всех требуемых классификаций, то есть по сути отсутствие ошибок.

    Ограничения перцептрона, описанные Минским

    Действительно Минским после серьезных экспериментов с перцептроном и его всестороннего анализа была предпринята его критика. Здесь нужно отметить тот факт, что на то время все известные ИНС назывались перцептроном, и Минский критиковал именно весь класс искусственных нейронных сетей, а перцептрон Розенблатта был наиболее детально проработан теоритически и имел физическое воплощение в устройстве под названием МАРК-1. В то время была слабо развита теория о параллельных вычислениях, а перцептрон полностью соответствовал принципам таких вычислений. По большому счету Минский показал преймущество последовательных вычислений перед параллельным в определенных классах задач связанных с инвариантным представлением. Ниже мы рассмотрим некоторые следствия анализа Минского. Критику Минского можно разделить на три взаимосвязаные темы:

    Ограничения, связанные с инвариантным представлением

    Минский описывал специальные задачи такие как «четность» и «один в блоке», которые показывают ограничения перцептрона в том, что он не может распознавать инвариантные входные данные (изображения) бесконечного порядка. А в частности, при распознавании четности конечного порядка первый слой перцептрона вынужден становиться полносвязным. В связи с эти есть ограничения на следующие практические типовые задачи.

    Типовая задача № 1. Если требуется построить машину для чтения печатных букв или цифр, то возникает естественное желание, чтобы эта машина могла распознавать их независимо от положения на странице, то есть чтобы на решение машины не оказывали влияния элементы группы переносов. Иными словами, восприятие машины должно быть «инвариантно относительно группы переносов», то есть ее решение должно быть одним и тем же для каждого представителя какого-либо класса эквивалентности относительно группы переносов. Итак, более точно первую задачу можно определить как — нахождение геометрического свойства. Вот как описывает Минский понятие геометрического свойства:

    «Когда мы говорим геометрическое свойство, мы имеем в виду что-то инвариантное относительно переноса, или вращения, или растяжения. Сочетание первых инвариантностей определяет конгруэнтную группу преобразований, а наличие всех трех дает фигуры подобные в эвклидовой геометрии».

    Типовая задача № 2. Ряд подзадач могут формулироваться различно, как (1) определить, одна или более фигур находятся в видимом пространстве, (2) плотная ли видимая фигура или же в ней находится отдельная фигура, (3) … . Независимо от этого они имеют общую суть — нахождение признака, связана ли фигура, то есть предиката связанность.

    Типовая задача № 3. Распознавание фигур в контексте, то есть, например, содержит ли данная фигура прямоугольник и, быть может, что-то еще.

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

    Ограничения, связаные с возможностью прогнозирования

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

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

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

    Качественость сделанного прогноза или точность построенной модели зависит от числа знаний, используемых при построении модели. Если мы хотим, чтобы на основании половины всех необходимых знаний модель была способна достроить (спрогнозировать) вторую половину неизвестных нам знаний, то желательно иметь информацию равномерно распределенную по всему пространству возможных состояний. В таком случае перцептрон способен спрогнозировать неизвестные, но близкие к известным результаты с определенной верояностью правильности. В противном же случае, мы имеем как раз ситуацию с необходимость прогнозировать результат задачи «шахматной доски», которая рассматривалась выше. Но тут главное, что выше вопрос был связан с возможностью обучения этой задаче, теперь же идет речь о необходимости достроить по имеющейся информации — недостающую, то есть спрогнозировать. Человек с такой задачей справляется быстро, так как находит определенную аналогию. Для перцептрона (а так-же для ряда других ИНС) данная задача в полной мере слишком сложна. Это связанно с основным ограничением ИНС — невозможность найти инвариант (см. выше), в следствии этого перцептрон работает только как статистическая машина, но не способен самостоятеьно находить инварианты, которые были бы основой для принятия решений.

    Технические ограничения по скорости и объему используемой памяти

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

    См. также

    • Дельта-правило
    • Искусственная нейронная сеть
    • Распознавание образов
    • Обобщение понятий
    • Ассоциативная память

    Примечания

    Литература

    • Фрэнк РозенблаттПринципы нейродинамики: перцептроны и теория механизмов мозга = Principles of Neurodynamic: perceptrons and the theory of brain mechanisms. — М.: «Мир», 1965.
    • М. Минский, С. ПейпертПерсептроны = Perceptrons. — М.: «Мир», 1971.
    • Ф. ВассерманНейрокомпьютерная техника: Теория и практика. — М.: «Мир», 1992.
    • Саймон Хайкин Нейронные сети: полный курс = Neural Networks: A Comprehensive Foundation. — 2-е изд. — М.: «Вильямс», 2006. — С. 1104. — ISBN 0-13-273350-1
    • Raul RojasNeural Networks — A Systematic Introduction. — Springer-Verlag, Berlin, New-York: 1996. — С. 502 p..

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *