Элементарный персептрон розенблатта реферат

Обновлено: 05.07.2024

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

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 18.01.2014
Размер файла 100,5 K

Соглашение об использовании материалов сайта

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

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Подобные документы

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

дипломная работа [1,8 M], добавлен 08.02.2017

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

дипломная работа [554,8 K], добавлен 06.04.2014

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

курсовая работа [462,2 K], добавлен 15.01.2014

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

курсовая работа [645,2 K], добавлен 05.04.2015

Обучение простейшей и многослойной искусственной нейронной сети. Метод обучения перцептрона по принципу градиентного спуска по поверхности ошибки. Реализация в программном продукте NeuroPro 0.25. Использование алгоритма обратного распространения ошибки.

курсовая работа [1019,5 K], добавлен 05.05.2015

Понятие системы распознавания образов. Классификация систем распознавания. Разработка системы распознавания формы микрообъектов. Алгоритм для создания системы распознавания микрообъектов на кристаллограмме, особенности его реализации в программной среде.

курсовая работа [16,2 M], добавлен 21.06.2014

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



Вы, наверно, знаете, что перцептрон Розенблатта, изобретённый в середине XX-го века, стал прообразом современных нейронных сетей. Однако многое из того, что известно нам о нём и его создателе, не соответствует действительности. В продолжение серии статей об историческом развитии искусственного интеллекта попробуем разобраться, что является искажением фактов в рассказах об одном из основоположников машинного обучения, и почему он — действительно важная фигура в истории ИИ.


Фрэнк Розенблатт. Источник фото

Начнём издалека: в 1943-м году появилась модель Мак-Каллока-Питтса, и это стало поворотной точкой в истории искусственных нейронных сетей. Уже на заре развития этого направления в нём выделились два подхода — монотипический и генотипический (так окрестил их герой нашего поста, Фрэнк Розенблатт). В монотипическом подходе параметры нейронов задаются изначально и топология сети полностью фиксирована, а в генотипическом они задаются только частично. Таким образом, при использовании генотипического подхода мы проектируем не одну конкретную сеть, а задаём множество возможных сетей. Отсюда следует важное отличие генотипического подхода — наличие механизма обучения, предназначенного для выбора конкретных параметров сети. На первых порах генотипистам мешало сильное влияние символьной логики. Так вышло из-за того, что изучение сознания 30-40-е проходило в рамках этой парадигмы. Данные нейрофизиологии свидетельствовали в пользу того, что информация в мозге передаётся с помощью коротких импульсов (спайков), поэтому для Мак-Каллока с Питтсом было естественно считать мозг цифровой машиной, оперирующей нулями и единицами. Кроме того, Питтс как ученик Рассела и Карнапа, ещё до того, как стал заниматься нейронными сетями, был поклонником символьной логики. Об этом можно узнать больше из нашей предыдущей статьи.

На чьих плечах стоял Розенблатт

Розенблатт вслед за этими учёными собрал и систематизировал разрозненные усилия по разработке архитектур и алгоритмов обучения.

Перцептрон Розенблатта во всей красе



Нейрон перцептрона отличается от нейрона Мак-Каллока и Питтса тем, что у него появились веса синапсов — числовые значения.

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


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

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

Розенблатт не изучал многослойные сети?

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

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

Критика Минского и Пейперта

Тут необходимо пояснение: Розенблатт был хорошо знаком с работами Дэвида Хьюбела и Торстена Визеля, которые описывают исследования зрительной коры кошек. Эти исследования показали, что сигнал из зрительного нерва на первом шаге поступает строго в первичную зрительную кору, и только через неё попадает в остальные части мозга. Под впечатлением от этой работы, Розенблатт решил, что для решения многих задач можно создавать локально связанные искусственные нейронные сети, где в первых слоях нейроны будут связаны друг с другом только внутри небольших групп. Выходы этих локальных групп будут объединяться в следующих слоях сетки. В таких архитектурах должно быть значительно меньше параметров, чем в полносвязных сетях, и за счет этого их можно будет эффективнее обучать, считал он.

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

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

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

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

Книга Минского и Пейперта стала важна потом, во время второй весны искусственного интеллекта, а тогда, в начале 60-х, книга не сделала никакого шума. Уидроу так описал свои впечатления от прочтения книги:

Пикантные подробности судьбы Розенблатта

