Шрифт:
Интервал:
Закладка:
Именно в лаборатории Корнелла Розенблатт начинает свою работу над перцептронами. В январе 1957 г. секция Розенблатта публикует первый отчёт по проекту «Перцептрон: воспринимающий и распознающий автоматон» (The Perceptron: A Perceiving and Recognizing Automaton, далее PARA)[1226], и в том же году Розенблатт выступает с докладом о перцептроне на XV Международном конгрессе по психологии, проходившем с 28 июля по 5 августа в Брюсселе[1227].
В отчёте по проекту PARA Розенблатт впервые приводит определение перцептрона, а также вводит несколько дополнительных терминов:
Недавние теоретические исследования, проведённые автором, показывают, что целесообразно создать электронную или электромеханическую систему, которая научится распознавать наличие сходства или тождества между образцами оптической, электрической или тональной информации способом, который может быть очень похож на процессы восприятия биологического мозга. Предлагаемая система основывается на вероятностных, а не на детерминистических принципах в своей работе и обретает надёжность благодаря свойствам статистических измерений, полученных из больших совокупностей элементов. Система, которая работает в соответствии с этими принципами, будет называться перцептроном. Модель, которая предназначена для приёма оптических или визуальных изображений в качестве входных данных, будет называться фотоперцептроном. Та [модель], которая принимает тональные паттерны или звуковые входы, будет называться фоноперцептроном, и мы также рассматриваем в перспективе возможность использования электро- или радиоперцептронов с соответствующими сенсорными устройствами. Также полезно различать перцептроны с моментальными стимулами и перцептроны для временных последовательностей — последние имеют способность запоминать последовательности событий, а не кратковременные мгновенные изображения, например полученные из коллекции отдельных кадров, вырезанных из полосы киноплёнки.
В примечаниях к отчёту говорится, что работы по «теории статистической разделимости», которые легли в основу предлагаемой конструкции фотоперцептрона, были начаты автором пятью годами ранее. Для постройки первого фотоперцептрона предлагается задействовать на полтора года штат из трёх необходимых сотрудников-профессионалов, а также цифровую вычислительную машину с персоналом.
Во многих поздних исследованиях первый перцептрон Розенблатта (далее мы будем использовать для ссылки на архитектуру, лежащую в его основе, термин «элементарный перцептрон») называют однослойным, изобретение же многослойного перцептрона Розенблаттом относят к более позднему периоду. В действительности дело обстоит несколько сложнее. Фотоперцептрон, описанный в отчёте по проекту PARA, представляет собой машину, состоящую из трёх слоёв элементов: S (сенсорного), A (ассоциативного) и R (реагирующего). При этом синаптические веса только одного слоя (A → R) подвергаются коррекции в процессе обучения. Однако слой S → A также содержит веса, значения которых могут быть равны строго 1 (возбуждающий синапс) или −1 (тормозящий синапс). Эти веса конфигурируются вручную[1228].
Это может показаться простым рудиментом модели Мак-Каллока и Питтса, хотя на деле этот слой выполняет важную функцию, о которой мы поговорим позже.
В выпущенном ещё через четыре года работы отчёте «Принципы нейродинамики: перцептроны и теория механизмов мозга» (Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms, 1961), систематизирующем итоги исследований, Розенблатт отводит целый раздел для описания «трёхслойных систем с переменными S—A связями», прежде чем перейти к описанию «многослойных перцептронов и перцептронов с перекрёстными связями». Розенблатт не только описывает подобные архитектуры, но и предлагает алгоритмы для их обучения. Кроме того, он показывает, что многослойные сети необязательно сходятся при использовании детерминистических алгоритмов обучения, поэтому при обучении таких систем необходимо задействовать стохастические, то есть включающие в себя элемент случайности, алгоритмы[1229]. В целом эта работа Розенблатта во многом опередила время. Удивительную мощь, заложенную в алгоритмах почти шестидесятилетней давности, можно наблюдать в ряде современных экспериментов.
В 1998 г. был опубликован набор данных MNIST (Modified National Institute of Standards and Technology database, Модифицированная база данных Национального института стандартов и технологий), содержащий 70 000 чёрно-белых изображений рукописных цифр (60 000 в обучающей выборке и 10 000 в тестовой) размером 28 × 28 пикселей и соответствующих им меток. Изображения были получены путём сканирования цифр, написанных сотрудниками Американского бюро переписей и простыми американскими школьниками[1230]. MNIST на многие годы стал одним из наиболее популярных наборов данных для оценки возможностей различных моделей для распознавания образов. В 2001 г. группа исследователей под руководством Эрнста Куссуля провела эксперименты по обучению на MNIST трёхслойных розенблаттовских перцептронов с различным количеством элементов в A‑слое (входной слой нейронов перцептрона Розенблатт называл S-слоем от sensory — сенсорный, воспринимающий; выходной — R-слоем от response — ответ, реакция; все промежуточные слои назывались A-слоями от associative — ассоциативный). Во времена Розенблатта технические возможности позволяли работать с перцептронами, содержащими в A-слое до нескольких сотен элементов. В работе Куссуля их число удалось довести до 512 000. При этом была достигнута точность распознавания в 99,2%, что сопоставимо с лучшими моделями начала XXI в.[1231] Конечно, MNIST является тривиальной задачей для современных нейросетевых архитектур, и по данным на 2019-й точность распознавания превысила 99,7% (при этом корректность меток в ошибочно распознаваемых изображениях нередко подвергается сомнению), поэтому для тестирования возможностей систем распознавания образов давно применяют куда более изощрённые наборы данных. Но всё же результат, показанный «ископаемой» моделью Розенблатта, получившей своеобразный допинг в виде доступных в наши дни вычислительных ресурсов, вполне можно считать доказательством того, что его идеи во многом опередили время.
4.4.6 Первые нейрокомпьютеры
Первая версия перцептрона была смоделирована при помощи компьютера IBM 704. Обучившись, программа Розенблатта была способна успешно распознавать различные геометрические фигуры (круги, квадраты, треугольники). Успешные эксперименты с цифровой машиной привели к созданию аппаратной версии перцептрона — первого в мире нейрокомпьютера Mark I Perceptron.
Рис. 93. Фрэнк Розенблатт и нейрокомпьютер Mark I Perceptron
Эта работа Розенблатта дала начало новому направлению в вычислительной технике — нейроморфной инженерии.
Дело в том, что при симуляции нейронных сетей при помощи компьютеров с фон-неймановской архитектурой возникает нежелательный эффект, получивший в 1977 г. с лёгкой руки Джона Бэкуса наименование «бутылочное горлышко фон Неймана» [von Neumann bottleneck][1232]: поскольку в этой архитектуре программы и данные хранятся в памяти, процессор и память разделены и данные пересылаются между ними при помощи соединительной шины, то это приводит к возникновению задержек. Независимо от того, насколько быстро может работать процессор, на деле он ограничен скоростью передачи данных, являющейся узким местом архитектуры. В биологических нейронных сетях нейроны выполняют одновременно функции хранения и обработки данных. Данные, воплощающиеся