Если бы биография Розенблатта была заурядной, мы бы, наверно, не стали о ней писать. Однако она была далеко не такой! И это важно: известный социолог науки Бруно Латур писал, что открытия не делаются сами по себе, в вакууме, а научная деятельность тесно переплетена с теми случайностями, которые сопровождают учёного в повседневной жизни. И вот что это за случайности в судьбе Розенблатта. Во-первых, возможно, при жизни его родственники были более известны, чем сам Фрэнк Розенблатт младший. Его отец, Фрэнк Фердинанд Розенблатт, который не дожил несколько месяцев до рождения сына, в начале XX века был одним из руководителей еврейской благотворительной организации Joint.

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

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

Модели, созданные Розенблаттом сильно опередили время, и даже сегодня они способны эффективно решать некоторые задачи из области машинного обучения. Например, в 2001 году группа исследователей под руководством Эрнста Куссуля провела эксперименты по обучению на MNIST трёхслойных розенблаттовских перцептронов с различным количеством элементов в А-слое. Во времена Розенблатта технические возможности позволяли работать с перцептронами, содержащими в A-слое лишь до нескольких сотен элементов, а в работе Куссуля их число удалось довести до 512 000. И что вы думаете — была достигнута точность распознавания в 99,2%, что сопоставимо с лучшими моделями начала XXI века!

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

Розенблатт продолжал исследования нейронных сетей до последних дней своей жизни. Из-за его внезапной кончины, работа над перцептронами продлилась всего 15 лет, но этот период стал целой эпохой в истории коннекционизма.

Одной из первых искусственных сетей, способных к перцепции (восприятию) и формированию реакции на воспринятый стимул, явился PERCEPTRON Розенблатта (F.Rosenblatt, 1957). Персептрон рассматривался его автором не как конкретное техническое вычислительное устройство, а как модель работы мозга. Нужно заметить, что после нескольких десятилетий исследований современные работы по искусственным нейронным сетям редко преследуют такую цель.


Рис. 4.1. Элементарный персептрон Розенблатта.

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


Розенблатт называл такую нейронную сеть трехслойной, однако по современной терминологии, используемой в этой книге, представленная сеть обычно называется однослойной, так как имеет только один слой нейропроцессорных элементов. Однослойный персептрон характеризуется матрицей синаптических связей W от S- к A-элементам. Элемент матрицы отвечает связи, ведущей от i-го S-элемента к j-му A-элементу.

В Корнельской авиационной лаборатории была разработана электротехническая модель персептрона MARK-1, которая содержала 8 выходных R-элементов и 512 A-элементов, которые можно было соединять в различных комбинациях. На этом персептроне была проведена серия экспериментов по распознаванию букв алфавита и геометрических образов.

В работах Розенблатта был сделано заключение о том, что нейронная сеть рассмотренной архитектуры будет способна к воспроизведению любой логической функции, однако, как было показано позднее М.Минским и С.Пейпертом (M.Minsky, S.Papert, 1969), этот вывод оказался неточным. Были выявлены принципиальные неустранимые ограничения однослойных персептронов, и в последствии стал в основном рассматриваться многослойный вариант персептрона, в котором имеются несколько слоев процессорных элементов.

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

Теорема об обучении персептрона.

Обучение сети состоит в подстройке весовых коэффициентов каждого нейрона. Пусть имеется набор пар векторов (x  , y  ),  = 1..p, называемый обучающей выборкой. Будем называть нейронную сеть обученной на данной обучающей выборке, если при подаче на входы сети каждого вектора x  на выходах всякий раз получается соответсвующий вектор y 

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


Начальные значения весов всех нейронов полагаются случайными.


Сети предъявляется входной образ x  , в результате формируется выходной образ


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

Вектор весов модифицируется по следующей формуле: . Здесь - темп обучения.

Шаги 1-3 повторяются для всех обучающих векторов. Один цикл последовательного предъявления всей выборки называется эпохой. Обучение завершается по истечении нескольких эпох, а) когда итерации сойдутся, т.е. вектор весов перестает измеяться, или б) когда полная просуммированная по всем векторам абсолютная ошибка станет меньше некоторого малого значения.

Используемая на шаге 3 формула учитывает следующие обстоятельства: а) модифицируются только компоненты матрицы весов, отвечающие ненулевым значениям входов; б) знак приращения веса соответствует знаку ошибки, т.е. положительная ощибка ( > 0, значение выхода меньше требуемого) проводит к усилению связи; в) обучение каждого нейрона происходит независимо от обучения остальных нейронов, что соответсвует важному с биологической точки зрения, принципу локальности обучения.

Данный метод обучения был назван Ф.Розенблаттом “методом коррекции с обратной передачей сигнала ошибки”. Позднее более широко стало известно название “ -правило”. Представленный алгоритм относится к широкому классу алгоритмов обучения с учителем, поскольку известны как входные вектора, так и требуемые значения выходных векторов (имеется учитель, способный оценить правильность ответа ученика).

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

Простейшая нейрон ная сеть - ПЕРСЕПТРОН Розенблатта. Линейная разделимость и теор ема об обучении персептрона.

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

ПЕРСЕПТРОН Розенблатта.

Одной из первых искусственных сетей, способных к перцепции (восприятию) и формированию реакции на воспринятый стимул, явился PERCEPTRON Розенблатта (F.Rosenblatt, 1957). Персептрон рассматривался его автором не как конкретное техническое вычислительное устройство, а как модель работы мозга. Нужно заметить, что после нескольких десятилетий исследований современные работы по искусственным нейрон ным сетям редко преследуют такую цель.


Рис. 4.1. Элементарный персептрон Розенблатта.

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

Розенблатт называл такую нейрон ную сеть трехслойной, однако по современной терминологии, используемой в этой книге, представленная сеть обычно называется однослойной, так как имеет только один слой нейропроцессорных элементов. Однослойный персептрон характеризуется матрицей синаптических связей W от S- к A-элементам. Элемент матрицы отвечает связи, ведущей от i-го S-элемента к j-му A-элементу.

В Корнельской авиационной лаборатории была разработана электротехническая модель персептрона MARK-1, которая содержала 8 выходных R-элементов и 512 A-элементов, которые можно было соединять в различных комбинациях. На этом персептроне была проведена серия экспериментов по распознаванию букв алфавита и геометрических образов.

В работах Розенблатта был сделано заключение о том, что нейрон ная сеть рассмотренной архитектуры будет способна к воспроизведению любой логической функции, однако, как было показано позднее М.Минским и С.Пейпертом (M.Minsky, S.Papert, 1969), этот вывод оказался неточным. Были выявлены принципиальные неустранимые ограничения однослойных персептронов, и в последствии стал в основном рассматриваться многослойный вариант персептрона, в котором имеются несколько слоев процессорных элементов.

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

Теорема об обучении персептрона.

Обучение сети состоит в подстройке весовых коэффициентов каждого нейрон а. Пусть имеется набор пар векторов (x a , y a ), a = 1..p, называемый обучающей выборкой. Будем называть нейрон ную сеть обученной на данной обучающей выборке, если при подаче на входы сети каждого вектора x a на выходах всякий раз получается соответсвующий вектор y a

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

Начальные значения весов всех нейрон ов полагаются случайными.

Сети предъявляется входной образ x a , в результате формируется выходной образ

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

Вектор весов модифицируется по следующей формуле: . Здесь - темп обучения.

Шаги 1-3 повторяются для всех обучающих векторов. Один цикл последовательного предъявления всей выборки называется эпохой. Обучение завершается по истечении нескольких эпох, а) когда итерации сойдутся, т.е. вектор весов перестает измеяться, или б) когда полная просуммированная по всем векторам абсолютная ошибка станет меньше некоторого малого значения.

Используемая на шаге 3 формула учитывает следующие обстоятельства: а) модифицируются только компоненты матрицы весов, отвечающие ненулевым значениям входов; б) знак приращения веса соответствует знаку ошибки, т.е. положительная ощибка ( d > 0, значение выхода меньше требуемого) проводит к усилению связи; в) обучение каждого нейрон а происходит независимо от обучения остальных нейрон ов, что соответсвует важному с биологической точки зрения, принципу локальности обучения.

Данный метод обучения был назван Ф.Розенблаттом “методом коррекции с обратной передачей сигнала ошибки”. Позднее более широко стало известно название “ d -правило”. Представленный алгоритм относится к широкому классу алгоритм ов обучения с учителем, поскольку известны как входные вектора, так и требуемые значения выходных векторов (имеется учитель, способный оценить правильность ответа ученика).

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

Линейная разделимость и персептронная представляемость

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

Таким образом, при заданных значениях весов и порогов, нейрон имеет определенное значение выходной активности для каждого возможного вектора входов. Множество входных векторов, при которых нейрон активен (y=1), отделено от множества векторов, на которых нейрон пассивен (y=0) гиперплоскостью, уравнение которой есть, суть:

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

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

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

Рис. 4.2. Белые точки не могут быть отделены одной прямой от черных.

Требуемая активность нейрон а для этого рисунка определяется таблицей, в которой не трудно узнать задание логической функции “ислючающее или”.

Читайте также: